This linear operator computes the inverse of a lower triangular matrix. More...
#include <Teko_BlockLowerTriInverseOp.hpp>

Public Member Functions | |
| BlockLowerTriInverseOp (BlockedLinearOp &L, const std::vector< LinearOp > &invDiag) | |
| This constructor explicitly takes a lower triangular matrix and inverse diagonal operators and builds a forward substitution operator. More... | |
Inherited methods from Thyra::LinearOpBase | |
| virtual VectorSpace | range () const |
| Range space of this operator. More... | |
| virtual VectorSpace | domain () const |
| Domain space of this operator. More... | |
| virtual void | implicitApply (const BlockedMultiVector &x, BlockedMultiVector &y, const double alpha=1.0, const double beta=0.0) const |
| Perform a matrix vector multiply with this operator. More... | |
Public Member Functions inherited from Teko::BlockImplicitLinearOp | |
| virtual void | implicitApply (const Thyra::EOpTransp M_trans, const BlockedMultiVector &x, BlockedMultiVector &y, const double alpha=1.0, const double beta=0.0) const |
| Perform a matrix vector multiply with this implicitly defined blocked operator. More... | |
Protected Attributes | |
| const BlockedLinearOp | L_ |
operator More... | |
| std::vector< LinearOp > | invDiag_ |
| (Approximate) Inverses of the diagonal operators More... | |
| Teuchos::RCP< const Thyra::ProductVectorSpaceBase < double > > | productRange_ |
| Range vector space. More... | |
| Teuchos::RCP< const Thyra::ProductVectorSpaceBase < double > > | productDomain_ |
| Domain vector space. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Teko::BlockImplicitLinearOp | |
| virtual bool | opSupportedImpl (const Thyra::EOpTransp M_trans) const |
| Functions required by Thyra::LinearOpBase. More... | |
This linear operator computes the inverse of a lower triangular matrix.
This linear operator computes the inverse of a lower triangular matrix. This requires, the lower triangular blocks, as well as the inverse of the operators on the diagonal.
Definition at line 63 of file Teko_BlockLowerTriInverseOp.hpp.
| Teko::BlockLowerTriInverseOp::BlockLowerTriInverseOp | ( | BlockedLinearOp & | L, |
| const std::vector< LinearOp > & | invDiag | ||
| ) |
This constructor explicitly takes a lower triangular matrix and inverse diagonal operators and builds a forward substitution operator.
This constructor explicitly takes a lower triangular matrix and inverse diagonal operators and builds a forward substitution operator.
| [in] | L | Lower triangular matrix object |
| [in] | invDiag | Vector containing the inverse of the diagonal blocks |
Definition at line 55 of file Teko_BlockLowerTriInverseOp.cpp.
|
inlinevirtual |
Range space of this operator.
Implements Teko::BlockImplicitLinearOp.
Definition at line 82 of file Teko_BlockLowerTriInverseOp.hpp.
|
inlinevirtual |
Domain space of this operator.
Implements Teko::BlockImplicitLinearOp.
Definition at line 85 of file Teko_BlockLowerTriInverseOp.hpp.
|
virtual |
Perform a matrix vector multiply with this operator.
The apply function takes one vector as input and applies the inverse
decomposition. The result is returned in
. If this operator is reprsented as
then
(ignoring conjugation!).
| [in] | x | |
| [in,out] | y | |
| [in] | alpha | (default=1) |
| [in] | beta | (default=0) |
Implements Teko::BlockImplicitLinearOp.
Definition at line 86 of file Teko_BlockLowerTriInverseOp.cpp.
|
protected |
operator
Definition at line 108 of file Teko_BlockLowerTriInverseOp.hpp.
|
protected |
(Approximate) Inverses of the diagonal operators
Definition at line 109 of file Teko_BlockLowerTriInverseOp.hpp.
|
protected |
Range vector space.
Definition at line 111 of file Teko_BlockLowerTriInverseOp.hpp.
|
protected |
Domain vector space.
Definition at line 112 of file Teko_BlockLowerTriInverseOp.hpp.
1.8.5