Fabric class for BramblePasciak.
More...
#include <bramblePasciakFabric.hh>


Public Member Functions | |
| BramblePasciakFabric (concepts::Operator< Real > &A, concepts::Operator< Real > &B, concepts::Operator< Real > &Bt, concepts::Operator< Real > &C, concepts::Operator< Real > &W, Real maxeps=EPS, int maxit=0, uint relres=0) | |
| Constructor. | |
| virtual Operator< Real > * | operator() (SparseMatrix< Real > &matrix) |
| virtual concepts::Operator < Real > * | operator() (concepts::Operator< Real > &matrix) |
Creates a linear solver from matrix. | |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Private Attributes | |
| concepts::Operator< Real > & | A_ |
| Upper left submatrix. | |
| concepts::Operator< Real > & | B_ |
| Upper right submatrix. | |
| concepts::Operator< Real > & | Bt_ |
| Lower left submatrix. | |
| concepts::Operator< Real > & | C_ |
| Lower right submatrix. | |
| Real | maxeps_ |
| Convergence criteria for the solver. | |
| int | maxit_ |
| Convergence criteria for the solver. | |
| uint | relres_ |
| relres = 0: absolute residual, relres = 1: relative residual | |
| concepts::Operator< Real > & | W_ |
| Preconditioner for A. | |
Fabric class for BramblePasciak.
Caution: As the class BramblePasciak requires the submatrices for constructing a solver and not the full matrix, the fabric returns a solver for the system specified at construction time, not for the system specified when asking for a solver. This Trojan Horse behaviour is a workaround.
Definition at line 30 of file bramblePasciakFabric.hh.
| vectorial::BramblePasciakFabric::BramblePasciakFabric | ( | concepts::Operator< Real > & | A, |
| concepts::Operator< Real > & | B, | ||
| concepts::Operator< Real > & | Bt, | ||
| concepts::Operator< Real > & | C, | ||
| concepts::Operator< Real > & | W, | ||
| Real | maxeps = EPS, |
||
| int | maxit = 0, |
||
| uint | relres = 0 |
||
| ) | [inline] |
Constructor.
| maxeps | Maximal residual |
| maxit | Maximal number of iterations |
| rs | Restart |
| relres | 0: absolute residual, 1: relative residual |
Definition at line 38 of file bramblePasciakFabric.hh.
| virtual std::ostream& vectorial::BramblePasciakFabric::info | ( | std::ostream & | os | ) | const [inline, protected, virtual] |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
Definition at line 53 of file bramblePasciakFabric.hh.
| virtual Operator<Real >* concepts::SolverFabric< Real >::operator() | ( | SparseMatrix< Real > & | matrix | ) | [inline, virtual, inherited] |
| virtual concepts::Operator<Real>* vectorial::BramblePasciakFabric::operator() | ( | concepts::Operator< Real > & | matrix | ) | [inline, virtual] |
Creates a linear solver from matrix.
The caller is responsible for the deletion of the delivered object.
Implements concepts::SolverFabric< Real >.
Definition at line 48 of file bramblePasciakFabric.hh.
concepts::Operator<Real>& vectorial::BramblePasciakFabric::A_ [private] |
Upper left submatrix.
Definition at line 59 of file bramblePasciakFabric.hh.
concepts::Operator<Real>& vectorial::BramblePasciakFabric::B_ [private] |
Upper right submatrix.
Definition at line 61 of file bramblePasciakFabric.hh.
concepts::Operator<Real>& vectorial::BramblePasciakFabric::Bt_ [private] |
Lower left submatrix.
Definition at line 63 of file bramblePasciakFabric.hh.
concepts::Operator<Real>& vectorial::BramblePasciakFabric::C_ [private] |
Lower right submatrix.
Definition at line 65 of file bramblePasciakFabric.hh.
Real vectorial::BramblePasciakFabric::maxeps_ [private] |
Convergence criteria for the solver.
Definition at line 69 of file bramblePasciakFabric.hh.
int vectorial::BramblePasciakFabric::maxit_ [private] |
Convergence criteria for the solver.
Definition at line 71 of file bramblePasciakFabric.hh.
uint vectorial::BramblePasciakFabric::relres_ [private] |
relres = 0: absolute residual, relres = 1: relative residual
Definition at line 73 of file bramblePasciakFabric.hh.
concepts::Operator<Real>& vectorial::BramblePasciakFabric::W_ [private] |
Preconditioner for A.
Definition at line 67 of file bramblePasciakFabric.hh.