Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007 #ifndef ALBANY_SOLUTIONTWONORMRESPONSEFUNCTION_HPP
00008 #define ALBANY_SOLUTIONTWONORMRESPONSEFUNCTION_HPP
00009
00010 #include "Albany_SamplingBasedScalarResponseFunction.hpp"
00011
00012 namespace Albany {
00013
00017 class SolutionTwoNormResponseFunction :
00018 public SamplingBasedScalarResponseFunction {
00019 public:
00020
00022 SolutionTwoNormResponseFunction(
00023 const Teuchos::RCP<const Epetra_Comm>& comm);
00024
00026 virtual ~SolutionTwoNormResponseFunction();
00027
00029 virtual unsigned int numResponses() const;
00030
00032 virtual void
00033 evaluateResponse(const double current_time,
00034 const Epetra_Vector* xdot,
00035 const Epetra_Vector* xdotdot,
00036 const Epetra_Vector& x,
00037 const Teuchos::Array<ParamVec>& p,
00038 Epetra_Vector& g);
00039
00041 virtual void
00042 evaluateTangent(const double alpha,
00043 const double beta,
00044 const double omega,
00045 const double current_time,
00046 bool sum_derivs,
00047 const Epetra_Vector* xdot,
00048 const Epetra_Vector* xdotdot,
00049 const Epetra_Vector& x,
00050 const Teuchos::Array<ParamVec>& p,
00051 ParamVec* deriv_p,
00052 const Epetra_MultiVector* Vxdot,
00053 const Epetra_MultiVector* Vxdotdot,
00054 const Epetra_MultiVector* Vx,
00055 const Epetra_MultiVector* Vp,
00056 Epetra_Vector* g,
00057 Epetra_MultiVector* gx,
00058 Epetra_MultiVector* gp);
00059
00061 virtual void
00062 evaluateGradient(const double current_time,
00063 const Epetra_Vector* xdot,
00064 const Epetra_Vector* xdotdot,
00065 const Epetra_Vector& x,
00066 const Teuchos::Array<ParamVec>& p,
00067 ParamVec* deriv_p,
00068 Epetra_Vector* g,
00069 Epetra_MultiVector* dg_dx,
00070 Epetra_MultiVector* dg_dxdot,
00071 Epetra_MultiVector* dg_dxdotdot,
00072 Epetra_MultiVector* dg_dp);
00073
00074 private:
00075
00077 SolutionTwoNormResponseFunction(const SolutionTwoNormResponseFunction&);
00078
00080 SolutionTwoNormResponseFunction& operator=(const SolutionTwoNormResponseFunction&);
00081
00082 };
00083
00084 }
00085
00086 #endif // ALBANY_SOLUTIONTWONORMRESPONSEFUNCTION_HPP