LOCA::MultiContinuation::AbstractGroup Class Reference

LOCA abstract interface for continuation, derived from the NOX::Abstract::Group. This abstract class provides the interface necessary to perform continuation, i.e., compute families of solutions to $ F(x,p) = 0 $. More...

#include <LOCA_MultiContinuation_AbstractGroup.H>

Inheritance diagram for LOCA::MultiContinuation::AbstractGroup:

[legend]
Collaboration diagram for LOCA::MultiContinuation::AbstractGroup:
[legend]
List of all members.

Public Member Functions

 AbstractGroup ()
 Default constructor.
virtual ~AbstractGroup ()
 Destructor.
Pure virtual methods
These methods must be defined by any concrete implementation

virtual AbstractGroupoperator= (const AbstractGroup &source)=0
 Assignment operator.
virtual void setParamsMulti (const vector< int > &paramIDs, const NOX::Abstract::MultiVector::DenseMatrix &vals)=0
 Set parameters indexed by (integer) paramIDs.
virtual NOX::Abstract::Group::ReturnType computeDfDpMulti (const vector< int > &paramIDs, NOX::Abstract::MultiVector &dfdp, bool isValidF)=0
Virtual methods with default implementations
These methods should be overloaded in a concrete implementation if more appropriate/efficient approaches are available.

virtual void projectToDraw (const NOX::Abstract::Vector &x, double *px) const
 Projects solution to a few scalars for multiparameter continuation.
virtual int projectToDrawDimension () const
 Returns the dimension of the project to draw array.

Detailed Description

LOCA abstract interface for continuation, derived from the NOX::Abstract::Group. This abstract class provides the interface necessary to perform continuation, i.e., compute families of solutions to $ F(x,p) = 0 $.

Concrete implemenations of this interface must provide implementations of all of the methods in the NOX::Abstract::Group interface as well as the additional interface defined here.


Member Function Documentation

virtual NOX::Abstract::Group::ReturnType LOCA::MultiContinuation::AbstractGroup::computeDfDpMulti const vector< int > &  paramIDs,
NOX::Abstract::MultiVector &  dfdp,
bool  isValidF
[pure virtual]
 

Compute $\partial F/\partial p$ for each parameter $p$ indexed by paramIDs. The first column of dfdp holds F, which is valid if isValidF is true. Otherwise F must be computed.

Implemented in LOCA::MultiContinuation::FiniteDifferenceGroup.

void LOCA::MultiContinuation::AbstractGroup::projectToDraw const NOX::Abstract::Vector x,
double *  px
const [virtual]
 

Projects solution to a few scalars for multiparameter continuation.

This method is called every time a solution is saved by the multiparameter continuation code MF for later visualization and should project the solution vector down to a few scalars. The array px will be preallocated to the proper length given by projectToDrawDimension().

The default implementation is the max norm of the vector.

Reimplemented in LOCA::Epetra::Group, LOCA::EpetraNew::Group, and LOCA::LAPACK::Group.

int LOCA::MultiContinuation::AbstractGroup::projectToDrawDimension  )  const [virtual]
 

Returns the dimension of the project to draw array.

The default implementation is to return 1 since the default projection is the max norm of the vector (a scalar).

Reimplemented in LOCA::Epetra::Group, LOCA::EpetraNew::Group, and LOCA::LAPACK::Group.


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