|
DOLFIN
DOLFIN C++ interface
|
#include <PETScDMCollection.h>


Public Member Functions | |
| PETScDMCollection (std::vector< std::shared_ptr< const FunctionSpace >> function_spaces) | |
| ~PETScDMCollection () | |
| Destructor. | |
| DM | get_dm (int i) |
| void | check_ref_count () const |
| These are test/debugging functions that will be removed. | |
| void | reset (int i) |
| Debugging use - to be removed. | |
Public Member Functions inherited from dolfin::PETScObject | |
| PETScObject () | |
| Constructor. Ensures that PETSc has been initialised. | |
| virtual | ~PETScObject () |
| Destructor. | |
Static Public Member Functions | |
| static std::shared_ptr< PETScMatrix > | create_transfer_matrix (const FunctionSpace &coarse_space, const FunctionSpace &fine_space) |
Static Public Member Functions inherited from dolfin::PETScObject | |
| static void | petsc_error (int error_code, std::string filename, std::string petsc_function) |
| Print error message for PETSc calls that return an error. | |
This class builds and stores of collection of PETSc DM objects from a hierarchy of FunctionSpaces objects. The DM objects are used to construct multigrid solvers via PETSc.
Warning: This classs is highly experimental and will change
| PETScDMCollection::PETScDMCollection | ( | std::vector< std::shared_ptr< const FunctionSpace >> | function_spaces | ) |
Construct PETScDMCollection from a vector of FunctionSpaces. The vector of FunctionSpaces is stored from coarse to fine.
|
static |
Create the interpolation matrix from the coarse to the fine space (prolongation matrix)
| DM PETScDMCollection::get_dm | ( | int | i | ) |
Return the ith DM objects. The coarest DM has index 0. Use i=-1 to get the DM for the finest level, i=-2 for the DM for the second finest level, etc.
1.8.11