PyTrilinos  Development
 All Classes Functions
Public Member Functions | Public Attributes
PyTrilinos.NOX.Solver.LineSearchBased Class Reference
Inheritance diagram for PyTrilinos.NOX.Solver.LineSearchBased:
Inheritance graph
[legend]
Collaboration diagram for PyTrilinos.NOX.Solver.LineSearchBased:
Collaboration graph
[legend]

List of all members.

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

Detailed Description

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 

Constructor & Destructor Documentation

__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 > &params)

Constructor.

See reset(NOX::Abstract::Group&, NOX::StatusTest::Generic&,
Teuchos::ParameterList&) for description 

Member Function Documentation

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.

getNumIterations(LineSearchBased self) -> int

int NOX::Solver::LineSearchBased::getNumIterations() const

Get number of iterations. 

Reimplemented from PyTrilinos.NOX.Solver.Generic.

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.

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.

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.

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.


The documentation for this class was generated from the following file:
 All Classes Functions