New Data Structures
-
Distribution classes
-
Distributed vectors
-
Distributed matrices
-
Parametrizable with non-distributed matrix class
-
Parametrizable with two distribution classes
-
-
Distributed vector inserter
-
Values can be inserted with global indices
-
Local entries are inserted directly and remote values communicated at the end of the insertion phase (when the inserter object is destroyed)
-
Parametrizable with update function
-
-
Distributed matrix inserter
-
Same features as distributed vector inserter
-
At the end of insertion buffers for distributed matrix vector product are prepared (like in PETSc)
-
No exact information on quantity and location of non-zero entries are needed (opposed to PETSc), only the single filling parameter for the local matrix inserter
-
-
Generic block preconditioner, provides distributed
-
Diagonal
-
ILU(0)
-
IC(0)
-
-
Migration classes: distribution
-
Currently only implemented from block to block distribution
-
Extreme easy usage in constructors:
-
Reverse migration. For instance to map results back to original indexing from FEM tool
-
-
Single output stream
-
For instance
sout << “Matrix A is\n” << A << “v is “ << v << ‘\n’;
prints matrix A and vector v only once
-
Works also with distributed matrices and vectors
-
Can be used for file output as well
-
-
Multiple output stream
-
For instance
mout << “alpha is “ << alpha << ‘\n’;
prints a message for each processor with processor number
-