![]() |
G+Smo
25.01.0
Geometry + Simulation Modules
|
Richardson preconditioner.
Inheritance diagram for gsRichardsonOp< MatrixType >:
Collaboration diagram for gsRichardsonOp< MatrixType >:Public Types | |
| typedef gsPreconditionerOp< T > | Base |
| Base class. | |
| typedef gsLinearOperator< MatrixType::Scalar >::Ptr | BasePtr |
| Base class. | |
| typedef memory::shared_ptr< gsRichardsonOp > | Ptr |
| Shared pointer for gsRichardsonOp. | |
| typedef MatrixType::Scalar | T |
| Scalar type. | |
| typedef memory::unique_ptr< gsRichardsonOp > | uPtr |
| Unique pointer for gsRichardsonOp. | |
Public Member Functions | |
| virtual void | apply (const gsMatrix< T > &input, gsMatrix< T > &x) const =0 |
| apply the operator on the input vector and store the result in x | |
| index_t | cols () const |
| Returns the number of columns of the operator. | |
| MatrixType::Scalar | estimateLargestEigenvalueOfPreconditionedSystem (index_t steps=10) const |
| Estimates the largest eigenvalue of \( PA \). | |
| void | getDamping () |
| Get damping parameter. | |
| gsRichardsonOp (const MatrixPtr &mat, T tau=1) | |
| Constructor with shared pointer to matrix. | |
| gsRichardsonOp (const MatrixType &mat, T tau=1) | |
| Constructor with given matrix. | |
| NestedMatrix | matrix () const |
| Returns the matrix. | |
| MatrixPtr | matrixPtr () const |
| Returns a shared pinter to the matrix. | |
| index_t | numOfSweeps () |
| Get the number of sweeps to be applied in the member function apply. | |
| index_t | rows () const |
| Returns the number of rows of the operator. | |
| void | setDamping (const T tau) |
| Set damping parameter. | |
| void | setNumOfSweeps (index_t n) |
| Set the number of sweeps to be applied in the member function apply. | |
| virtual void | setOptions (const gsOptionList &opt) |
| Set options based on a gsOptionList object. | |
| void | step (const gsMatrix< T > &rhs, gsMatrix< T > &x) const |
| Apply the method for given right hand side and current iterate. | |
| virtual void | stepT (const gsMatrix< MatrixType::Scalar > &rhs, gsMatrix< MatrixType::Scalar > &x) const |
| Apply the transposed variant of the method for given right hand side and current iterate. | |
| gsLinearOperator< T >::Ptr | underlyingOp () const |
| Return the underlying operator \( A \). | |
Static Public Member Functions | |
| static gsOptionList | defaultOptions () |
| Get the default options as gsOptionList object. | |
| static gsIdentityOp< T > | Identity (const index_t dim) |
| Identity operator. | |
Private Attributes | |
| NestedMatrix | m_expr |
| Nested Eigen expression. | |
| const MatrixPtr | m_mat |
| Shared pointer to matrix (if needed) | |
Related Symbols | |
(Note that these are not member symbols.) | |
| template<class Derived > | |
| gsRichardsonOp< Derived >::uPtr | makeRichardsonOp (const gsEigen::EigenBase< Derived > &mat, typename Derived::Scalar tau=1) |
| Returns a smart pointer to a Richardson operator referring on mat. | |
| template<class Derived > | |
| gsRichardsonOp< Derived >::uPtr | makeRichardsonOp (const memory::shared_ptr< Derived > &mat, typename Derived::Scalar tau=1) |
| Returns a smart pointer to a Richardson operator referring on mat. | |
|
pure virtualinherited |
apply the operator on the input vector and store the result in x
| input | Input vector |
| x | result vector |
Implemented in gsIterativeSolverOp< SolverType >, gsBlockOp< T >, gsINSPrecondBlockF< T, MatOrder >, gsINSPrecondBlockFwhole< T, MatOrder >, gsINSPrecondBlockFdiag< T, MatOrder >, gsINSPrecondBlockFmod< T, MatOrder >, gsINSBlockPrecondBase< T, MatOrder >, gsINSBlockPrecondSIMPLE< T, MatOrder, BlockFType >, gsINSBlockPrecondSIMPLE< T, MatOrder, gsINSPrecondBlockF< T, MatOrder > >, gsINSBlockPrecondSIMPLER< T, MatOrder, BlockFType >, gsINSBlockPrecondMSIMPLER< T, MatOrder, BlockFType >, gsBlockPrecondStokes< T, MatOrder, BlockFType >, gsAdditiveOp< T >, gsKroneckerOp< T >, gsScaledOp< T >, gsIdentityOp< T >, gsLinearLambdaOp< T, L >, gsMatrixOp< MatrixType >, gsSolverOp< SolverType >, gsPreconditionerOp< T >, gsProductOp< T >, gsSumOp< T >, and gsPreconditionerFromOp< T >.
|
inlineinherited |
Estimates the largest eigenvalue of \( PA \).
| steps | Number of steps to be performed. |
|
inlinevirtual |
Apply the method for given right hand side and current iterate.
| rhs | Right hand side vector |
| x | Current iterate vector |
Implements gsPreconditionerOp< MatrixType::Scalar >.
|
inlinevirtualinherited |
Apply the transposed variant of the method for given right hand side and current iterate.
| rhs | Right hand side vector |
| x | Current iterate vector |
Reimplemented in gsGaussSeidelOp< MatrixType, ordering >.