Public Member Functions | |
MGCoarseGridHouseholder (const FullMatrix< number > *A=0) | |
void | initialize (const FullMatrix< number > &A) |
void | clear () |
void | operator() (const unsigned int level, VECTOR &dst, const VECTOR &src) const |
Private Attributes | |
Householder< number > | householder |
Coarse grid solver by QR factorization
This is a direct solver for possibly indefinite coarse grid problems, using the least_squares
function of the class FullMatrix.
Since the currently implemented Householder algorithm transforms the right hand side immediately, the transformation has to be computed for each coarse grid solution. Therefore, this coarse grid solver may be inefficient for larger coarse grid systems.
MGCoarseGridHouseholder< number, VECTOR >::MGCoarseGridHouseholder | ( | const FullMatrix< number > * | A = 0 |
) |
Constructor, taking the coarse grid matrix.
void MGCoarseGridHouseholder< number, VECTOR >::initialize | ( | const FullMatrix< number > & | A | ) |
Initialize for a new matrix.
void MGCoarseGridHouseholder< number, VECTOR >::clear | ( | ) |
Release matrix pointer.
void MGCoarseGridHouseholder< number, VECTOR >::operator() | ( | const unsigned int | level, | |
VECTOR & | dst, | |||
const VECTOR & | src | |||
) | const [virtual] |
Solution operator, defined in the base class.
Implements MGCoarseGridBase< VECTOR >.
Householder<number> MGCoarseGridHouseholder< number, VECTOR >::householder [private] |
Matrix for QR-factorization.