NOX Development
Public Member Functions
LOCA::Hopf::MinimallyAugmented::AbstractGroup Class Reference

Interface to underlying groups for Hopf calculations using the minimally augmented formulation. More...

#include <LOCA_Hopf_MinimallyAugmented_AbstractGroup.H>

Inheritance diagram for LOCA::Hopf::MinimallyAugmented::AbstractGroup:
Inheritance graph
[legend]
Collaboration diagram for LOCA::Hopf::MinimallyAugmented::AbstractGroup:
Collaboration graph
[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
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 =0
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 =0
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 =0
 Solve $(J+i\omega M)^H (x + iy) = a+ib$.
virtual
NOX::Abstract::Group::ReturnType 
computeDwtCeDp (const std::vector< int > &paramIDs, const NOX::Abstract::Vector &w1, const NOX::Abstract::Vector &w2, const NOX::Abstract::Vector &y, const NOX::Abstract::Vector &z, double omega, NOX::Abstract::MultiVector::DenseMatrix &result_real, NOX::Abstract::MultiVector::DenseMatrix &result_imag, bool isValid)=0
 Computes the derivative $\partial w^H C e/\partial p$, $w = w_1 + i w_2$, $e = y + i z$, $C = J + i \omega M$.
virtual
NOX::Abstract::Group::ReturnType 
computeDwtCeDx (const NOX::Abstract::Vector &w1, const NOX::Abstract::Vector &w2, const NOX::Abstract::Vector &y, const NOX::Abstract::Vector &z, double omega, NOX::Abstract::Vector &result_real, NOX::Abstract::Vector &result_imag)=0
 Computes the derivative $\frac{\partial w^H C e}{\partial x}$, $w = w_1 + i w_2$, $e = y + i z$, $C = J + i \omega M$.

Detailed Description

Interface to underlying groups for Hopf calculations using the minimally augmented formulation.

This abstract class provides the required interface for underlying groups to locate Hopfs using the minimally augmented Hopf (see LOCA::Hopf::MinimallyAugmented::ExtendedGroup for a description of the governing equations).

This class is derived from the LOCA::Hopf::MooreSpence::AbstractGroup and declares several pure virtual methods to compute various derivatives of $w^H C e$ for a given $w = w_1 + i w_2$ and $e = y + i z$ where $C = J + i \omega M$. Default implementations for the derivatives using finite differencing are implemented in the LOCA::Hopf::MinimallyAugmented::FiniteDifferenceGroup.


Member Function Documentation

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

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

Implemented in LOCA::Abstract::Group, LOCA::Epetra::Group, and LOCA::LAPACK::Group.

Referenced by LOCA::DerivUtils::computeDwtCeDx().

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

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

Implemented in LOCA::Abstract::Group, LOCA::Epetra::Group, and LOCA::LAPACK::Group.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends