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 getSolutionGroup
def getPreviousSolutionGroup
def getNumIterations
def getList
def getStepSize
def __init__
def reset
def getStatus
def step
def solve
def getSolutionGroup
def getPreviousSolutionGroup
def getNumIterations
def getList
def getStepSize

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 

Member Function Documentation

def PyTrilinos::NOX::Solver::LineSearchBased::__init__ (   self,
  args 
)

__init__(self, Teuchos::RCP<(NOX::Abstract::Group)> grp, Teuchos::RCP<(NOX::StatusTest::Generic)> tests, 
    Teuchos::RCP<(Teuchos::ParameterList)> 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 

def PyTrilinos::NOX::Solver::LineSearchBased::__init__ (   self,
  args 
)

__init__(self, Teuchos::RCP<(NOX::Abstract::Group)> grp, Teuchos::RCP<(NOX::StatusTest::Generic)> tests, 
    Teuchos::RCP<(Teuchos::ParameterList)> 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 

def PyTrilinos::NOX::Solver::LineSearchBased::getList (   self,
  args 
)

getList(self) -> ParameterList

const
Teuchos::ParameterList & NOX::Solver::LineSearchBased::getList() const

Return a refernece to the solver parameters. 

Reimplemented from PyTrilinos::NOX::Solver::Generic.

def PyTrilinos::NOX::Solver::LineSearchBased::getList (   self,
  args 
)

getList(self) -> ParameterList

const
Teuchos::ParameterList & NOX::Solver::LineSearchBased::getList() const

Return a refernece to the solver parameters. 

Reimplemented from PyTrilinos::NOX::Solver::Generic.

def PyTrilinos::NOX::Solver::LineSearchBased::getNumIterations (   self,
  args 
)

getNumIterations(self) -> int

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

Get number of iterations. 

Reimplemented from PyTrilinos::NOX::Solver::Generic.

def PyTrilinos::NOX::Solver::LineSearchBased::getNumIterations (   self,
  args 
)

getNumIterations(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(self) -> Group

const
NOX::Abstract::Group &
NOX::Solver::LineSearchBased::getPreviousSolutionGroup() const

Return a reference to the previous solution group. 

Reimplemented from PyTrilinos::NOX::Solver::Generic.

def PyTrilinos::NOX::Solver::LineSearchBased::getPreviousSolutionGroup (   self,
  args 
)

getPreviousSolutionGroup(self) -> Group

const
NOX::Abstract::Group &
NOX::Solver::LineSearchBased::getPreviousSolutionGroup() const

Return a reference to the previous solution group. 

Reimplemented from PyTrilinos::NOX::Solver::Generic.

def PyTrilinos::NOX::Solver::LineSearchBased::getSolutionGroup (   self,
  args 
)

getSolutionGroup(self) -> Group

const NOX::Abstract::Group &
NOX::Solver::LineSearchBased::getSolutionGroup() const

Return a reference to the current solution group. 

Reimplemented from PyTrilinos::NOX::Solver::Generic.

def PyTrilinos::NOX::Solver::LineSearchBased::getSolutionGroup (   self,
  args 
)

getSolutionGroup(self) -> Group

const NOX::Abstract::Group &
NOX::Solver::LineSearchBased::getSolutionGroup() const

Return a reference to the current solution group. 

Reimplemented from PyTrilinos::NOX::Solver::Generic.

def PyTrilinos::NOX::Solver::LineSearchBased::getStatus (   self,
  args 
)

getStatus(self) -> 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::getStatus (   self,
  args 
)

getStatus(self) -> 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(self) -> double

double NOX::Solver::LineSearchBased::getStepSize() const

Return the line search step size from the current iteration. 

def PyTrilinos::NOX::Solver::LineSearchBased::getStepSize (   self,
  args 
)

getStepSize(self) -> double

double NOX::Solver::LineSearchBased::getStepSize() const

Return the line search step size from the current iteration. 

def PyTrilinos::NOX::Solver::LineSearchBased::reset (   self,
  args 
)

reset(self, Vector initialGuess, Teuchos::RCP<(NOX::StatusTest::Generic)> tests)
reset(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::reset (   self,
  args 
)

reset(self, Vector initialGuess, Teuchos::RCP<(NOX::StatusTest::Generic)> tests)
reset(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(self) -> 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::solve (   self,
  args 
)

solve(self) -> 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(self) -> 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.

def PyTrilinos::NOX::Solver::LineSearchBased::step (   self,
  args 
)

step(self) -> 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 files:

Generated on Thu Dec 17 11:00:22 2009 for PyTrilinos by  doxygen 1.5.9