|
Thyra
Version of the Day
|
Simple dampended Newton solver using a Armijo line search :-) More...
#include <Thyra_DampenedNewtonNonlinearSolver.hpp>

Public Types | |
| typedef Teuchos::ScalarTraits < Scalar > | ST |
| typedef ST::magnitudeType | ScalarMag |
| typedef Teuchos::ScalarTraits < ScalarMag > | SMT |
Public Member Functions | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (ScalarMag, defaultTol) | |
| The default solution tolerance. More... | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (int, defaultMaxNewtonIterations) | |
| The default maximum number of iterations. More... | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, useDampenedLineSearch) | |
| The default maximum number of iterations. More... | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (Scalar, armijoConstant) | |
| Set the armijo constant for the line search. More... | |
| STANDARD_MEMBER_COMPOSITION_MEMBERS (int, maxLineSearchIterations) | |
| Set the maximum number of backtracking line search iterations to take. More... | |
| DampenedNewtonNonlinearSolver (const ScalarMag defaultTol=1e-2, const int defaultMaxNewtonIterations=1000, const bool useDampenedLineSearch=true, const Scalar armijoConstant=1e-4, const int maxLineSearchIterations=20) | |
Public Member Functions inherited from Thyra::NonlinearSolverBase< Scalar > | |
| virtual bool | supportsCloning () const |
| Return if this solver object supports cloning or not. More... | |
| virtual RCP < NonlinearSolverBase< Scalar > > | cloneNonlinearSolver () const |
| Clone the solver algorithm if supported. More... | |
Static Public Member Functions | |
| static RCP< const Teuchos::ParameterList > | getValidSolveCriteriaExtraParameters () |
Overridden from ParameterListAcceptor | |
| void | setParameterList (RCP< Teuchos::ParameterList > const ¶mList) |
| RCP< Teuchos::ParameterList > | getNonconstParameterList () |
| RCP< Teuchos::ParameterList > | unsetParameterList () |
| RCP< const Teuchos::ParameterList > | getParameterList () const |
| RCP< const Teuchos::ParameterList > | getValidParameters () const |
Overridden from NonlinearSolverBase | |
| void | setModel (const RCP< const ModelEvaluator< Scalar > > &model) |
| RCP< const ModelEvaluator < Scalar > > | getModel () const |
| SolveStatus< Scalar > | solve (VectorBase< Scalar > *x, const SolveCriteria< Scalar > *solveCriteria, VectorBase< Scalar > *delta) |
| RCP< const VectorBase< Scalar > > | get_current_x () const |
| bool | is_W_current () const |
| RCP< LinearOpWithSolveBase < Scalar > > | get_nonconst_W (const bool forceUpToDate) |
| RCP< const LinearOpWithSolveBase< Scalar > > | get_W () const |
| void | set_W_is_current (bool W_is_current) |
Additional Inherited Members | |
Related Functions inherited from Thyra::NonlinearSolverBase< Scalar > | |
| template<class Scalar > | |
| const SolveStatus< Scalar > | solve (NonlinearSolverBase< Scalar > &nonlinearSolver, VectorBase< Scalar > *x, const SolveCriteria< Scalar > *solveCriteria=NULL, VectorBase< Scalar > *delta=NULL) |
Simple dampended Newton solver using a Armijo line search :-)
This class derives from Teuchos::VerboseObject and therefore will send output to *this->getOStream() if !Teuchos::isNull(this->getOStream()). The amount of output sent to *this->getOStream() depends on the verbosity level returned by this->getVerbLevel():
Teuchos::VERB_DEFAULT: Same as Teuchos::VERB_LOW. Teuchos::VERB_NONE: Output nothing Teuchos::VERB_LOW: Ouput only two lines of output for each Newton iteration Teuchos::VERB_MEDIUM: Output lines for each Newton iteration and line search iteration Teuchos::VERB_HIGH: Output more details about the Newton and line search iterations (good for basic debugging) Teuchos::VERB_EXTREME: Dump all the matrices and vectors that are computed. ToDo: Finish documentation.
Definition at line 80 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
| typedef Teuchos::ScalarTraits<Scalar> Thyra::DampenedNewtonNonlinearSolver< Scalar >::ST |
Definition at line 84 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
| typedef ST::magnitudeType Thyra::DampenedNewtonNonlinearSolver< Scalar >::ScalarMag |
Definition at line 86 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
| typedef Teuchos::ScalarTraits<ScalarMag> Thyra::DampenedNewtonNonlinearSolver< Scalar >::SMT |
Definition at line 88 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
| Thyra::DampenedNewtonNonlinearSolver< Scalar >::DampenedNewtonNonlinearSolver | ( | const ScalarMag | defaultTol = 1e-2, |
| const int | defaultMaxNewtonIterations = 1000, |
||
| const bool | useDampenedLineSearch = true, |
||
| const Scalar | armijoConstant = 1e-4, |
||
| const int | maxLineSearchIterations = 20 |
||
| ) |
Definition at line 176 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
| Thyra::DampenedNewtonNonlinearSolver< Scalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | ScalarMag | , |
| defaultTol | |||
| ) |
The default solution tolerance.
| Thyra::DampenedNewtonNonlinearSolver< Scalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | int | , |
| defaultMaxNewtonIterations | |||
| ) |
The default maximum number of iterations.
| Thyra::DampenedNewtonNonlinearSolver< Scalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | bool | , |
| useDampenedLineSearch | |||
| ) |
The default maximum number of iterations.
| Thyra::DampenedNewtonNonlinearSolver< Scalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | Scalar | , |
| armijoConstant | |||
| ) |
Set the armijo constant for the line search.
| Thyra::DampenedNewtonNonlinearSolver< Scalar >::STANDARD_MEMBER_COMPOSITION_MEMBERS | ( | int | , |
| maxLineSearchIterations | |||
| ) |
Set the maximum number of backtracking line search iterations to take.
|
static |
Definition at line 193 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Implements Teuchos::ParameterListAcceptor.
Definition at line 208 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Implements Teuchos::ParameterListAcceptor.
Definition at line 225 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Implements Teuchos::ParameterListAcceptor.
Definition at line 232 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Reimplemented from Teuchos::ParameterListAcceptor.
Definition at line 241 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Reimplemented from Teuchos::ParameterListAcceptor.
Definition at line 248 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Implements Thyra::NonlinearSolverBase< Scalar >.
Definition at line 265 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Implements Thyra::NonlinearSolverBase< Scalar >.
Definition at line 278 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Implements Thyra::NonlinearSolverBase< Scalar >.
Definition at line 285 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Reimplemented from Thyra::NonlinearSolverBase< Scalar >.
Definition at line 490 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Reimplemented from Thyra::NonlinearSolverBase< Scalar >.
Definition at line 496 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Reimplemented from Thyra::NonlinearSolverBase< Scalar >.
Definition at line 503 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Reimplemented from Thyra::NonlinearSolverBase< Scalar >.
Definition at line 513 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
|
virtual |
Reimplemented from Thyra::NonlinearSolverBase< Scalar >.
Definition at line 519 of file Thyra_DampenedNewtonNonlinearSolver.hpp.
1.8.5