![]() |
ScalES-PPM
|
compute uniform partitioning of n-dimensional rectilinear More...
Data Types | |
interface | partidx_of_elem |
interface | uniform_decomposition |
Functions/Subroutines | |
elemental integer function, public | uniform_partition_start (set_interval, nparts, part_idx, symmetric) |
compute start integer of uniform interval partition | |
elemental type(extent) function, public | uniform_partition (set_interval, nparts, part_idx, symmetric) |
compute nth part of integer set interval | |
subroutine | uniform_decomposition_1d (set_interval, nparts, parts, symmetric) |
divide integer set interval into evenly sized sub-intervals forming a partition | |
subroutine | uniform_decomposition_nd (pgrid, rect, nparts, symmetric) |
Compute uniform divisions of rectilinear structure. | |
elemental integer function | partidx_of_elem_uniform_deco (set_interval, nparts, elem_idx) |
Variables | |
character(len= *), parameter | filename = 'ppm_uniform_partition.f90' |
compute uniform partitioning of n-dimensional rectilinear
|
private |
divide integer set interval into evenly sized sub-intervals forming a partition
set_interval | interval to partition |
nparts | number of parts to compute |
parts | nparts sub-intervals |
symmetric | if .true. partitions(i) will be same-size as partitions(nparts-i+1) |
|
private |
Compute uniform divisions of rectilinear structure.
pgrid | same dimension as rect and nparts, holds list of partition extents |
rect | intervals for indices of rectilinear to partition |
nparts | number of parts to compute in each dimension |
symmetric | symmetry requirements for each dimension |
elemental type(extent) function, public ppm_uniform_partition::uniform_partition | ( | type(extent), intent(in) | set_interval, |
integer, intent(in) | nparts, | ||
integer, intent(in) | part_idx, | ||
logical, intent(in), optional | symmetric ) |
compute nth part of integer set interval
The interval is divided into roughly same sized sub-intervals forming a uniform partition.
set_interval | global domain |
nparts | number of parts to decompose into |
part_idx | number of sub-interval to compute |
symmetric | if .true. ensure that SIZE(uniform_partition(i)) == SIZE(uniform_partition(nparts - i + 1)) |
Das diesem Bericht zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung, und Forschung unter dem Förderkennzeichen 01IH08004E gefördert. Die Verantwortung für den Inhalt dieser Veröffentlichung liegt beim Autor.