LOCA::Abstract::Group Class Reference

Compatiblity class for AbstractGroup hierarchy. More...

#include <LOCA_Abstract_Group.H>

Inheritance diagram for LOCA::Abstract::Group:

Inheritance graph
[legend]
Collaboration diagram for LOCA::Abstract::Group:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 Group (const Teuchos::RCP< LOCA::GlobalData > &global_data)
 Constructor.
 Group (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< LOCA::DerivUtils > &deriv)
 Constructor.
 Group (const Group &source, NOX::CopyType type=NOX::DeepCopy)
 Copy constructor.
virtual ~Group ()
 Destructor.
Implementation of LOCA::Homotopy::AbstractGroup virtual methods.
virtual
NOX::Abstract::Group::ReturnType 
augmentJacobianForHomotopy (double a, double b)
 Replace Jacobian $J$ by $aJ+bI$ where $I$ is the identity matrix and $p$ is a scalar.
Implementation of LOCA::TimeDependent::AbstractGroup virtual methods.
virtual
NOX::Abstract::Group::ReturnType 
computeShiftedMatrix (double alpha, double beta)
 Compute the shifted matrix.
virtual
NOX::Abstract::Group::ReturnType 
applyShiftedMatrix (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const
 Multiply the shifted matrix by a vector.
virtual
NOX::Abstract::Group::ReturnType 
applyShiftedMatrixMultiVector (const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const
 Multiply the shifted matrix by a multi-vector.
virtual
NOX::Abstract::Group::ReturnType 
applyShiftedMatrixInverseMultiVector (Teuchos::ParameterList &params, const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const
 Apply the inverse of the shifted matrix by a multi-vector, as needed by the shift-and-invert and generalized Cayley transformations.
Implementation of LOCA::Hopf::Moorespence::AbstractGroup virtual methods.
virtual bool isComplex () const
 Is $J+i\omega B$ valid.
virtual
NOX::Abstract::Group::ReturnType 
computeComplex (double frequency)
 Compute $J+i\omega B$.
virtual
NOX::Abstract::Group::ReturnType 
applyComplex (const NOX::Abstract::Vector &input_real, const NOX::Abstract::Vector &input_imag, NOX::Abstract::Vector &result_real, NOX::Abstract::Vector &result_imag) const
 Compute $(J+i\omega B)(y+iz)$.
virtual
NOX::Abstract::Group::ReturnType 
applyComplexMultiVector (const NOX::Abstract::MultiVector &input_real, const NOX::Abstract::MultiVector &input_imag, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag) const
 Compute $(J+i\omega B)(y+iz)$.
virtual
NOX::Abstract::Group::ReturnType 
applyComplexInverseMultiVector (Teuchos::ParameterList &params, const NOX::Abstract::MultiVector &input_real, const NOX::Abstract::MultiVector &input_imag, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag) const
 Solve $(J+i\omega B)(y+iz) = a+ib$.
Implementation of LOCA::Hopf::MinimallyAugmented::AbstractGroup virtual methods.
virtual
NOX::Abstract::Group::ReturnType 
applyComplexTranspose (const NOX::Abstract::Vector &input_real, const NOX::Abstract::Vector &input_imag, NOX::Abstract::Vector &result_real, NOX::Abstract::Vector &result_imag) const
virtual
NOX::Abstract::Group::ReturnType 
applyComplexTransposeMultiVector (const NOX::Abstract::MultiVector &input_real, const NOX::Abstract::MultiVector &input_imag, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag) const
virtual
NOX::Abstract::Group::ReturnType 
applyComplexTransposeInverseMultiVector (Teuchos::ParameterList &params, const NOX::Abstract::MultiVector &input_real, const NOX::Abstract::MultiVector &input_imag, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag) const
 Solve $(J+i\omega B)^H (x + iy) = a+ib$.
Implementation of LOCA::MultiContinuation::AbstractGroup virtual methods.
virtual void copy (const NOX::Abstract::Group &source)
 Assignment operator.
virtual void setParamsMulti (const vector< int > &paramIDs, const NOX::Abstract::MultiVector::DenseMatrix &vals)
 Set parameters indexed by (integer) paramIDs.
virtual void notifyCompletedStep ()
Implementation of NOX::Abstract::Group virtual methods.
virtual NOX::Abstract::Groupoperator= (const NOX::Abstract::Group &source)
 Copies the source group into this group.

Protected Attributes

Teuchos::RCP< LOCA::GlobalDataglobalData
 Global data.

Private Member Functions

Groupoperator= (const Group &source)
 Prohibit generation and use of operator=().


Detailed Description

Compatiblity class for AbstractGroup hierarchy.

This class is derived from all LOCA AbstractGroup abstract base classes as well as all FiniteDifference groups and any other groups that provided default implementations for AbstractGroup pure virtual methods. This class provides definitions for all needed assignment operators and provides definitions for some pure virtual methods by printing error messages. This class exists primarily for compatiblity to an older class hierarchy and will most likely be removed in the future.

Definition at line 70 of file LOCA_Abstract_Group.H.


Constructor & Destructor Documentation

LOCA::Abstract::Group::Group ( const Teuchos::RCP< LOCA::GlobalData > &  global_data  ) 

LOCA::Abstract::Group::Group ( const Teuchos::RCP< LOCA::GlobalData > &  global_data,
const Teuchos::RCP< LOCA::DerivUtils > &  deriv 
)

LOCA::Abstract::Group::Group ( const Group source,
NOX::CopyType  type = NOX::DeepCopy 
)

Copy constructor.

Definition at line 62 of file LOCA_Abstract_Group.C.

References copy().

LOCA::Abstract::Group::~Group (  )  [virtual]

Destructor.

Reimplemented from NOX::Abstract::Group.

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

Definition at line 72 of file LOCA_Abstract_Group.C.


Member Function Documentation

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::augmentJacobianForHomotopy ( double  a,
double  b 
) [virtual]

Replace Jacobian $J$ by $aJ+bI$ where $I$ is the identity matrix and $p$ is a scalar.

Implementation here prints an error message and returns NOX::Abstract::Group::NotDefined.

Implements LOCA::Homotopy::AbstractGroup.

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

Definition at line 77 of file LOCA_Abstract_Group.C.

References NOX::Abstract::Group::NotDefined.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::computeShiftedMatrix ( double  alpha,
double  beta 
) [virtual]

Compute the shifted matrix.

Implementation here prints an error message and returns NOX::Abstract::Group::NotDefined.

Implements LOCA::TimeDependent::AbstractGroup.

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

Definition at line 83 of file LOCA_Abstract_Group.C.

References globalData, and NOX::Abstract::Group::NotDefined.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::applyShiftedMatrix ( const NOX::Abstract::Vector input,
NOX::Abstract::Vector result 
) const [virtual]

Multiply the shifted matrix by a vector.

Implementation here prints an error message and returns NOX::Abstract::Group::NotDefined.

Implements LOCA::TimeDependent::AbstractGroup.

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

Definition at line 92 of file LOCA_Abstract_Group.C.

References globalData, and NOX::Abstract::Group::NotDefined.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::applyShiftedMatrixMultiVector ( const NOX::Abstract::MultiVector input,
NOX::Abstract::MultiVector result 
) const [virtual]

Multiply the shifted matrix by a multi-vector.

Implementation here prints an error message and returns NOX::Abstract::Group::NotDefined.

Implements LOCA::TimeDependent::AbstractGroup.

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

Definition at line 102 of file LOCA_Abstract_Group.C.

References globalData, and NOX::Abstract::Group::NotDefined.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::applyShiftedMatrixInverseMultiVector ( Teuchos::ParameterList &  params,
const NOX::Abstract::MultiVector input,
NOX::Abstract::MultiVector result 
) const [virtual]

Apply the inverse of the shifted matrix by a multi-vector, as needed by the shift-and-invert and generalized Cayley transformations.

Implementation here prints an error message and returns NOX::Abstract::Group::NotDefined.

Implements LOCA::TimeDependent::AbstractGroup.

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

Definition at line 113 of file LOCA_Abstract_Group.C.

References globalData, and NOX::Abstract::Group::NotDefined.

bool LOCA::Abstract::Group::isComplex (  )  const [virtual]

Is $J+i\omega B$ valid.

The implementation here always returns false.

Implements LOCA::Hopf::MooreSpence::AbstractGroup.

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

Definition at line 125 of file LOCA_Abstract_Group.C.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::computeComplex ( double  frequency  )  [virtual]

Compute $J+i\omega B$.

Implementation here prints an error message and returns NOX::Abstract::Group::NotDefined.

Implements LOCA::Hopf::MooreSpence::AbstractGroup.

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

Definition at line 131 of file LOCA_Abstract_Group.C.

References globalData, and NOX::Abstract::Group::NotDefined.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::applyComplex ( const NOX::Abstract::Vector input_real,
const NOX::Abstract::Vector input_imag,
NOX::Abstract::Vector result_real,
NOX::Abstract::Vector result_imag 
) const [virtual]

Compute $(J+i\omega B)(y+iz)$.

Implementation here prints an error message and returns NOX::Abstract::Group::NotDefined.

Implements LOCA::Hopf::MooreSpence::AbstractGroup.

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

Definition at line 140 of file LOCA_Abstract_Group.C.

References globalData, and NOX::Abstract::Group::NotDefined.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::applyComplexMultiVector ( const NOX::Abstract::MultiVector input_real,
const NOX::Abstract::MultiVector input_imag,
NOX::Abstract::MultiVector result_real,
NOX::Abstract::MultiVector result_imag 
) const [virtual]

Compute $(J+i\omega B)(y+iz)$.

Implementation here prints an error message and returns NOX::Abstract::Group::NotDefined.

Implements LOCA::Hopf::MooreSpence::AbstractGroup.

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

Definition at line 151 of file LOCA_Abstract_Group.C.

References globalData, and NOX::Abstract::Group::NotDefined.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::applyComplexInverseMultiVector ( Teuchos::ParameterList &  params,
const NOX::Abstract::MultiVector input_real,
const NOX::Abstract::MultiVector input_imag,
NOX::Abstract::MultiVector result_real,
NOX::Abstract::MultiVector result_imag 
) const [virtual]

Solve $(J+i\omega B)(y+iz) = a+ib$.

Implementation here prints an error message and returns NOX::Abstract::Group::NotDefined.

Implements LOCA::Hopf::MooreSpence::AbstractGroup.

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

Definition at line 164 of file LOCA_Abstract_Group.C.

References globalData, and NOX::Abstract::Group::NotDefined.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::applyComplexTranspose ( const NOX::Abstract::Vector input_real,
const NOX::Abstract::Vector input_imag,
NOX::Abstract::Vector result_real,
NOX::Abstract::Vector result_imag 
) const [virtual]

Computes conjugate-tranpose matrix vector product $ (J+i\omega B)^H (x + iy) $.

Implementation here prints an error message and returns NOX::Abstract::Group::NotDefined.

Implements LOCA::Hopf::MinimallyAugmented::AbstractGroup.

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

Definition at line 178 of file LOCA_Abstract_Group.C.

References globalData, and NOX::Abstract::Group::NotDefined.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::applyComplexTransposeMultiVector ( const NOX::Abstract::MultiVector input_real,
const NOX::Abstract::MultiVector input_imag,
NOX::Abstract::MultiVector result_real,
NOX::Abstract::MultiVector result_imag 
) const [virtual]

Computes conjugate-tranpose matrix vector product $ (J+i\omega B)^H (x + iy) $.

Implements LOCA::Hopf::MinimallyAugmented::AbstractGroup.

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

Definition at line 191 of file LOCA_Abstract_Group.C.

References globalData, and NOX::Abstract::Group::NotDefined.

NOX::Abstract::Group::ReturnType LOCA::Abstract::Group::applyComplexTransposeInverseMultiVector ( Teuchos::ParameterList &  params,
const NOX::Abstract::MultiVector input_real,
const NOX::Abstract::MultiVector input_imag,
NOX::Abstract::MultiVector result_real,
NOX::Abstract::MultiVector result_imag 
) const [virtual]

void LOCA::Abstract::Group::copy ( const NOX::Abstract::Group source  )  [virtual]

Assignment operator.

Implements LOCA::MultiContinuation::AbstractGroup.

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

Definition at line 218 of file LOCA_Abstract_Group.C.

References globalData.

Referenced by Group(), and operator=().

void LOCA::Abstract::Group::setParamsMulti ( const vector< int > &  paramIDs,
const NOX::Abstract::MultiVector::DenseMatrix vals 
) [virtual]

Set parameters indexed by (integer) paramIDs.

Implements LOCA::MultiContinuation::AbstractGroup.

Definition at line 229 of file LOCA_Abstract_Group.C.

References LOCA::MultiContinuation::AbstractGroup::setParam().

void LOCA::Abstract::Group::notifyCompletedStep (  )  [virtual]

Notify group that the continuation step is completed The default implementation here is to do nothing.

Definition at line 237 of file LOCA_Abstract_Group.C.

NOX::Abstract::Group & LOCA::Abstract::Group::operator= ( const NOX::Abstract::Group source  )  [virtual]

Copies the source group into this group.

Note:
Any shared data owned by the source should have its ownership transfered to this group. This may result in a secret modification to the source object.

Implements NOX::Abstract::Group.

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

Definition at line 242 of file LOCA_Abstract_Group.C.

References copy().

Group& LOCA::Abstract::Group::operator= ( const Group source  )  [private]

Prohibit generation and use of operator=().


Member Data Documentation


The documentation for this class was generated from the following files:

Generated on Thu Dec 17 11:02:45 2009 for Nonlinear Solver Project by  doxygen 1.5.9