Diffpack Documentation

(Functionality not available, requires installation of an additional Diffpack Toolbox)


Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

NonLinML Class Reference

nonlinear domain decomposition / multigrid iteration for nonlinear systems. More...

#include <NonLinML.h>

Inheritance diagram for NonLinML::

NonLinEqSolver HandleId List of all members.

Public Methods

 NonLinML (const NonLinEqSolver_prm &pm)
 ~NonLinML ()
virtual void attach (MLSolver &dds)
virtual bool ordinarySolve ()
virtual bool singleStep ()
virtual bool ok () const

Protected Methods

void calcStoppingCriterionData (LinEqVector &x, LinEqVector &dx)
void startIterations ()

Protected Attributes

real norm_x
real norm_dx
MLSolvermlsolver
StartVectorMode mode

Detailed Description

nonlinear domain decomposition / multigrid iteration for nonlinear systems.

NAME: NonLinML - nonlinear domain decomposition / multigrid iteration for nonlinear systems

DESCRIPTION:

See class "NonLinEqSolver" / class "MLSolver"


Constructor & Destructor Documentation

NonLinML::NonLinML ( const NonLinEqSolver_prm & pm )
 

See class "NonLinEqSolver".

NonLinML::~NonLinML ( ) [inline]
 


Member Function Documentation

void NonLinML::attach ( MLSolver & dds ) [virtual]
 

void NonLinML::calcStoppingCriterionData ( LinEqVector & x,
LinEqVector & dx ) [protected]
 

bool NonLinML::ok ( ) const [virtual]
 

Reimplemented from NonLinEqSolver.

bool NonLinML::ordinarySolve ( ) [virtual]
 

Reimplemented from NonLinEqSolver.

bool NonLinML::singleStep ( ) [virtual]
 

this function is like "ordinarySolve", but a return is performed after each step in the iteration. Hence the user can check the development of the nonlinear iterations. This may be useful is convergence problems occur. The function returns "true" as long as the convergence criteria are not satisified, and "false" when the stopping criteria are satisfied. Note this difference in comparison with "solve". The user must implement the loop, usually in terms of a "while(performSingleStep)" type of construction. Prior to the loop, a call to "initSingleSteps" must be performed.

Reimplemented from NonLinEqSolver.

void NonLinML::startIterations ( ) [protected]
 

Reimplemented from NonLinEqSolver.


Member Data Documentation

MLSolver * NonLinML::mlsolver [protected]
 

StartVectorMode NonLinML::mode [protected]
 

real NonLinML::norm_dx [protected]
 

real NonLinML::norm_x [protected]
 


The documentation for this class was generated from the following file:
Copyright © 2003 inuTech GmbH. All rights reserved.