Abstract interface for representing a response function. More...
#include <Albany_AbstractResponseFunction.hpp>

Public Member Functions | |
| AbstractResponseFunction () | |
| Default constructor. | |
| virtual | ~AbstractResponseFunction () |
| Destructor. | |
| virtual void | setup ()=0 |
| Setup response function. | |
| virtual Teuchos::RCP< const Epetra_Map > | responseMap () const =0 |
| Get the map associate with this response. | |
| virtual bool | isScalarResponse () const =0 |
| Is this response function "scalar" valued, i.e., has a replicated local response map. | |
| virtual Teuchos::RCP < Epetra_Operator > | createGradientOp () const =0 |
| Create operator for gradient (e.g., dg/dx). | |
Deterministic evaluation functions | |
| virtual void | evaluateResponse (const double current_time, const Epetra_Vector *xdot, const Epetra_Vector *xdotdot, const Epetra_Vector &x, const Teuchos::Array< ParamVec > &p, Epetra_Vector &g)=0 |
| Evaluate responses. | |
| virtual void | evaluateTangent (const double alpha, const double beta, const double omega, const double current_time, bool sum_derivs, const Epetra_Vector *xdot, const Epetra_Vector *xdotdot, const Epetra_Vector &x, const Teuchos::Array< ParamVec > &p, ParamVec *deriv_p, const Epetra_MultiVector *Vxdot, const Epetra_MultiVector *Vxdotdot, const Epetra_MultiVector *Vx, const Epetra_MultiVector *Vp, Epetra_Vector *g, Epetra_MultiVector *gx, Epetra_MultiVector *gp)=0 |
| Evaluate tangent = dg/dx*dx/dp + dg/dxdot*dxdot/dp + dg/dp. | |
| virtual void | evaluateDerivative (const double current_time, const Epetra_Vector *xdot, const Epetra_Vector *xdotdot, const Epetra_Vector &x, const Teuchos::Array< ParamVec > &p, ParamVec *deriv_p, Epetra_Vector *g, const EpetraExt::ModelEvaluator::Derivative &dg_dx, const EpetraExt::ModelEvaluator::Derivative &dg_dxdot, const EpetraExt::ModelEvaluator::Derivative &dg_dxdotdot, const EpetraExt::ModelEvaluator::Derivative &dg_dp)=0 |
| Evaluate derivative dg/dx, dg/dxdot, dg/dp. | |
Private Member Functions | |
| AbstractResponseFunction (const AbstractResponseFunction &) | |
| Private to prohibit copying. | |
| AbstractResponseFunction & | operator= (const AbstractResponseFunction &) |
| Private to prohibit copying. | |
Abstract interface for representing a response function.
Definition at line 31 of file Albany_AbstractResponseFunction.hpp.
| Albany::AbstractResponseFunction::AbstractResponseFunction | ( | ) | [inline] |
Default constructor.
Definition at line 35 of file Albany_AbstractResponseFunction.hpp.
| virtual Albany::AbstractResponseFunction::~AbstractResponseFunction | ( | ) | [inline, virtual] |
Destructor.
Definition at line 38 of file Albany_AbstractResponseFunction.hpp.
| Albany::AbstractResponseFunction::AbstractResponseFunction | ( | const AbstractResponseFunction & | ) | [private] |
Private to prohibit copying.
| virtual void Albany::AbstractResponseFunction::setup | ( | ) | [pure virtual] |
Setup response function.
Implemented in Albany::AggregateScalarResponseFunction, Albany::KLResponseFunction, Albany::ScalarResponseFunction, Albany::SolutionResponseFunction, and Albany::SolutionValuesResponseFunction.
| virtual Teuchos::RCP<const Epetra_Map> Albany::AbstractResponseFunction::responseMap | ( | ) | const [pure virtual] |
Get the map associate with this response.
Implemented in Albany::KLResponseFunction, Albany::ScalarResponseFunction, and Albany::SolutionResponseFunction.
| virtual bool Albany::AbstractResponseFunction::isScalarResponse | ( | ) | const [pure virtual] |
Is this response function "scalar" valued, i.e., has a replicated local response map.
Implemented in Albany::DistributedResponseFunction, Albany::KLResponseFunction, and Albany::ScalarResponseFunction.
| virtual Teuchos::RCP<Epetra_Operator> Albany::AbstractResponseFunction::createGradientOp | ( | ) | const [pure virtual] |
Create operator for gradient (e.g., dg/dx).
Implemented in Albany::KLResponseFunction, Albany::ScalarResponseFunction, and Albany::SolutionResponseFunction.
| virtual void Albany::AbstractResponseFunction::evaluateResponse | ( | const double | current_time, | |
| const Epetra_Vector * | xdot, | |||
| const Epetra_Vector * | xdotdot, | |||
| const Epetra_Vector & | x, | |||
| const Teuchos::Array< ParamVec > & | p, | |||
| Epetra_Vector & | g | |||
| ) | [pure virtual] |
Evaluate responses.
Implemented in QCAD::SaddleValueResponseFunction, Albany::AggregateScalarResponseFunction, Albany::FieldManagerScalarResponseFunction, Albany::KLResponseFunction, Albany::SolutionAverageResponseFunction, Albany::SolutionFileResponseFunction< VectorNorm >, Albany::SolutionMaxValueResponseFunction, Albany::SolutionResponseFunction, Albany::SolutionTwoNormResponseFunction, and Albany::SolutionValuesResponseFunction.
| virtual void Albany::AbstractResponseFunction::evaluateTangent | ( | const double | alpha, | |
| const double | beta, | |||
| const double | omega, | |||
| const double | current_time, | |||
| bool | sum_derivs, | |||
| const Epetra_Vector * | xdot, | |||
| const Epetra_Vector * | xdotdot, | |||
| const Epetra_Vector & | x, | |||
| const Teuchos::Array< ParamVec > & | p, | |||
| ParamVec * | deriv_p, | |||
| const Epetra_MultiVector * | Vxdot, | |||
| const Epetra_MultiVector * | Vxdotdot, | |||
| const Epetra_MultiVector * | Vx, | |||
| const Epetra_MultiVector * | Vp, | |||
| Epetra_Vector * | g, | |||
| Epetra_MultiVector * | gx, | |||
| Epetra_MultiVector * | gp | |||
| ) | [pure virtual] |
Evaluate tangent = dg/dx*dx/dp + dg/dxdot*dxdot/dp + dg/dp.
Implemented in QCAD::SaddleValueResponseFunction, Albany::AggregateScalarResponseFunction, Albany::FieldManagerScalarResponseFunction, Albany::KLResponseFunction, Albany::SolutionAverageResponseFunction, Albany::SolutionFileResponseFunction< VectorNorm >, Albany::SolutionMaxValueResponseFunction, Albany::SolutionResponseFunction, Albany::SolutionTwoNormResponseFunction, and Albany::SolutionValuesResponseFunction.
| virtual void Albany::AbstractResponseFunction::evaluateDerivative | ( | const double | current_time, | |
| const Epetra_Vector * | xdot, | |||
| const Epetra_Vector * | xdotdot, | |||
| const Epetra_Vector & | x, | |||
| const Teuchos::Array< ParamVec > & | p, | |||
| ParamVec * | deriv_p, | |||
| Epetra_Vector * | g, | |||
| const EpetraExt::ModelEvaluator::Derivative & | dg_dx, | |||
| const EpetraExt::ModelEvaluator::Derivative & | dg_dxdot, | |||
| const EpetraExt::ModelEvaluator::Derivative & | dg_dxdotdot, | |||
| const EpetraExt::ModelEvaluator::Derivative & | dg_dp | |||
| ) | [pure virtual] |
Evaluate derivative dg/dx, dg/dxdot, dg/dp.
Implemented in Albany::DistributedResponseFunction, Albany::KLResponseFunction, and Albany::ScalarResponseFunction.
| AbstractResponseFunction& Albany::AbstractResponseFunction::operator= | ( | const AbstractResponseFunction & | ) | [private] |
Private to prohibit copying.
1.7.1