LinearOpWithSolveBase.
More...
#include <Thyra_LinearOpWithSolveTesterDecl.hpp>
Public Types | |
| typedef Teuchos::ScalarTraits< RangeScalar >::magnitudeType | RangeScalarMag |
| | |
| typedef Teuchos::ScalarTraits< DomainScalar >::magnitudeType | DomainScalarMag |
| | |
| typedef Teuchos::PromotionTraits< RangeScalar, DomainScalar >::promote | Scalar |
| | |
| typedef Teuchos::ScalarTraits< Scalar >::magnitudeType | ScalarMag |
| | |
Public Member Functions | |
| LinearOpWithSolveTester (const bool check_forward_default=true, const RangeScalarMag forward_default_residual_warning_tol=1e-6, const RangeScalarMag forward_default_residual_error_tol=1e-5, const DomainScalarMag forward_default_solution_error_warning_tol=1e-6, const DomainScalarMag forward_default_solution_error_error_tol=1e-5, const bool check_forward_residual=true, const RangeScalarMag forward_residual_solve_tol=1e-5, const RangeScalarMag forward_residual_slack_warning_tol=1e-6, const RangeScalarMag forward_residual_slack_error_tol=1e-5, const bool check_forward_solution_error=true, const RangeScalarMag forward_solution_error_solve_tol=1e-5, const RangeScalarMag forward_solution_error_slack_warning_tol=1e-6, const RangeScalarMag forward_solution_error_slack_error_tol=1e-5, const bool check_adjoint_default=true, const DomainScalarMag adjoint_default_residual_warning_tol=1e-6, const DomainScalarMag adjoint_default_residual_error_tol=1e-5, const RangeScalarMag adjoint_default_solution_error_warning_tol=1e-6, const RangeScalarMag adjoint_default_solution_error_error_tol=1e-5, const bool check_adjoint_residual=true, const DomainScalarMag adjoint_residual_solve_tol=1e-5, const DomainScalarMag adjoint_residual_slack_warning_tol=1e-6, const DomainScalarMag adjoint_residual_slack_error_tol=1e-5, const bool check_adjoint_solution_error=true, const DomainScalarMag adjoint_solution_error_solve_tol=1e-5, const DomainScalarMag adjoint_solution_error_slack_warning_tol=1e-6, const DomainScalarMag adjoint_solution_error_slack_error_tol=1e-5, const int num_random_vectors=1, const bool show_all_tests=false, const bool dump_all=false, const int num_rhs=1) | |
| Default constructor which sets default parameter values. | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, check_forward_default) | |
| Set if a default forward solve will be performed on not. | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, forward_default_residual_warning_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, forward_default_residual_error_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (DomainScalarMag, forward_default_solution_error_warning_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (DomainScalarMag, forward_default_solution_error_error_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, check_forward_residual) | |
| Set if a tolerance on the residual of the forward solve should checked or not. | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, forward_residual_solve_tol) | |
| Set the relative tolerance that will be requested in the residual for the forward solve . | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, forward_residual_slack_warning_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, forward_residual_slack_error_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, check_forward_solution_error) | |
| Set if a tolerance on the solution error of the forward solve should checked or not. | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, forward_solution_error_solve_tol) | |
| Set the relative tolerance that will be requested in the solution_error for the forward solve . | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, forward_solution_error_slack_warning_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, forward_solution_error_slack_error_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, check_adjoint_default) | |
| Set if a default forward solve will be performed on not. | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (DomainScalarMag, adjoint_default_residual_warning_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (DomainScalarMag, adjoint_default_residual_error_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, adjoint_default_solution_error_warning_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, adjoint_default_solution_error_error_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, check_adjoint_residual) | |
| Set if a tolerance on the residual of the adjoint solve should checked or not. | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (DomainScalarMag, adjoint_residual_solve_tol) | |
| Set the relative tolerance that will be requested in the residual in the adjoint solve . | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (DomainScalarMag, adjoint_residual_slack_warning_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (DomainScalarMag, adjoint_residual_slack_error_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, check_adjoint_solution_error) | |
| Set if a tolerance on the solution error of the adjoint solve should checked or not. | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, adjoint_solution_error_solve_tol) | |
| Set the relative tolerance that will be requested in the solution_error for the adjoint solve . | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, adjoint_solution_error_slack_warning_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (RangeScalarMag, adjoint_solution_error_slack_error_tol) | |
| | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (int, num_random_vectors) | |
| Set the number random vectors that is generated during each test. | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, show_all_tests) | |
| Set if all tests are shown or just summaries. | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, dump_all) | |
Set if all of the vectors are dumped or not (only relevant if show_all_tests()==true). | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (int, num_rhs) | |
| Set the number of right-hand-sides in the multivectors. | |
| void | turn_off_all_tests () |
| Turn off all tests so that individual tests can be set. | |
| void | set_all_solve_tol (const ScalarMag solve_tol) |
| Set all the solve tolerances to the same value. | |
| void | set_all_slack_warning_tol (const ScalarMag slack_warning_tol) |
| Set all the warning tolerances to the same value. | |
| void | set_all_slack_error_tol (const ScalarMag slack_error_tol) |
| Set all the error tolerances to the same value. | |
| bool | check (const LinearOpWithSolveBase< RangeScalar, DomainScalar > &op, Teuchos::FancyOStream *out) const |
Check a LinearOpWithSolveBase object. | |
LinearOpWithSolveBase.
This testing class can be used in several different roles:
This class can check single linear solves or multi-RHS (i.e. multi-vector) linear solves.
As a general rule, the client can specify tolerances that are used to determine if a test is successful or not.
The client can pass in randomizer objects that create "random" vectors and multi-vectors that are used by the testing class. This can be very important in some cases and this gives the client full control over what data is used in the tests.
This testing class is not designed to test the LinearOpBase interface. For that purpose, use the LinearOpTester class in conjunction with this testing class to fully validate a LinearOpWithSolveBase object.
ToDo: Finish documentation!
Definition at line 75 of file Thyra_LinearOpWithSolveTesterDecl.hpp.
| typedef Teuchos::ScalarTraits<RangeScalar>::magnitudeType Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::RangeScalarMag |
| typedef Teuchos::ScalarTraits<DomainScalar>::magnitudeType Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::DomainScalarMag |
| typedef Teuchos::PromotionTraits<RangeScalar,DomainScalar>::promote Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::Scalar |
| typedef Teuchos::ScalarTraits<Scalar>::magnitudeType Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::ScalarMag |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::LinearOpWithSolveTester | ( | const bool | check_forward_default = true, |
|
| const RangeScalarMag | forward_default_residual_warning_tol = 1e-6, |
|||
| const RangeScalarMag | forward_default_residual_error_tol = 1e-5, |
|||
| const DomainScalarMag | forward_default_solution_error_warning_tol = 1e-6, |
|||
| const DomainScalarMag | forward_default_solution_error_error_tol = 1e-5, |
|||
| const bool | check_forward_residual = true, |
|||
| const RangeScalarMag | forward_residual_solve_tol = 1e-5, |
|||
| const RangeScalarMag | forward_residual_slack_warning_tol = 1e-6, |
|||
| const RangeScalarMag | forward_residual_slack_error_tol = 1e-5, |
|||
| const bool | check_forward_solution_error = true, |
|||
| const RangeScalarMag | forward_solution_error_solve_tol = 1e-5, |
|||
| const RangeScalarMag | forward_solution_error_slack_warning_tol = 1e-6, |
|||
| const RangeScalarMag | forward_solution_error_slack_error_tol = 1e-5, |
|||
| const bool | check_adjoint_default = true, |
|||
| const DomainScalarMag | adjoint_default_residual_warning_tol = 1e-6, |
|||
| const DomainScalarMag | adjoint_default_residual_error_tol = 1e-5, |
|||
| const RangeScalarMag | adjoint_default_solution_error_warning_tol = 1e-6, |
|||
| const RangeScalarMag | adjoint_default_solution_error_error_tol = 1e-5, |
|||
| const bool | check_adjoint_residual = true, |
|||
| const DomainScalarMag | adjoint_residual_solve_tol = 1e-5, |
|||
| const DomainScalarMag | adjoint_residual_slack_warning_tol = 1e-6, |
|||
| const DomainScalarMag | adjoint_residual_slack_error_tol = 1e-5, |
|||
| const bool | check_adjoint_solution_error = true, |
|||
| const DomainScalarMag | adjoint_solution_error_solve_tol = 1e-5, |
|||
| const DomainScalarMag | adjoint_solution_error_slack_warning_tol = 1e-6, |
|||
| const DomainScalarMag | adjoint_solution_error_slack_error_tol = 1e-5, |
|||
| const int | num_random_vectors = 1, |
|||
| const bool | show_all_tests = false, |
|||
| const bool | dump_all = false, |
|||
| const int | num_rhs = 1 | |||
| ) |
Default constructor which sets default parameter values.
Note: It is not recommended that the client pass in values in this constructor since the argument list may change in the near future but instead use the below set functions to change an option after construction.
Definition at line 43 of file Thyra_LinearOpWithSolveTester.hpp.
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | bool | , | |
| check_forward_default | ||||
| ) |
Set if a default forward solve will be performed on not.
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| forward_default_residual_warning_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| forward_default_residual_error_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | DomainScalarMag | , | |
| forward_default_solution_error_warning_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | DomainScalarMag | , | |
| forward_default_solution_error_error_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | bool | , | |
| check_forward_residual | ||||
| ) |
Set if a tolerance on the residual of the forward solve should checked or not.
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| forward_residual_solve_tol | ||||
| ) |
Set the relative tolerance that will be requested in the residual for the forward solve .
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| forward_residual_slack_warning_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| forward_residual_slack_error_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | bool | , | |
| check_forward_solution_error | ||||
| ) |
Set if a tolerance on the solution error of the forward solve should checked or not.
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| forward_solution_error_solve_tol | ||||
| ) |
Set the relative tolerance that will be requested in the solution_error for the forward solve .
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| forward_solution_error_slack_warning_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| forward_solution_error_slack_error_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | bool | , | |
| check_adjoint_default | ||||
| ) |
Set if a default forward solve will be performed on not.
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | DomainScalarMag | , | |
| adjoint_default_residual_warning_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | DomainScalarMag | , | |
| adjoint_default_residual_error_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| adjoint_default_solution_error_warning_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| adjoint_default_solution_error_error_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | bool | , | |
| check_adjoint_residual | ||||
| ) |
Set if a tolerance on the residual of the adjoint solve should checked or not.
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | DomainScalarMag | , | |
| adjoint_residual_solve_tol | ||||
| ) |
Set the relative tolerance that will be requested in the residual in the adjoint solve .
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | DomainScalarMag | , | |
| adjoint_residual_slack_warning_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | DomainScalarMag | , | |
| adjoint_residual_slack_error_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | bool | , | |
| check_adjoint_solution_error | ||||
| ) |
Set if a tolerance on the solution error of the adjoint solve should checked or not.
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| adjoint_solution_error_solve_tol | ||||
| ) |
Set the relative tolerance that will be requested in the solution_error for the adjoint solve .
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| adjoint_solution_error_slack_warning_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | RangeScalarMag | , | |
| adjoint_solution_error_slack_error_tol | ||||
| ) |
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | int | , | |
| num_random_vectors | ||||
| ) |
Set the number random vectors that is generated during each test.
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | bool | , | |
| show_all_tests | ||||
| ) |
Set if all tests are shown or just summaries.
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | bool | , | |
| dump_all | ||||
| ) |
Set if all of the vectors are dumped or not (only relevant if show_all_tests()==true).
| Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | int | , | |
| num_rhs | ||||
| ) |
Set the number of right-hand-sides in the multivectors.
| void Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::turn_off_all_tests | ( | ) |
Turn off all tests so that individual tests can be set.
Postconditions:
Definition at line 108 of file Thyra_LinearOpWithSolveTester.hpp.
| void Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::set_all_solve_tol | ( | const ScalarMag | solve_tol | ) |
Set all the solve tolerances to the same value.
Postconditions:
Definition at line 119 of file Thyra_LinearOpWithSolveTester.hpp.
| void Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::set_all_slack_warning_tol | ( | const ScalarMag | slack_warning_tol | ) |
Set all the warning tolerances to the same value.
Postconditions:
Definition at line 129 of file Thyra_LinearOpWithSolveTester.hpp.
| void Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::set_all_slack_error_tol | ( | const ScalarMag | slack_error_tol | ) |
Set all the error tolerances to the same value.
Postconditions:
Definition at line 142 of file Thyra_LinearOpWithSolveTester.hpp.
| bool Thyra::LinearOpWithSolveTester< RangeScalar, DomainScalar >::check | ( | const LinearOpWithSolveBase< RangeScalar, DomainScalar > & | op, | |
| Teuchos::FancyOStream * | out | |||
| ) | const |
Check a LinearOpWithSolveBase object.
ToDo: Finish documentation!
Definition at line 155 of file Thyra_LinearOpWithSolveTester.hpp.
1.4.7