#include <LOCA_MultiContinuation_NaturalConstraint.H>
Public Member Functions | |
NaturalConstraint (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< LOCA::MultiContinuation::NaturalGroup > &grp) | |
Constructor. | |
NaturalConstraint (const NaturalConstraint &source, NOX::CopyType type=NOX::DeepCopy) | |
Copy constructor. | |
~NaturalConstraint () | |
Destructor. | |
virtual void | setNaturalGroup (const Teuchos::RCP< LOCA::MultiContinuation::NaturalGroup > &grp) |
Set pointer to natural group. | |
Implementation of LOCA::MultiContinuation::ConstraintInterface | |
virtual methods | |
virtual void | copy (const ConstraintInterface &source) |
Copy. | |
virtual Teuchos::RCP < LOCA::MultiContinuation::ConstraintInterface > | clone (NOX::CopyType type=NOX::DeepCopy) const |
Cloning function. | |
virtual int | numConstraints () const |
Return number of constraints. | |
virtual void | setX (const NOX::Abstract::Vector &y) |
Set the solution vector to y. | |
virtual void | setParam (int paramID, double val) |
Sets parameter indexed by paramID. | |
virtual void | setParams (const vector< int > ¶mIDs, const NOX::Abstract::MultiVector::DenseMatrix &vals) |
Sets parameters indexed by paramIDs. | |
virtual NOX::Abstract::Group::ReturnType | computeConstraints () |
Compute continuation constraint equations. | |
virtual NOX::Abstract::Group::ReturnType | computeDX () |
Compute derivative of constraints w.r.t. solution vector x. | |
virtual NOX::Abstract::Group::ReturnType | computeDP (const vector< int > ¶mIDs, NOX::Abstract::MultiVector::DenseMatrix &dgdp, bool isValidG) |
Compute derivative of constraints w.r.t. supplied parameters. | |
virtual bool | isConstraints () const |
Return true if constraint residuals are valid. | |
virtual bool | isDX () const |
Return true if derivatives of constraints w.r.t. x are valid. | |
virtual const NOX::Abstract::MultiVector::DenseMatrix & | getConstraints () const |
Return constraint residuals. | |
virtual const NOX::Abstract::MultiVector * | getDX () const |
Return solution component of constraint derivatives. | |
virtual bool | isDXZero () const |
Return true if solution component of constraint derivatives is zero. | |
Protected Attributes | |
Teuchos::RCP< LOCA::GlobalData > | globalData |
LOCA global data object. | |
Teuchos::RCP < LOCA::MultiContinuation::NaturalGroup > | naturalGroup |
Pointer to arc-length group. | |
NOX::Abstract::MultiVector::DenseMatrix | constraints |
Constraint values. | |
bool | isValidConstraints |
Flag indicating whether constraints are valid. | |
vector< int > | conParamIDs |
Continuation parameter IDs. | |
Private Member Functions | |
NaturalConstraint & | operator= (const NaturalConstraint &source) |
Prohibit generation and use of operator=(). |
This class implements the natural constraint equation for natural continuation:
where is the parameter component of the predictor direction
.
Definition at line 74 of file LOCA_MultiContinuation_NaturalConstraint.H.
LOCA::MultiContinuation::NaturalConstraint::NaturalConstraint | ( | const Teuchos::RCP< LOCA::GlobalData > & | global_data, | |
const Teuchos::RCP< LOCA::MultiContinuation::NaturalGroup > & | grp | |||
) |
Constructor.
Definition at line 47 of file LOCA_MultiContinuation_NaturalConstraint.C.
Referenced by clone().
LOCA::MultiContinuation::NaturalConstraint::NaturalConstraint | ( | const NaturalConstraint & | source, | |
NOX::CopyType | type = NOX::DeepCopy | |||
) |
Copy constructor.
Definition at line 58 of file LOCA_MultiContinuation_NaturalConstraint.C.
References NOX::DeepCopy, and isValidConstraints.
LOCA::MultiContinuation::NaturalConstraint::~NaturalConstraint | ( | ) |
void LOCA::MultiContinuation::NaturalConstraint::setNaturalGroup | ( | const Teuchos::RCP< LOCA::MultiContinuation::NaturalGroup > & | grp | ) | [virtual] |
Set pointer to natural group.
Definition at line 76 of file LOCA_MultiContinuation_NaturalConstraint.C.
References naturalGroup.
void LOCA::MultiContinuation::NaturalConstraint::copy | ( | const ConstraintInterface & | source | ) | [virtual] |
Copy.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 82 of file LOCA_MultiContinuation_NaturalConstraint.C.
References conParamIDs, constraints, globalData, and isValidConstraints.
Teuchos::RCP< LOCA::MultiContinuation::ConstraintInterface > LOCA::MultiContinuation::NaturalConstraint::clone | ( | NOX::CopyType | type = NOX::DeepCopy |
) | const [virtual] |
Cloning function.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 97 of file LOCA_MultiContinuation_NaturalConstraint.C.
References NaturalConstraint().
int LOCA::MultiContinuation::NaturalConstraint::numConstraints | ( | ) | const [virtual] |
Return number of constraints.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 103 of file LOCA_MultiContinuation_NaturalConstraint.C.
References constraints.
void LOCA::MultiContinuation::NaturalConstraint::setX | ( | const NOX::Abstract::Vector & | y | ) | [virtual] |
Set the solution vector to y.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 109 of file LOCA_MultiContinuation_NaturalConstraint.C.
References isValidConstraints.
void LOCA::MultiContinuation::NaturalConstraint::setParam | ( | int | paramID, | |
double | val | |||
) | [virtual] |
Sets parameter indexed by paramID.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 116 of file LOCA_MultiContinuation_NaturalConstraint.C.
References isValidConstraints.
void LOCA::MultiContinuation::NaturalConstraint::setParams | ( | const vector< int > & | paramIDs, | |
const NOX::Abstract::MultiVector::DenseMatrix & | vals | |||
) | [virtual] |
Sets parameters indexed by paramIDs.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 122 of file LOCA_MultiContinuation_NaturalConstraint.C.
References isValidConstraints.
NOX::Abstract::Group::ReturnType LOCA::MultiContinuation::NaturalConstraint::computeConstraints | ( | ) | [virtual] |
Compute continuation constraint equations.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 130 of file LOCA_MultiContinuation_NaturalConstraint.C.
References constraints, LOCA::Extended::Vector::getScalar(), isValidConstraints, naturalGroup, and NOX::Abstract::Group::Ok.
Referenced by computeDP().
NOX::Abstract::Group::ReturnType LOCA::MultiContinuation::NaturalConstraint::computeDX | ( | ) | [virtual] |
Compute derivative of constraints w.r.t. solution vector x.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 153 of file LOCA_MultiContinuation_NaturalConstraint.C.
References NOX::Abstract::Group::Ok.
NOX::Abstract::Group::ReturnType LOCA::MultiContinuation::NaturalConstraint::computeDP | ( | const vector< int > & | paramIDs, | |
NOX::Abstract::MultiVector::DenseMatrix & | dgdp, | |||
bool | isValidG | |||
) | [virtual] |
Compute derivative of constraints w.r.t. supplied parameters.
The first column of dgdp
should be filled with the constraint residuals if
isValidG
is false
. If isValidG
is true
, then the dgdp
contains on input.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 159 of file LOCA_MultiContinuation_NaturalConstraint.C.
References computeConstraints(), conParamIDs, constraints, globalData, isValidConstraints, and NOX::Abstract::Group::Ok.
bool LOCA::MultiContinuation::NaturalConstraint::isConstraints | ( | ) | const [virtual] |
Return true
if constraint residuals are valid.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 198 of file LOCA_MultiContinuation_NaturalConstraint.C.
References isValidConstraints.
bool LOCA::MultiContinuation::NaturalConstraint::isDX | ( | ) | const [virtual] |
Return true
if derivatives of constraints w.r.t. x are valid.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 204 of file LOCA_MultiContinuation_NaturalConstraint.C.
const NOX::Abstract::MultiVector::DenseMatrix & LOCA::MultiContinuation::NaturalConstraint::getConstraints | ( | ) | const [virtual] |
Return constraint residuals.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 210 of file LOCA_MultiContinuation_NaturalConstraint.C.
References constraints.
const NOX::Abstract::MultiVector * LOCA::MultiContinuation::NaturalConstraint::getDX | ( | ) | const [virtual] |
Return solution component of constraint derivatives.
Since the solution component of the derivative is always zero, this always returns NULL.
Implements LOCA::MultiContinuation::ConstraintInterfaceMVDX.
Definition at line 216 of file LOCA_MultiContinuation_NaturalConstraint.C.
bool LOCA::MultiContinuation::NaturalConstraint::isDXZero | ( | ) | const [virtual] |
Return true
if solution component of constraint derivatives is zero.
Implements LOCA::MultiContinuation::ConstraintInterface.
Definition at line 222 of file LOCA_MultiContinuation_NaturalConstraint.C.
NaturalConstraint& LOCA::MultiContinuation::NaturalConstraint::operator= | ( | const NaturalConstraint & | source | ) | [private] |
Prohibit generation and use of operator=().
Teuchos::RCP<LOCA::GlobalData> LOCA::MultiContinuation::NaturalConstraint::globalData [protected] |
LOCA global data object.
Definition at line 175 of file LOCA_MultiContinuation_NaturalConstraint.H.
Referenced by computeDP(), and copy().
Teuchos::RCP< LOCA::MultiContinuation::NaturalGroup> LOCA::MultiContinuation::NaturalConstraint::naturalGroup [protected] |
Pointer to arc-length group.
Definition at line 179 of file LOCA_MultiContinuation_NaturalConstraint.H.
Referenced by computeConstraints(), and setNaturalGroup().
NOX::Abstract::MultiVector::DenseMatrix LOCA::MultiContinuation::NaturalConstraint::constraints [protected] |
Constraint values.
Definition at line 182 of file LOCA_MultiContinuation_NaturalConstraint.H.
Referenced by computeConstraints(), computeDP(), copy(), getConstraints(), and numConstraints().
bool LOCA::MultiContinuation::NaturalConstraint::isValidConstraints [protected] |
Flag indicating whether constraints are valid.
Definition at line 185 of file LOCA_MultiContinuation_NaturalConstraint.H.
Referenced by computeConstraints(), computeDP(), copy(), isConstraints(), NaturalConstraint(), setParam(), setParams(), and setX().
vector<int> LOCA::MultiContinuation::NaturalConstraint::conParamIDs [protected] |
Continuation parameter IDs.
Definition at line 188 of file LOCA_MultiContinuation_NaturalConstraint.H.
Referenced by computeDP(), and copy().