Public Member Functions | Protected Attributes | Private Member Functions

Albany::AggregateScalarResponseFunction Class Reference

A response function that aggregates together multiple response functions into one. More...

#include <Albany_AggregateScalarResponseFunction.hpp>

Inheritance diagram for Albany::AggregateScalarResponseFunction:
Inheritance graph
[legend]
Collaboration diagram for Albany::AggregateScalarResponseFunction:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 AggregateScalarResponseFunction (const Teuchos::RCP< const Epetra_Comm > &comm, const Teuchos::Array< Teuchos::RCP< ScalarResponseFunction > > &responses)
 Default constructor.
virtual void setup ()
 Setup response function.
virtual ~AggregateScalarResponseFunction ()
 Destructor.
virtual unsigned int numResponses () const
 Get the number of responses.
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)
 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)
 Evaluate tangent = dg/dx*dx/dp + dg/dxdot*dxdot/dp + dg/dp.
virtual void evaluateGradient (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, Epetra_MultiVector *dg_dx, Epetra_MultiVector *dg_dxdot, Epetra_MultiVector *dg_dxdotdot, Epetra_MultiVector *dg_dp)
 Evaluate gradient = dg/dx, dg/dxdot, dg/dp.

Protected Attributes

Teuchos::Array< Teuchos::RCP
< ScalarResponseFunction > > 
responses
 Response functions to aggregate.

Private Member Functions

 AggregateScalarResponseFunction (const AggregateScalarResponseFunction &)
 Private to prohibit copying.
AggregateScalarResponseFunctionoperator= (const AggregateScalarResponseFunction &)
 Private to prohibit copying.

Detailed Description

A response function that aggregates together multiple response functions into one.

Definition at line 19 of file Albany_AggregateScalarResponseFunction.hpp.


Constructor & Destructor Documentation

Albany::AggregateScalarResponseFunction::AggregateScalarResponseFunction ( const Teuchos::RCP< const Epetra_Comm > &  comm,
const Teuchos::Array< Teuchos::RCP< ScalarResponseFunction > > &  responses 
)

Default constructor.

Definition at line 14 of file Albany_AggregateScalarResponseFunction.cpp.

Albany::AggregateScalarResponseFunction::~AggregateScalarResponseFunction (  )  [virtual]

Destructor.

Definition at line 33 of file Albany_AggregateScalarResponseFunction.cpp.

Albany::AggregateScalarResponseFunction::AggregateScalarResponseFunction ( const AggregateScalarResponseFunction  )  [private]

Private to prohibit copying.


Member Function Documentation

void Albany::AggregateScalarResponseFunction::setup (  )  [virtual]

Setup response function.

Reimplemented from Albany::ScalarResponseFunction.

Definition at line 24 of file Albany_AggregateScalarResponseFunction.cpp.

unsigned int Albany::AggregateScalarResponseFunction::numResponses (  )  const [virtual]

Get the number of responses.

Implements Albany::ScalarResponseFunction.

Definition at line 39 of file Albany_AggregateScalarResponseFunction.cpp.

void Albany::AggregateScalarResponseFunction::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 
) [virtual]

Evaluate responses.

Implements Albany::AbstractResponseFunction.

Definition at line 49 of file Albany_AggregateScalarResponseFunction.cpp.

void Albany::AggregateScalarResponseFunction::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 
) [virtual]

Evaluate tangent = dg/dx*dx/dp + dg/dxdot*dxdot/dp + dg/dp.

Implements Albany::AbstractResponseFunction.

Definition at line 81 of file Albany_AggregateScalarResponseFunction.cpp.

void Albany::AggregateScalarResponseFunction::evaluateGradient ( 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,
Epetra_MultiVector *  dg_dx,
Epetra_MultiVector *  dg_dxdot,
Epetra_MultiVector *  dg_dxdotdot,
Epetra_MultiVector *  dg_dp 
) [virtual]

Evaluate gradient = dg/dx, dg/dxdot, dg/dp.

Implements Albany::ScalarResponseFunction.

Definition at line 144 of file Albany_AggregateScalarResponseFunction.cpp.

AggregateScalarResponseFunction& Albany::AggregateScalarResponseFunction::operator= ( const AggregateScalarResponseFunction  )  [private]

Private to prohibit copying.


Member Data Documentation

Response functions to aggregate.

Definition at line 91 of file Albany_AggregateScalarResponseFunction.hpp.


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