LOCA::Bifurcation::TPBord::SingularSolveGroup Class Reference

Concrete class that provides concrete implementations of the singular Jacobian solve methods of the LOCA::Bifurcation::TPBord::AbstractGroup. More...

#include <LOCA_Bifurcation_TPBord_SingularSolveGroup.H>

Inheritance diagram for LOCA::Bifurcation::TPBord::SingularSolveGroup:

[legend]
Collaboration diagram for LOCA::Bifurcation::TPBord::SingularSolveGroup:
[legend]
List of all members.

Public Member Functions

 SingularSolveGroup ()
 Constructor with no parameter list.
 SingularSolveGroup (NOX::Parameter::List &params)
 Constructor with non-const parameter list.
 SingularSolveGroup (const SingularSolveGroup &source, NOX::CopyType type=NOX::DeepCopy)
 Copy constructor.
virtual ~SingularSolveGroup ()
 Destructor.
virtual SingularSolveGroupoperator= (const SingularSolveGroup &source)
 Assignment operator.
virtual NOX::Abstract::Group::ReturnType applySingularJacobianInverse (NOX::Parameter::List &params, const NOX::Abstract::Vector &input, const NOX::Abstract::Vector &approxNullVec, const NOX::Abstract::Vector &jacApproxNullVec, NOX::Abstract::Vector &result)
 applyJacobianInverse for nearly singular systems
virtual NOX::Abstract::Group::ReturnType applySingularJacobianInverseMulti (NOX::Parameter::List &params, const NOX::Abstract::Vector *const *inputs, const NOX::Abstract::Vector &approxNullVec, const NOX::Abstract::Vector &jacApproxNullVec, NOX::Abstract::Vector **results, int nVecs)
 Version of applySingularJacobianInverse() for multiple RHS.

Protected Attributes

LOCA::SingularJacobianSolve::Manager singularSolveManager
 Manager for applySingularJacobianInverse[Multi].

Detailed Description

Concrete class that provides concrete implementations of the singular Jacobian solve methods of the LOCA::Bifurcation::TPBord::AbstractGroup.

The singular Jacobian solve methods are implemented by calling the corresponding compute methods of the LOCA::SingularJacobianSolve::Manager class. It is through this class, and the passed parameter list in the constructor, that the particular algorithm for performing the singular solves is chosen. See the LOCA::SingularJacobianSolve::Manager class description for a description of the relevant parameters and the corresponding singular solve algorithms. In the future, the functionality provided by the manager class will be directly incorporated into this class.


Member Function Documentation

NOX::Abstract::Group::ReturnType LOCA::Bifurcation::TPBord::SingularSolveGroup::applySingularJacobianInverse NOX::Parameter::List params,
const NOX::Abstract::Vector input,
const NOX::Abstract::Vector approxNullVec,
const NOX::Abstract::Vector jacApproxNullVec,
NOX::Abstract::Vector result
[virtual]
 

applyJacobianInverse for nearly singular systems

This method is to compute the solution to $Jx=b$ for nearly singular $J$. approxNullVec contains an approximation to the null vector $n$ such that $Jn\approx0$, and jacApproxNullVec contains $Jn$. The idea is these quantities are supposed to help in obtaining an accurate solution to $Jx=b$.

The method is implemented by calling the LOCA::SingularJacobianSolve::Manager::compute() method of the LOCA::SingularJacobianSolve::Manager class.

Implements LOCA::Bifurcation::TPBord::AbstractGroup.

NOX::Abstract::Group::ReturnType LOCA::Bifurcation::TPBord::SingularSolveGroup::applySingularJacobianInverseMulti NOX::Parameter::List params,
const NOX::Abstract::Vector *const *  inputs,
const NOX::Abstract::Vector approxNullVec,
const NOX::Abstract::Vector jacApproxNullVec,
NOX::Abstract::Vector **  results,
int  nVecs
[virtual]
 

Version of applySingularJacobianInverse() for multiple RHS.

The method is implemented by calling the LOCA::SingularJacobianSolve::Manager::computeMulti() method of the LOCA::SingularJacobianSolve::Manager class.

Implements LOCA::Bifurcation::TPBord::AbstractGroup.


The documentation for this class was generated from the following files:
Generated on Thu Sep 18 12:40:43 2008 for NOX by doxygen 1.3.9.1