LIP_CREATE_HILBERT_DISTRIBUTION_IN_CORE(datamap,new_datamap, coordinatesX, coordinatesY, coordinatesZ, vertex, edge, minedge, sample_count) |
IN | datamap | current distribution (handle) |
---|---|---|
OUT | new_datamap | new (irregular) distribution (handle) |
IN | coordinatesX | X coordinates of points in data array(double) |
IN | coordinatesY | Y coordinates of points in data array (double) |
IN | coordinatesZ | Z coordinates of points in data array |
can be null in 2D case (double) | ||
IN | vertex | the coordinates of the vertex needed for counting |
Hilbert's indices (handle) | ||
IN | edge | the length of edge of the square 2D (or cube 3D) |
needed for counting Hilbert indices (double) | ||
IN | minedge | resolution of the indexing scheme |
(the length of the minimal distance between points | ||
that are distinguished by Hilbert's | ||
indexing scheme) | ||
IN | sample_count | the quantity of the sample |
needed for counting Hilbert indices (integer) |
C syntax:
int LIP_create_hilbert_distribution_in_core
(LIP_Datamap datamap, LIP_Datamap *new_datamap, double *coX, double
*coY,
double *coZ,
double* vertex, double edge, double minedge, int sample_count)
|
Java syntax:
Class Datamap:
public void create_hilbert_distribution_in_core (Datamap datamap,
VDouble coX, VDouble coY, VDouble coZ, VDouble vertex, double edge,
double minedge, int samplecount)
|
LIP_CREATE_HILBERT_DISTRIBUTION_IN_CORE creates a new_datamap object which contains a translation table that describes how a data array is partitioned among processors. Only a part of the translation table is filled - the ranks of processors that are the new owners of the data are written to the new_datamap. This is the in-core version of the algorithm that assumes that the data arrays and the translation table are in-core. To obtain the local indices of the data one should call remap function(see below).
Next: LIP_CREATE_HILBERT_DISTRIBUTION_OOC
Up: Irregular Partitioner
Previous: Irregular Partitioner