SkelGIS
3.0
|
DMatrix_impl class. More...
#include <dmatrix_impl.hpp>
Public Member Functions | |
DMatrix_impl () | |
default constructor of the distributed matrix interface | |
DMatrix_impl (HEADER h, const T value, bool loc=false) | |
constructor of the distributed matrix | |
DMatrix_impl (const char *binFile, bool loc=false) | |
constructor of the distributed matrix | |
~DMatrix_impl () | |
destructor of the distributed matrix | |
iterator< T, 0 > | begin () |
Get the beginning iterator of the DMatrix (on the first element of the DMatrix) | |
iterator_cont< T, 0 > | begin_cont () |
iterator_step< T, 0 > | begin_step (int step, int nb) |
iterator_rev< T, 0 > | begin_rev () |
iterator_line< T, 0 > | begin_line () |
iterator< T, 0 > | end () |
Get the ending iterator of the DMatrix (on the last element of the DMatrix) | |
iterator_cont< T, 0 > | end_cont () |
iterator_step< T, 0 > | end_step () |
iterator_rev< T, 0 > | end_rev () |
iterator_line< T, 0 > | end_line () |
iterator< T, 0 > | getIterator (int col, int li) |
get the iterator on the matrix at position (x,y) | |
iterator_cont< T, 0 > | getIterator_cont (int col, int li) |
get the iterator contiguous on the matrix at position (x,y) | |
iterator_rev< T, 0 > | getIterator_rev (int col, int li) |
get the iterator reverse on the matrix at position (x,y) | |
void | getIndexes (iterator< T, 0 > it, int &col, int &li) |
get the indexes of the iterator on the matrix | |
void | getIndexes (iterator_cont< T, 0 > it, int &col, int &li) |
void | getIndexes (iterator_rev< T, 0 > it, int &col, int &li) |
void | print () |
Print the matrix by bloc. | |
void | write (char *binFile) |
Write the zone file concerned for the current MPI process. | |
Protected Member Functions | |
void | create () |
Creation of the ditributed matrix. | |
void | initValues (T value) |
Values initialization of the elements of the DMatrix_impl. | |
void | read (const char *binFile) |
Read the zone of the binary file concerned for the current MPI process. | |
void | indexesIt (unsigned int rank, int &col, int &li) |
Get the indexes associated to a precise rank. |
DMatrix_impl class.
template of the distributed matrix implementation of SkelGIS. This is the second specialization of the DMatrix_impl.
T | is the type of data to store in the DMatrix_impl R overlap template parameter is not asked and specialized to 0. The default value of line is used (true). |
Definition at line 1481 of file dmatrix_impl.hpp.
skelgis::DMatrix_impl< T, 0, true >::DMatrix_impl | ( | HEADER | h, |
const T | value, | ||
bool | loc = false |
||
) | [inline] |
constructor of the distributed matrix
This constructor will simply allocate the good space.
h | is the header to use to build your matrix |
value | is the default value to put in the matrix |
loc | is a boolean value to indicate if the DMatrix_impl has to stay local to one MPI process (used in ApplyReduction). |
Definition at line 1618 of file dmatrix_impl.hpp.
skelgis::DMatrix_impl< T, 0, true >::DMatrix_impl | ( | const char * | binFile, |
bool | loc = false |
||
) | [inline] |
constructor of the distributed matrix
The constructor evaluate how to divide the matrix in submatrice and do the work.
binFile | is the path of the binary file you want to work on |
loc | is a boolean value to indicate if the DMatrix_impl has to stay local to one MPI process (used in ApplyReduction). |
Definition at line 1634 of file dmatrix_impl.hpp.
iterator<T,0> skelgis::DMatrix_impl< T, 0, true >::begin | ( | ) | [inline] |
Get the beginning iterator of the DMatrix (on the first element of the DMatrix)
This method exists for each type of iterator in SkelGIS.
Definition at line 1659 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, true >::create | ( | ) | [inline, protected] |
Creation of the ditributed matrix.
Data distribution and construction of the parallel data structure.
Definition at line 1492 of file dmatrix_impl.hpp.
iterator<T,0> skelgis::DMatrix_impl< T, 0, true >::end | ( | ) | [inline] |
Get the ending iterator of the DMatrix (on the last element of the DMatrix)
This method exists for each type of iterator in SkelGIS.
Definition at line 1671 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, true >::getIndexes | ( | iterator< T, 0 > | it, |
int & | col, | ||
int & | li | ||
) | [inline] |
get the indexes of the iterator on the matrix
it | is the iterator from which the indexes will be taken |
x | is the iterator position x returned |
y | is the iterator position y returned |
Definition at line 1731 of file dmatrix_impl.hpp.
iterator<T,0> skelgis::DMatrix_impl< T, 0, true >::getIterator | ( | int | col, |
int | li | ||
) | [inline] |
get the iterator on the matrix at position (x,y)
x | is row index y is column index |
Definition at line 1683 of file dmatrix_impl.hpp.
iterator_cont<T,0> skelgis::DMatrix_impl< T, 0, true >::getIterator_cont | ( | int | col, |
int | li | ||
) | [inline] |
get the iterator contiguous on the matrix at position (x,y)
x | is row index y is column index |
Definition at line 1699 of file dmatrix_impl.hpp.
iterator_rev<T,0> skelgis::DMatrix_impl< T, 0, true >::getIterator_rev | ( | int | col, |
int | li | ||
) | [inline] |
get the iterator reverse on the matrix at position (x,y)
x | is row index y is column index |
Definition at line 1715 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, true >::indexesIt | ( | unsigned int | rank, |
int & | col, | ||
int & | li | ||
) | [inline, protected] |
Get the indexes associated to a precise rank.
rank | is the rank at which the indexes values are wanted |
col | is the column return value |
li | is the line return value |
Definition at line 1597 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, true >::initValues | ( | T | value | ) | [inline, protected] |
Values initialization of the elements of the DMatrix_impl.
value | is the value to set to the elements |
Definition at line 1548 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, true >::read | ( | const char * | binFile | ) | [inline, protected] |
Read the zone of the binary file concerned for the current MPI process.
binFile | is binary file to read |
Definition at line 1562 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, true >::write | ( | char * | binFile | ) | [inline] |
Write the zone file concerned for the current MPI process.
write the MPI prcess zone, and spread the data in the subMatrices OpenMP only one submatrice if OpenMP is disabled
binFile | is binary file to write in |
Definition at line 1759 of file dmatrix_impl.hpp.