

Public Member Functions | |
| def | __init__ |
| def | reset |
| def | getStatus |
| def | step |
| def | solve |
| def | getNumIterations |
| def | getStepSize |
| def | getSolutionGroup |
| def | getPreviousSolutionGroup |
| def | getList |
Public Attributes | |
| this | |
Nonlinear solver based on a line search (i.e., damping)
Solves $F(x)=0$ using an iterative line-search-based method.
Each iteration, the solver does the following.
Compute a search direction $d$ via a NOX::Direction method
Compute a step length $\\lambda$ and update $x$ as $x_{\\rm new} =
x_{\\rm old} + \\lambda d$ via a NOX::LineSearch method.
The iterations progress until the status tests (see NOX::StatusTest)
determine either failure or convergence.
To support several line searches and status tests, this version of the
solver has a getStepSize() function that returns $\\lambda$. Input
Parameters
The following parameter list entries are valid for this solver:
"Line Search" - Sublist of the line search parameters, passed to the
NOX::LineSearch::Manager constructor. Defaults to an empty list.
"Direction" - Sublist of the direction parameters, passed to the
NOX::Direction::Manager constructor. Defaults to an empty list.
"Solver Options" - Sublist of general solver options. "User Defined
Pre/Post Operator" is supported. See NOX::Parameter::PrePostOperator
for more details.
Output Parameters
Every time solve() is called, a sublist for output parameters called
"Output" will be created and contain the following parameters.
"Output":
"Nonlinear Iterations" - Number of nonlinear iterations
"2-Norm of Residual" - Two-norm of final residual
Tammy Kolda (SNL 8950), Roger Pawlowski (SNL 9233)
C++ includes: NOX_Solver_LineSearchBased.H
| def PyTrilinos.NOX.Solver.LineSearchBased.__init__ | ( | self, | |
| args | |||
| ) |
__init__(NOX::Solver::LineSearchBased self, Teuchos::RCP< NOX::Abstract::Group > const & grp, Teuchos::RCP< NOX::StatusTest::Generic > const & tests,
Teuchos::RCP< Teuchos::ParameterList > const & params) -> LineSearchBased
NOX::Solver::LineSearchBased::LineSearchBased(const Teuchos::RCP<
NOX::Abstract::Group > &grp, const Teuchos::RCP<
NOX::StatusTest::Generic > &tests, const Teuchos::RCP<
Teuchos::ParameterList > ¶ms)
Constructor.
See reset(NOX::Abstract::Group&, NOX::StatusTest::Generic&,
Teuchos::ParameterList&) for description
| def PyTrilinos.NOX.Solver.LineSearchBased.getList | ( | self, | |
| args | |||
| ) |
getList(LineSearchBased self) -> Teuchos::RCP< Teuchos::ParameterList const > virtual Teuchos::RCP< const Teuchos::ParameterList > NOX::Solver::LineSearchBased::getListPtr() const Return a RCP to the solver parameters.
Reimplemented from PyTrilinos.NOX.Solver.Generic.
| def PyTrilinos.NOX.Solver.LineSearchBased.getNumIterations | ( | self, | |
| args | |||
| ) |
getNumIterations(LineSearchBased self) -> int int NOX::Solver::LineSearchBased::getNumIterations() const Get number of iterations.
Reimplemented from PyTrilinos.NOX.Solver.Generic.
| def PyTrilinos.NOX.Solver.LineSearchBased.getPreviousSolutionGroup | ( | self, | |
| args | |||
| ) |
getPreviousSolutionGroup(LineSearchBased self) -> Teuchos::RCP< NOX::Abstract::Group const > virtual Teuchos::RCP< const NOX::Abstract::Group > NOX::Solver::LineSearchBased::getPreviousSolutionGroupPtr() const Return a RCP to the previous solution group.
Reimplemented from PyTrilinos.NOX.Solver.Generic.
| def PyTrilinos.NOX.Solver.LineSearchBased.getSolutionGroup | ( | self, | |
| args | |||
| ) |
getSolutionGroup(LineSearchBased self) -> Teuchos::RCP< NOX::Abstract::Group const > virtual Teuchos::RCP< const NOX::Abstract::Group > NOX::Solver::LineSearchBased::getSolutionGroupPtr() const Return a RCP to the solution group.
Reimplemented from PyTrilinos.NOX.Solver.Generic.
| def PyTrilinos.NOX.Solver.LineSearchBased.getStatus | ( | self, | |
| args | |||
| ) |
getStatus(LineSearchBased self) -> NOX::StatusTest::StatusType NOX::StatusTest::StatusType NOX::Solver::LineSearchBased::getStatus() Check current convergence and failure status.
Reimplemented from PyTrilinos.NOX.Solver.Generic.
| def PyTrilinos.NOX.Solver.LineSearchBased.getStepSize | ( | self, | |
| args | |||
| ) |
getStepSize(LineSearchBased self) -> double double NOX::Solver::LineSearchBased::getStepSize() const
| def PyTrilinos.NOX.Solver.LineSearchBased.reset | ( | self, | |
| args | |||
| ) |
reset(LineSearchBased self, Vector initialGuess, Teuchos::RCP< NOX::StatusTest::Generic > const & tests) reset(LineSearchBased self, Vector initialGuess) void NOX::Solver::LineSearchBased::reset(const NOX::Abstract::Vector &initialGuess) Resets the solver and sets a new initial guess.
Reimplemented from PyTrilinos.NOX.Solver.Generic.
| def PyTrilinos.NOX.Solver.LineSearchBased.solve | ( | self, | |
| args | |||
| ) |
solve(LineSearchBased self) -> NOX::StatusTest::StatusType NOX::StatusTest::StatusType NOX::Solver::LineSearchBased::solve() Solve the nonlinear problem and return final status. By "solve", we call iterate() until the NOX::StatusTest value is either NOX::StatusTest::Converged or NOX::StatusTest::Failed.
Reimplemented from PyTrilinos.NOX.Solver.Generic.
| def PyTrilinos.NOX.Solver.LineSearchBased.step | ( | self, | |
| args | |||
| ) |
step(LineSearchBased self) -> NOX::StatusTest::StatusType NOX::StatusTest::StatusType NOX::Solver::LineSearchBased::step() Do one nonlinear step in the iteration sequence and return status.
Reimplemented from PyTrilinos.NOX.Solver.Generic.
1.7.6.1