Public Member Functions | |
| Group (const TSFExtended::Vector< double > &initcond, const TSFExtended::NonlinearOperator< double > &nonlinOp, const TSFExtended::LinearSolver< double > &solver) | |
| Constructor. | |
| Group (const TSFExtended::NonlinearOperator< double > &nonlinOp, const TSFExtended::LinearSolver< double > &solver) | |
| Constructor. | |
| Group (const TSFExtended::Vector< double > &initcond, const TSFExtended::NonlinearOperator< double > &nonlinOp, const TSFExtended::LinearSolver< double > &solver, int numdigits) | |
| Constructor. | |
| Group (const TSFExtended::NonlinearOperator< double > &nonlinOp, const TSFExtended::LinearSolver< double > &solver, int numdigits) | |
| Constructor. | |
| Group (const NOX::TSF::Group &source, NOX::CopyType type=DeepCopy) | |
| Copy constructor. | |
| ~Group () | |
| Destructor. | |
| NOX::Abstract::Group & | operator= (const NOX::Abstract::Group &source) |
| NOX::Abstract::Group & | operator= (const NOX::TSF::Group &source) |
| See above. | |
| virtual RCP< NOX::Abstract::Group > | clone (NOX::CopyType type=NOX::DeepCopy) const |
| void | print () const |
| Print out the group. | |
"Compute" functions. | |
| void | setX (const NOX::Abstract::Vector &y) |
| void | setX (const NOX::TSF::Vector &y) |
| See above. | |
| void | computeX (const NOX::Abstract::Group &grp, const NOX::Abstract::Vector &d, double step) |
| void | computeX (const NOX::TSF::Group &grp, const NOX::TSF::Vector &d, double step) |
| See above. | |
| NOX::Abstract::Group::ReturnType | computeF () |
| NOX::Abstract::Group::ReturnType | computeJacobian () |
| NOX::Abstract::Group::ReturnType | computeGradient () |
| NOX::Abstract::Group::ReturnType | computeNewton (Teuchos::ParameterList ¶ms) |
Jacobian operations. | |
Operations using the Jacobian matrix. These may not be defined in matrix-free scenarios. | |
| NOX::Abstract::Group::ReturnType | applyJacobian (const NOX::TSF::Vector &input, NOX::TSF::Vector &result) const |
| NOX::Abstract::Group::ReturnType | applyJacobian (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
| See above. | |
| NOX::Abstract::Group::ReturnType | applyJacobianTranspose (const NOX::TSF::Vector &input, NOX::TSF::Vector &result) const |
| NOX::Abstract::Group::ReturnType | applyJacobianTranspose (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
| See above. | |
| NOX::Abstract::Group::ReturnType | applyJacobianInverse (Teuchos::ParameterList ¶ms, const NOX::TSF::Vector &input, NOX::TSF::Vector &result) const |
| NOX::Abstract::Group::ReturnType | applyJacobianInverse (Teuchos::ParameterList ¶ms, const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
"Is" functions | |
Checks to see if various objects have been computed. Returns true if the corresponding "compute" function has been called since the last update to the solution vector (via instantiation or computeX). | |
| bool | isF () const |
| bool | isJacobian () const |
| bool | isGradient () const |
| bool | isNewton () const |
"Get" functions | |
Note that these function do not check whether or not the vectors are valid. Must use the "Is" functions for that purpose. | |
| const NOX::Abstract::Vector & | getX () const |
| const NOX::Abstract::Vector & | getF () const |
| double | getNormF () const |
| const NOX::Abstract::Vector & | getGradient () const |
| const NOX::Abstract::Vector & | getNewton () const |
Protected Member Functions | |
| void | resetIsValid () |
| resets all isValid flags to false | |
Protected Attributes | |
| int | precision |
| user-specified precision | |
| TSFExtended::LinearSolver< double > | solver |
| Linear solver that will be used to solve J*step = resid. | |
| TSFExtended::LinearOperator < double > | jacobian |
| Linear solver that will be used to solve J*step = resid. | |
| TSFExtended::NonlinearOperator < double > | nonlinearOp |
| Problem interface: reference to nonlinear operator passed to group. | |
| double | normF |
| Norm of F. | |
Vectors | |
| NOX::TSF::Vector | xVector |
| Solution vector. | |
| NOX::TSF::Vector | fVector |
| Right-hand-side vector (function evaluation). | |
| NOX::TSF::Vector | newtonVector |
| Newton direction vector. | |
| NOX::TSF::Vector | gradientVector |
| Gradient vector (steepest descent vector). | |
IsValid flags | |
True if the current solution is up-to-date with respect to the currect xVector. | |
| bool | isValidF |
| bool | isValidJacobian |
| bool | isValidGradient |
| bool | isValidNewton |
Definition at line 60 of file NOX_TSF_Group.H.
| NOX::TSF::Group::Group | ( | const TSFExtended::Vector< double > & | initcond, |
| const TSFExtended::NonlinearOperator< double > & | nonlinOp, | ||
| const TSFExtended::LinearSolver< double > & | solver | ||
| ) |
Constructor.
Construct a group given an initial condition, the nonlinear operator that describes the problem to be solved, and the linear solver
Definition at line 41 of file NOX_TSF_Group.C.
References NOX::TSF::Vector::getTSFVector(), nonlinearOp, resetIsValid(), TSFExtended::NonlinearOperator< Scalar >::setEvalPt(), and xVector.
| NOX::TSF::Group::Group | ( | const TSFExtended::NonlinearOperator< double > & | nonlinOp, |
| const TSFExtended::LinearSolver< double > & | solver | ||
| ) |
Constructor.
Construct a group given an initial condition and the nonlinear operator that describes the problem to be solved.
Definition at line 59 of file NOX_TSF_Group.C.
References NOX::TSF::Vector::getTSFVector(), nonlinearOp, resetIsValid(), TSFExtended::NonlinearOperator< Scalar >::setEvalPt(), and xVector.
| NOX::TSF::Group::Group | ( | const TSFExtended::Vector< double > & | initcond, |
| const TSFExtended::NonlinearOperator< double > & | nonlinOp, | ||
| const TSFExtended::LinearSolver< double > & | solver, | ||
| int | numdigits | ||
| ) |
Constructor.
Construct a group given an initial condition, the nonlinear operator that describes the problem to be solved, the linear solver, and user-specified precision.
Definition at line 76 of file NOX_TSF_Group.C.
References NOX::TSF::Vector::getTSFVector(), nonlinearOp, resetIsValid(), TSFExtended::NonlinearOperator< Scalar >::setEvalPt(), and xVector.
| NOX::TSF::Group::Group | ( | const TSFExtended::NonlinearOperator< double > & | nonlinOp, |
| const TSFExtended::LinearSolver< double > & | solver, | ||
| int | numdigits | ||
| ) |
Constructor.
Construct a group given an initial condition, the nonlinear operator that describes the problem to be solved, and user-specified precision.
Definition at line 95 of file NOX_TSF_Group.C.
References NOX::TSF::Vector::getTSFVector(), nonlinearOp, resetIsValid(), TSFExtended::NonlinearOperator< Scalar >::setEvalPt(), and xVector.
| NOX::TSF::Group::Group | ( | const NOX::TSF::Group & | source, |
| NOX::CopyType | type = DeepCopy |
||
| ) |
Copy constructor.
Construct a new group given an existing group to copy from.
Definition at line 114 of file NOX_TSF_Group.C.
References isValidF, isValidGradient, isValidJacobian, isValidNewton, normF, and resetIsValid().
| NOX::TSF::Group::~Group | ( | ) |
Destructor.
Definition at line 153 of file NOX_TSF_Group.C.
| NOX::Abstract::Group::ReturnType NOX::TSF::Group::applyJacobian | ( | const NOX::TSF::Vector & | input, |
| NOX::TSF::Vector & | result | ||
| ) | const |
Definition at line 396 of file NOX_TSF_Group.C.
References NOX::TSF::Vector::getTSFVector().
| NOX::Abstract::Group::ReturnType NOX::TSF::Group::applyJacobian | ( | const NOX::Abstract::Vector & | input, |
| NOX::Abstract::Vector & | result | ||
| ) | const |
See above.
| NOX::Abstract::Group::ReturnType NOX::TSF::Group::applyJacobianInverse | ( | Teuchos::ParameterList & | params, |
| const NOX::Abstract::Vector & | input, | ||
| NOX::Abstract::Vector & | result | ||
| ) | const |
| NOX::Abstract::Group::ReturnType NOX::TSF::Group::applyJacobianInverse | ( | Teuchos::ParameterList & | params, |
| const NOX::TSF::Vector & | input, | ||
| NOX::TSF::Vector & | result | ||
| ) | const |
Definition at line 449 of file NOX_TSF_Group.C.
References TSFExtended::SolverState< Scalar >::finalState(), NOX::TSF::Vector::getTSFVector(), TSFExtended::Vector< Scalar >::print(), and TSFExtended::SolveConverged.
| NOX::Abstract::Group::ReturnType NOX::TSF::Group::applyJacobianTranspose | ( | const NOX::TSF::Vector & | input, |
| NOX::TSF::Vector & | result | ||
| ) | const |
Definition at line 422 of file NOX_TSF_Group.C.
References NOX::TSF::Vector::getTSFVector().
| NOX::Abstract::Group::ReturnType NOX::TSF::Group::applyJacobianTranspose | ( | const NOX::Abstract::Vector & | input, |
| NOX::Abstract::Vector & | result | ||
| ) | const |
See above.
Definition at line 413 of file NOX_TSF_Group.C.
| RCP< NOX::Abstract::Group > NOX::TSF::Group::clone | ( | NOX::CopyType | type = NOX::DeepCopy | ) | const [virtual] |
Definition at line 171 of file NOX_TSF_Group.C.
| NOX::Abstract::Group::ReturnType NOX::TSF::Group::computeF | ( | ) |
Definition at line 247 of file NOX_TSF_Group.C.
| NOX::Abstract::Group::ReturnType NOX::TSF::Group::computeGradient | ( | ) |
Definition at line 301 of file NOX_TSF_Group.C.
| NOX::Abstract::Group::ReturnType NOX::TSF::Group::computeJacobian | ( | ) |
Definition at line 278 of file NOX_TSF_Group.C.
| NOX::Abstract::Group::ReturnType NOX::TSF::Group::computeNewton | ( | Teuchos::ParameterList & | params | ) |
Definition at line 337 of file NOX_TSF_Group.C.
| void NOX::TSF::Group::computeX | ( | const NOX::Abstract::Group & | grp, |
| const NOX::Abstract::Vector & | d, | ||
| double | step | ||
| ) |
Definition at line 231 of file NOX_TSF_Group.C.
| void NOX::TSF::Group::computeX | ( | const NOX::TSF::Group & | grp, |
| const NOX::TSF::Vector & | d, | ||
| double | step | ||
| ) |
| const NOX::Abstract::Vector & NOX::TSF::Group::getF | ( | ) | const |
Definition at line 521 of file NOX_TSF_Group.C.
| const NOX::Abstract::Vector & NOX::TSF::Group::getGradient | ( | ) | const |
Definition at line 543 of file NOX_TSF_Group.C.
| const NOX::Abstract::Vector & NOX::TSF::Group::getNewton | ( | ) | const |
Definition at line 548 of file NOX_TSF_Group.C.
| double NOX::TSF::Group::getNormF | ( | ) | const |
Definition at line 532 of file NOX_TSF_Group.C.
| const NOX::Abstract::Vector & NOX::TSF::Group::getX | ( | ) | const |
Definition at line 516 of file NOX_TSF_Group.C.
Referenced by TSFExtended::NOXSolver::solve().
| bool NOX::TSF::Group::isF | ( | ) | const |
Definition at line 496 of file NOX_TSF_Group.C.
| bool NOX::TSF::Group::isGradient | ( | ) | const |
Definition at line 506 of file NOX_TSF_Group.C.
| bool NOX::TSF::Group::isJacobian | ( | ) | const |
Definition at line 501 of file NOX_TSF_Group.C.
| bool NOX::TSF::Group::isNewton | ( | ) | const |
Definition at line 511 of file NOX_TSF_Group.C.
| NOX::Abstract::Group & NOX::TSF::Group::operator= | ( | const NOX::TSF::Group & | source | ) |
See above.
Definition at line 182 of file NOX_TSF_Group.C.
References fVector, gradientVector, isValidF, isValidGradient, isValidJacobian, isValidNewton, jacobian, newtonVector, nonlinearOp, normF, precision, solver, and xVector.
| NOX::Abstract::Group & NOX::TSF::Group::operator= | ( | const NOX::Abstract::Group & | source | ) |
Definition at line 177 of file NOX_TSF_Group.C.
| void NOX::TSF::Group::print | ( | ) | const |
Print out the group.
Definition at line 553 of file NOX_TSF_Group.C.
| void NOX::TSF::Group::resetIsValid | ( | ) | [protected] |
resets all isValid flags to false
Definition at line 157 of file NOX_TSF_Group.C.
Referenced by Group().
| void NOX::TSF::Group::setX | ( | const NOX::TSF::Vector & | y | ) |
See above.
Definition at line 224 of file NOX_TSF_Group.C.
References NOX::TSF::Vector::getTSFVector().
| void NOX::TSF::Group::setX | ( | const NOX::Abstract::Vector & | y | ) |
Definition at line 219 of file NOX_TSF_Group.C.
NOX::TSF::Vector NOX::TSF::Group::fVector [protected] |
Right-hand-side vector (function evaluation).
Definition at line 238 of file NOX_TSF_Group.H.
Referenced by operator=().
NOX::TSF::Vector NOX::TSF::Group::gradientVector [protected] |
Gradient vector (steepest descent vector).
Definition at line 242 of file NOX_TSF_Group.H.
Referenced by operator=().
bool NOX::TSF::Group::isValidF [protected] |
Definition at line 260 of file NOX_TSF_Group.H.
Referenced by Group(), and operator=().
bool NOX::TSF::Group::isValidGradient [protected] |
Definition at line 262 of file NOX_TSF_Group.H.
Referenced by Group(), and operator=().
bool NOX::TSF::Group::isValidJacobian [protected] |
Definition at line 261 of file NOX_TSF_Group.H.
Referenced by Group(), and operator=().
bool NOX::TSF::Group::isValidNewton [protected] |
Definition at line 263 of file NOX_TSF_Group.H.
Referenced by Group(), and operator=().
TSFExtended::LinearOperator<double> NOX::TSF::Group::jacobian [protected] |
Linear solver that will be used to solve J*step = resid.
Definition at line 249 of file NOX_TSF_Group.H.
Referenced by operator=().
NOX::TSF::Vector NOX::TSF::Group::newtonVector [protected] |
TSFExtended::NonlinearOperator<double> NOX::TSF::Group::nonlinearOp [protected] |
Problem interface: reference to nonlinear operator passed to group.
Definition at line 253 of file NOX_TSF_Group.H.
Referenced by Group(), and operator=().
double NOX::TSF::Group::normF [protected] |
int NOX::TSF::Group::precision [protected] |
TSFExtended::LinearSolver<double> NOX::TSF::Group::solver [mutable, protected] |
Linear solver that will be used to solve J*step = resid.
Definition at line 246 of file NOX_TSF_Group.H.
Referenced by operator=().
NOX::TSF::Vector NOX::TSF::Group::xVector [protected] |
Solution vector.
Definition at line 236 of file NOX_TSF_Group.H.
Referenced by computeX(), Group(), and operator=().