Classes | |
| class | Thyra::LinearOpChanger< Scalar > |
Silly abstract strategy interface for changing Thyra::LinearOpBase objects. More... | |
| class | Thyra::NullLinearOpChanger< Scalar > |
| No-op changer. More... | |
Functions | |
| template<class Scalar> | |
| void | singleLinearSolve (const Thyra::LinearOpBase< Scalar > &A, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Thyra::VectorBase< Scalar > &b, Thyra::VectorBase< Scalar > *x, Teuchos::FancyOStream &out) |
| Performing a single linear solve given a forward operator. | |
| template<class Scalar> | |
| Teuchos::RefCountPtr< Thyra::LinearOpWithSolveBase< Scalar > > | createScaledAdjointLinearOpWithSolve (const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &A, const Scalar &scalar, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, Teuchos::FancyOStream &out) |
Create a LinearOpWithSolveBase object from an implicitly scaled adjoint LinearOpBase object. | |
| template<class Scalar> | |
| void | solveNumericalChangeSolve (Thyra::LinearOpBase< Scalar > *A, const Thyra::LinearOpChanger< Scalar > &opChanger, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Thyra::VectorBase< Scalar > &b1, Thyra::VectorBase< Scalar > *x1, const Thyra::VectorBase< Scalar > &b2, Thyra::VectorBase< Scalar > *x2, Teuchos::FancyOStream &out) |
Create a LinearOpWithSolveBase object and perform a solve, then change the LinearOpBase object and solve again. | |
| template<class Scalar> | |
| void | solveSmallNumericalChangeSolve (Thyra::LinearOpBase< Scalar > *A, const Thyra::LinearOpChanger< Scalar > &opSmallChanger, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Thyra::VectorBase< Scalar > &b1, Thyra::VectorBase< Scalar > *x1, const Thyra::VectorBase< Scalar > &b2, Thyra::VectorBase< Scalar > *x2, Teuchos::FancyOStream &out) |
Create a LinearOpWithSolveBase object and perform a solve, then change the LinearOpBase object in a very small way and solve again. | |
| template<class Scalar> | |
| void | solveMajorChangeSolve (Thyra::LinearOpBase< Scalar > *A, const Thyra::LinearOpChanger< Scalar > &opMajorChanger, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Thyra::VectorBase< Scalar > &b1, Thyra::VectorBase< Scalar > *x1, const Thyra::VectorBase< Scalar > &b2, Thyra::VectorBase< Scalar > *x2, Teuchos::FancyOStream &out) |
Create a LinearOpWithSolveBase object and perform a solve, then change the LinearOpBase object in a very small way and solve again. | |
| template<class Scalar> | |
| Teuchos::RefCountPtr< Thyra::LinearOpWithSolveBase< Scalar > > | createGeneralPreconditionedLinearOpWithSolve (const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &A, const Teuchos::RefCountPtr< const Thyra::PreconditionerBase< Scalar > > &P, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, Teuchos::FancyOStream &out) |
Create a Thyra::LinearOpWithSolveBase object given an externally created preconditioner specified as a Thyra::PreconditionerBase object. | |
| template<class Scalar> | |
| Teuchos::RefCountPtr< Thyra::LinearOpWithSolveBase< Scalar > > | createUnspecifiedPreconditionedLinearOpWithSolve (const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &A, const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &P_op, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, Teuchos::FancyOStream &out) |
Create a Thyra::LinearOpWithSolveBase object given an externally created preconditioner specified as a single Thyra::LinearOpBase object not targeted for the left or right. | |
| template<class Scalar> | |
| Teuchos::RefCountPtr< Thyra::LinearOpWithSolveBase< Scalar > > | createLeftPreconditionedLinearOpWithSolve (const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &A, const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &P_op_left, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, Teuchos::FancyOStream &out) |
Create a Thyra::LinearOpWithSolveBase object given an externally created preconditioner specified as Thyra::LinearOpBase object to be applied on the left. | |
| template<class Scalar> | |
| Teuchos::RefCountPtr< Thyra::LinearOpWithSolveBase< Scalar > > | createRightPreconditionedLinearOpWithSolve (const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &A, const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &P_op_right, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, Teuchos::FancyOStream &out) |
Create a Thyra::LinearOpWithSolveBase object given an externally created preconditioner specified as Thyra::LinearOpBase object to be applied on the right. | |
| template<class Scalar> | |
| Teuchos::RefCountPtr< Thyra::LinearOpWithSolveBase< Scalar > > | createLeftRightPreconditionedLinearOpWithSolve (const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &A, const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &P_op_left, const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &P_op_right, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, Teuchos::FancyOStream &out) |
Create a Thyra::LinearOpWithSolveBase object given an externally created preconditioner specified as left and right Thyra::LinearOpBase objects. | |
| template<class Scalar> | |
| Teuchos::RefCountPtr< Thyra::LinearOpWithSolveBase< Scalar > > | createMatrixPreconditionedLinearOpWithSolve (const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &A, const Teuchos::RefCountPtr< const Thyra::LinearOpBase< Scalar > > &A_approx, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, Teuchos::FancyOStream &out) |
Create a Thyra::LinearOpWithSolveBase object given an approximate forward operator that will be used to create the preconditioner internally. | |
| template<class Scalar> | |
| void | externalPreconditionerReuseWithSolves (Thyra::LinearOpBase< Scalar > *A_inout, const Thyra::LinearOpChanger< Scalar > &opChanger, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Thyra::PreconditionerFactoryBase< Scalar > &precFactory, const Thyra::VectorBase< Scalar > &b1, Thyra::VectorBase< Scalar > *x1, const Thyra::VectorBase< Scalar > &b2, Thyra::VectorBase< Scalar > *x2, Teuchos::FancyOStream &out) |
| Example use case for preconditioner reuse. | |
| template<class Scalar> | |
| void | nonExternallyPreconditionedLinearSolveUseCases (const Thyra::LinearOpBase< Scalar > &A, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, bool supportsAdjoints, Teuchos::FancyOStream &out) |
Combined use cases for the use of a Thyra::LinearOpWithSolveFactoryBase object without an externally set preconditioner. | |
| template<class Scalar> | |
| void | externallyPreconditionedLinearSolveUseCases (const Thyra::LinearOpBase< Scalar > &A, const Thyra::LinearOpWithSolveFactoryBase< Scalar > &lowsFactory, const Thyra::PreconditionerFactoryBase< Scalar > &precFactory, const bool supportsLeftPrec, const bool supportsRightPrec, Teuchos::FancyOStream &out) |
Combined use cases for the use of a Thyra::LinearOpWithSolveFactoryBase object which use an externally set preconditioner. | |
|
||||||||||||||||||||||||||||
|
Performing a single linear solve given a forward operator.
Definition at line 84 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||
|
Create a
Definition at line 111 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||||||||||||||||||
|
Create a
Definition at line 134 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||||||||||||||||||
|
Create a
Definition at line 181 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||||||||||||||||||
|
Create a
Definition at line 227 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||
|
Create a
Definition at line 279 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||
|
Create a
Definition at line 303 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||
|
Create a
Definition at line 332 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||
|
Create a
Definition at line 359 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||||||
|
Create a
Definition at line 386 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||
|
Create a
Definition at line 414 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||||||||||||||||||||||
|
Example use case for preconditioner reuse.
Definition at line 436 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||
|
Combined use cases for the use of a
Definition at line 495 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
|
||||||||||||||||||||||||||||||||
|
Combined use cases for the use of a
Definition at line 548 of file Thyra_LinearOpWithSolveFactoryExamples.hpp. |
1.3.9.1