Sundance::NonlinearPDEConstrainedObj Class Reference

Inheritance diagram for Sundance::NonlinearPDEConstrainedObj:

Sundance::PDEConstrainedObjBase Playa::ObjectiveBase Playa::ObjectWithVerbosity

List of all members.

Public Member Functions

 NonlinearPDEConstrainedObj (const Functional &lagrangian, const Expr &stateVars, const Expr &stateVarVals, const Expr &adjointVars, const Expr &adjointVarVals, const Expr &designVars, const Expr &designVarVals, const NOXSolver &solver, const LinearSolver< double > &adjSolver, int verb=0)
 NonlinearPDEConstrainedObj (const Functional &lagrangian, const Array< Expr > &stateVars, const Array< Expr > &stateVarVals, const Array< Expr > &adjointVars, const Array< Expr > &adjointVarVals, const Expr &designVars, const Expr &designVarVals, const NOXSolver &solver, const LinearSolver< double > &adjSolver, int verb=0)
 NonlinearPDEConstrainedObj (const Functional &lagrangian, const Expr &stateVars, const Expr &stateVarVals, const Expr &adjointVars, const Expr &adjointVarVals, const Expr &designVars, const Expr &designVarVals, const NOXSolver &solver, const LinearSolver< double > &adjSolver, const RCP< IterCallbackBase > &iterCallback, int verb=0)
 NonlinearPDEConstrainedObj (const Functional &lagrangian, const Array< Expr > &stateVars, const Array< Expr > &stateVarVals, const Array< Expr > &adjointVars, const Array< Expr > &adjointVarVals, const Expr &designVars, const Expr &designVarVals, const NOXSolver &solver, const LinearSolver< double > &adjSolver, const RCP< IterCallbackBase > &iterCallback, int verb=0)
virtual ~NonlinearPDEConstrainedObj ()
void solveState (const Vector< double > &x) const
void solveStateAndAdjoint (const Vector< double > &x) const
void initEquations (const Array< Expr > &stateVars, const Array< Expr > &adjointVars, const Array< Array< Expr > > &fixedVarsInStateEqns, const Array< Array< Expr > > &fixedVarsInStateEqnsVals, const Array< Array< Expr > > &fixedVarsInAdjointEqns, const Array< Array< Expr > > &fixedVarsInAdjointEqnsVals)

Private Attributes

Array< NonlinearProblemstateProbs_
Array< LinearProblemadjointProbs_
NOXSolver solver_
LinearSolver< double > adjSolver_


Detailed Description

NonlinearPDEConstrainedObj is a base class for objective functions of the reduced-space variable where the constraint is a nonlinear PDE in the state variables.

Definition at line 20 of file PDEOptNonlinearPDEConstrainedObj.hpp.


Constructor & Destructor Documentation

Sundance::NonlinearPDEConstrainedObj::NonlinearPDEConstrainedObj ( const Functional lagrangian,
const Expr stateVars,
const Expr stateVarVals,
const Expr adjointVars,
const Expr adjointVarVals,
const Expr designVars,
const Expr designVarVals,
const NOXSolver solver,
const LinearSolver< double > &  adjSolver,
int  verb = 0 
)

Sundance::NonlinearPDEConstrainedObj::NonlinearPDEConstrainedObj ( const Functional lagrangian,
const Array< Expr > &  stateVars,
const Array< Expr > &  stateVarVals,
const Array< Expr > &  adjointVars,
const Array< Expr > &  adjointVarVals,
const Expr designVars,
const Expr designVarVals,
const NOXSolver solver,
const LinearSolver< double > &  adjSolver,
int  verb = 0 
)

Sundance::NonlinearPDEConstrainedObj::NonlinearPDEConstrainedObj ( const Functional lagrangian,
const Expr stateVars,
const Expr stateVarVals,
const Expr adjointVars,
const Expr adjointVarVals,
const Expr designVars,
const Expr designVarVals,
const NOXSolver solver,
const LinearSolver< double > &  adjSolver,
const RCP< IterCallbackBase > &  iterCallback,
int  verb = 0 
)

Sundance::NonlinearPDEConstrainedObj::NonlinearPDEConstrainedObj ( const Functional lagrangian,
const Array< Expr > &  stateVars,
const Array< Expr > &  stateVarVals,
const Array< Expr > &  adjointVars,
const Array< Expr > &  adjointVarVals,
const Expr designVars,
const Expr designVarVals,
const NOXSolver solver,
const LinearSolver< double > &  adjSolver,
const RCP< IterCallbackBase > &  iterCallback,
int  verb = 0 
)

virtual Sundance::NonlinearPDEConstrainedObj::~NonlinearPDEConstrainedObj (  )  [inline, virtual]

virtual dtor

Definition at line 78 of file PDEOptNonlinearPDEConstrainedObj.hpp.


Member Function Documentation

void Sundance::NonlinearPDEConstrainedObj::initEquations ( const Array< Expr > &  stateVars,
const Array< Expr > &  adjointVars,
const Array< Array< Expr > > &  fixedVarsInStateEqns,
const Array< Array< Expr > > &  fixedVarsInStateEqnsVals,
const Array< Array< Expr > > &  fixedVarsInAdjointEqns,
const Array< Array< Expr > > &  fixedVarsInAdjointEqnsVals 
) [virtual]

void Sundance::NonlinearPDEConstrainedObj::solveState ( const Vector< double > &  x  )  const [virtual]

Solve the sequence of state equations, followed by postprocessing. At the end of this call, the system is ready for evaluation of the objective function or solution of the adjoint equations.

Implements Sundance::PDEConstrainedObjBase.

Definition at line 148 of file PDEOptNonlinearPDEConstrainedObj.cpp.

References Sundance::PDEConstrainedObjBase::designVarVal(), Playa::SolverState< Scalar >::finalState(), Playa::Vector< Scalar >::norm2(), PLAYA_MSG2, PLAYA_MSG3, PLAYA_MSG5, Sundance::setDiscreteFunctionVector(), Playa::SolveConverged, solver_, Sundance::PDEConstrainedObjBase::statePostprocCallback(), stateProbs_, and Playa::ObjectWithVerbosity::verb().

void Sundance::NonlinearPDEConstrainedObj::solveStateAndAdjoint ( const Vector< double > &  x  )  const [virtual]

Solve the sequence of state equations, then do postprocessing, then finally the adjoint equations in reverse order. At the end of this call, the system is ready for evaluation of the objective function and its gradient.

Implements Sundance::PDEConstrainedObjBase.

Definition at line 176 of file PDEOptNonlinearPDEConstrainedObj.cpp.

References Sundance::FieldWriter::addField(), Sundance::FieldWriter::addMesh(), Playa::SolverState< Scalar >::finalState(), Playa::Vector< Scalar >::norm2(), PLAYA_MSG2, PLAYA_MSG3, PLAYA_MSG5, Sundance::setDiscreteFunctionVector(), Sundance::Expr::size(), Playa::SolveConverged, Playa::SolverState< Scalar >::stateDescription(), Teuchos::toString(), and Sundance::FieldWriter::write().


Member Data Documentation

Definition at line 108 of file PDEOptNonlinearPDEConstrainedObj.hpp.

Referenced by initEquations().

Definition at line 112 of file PDEOptNonlinearPDEConstrainedObj.hpp.

Definition at line 110 of file PDEOptNonlinearPDEConstrainedObj.hpp.

Referenced by solveState().

Definition at line 106 of file PDEOptNonlinearPDEConstrainedObj.hpp.

Referenced by initEquations(), and solveState().

Site Contact