NOX Development
|
Generic object that provides constraints through model evaluator responses. More...
#include <LOCA_Tpetra_ConstraintModelEvaluator.hpp>
Public Member Functions | |
ConstraintModelEvaluator (const Teuchos::RCP<::Thyra::ModelEvaluator< double > > &model, const LOCA::ParameterVector &pVec, const std::vector< std::string > &constraintResponseNames, const NOX::Abstract::Vector &cloneVec) | |
ConstraintModelEvaluator (const LOCA::MultiContinuation::ConstraintModelEvaluator &cme, NOX::CopyType type=NOX::DeepCopy) | |
void | copy (const ConstraintInterface &source) |
Copy. | |
Teuchos::RCP< LOCA::MultiContinuation::ConstraintInterface > | clone (NOX::CopyType type=NOX::DeepCopy) const |
Cloning function. | |
int | numConstraints () const |
Return number of constraints. | |
void | setX (const NOX::Abstract::Vector &x) |
Set the solution vector to x. | |
void | setParam (int paramID, double val) |
Set parameter value given a parameter indices corresponding to the LOCA::ParameterVector. | |
void | setParams (const std::vector< int > ¶mIDs, const NOX::Abstract::MultiVector::DenseMatrix &vals) |
Set parameter value given a parameter indices corresponding to the LOCA::ParameterVector. | |
NOX::Abstract::Group::ReturnType | computeConstraints () |
Compute constraint residuals. | |
NOX::Abstract::Group::ReturnType | computeDX () |
Compute derivative of constraints w.r.t. solution vector x. | |
NOX::Abstract::Group::ReturnType | computeDP (const std::vector< int > ¶mIDs, NOX::Abstract::MultiVector::DenseMatrix &dgdp, bool isValidG) |
Compute derivative of constraints w.r.t. supplied parameters. | |
bool | isConstraints () const |
Return true if constraint residuals are valid. | |
bool | isDX () const |
Return true if derivative of constraint w.r.t. x is valid. | |
const NOX::Abstract::MultiVector::DenseMatrix & | getConstraints () const |
Return constraint residuals. | |
bool | isDXZero () const |
Return true if solution component of constraint derivatives is zero. | |
NOX::Abstract::MultiVector * | getDX () const |
Return solution component of constraint derivatives. | |
const LOCA::ParameterVector | getParams () const |
![]() | |
ConstraintInterfaceMVDX () | |
Constructor. | |
virtual | ~ConstraintInterfaceMVDX () |
Destructor. | |
virtual const NOX::Abstract::MultiVector * | getDX () const =0 |
Return solution component of constraint derivatives. | |
virtual NOX::Abstract::Group::ReturnType | multiplyDX (double alpha, const NOX::Abstract::MultiVector &input_x, NOX::Abstract::MultiVector::DenseMatrix &result_p) const |
Compute result_p = alpha * dg/dx * input_x. | |
virtual NOX::Abstract::Group::ReturnType | addDX (Teuchos::ETransp transb, double alpha, const NOX::Abstract::MultiVector::DenseMatrix &b, double beta, NOX::Abstract::MultiVector &result_x) const |
Compute result_x = alpha * dg/dx^T * op(b) + beta * result_x. | |
![]() | |
ConstraintInterface () | |
Constructor. | |
virtual | ~ConstraintInterface () |
Destructor. | |
virtual void | copy (const ConstraintInterface &source)=0 |
Copy. | |
virtual Teuchos::RCP< LOCA::MultiContinuation::ConstraintInterface > | clone (NOX::CopyType type=NOX::DeepCopy) const =0 |
Cloning function. | |
virtual int | numConstraints () const =0 |
Return number of constraints. | |
virtual void | setX (const NOX::Abstract::Vector &x)=0 |
Set the solution vector to x. | |
virtual void | setParam (int paramID, double val)=0 |
Sets parameter indexed by paramID. | |
virtual void | setParams (const std::vector< int > ¶mIDs, const NOX::Abstract::MultiVector::DenseMatrix &vals)=0 |
Sets parameters indexed by paramIDs. | |
virtual NOX::Abstract::Group::ReturnType | computeConstraints ()=0 |
Compute constraint residuals. | |
virtual NOX::Abstract::Group::ReturnType | computeDX ()=0 |
Compute derivative of constraints w.r.t. solution vector x. | |
virtual NOX::Abstract::Group::ReturnType | computeDP (const std::vector< int > ¶mIDs, NOX::Abstract::MultiVector::DenseMatrix &dgdp, bool isValidG)=0 |
Compute derivative of constraints w.r.t. supplied parameters. | |
virtual bool | isConstraints () const =0 |
Return true if constraint residuals are valid. | |
virtual bool | isDX () const =0 |
Return true if derivative of constraint w.r.t. x is valid. | |
virtual const NOX::Abstract::MultiVector::DenseMatrix & | getConstraints () const =0 |
Return constraint residuals. | |
virtual NOX::Abstract::Group::ReturnType | multiplyDX (double alpha, const NOX::Abstract::MultiVector &input_x, NOX::Abstract::MultiVector::DenseMatrix &result_p) const =0 |
Compute result_p = alpha * dg/dx * input_x. | |
virtual NOX::Abstract::Group::ReturnType | addDX (Teuchos::ETransp transb, double alpha, const NOX::Abstract::MultiVector::DenseMatrix &b, double beta, NOX::Abstract::MultiVector &result_x) const =0 |
Compute result_x = alpha * dg/dx^T * op(b) + beta * result_x. | |
virtual bool | isDXZero () const =0 |
Return true if solution component of constraint derivatives is zero. | |
virtual void | preProcessContinuationStep (LOCA::Abstract::Iterator::StepStatus) |
Perform any preprocessing before a continuation step starts. | |
virtual void | postProcessContinuationStep (LOCA::Abstract::Iterator::StepStatus) |
Perform any postprocessing after a continuation step finishes. | |
Generic object that provides constraints through model evaluator responses.
LOCA::MultiContinuation::ConstraintModelEvaluator::ConstraintModelEvaluator | ( | const Teuchos::RCP<::Thyra::ModelEvaluator< double > > & | model, |
const LOCA::ParameterVector & | pVec, | ||
const std::vector< std::string > & | constraintResponseNames, | ||
const NOX::Abstract::Vector & | cloneVec | ||
) |
Constructor
model | Model evaluator that provides constraints as responses. |
pVec | The independent parameters for constraints. |
constrantResponseNames | The names of the responses used as constraint equations. |
cloneVec | NOX vector used to clone data structures with same space/map. |
References NOX::Abstract::Vector::clone(), NOX::Abstract::Vector::createMultiVector(), LOCA::ParameterVector::getNamesVector(), LOCA::ParameterVector::length(), and NOX::ShapeCopy.
|
virtual |
Cloning function.
Implements LOCA::MultiContinuation::ConstraintInterface.
|
virtual |
Compute constraint residuals.
Implements LOCA::MultiContinuation::ConstraintInterface.
References LOCA::ParameterVector::length(), and NOX::Abstract::Group::Ok.
Referenced by computeDP().
|
virtual |
Compute derivative of constraints w.r.t. supplied parameters.
The first column of dgdp
should be filled with the constraint residuals isValidG
is false
. If isValidG
is true
, then the dgdp
contains
Implements LOCA::MultiContinuation::ConstraintInterface.
References computeConstraints(), isConstraints(), LOCA::ParameterVector::length(), and NOX::Abstract::Group::Ok.
|
virtual |
Compute derivative of constraints w.r.t. solution vector x.
Implements LOCA::MultiContinuation::ConstraintInterface.
References LOCA::ParameterVector::length(), and NOX::Abstract::Group::Ok.
|
virtual |
Copy.
Implements LOCA::MultiContinuation::ConstraintInterface.
References LOCA::ParameterVector::length().
|
virtual |
Return constraint residuals.
Implements LOCA::MultiContinuation::ConstraintInterface.
|
virtual |
Return solution component of constraint derivatives.
May return NULL if constraint derivative is zero
Implements LOCA::MultiContinuation::ConstraintInterfaceMVDX.
|
virtual |
Return true
if constraint residuals are valid.
Implements LOCA::MultiContinuation::ConstraintInterface.
Referenced by computeDP().
|
virtual |
Return true
if derivative of constraint w.r.t. x is valid.
Implements LOCA::MultiContinuation::ConstraintInterface.
|
virtual |
Return true
if solution component of constraint derivatives is zero.
Implements LOCA::MultiContinuation::ConstraintInterface.
|
virtual |
Return number of constraints.
Implements LOCA::MultiContinuation::ConstraintInterface.
|
virtual |
Set parameter value given a parameter indices corresponding to the LOCA::ParameterVector.
Implements LOCA::MultiContinuation::ConstraintInterface.
|
virtual |
Set parameter value given a parameter indices corresponding to the LOCA::ParameterVector.
Implements LOCA::MultiContinuation::ConstraintInterface.
|
virtual |
Set the solution vector to x.
Implements LOCA::MultiContinuation::ConstraintInterface.