Feel++
0.91.4
|
Petsc preconditioner class. More...
#include <preconditionerpetsc.hpp>
Public Member Functions | |
Constructors, destructor | |
PreconditionerPetsc () | |
default constructor | |
PreconditionerPetsc (PreconditionerPetsc const &) | |
copy constructor | |
virtual | ~PreconditionerPetsc () |
destructor | |
virtual void | clear () |
virtual void | init () |
Operator overloads | |
PreconditionerPetsc & | operator= (PreconditionerPetsc const &o) |
copy operator | |
Accessors | |
PC | pc () |
Methods | |
virtual void | apply (const Vector< T > &x, Vector< T > &y) |
Static Public Member Functions | |
static void | setPetscSubpreconditionerType (const PCType type, PC &pc) |
Mutators | |
static void | setPetscPreconditionerType (const PreconditionerType &preconditioner_type, PC &pc) |
Public Attributes | |
PC | M_pc |
Mat | M_mat |
Petsc preconditioner class.
void Feel::PreconditionerPetsc< T >::apply | ( | const Vector< T > & | x, |
Vector< T > & | y | ||
) | [virtual] |
Computes the preconditioned vector "y" based on input "x". Usually by solving Py=x to get the action of P^-1 x.
Implements Feel::Preconditioner< T >.
virtual void Feel::PreconditionerPetsc< T >::clear | ( | ) | [inline, virtual] |
Release all memory and clear data structures.
Reimplemented from Feel::Preconditioner< T >.
void Feel::PreconditionerPetsc< T >::init | ( | ) | [virtual] |
Initialize data structures if not done so already.
Reimplemented from Feel::Preconditioner< T >.
PC Feel::PreconditionerPetsc< T >::pc | ( | ) | [inline] |
Returns the actual Petsc PC struct. Useful for more advanced purposes
References Feel::PreconditionerPetsc< T >::M_pc.
void Feel::PreconditionerPetsc< T >::setPetscPreconditionerType | ( | const PreconditionerType & | preconditioner_type, |
PC & | pc | ||
) | [static] |
Tells PETSC to use the user-specified preconditioner
Mat Feel::PreconditionerPetsc< T >::M_mat |
Petsc Matrix that's been pulled out of the _matrix object. This happens during init...
Referenced by Feel::PreconditionerPetsc< T >::operator=().
PC Feel::PreconditionerPetsc< T >::M_pc |
Preconditioner context
Referenced by Feel::PreconditionerPetsc< T >::operator=(), and Feel::PreconditionerPetsc< T >::pc().