|
NOX Development
|
Extension of the NOX::Thyra::Group to LOCA. More...
#include <LOCA_Thyra_Group.H>


Public Member Functions | |
| Group (const Teuchos::RCP< LOCA::GlobalData > &global_data, const NOX::Thyra::Vector &initial_guess, const Teuchos::RCP< ::Thyra::ModelEvaluator< double > > &model, const LOCA::ParameterVector &p, int p_index, bool implement_dfdp=false, const Teuchos::RCP< const ::Thyra::VectorBase< double > > &weight_vector=Teuchos::null, const bool set_transient_in_args=true) | |
| Constructor (internally constructs nox group) | |
| Group (const Teuchos::RCP< LOCA::GlobalData > &global_data, const NOX::Thyra::Group &nox_group, const LOCA::ParameterVector &p, const std::vector< int > &p_index, bool implement_dfdp=false, const Teuchos::RCP< const ::Thyra::VectorBase< double > > &weight_vector=Teuchos::null, const bool set_transient_in_args=true) | |
| Constructor for Householder continuation where parameters are in separate param vectors. | |
| Group (const Group &source, NOX::CopyType type=NOX::DeepCopy) | |
| Copy constructor. If type is DeepCopy, takes ownership of valid shared Jacobian. | |
| virtual | ~Group () |
| Destructor. | |
| virtual Group & | operator= (const Group &source) |
| Assignment operator. | |
Overloaded NOX::Thyra::Group methods. | |
| virtual NOX::Abstract::Group & | operator= (const NOX::Abstract::Group &source) |
| Assignment operator. | |
| virtual NOX::Abstract::Group & | operator= (const NOX::Thyra::Group &source) |
| Assignment operator. | |
| virtual Teuchos::RCP< NOX::Abstract::Group > | clone (NOX::CopyType type=NOX::DeepCopy) const |
| Cloning function. | |
| virtual NOX::Abstract::Group::ReturnType | computeF () |
| Overloaded computeF() | |
| virtual NOX::Abstract::Group::ReturnType | computeJacobian () |
| Overloaded computeJacobian() | |
Implementation of LOCA::MultiContinuation::AbstractGroup virtual methods. | |
| virtual void | copy (const NOX::Abstract::Group &source) |
| Copy. | |
| virtual void | setParams (const ParameterVector &p) |
| Set the parameters. | |
| virtual void | setParam (int paramID, double val) |
| Set parameter indexed by paramID. | |
| virtual void | setParam (std::string paramID, double val) |
| Set parameter indexed by paramID. | |
| const LOCA::ParameterVector & | getParams () const |
| Return a const reference to the ParameterVector owned by the group. | |
| virtual double | getParam (int paramID) const |
| Return copy of parameter indexed by paramID. | |
| virtual double | getParam (std::string paramID) const |
| Return copy of parameter indexed by paramID. | |
| virtual NOX::Abstract::Group::ReturnType | computeDfDpMulti (const std::vector< int > ¶mIDs, NOX::Abstract::MultiVector &dfdp, bool isValidF) |
| virtual void | preProcessContinuationStep (LOCA::Abstract::Iterator::StepStatus stepStatus) |
| Perform any preprocessing before a continuation step starts. | |
| virtual void | postProcessContinuationStep (LOCA::Abstract::Iterator::StepStatus stepStatus) |
| Perform any postprocessing after a continuation step finishes. | |
| virtual void | projectToDraw (const NOX::Abstract::Vector &x, double *px) const |
| Projects solution to a few scalars for multiparameter continuation. | |
| virtual int | projectToDrawDimension () const |
| Returns the dimension of the project to draw array. | |
| virtual double | computeScaledDotProduct (const NOX::Abstract::Vector &a, const NOX::Abstract::Vector &b) const |
| Compute a scaled dot product. | |
| virtual void | printSolution (const double conParam) const |
| Call the user interface print() routine, solution vector. | |
| virtual void | printSolution (const NOX::Abstract::Vector &x, const double conParam) const |
| Call the user interface print() routine, any vector. | |
| virtual void | scaleVector (NOX::Abstract::Vector &x) const |
| Scales a vector using scaling vector. | |
Public Member Functions inherited from NOX::Thyra::Group | |
| Group (const NOX::Thyra::Vector &initialGuess, const Teuchos::RCP< const ::Thyra::ModelEvaluator< double > > &model, const Teuchos::RCP< const ::Thyra::VectorBase< double > > &weightVector=Teuchos::null, const Teuchos::RCP< const ::Thyra::VectorBase< double > > &rightWeightVector=Teuchos::null, const Teuchos::RCP<::Thyra::VectorBase< double > > &inv_rightWeightVector=Teuchos::null, const bool rightScalingFirst=false) | |
| The default constructor that uses the linear solver from the ModelEvaluator. | |
| Group (const NOX::Thyra::Vector &initialGuess, const Teuchos::RCP< const ::Thyra::ModelEvaluator< double > > &model, const Teuchos::RCP< ::Thyra::LinearOpBase< double > > &linearOp, const Teuchos::RCP< const ::Thyra::LinearOpWithSolveFactoryBase< double > > &lowsFactory, const Teuchos::RCP< ::Thyra::PreconditionerBase< double > > &precOp, const Teuchos::RCP< ::Thyra::PreconditionerFactoryBase< double > > &precFactory, const Teuchos::RCP< const ::Thyra::VectorBase< double > > &weightVector=Teuchos::null, const Teuchos::RCP< const ::Thyra::VectorBase< double > > &rightWeightVector=Teuchos::null, const Teuchos::RCP<::Thyra::VectorBase< double > > &inv_rightWeightVector=Teuchos::null, const bool rightScalingFirst=false, const bool updatePreconditioner=true, const bool jacobianIsEvaluated=false) | |
| Power user constructor that takes explicit linear solver objects to handle different combinations. | |
| Group (const NOX::Thyra::Group &source, NOX::CopyType type=DeepCopy) | |
| Copy constructor. | |
| ~Group () | |
| Destructor. | |
| NOX::Abstract::Group & | operator= (const NOX::Abstract::Group &source) |
| Copies the source group into this group. | |
| NOX::Abstract::Group & | operator= (const NOX::Thyra::Group &source) |
| Teuchos::RCP< const ::Thyra::VectorBase< double > > | get_current_x () const |
| Teuchos::RCP< ::Thyra::LinearOpBase< double > > | getNonconstJacobianOperator () |
| Teuchos::RCP< const ::Thyra::LinearOpBase< double > > | getJacobianOperator () const |
| Teuchos::RCP< const ::Thyra::LinearOpBase< double > > | getScaledJacobianOperator () const |
| void | unscaleJacobianOperator () const |
| Teuchos::RCP< ::Thyra::LinearOpWithSolveBase< double > > | getNonconstJacobian () |
| Teuchos::RCP< const ::Thyra::LinearOpWithSolveBase< double > > | getJacobian () const |
| Teuchos::RCP< ::Thyra::PreconditionerBase< double > > | getNonconstPreconditioner () |
| Teuchos::RCP< const ::Thyra::PreconditionerBase< double > > | getPreconditioner () const |
| void | setJacobianOperator (const Teuchos::RCP<::Thyra::LinearOpBase< double > > &op) |
| Dangerous power user function for LOCA Householder bordered algorithm. | |
| void | setPreconditionerMatrix (const Teuchos::RCP< const ::Thyra::DefaultLinearOpSource< double > > &op) |
| Dangerous power user function for LOCA Householder bordered algorithm. This is the Matrix M that is used to initialize a stratimikos preconditioner. NOTE: this sets the losb_ object used to update prec_! | |
| void | setX (const NOX::Abstract::Vector &y) |
| Set the solution vector x to y. | |
| void | setX (const NOX::Thyra::Vector &y) |
| See above. | |
| void | computeX (const NOX::Abstract::Group &grp, const NOX::Abstract::Vector &d, double step) |
| Compute x = grp.x + step * d. | |
| void | computeX (const NOX::Thyra::Group &grp, const NOX::Thyra::Vector &d, double step) |
| See above. | |
| NOX::Abstract::Group::ReturnType | computeF () |
| Compute and store F(x). | |
| NOX::Abstract::Group::ReturnType | computeJacobian () |
| Compute and store Jacobian. | |
| NOX::Abstract::Group::ReturnType | computeGradient () |
| Compute and store gradient. | |
| NOX::Abstract::Group::ReturnType | computeNewton (Teuchos::ParameterList ¶ms) |
| Compute the Newton direction, using parameters for the linear solve. | |
| NOX::Abstract::Group::ReturnType | applyJacobian (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
| Applies Jacobian to the given input vector and puts the answer in the result. | |
| NOX::Abstract::Group::ReturnType | applyJacobian (const NOX::Thyra::Vector &input, NOX::Thyra::Vector &result) const |
| NOX::Abstract::Group::ReturnType | applyJacobianMultiVector (const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
| applyJacobian for multiple right-hand sides | |
| NOX::Abstract::Group::ReturnType | applyJacobianTranspose (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
| Applies Jacobian-Transpose to the given input vector and puts the answer in the result. | |
| NOX::Abstract::Group::ReturnType | applyJacobianTranspose (const NOX::Thyra::Vector &input, NOX::Thyra::Vector &result) const |
| NOX::Abstract::Group::ReturnType | applyJacobianTransposeMultiVector (const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
| applyJacobianTranspose for multiple right-hand sides | |
| NOX::Abstract::Group::ReturnType | applyJacobianInverse (Teuchos::ParameterList ¶ms, const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
| Applies the inverse of the Jacobian matrix to the given input vector and puts the answer in result. | |
| NOX::Abstract::Group::ReturnType | applyJacobianInverse (Teuchos::ParameterList ¶ms, const NOX::Thyra::Vector &input, NOX::Thyra::Vector &result) const |
| NOX::Abstract::Group::ReturnType | applyJacobianInverseMultiVector (Teuchos::ParameterList ¶ms, const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
| applyJacobianInverse for multiple right-hand sides | |
| NOX::Abstract::Group::ReturnType | applyRightPreconditioning (bool useTranspose, Teuchos::ParameterList ¶ms, const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
| Apply right preconditiong to the given input vector. | |
| bool | isF () const |
| Return true if F is valid. | |
| bool | isJacobian () const |
| Return true if the Jacobian is valid. | |
| bool | isGradient () const |
| Return true if the gradient is valid. | |
| bool | isNewton () const |
| Return true if the Newton direction is valid. | |
| const NOX::Abstract::Vector & | getX () const |
| Return solution vector. | |
| const NOX::Abstract::Vector & | getScaledX () const |
| const NOX::Abstract::Vector & | getF () const |
| Return F(x) | |
| double | getNormF () const |
| Return 2-norm of F(x). | |
| const NOX::Abstract::Vector & | getGradient () const |
| Return gradient. | |
| const NOX::Abstract::Vector & | getNewton () const |
| Return Newton direction. | |
| Teuchos::RCP< const NOX::Abstract::Vector > | getXPtr () const |
| Return RCP to solution vector. | |
| Teuchos::RCP< const NOX::Abstract::Vector > | getFPtr () const |
| Return RCP to F(x) | |
| Teuchos::RCP< const NOX::Abstract::Vector > | getGradientPtr () const |
| Return RCP to gradient. | |
| Teuchos::RCP< const NOX::Abstract::Vector > | getNewtonPtr () const |
| Return RCP to Newton direction. | |
| virtual void | logLastLinearSolveStats (NOX::SolverStats &stats) const |
| Adds statistics from last linear solve to the SovlerStats object. | |
| void | print () const |
| Print out the group. | |
| Teuchos::RCP< const ::Thyra::ModelEvaluator< double > > | getModel () const |
| void | enablePseudoTransientTerms (const Teuchos::RCP< const ::Thyra::VectorBase< double > > &x_dot, const double alpha, const double beta, const double t) |
| Set the transient terms on the Group and use them in the underlying evalModelImpl() calls. | |
| void | disablePseudoTransientTerms () |
| Disable the pseudo traansient terms in the underlying evalModel() calls. Sets x_dot, alpha, beta and t back to steady state values. | |
| bool | usingPseudoTransientTerms () const |
| Check for whether the pseudo transient support is enabled for residual and Jacobian evaluations. | |
| void | setBasePoint (const ::Thyra::ModelEvaluatorBase::InArgs< double > &base_point_params) |
| void | unsetBasePoint () |
| Unset the base point parameters so that they are not used internally. | |
| bool | usingBasePoint () const |
| Returns true if a base point has been set. | |
| Teuchos::RCP< const ::Thyra::LinearOpWithSolveFactoryBase< double > > | getLinearOpWithSolveFactory () const |
| Returns the thyra linear solver factory. | |
| Teuchos::RCP<::Thyra::PreconditionerFactoryBase< double > > | getPreconditionerFactory () const |
| Returns the thyra preconditioner factory. | |
| void | takeControlOfPreconditionerUpdates (const Teuchos::RCP< ::Thyra::PreconditionerBase< double > > &prec) |
| User will take control of updating an already registered preconditioner. Typically used with NOX::ObserverReusePreconditioner observer. | |
Public Member Functions inherited from NOX::Abstract::Group | |
| Group () | |
| Constructor. | |
| virtual NOX::Abstract::Group::ReturnType | applyRightPreconditioningMultiVector (bool useTranspose, Teuchos::ParameterList ¶ms, const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
| applyRightPreconditioning for multiple right-hand sides | |
| virtual NOX::Abstract::Group::ReturnType | getNormLastLinearSolveResidual (double &residual) const |
| Return the norm of the last linear solve residual as the result of either a call to computeNewton() or applyJacobianInverse(). | |
| virtual Teuchos::RCP< NOX::Abstract::Group > | getNestedGroup () |
| Return an internally stored group from this group. | |
| virtual Teuchos::RCP< const NOX::Abstract::Group > | getNestedGroup () const |
| Return an internally stored group from this group. | |
Public Member Functions inherited from LOCA::Abstract::Group | |
| Group (const Teuchos::RCP< LOCA::GlobalData > &global_data) | |
| Constructor. | |
| Group (const Teuchos::RCP< LOCA::GlobalData > &global_data, const Teuchos::RCP< LOCA::DerivUtils > &deriv) | |
| Constructor. | |
| Group (const Group &source, NOX::CopyType type=NOX::DeepCopy) | |
| Copy constructor. | |
| virtual NOX::Abstract::Group::ReturnType | augmentJacobianForHomotopy (double a, double b) |
| Replace Jacobian | |
| virtual NOX::Abstract::Group::ReturnType | computeSecondShiftedMatrix (double alpha, double beta) |
| Compute the second shifted matrix. Can avoid recomputing if two are stored. | |
| virtual NOX::Abstract::Group::ReturnType | applySecondShiftedMatrix (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
| Multiply the shifted matrix by a vector. | |
| virtual NOX::Abstract::Group::ReturnType | applySecondShiftedMatrixMultiVector (const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
| Multiply the shifted matrix by a multi-vector. | |
| virtual bool | isComplex () const |
| Is | |
| virtual NOX::Abstract::Group::ReturnType | computeComplex (double frequency) |
| Compute | |
| virtual NOX::Abstract::Group::ReturnType | applyComplex (const NOX::Abstract::Vector &input_real, const NOX::Abstract::Vector &input_imag, NOX::Abstract::Vector &result_real, NOX::Abstract::Vector &result_imag) const |
| Compute | |
| virtual NOX::Abstract::Group::ReturnType | applyComplexMultiVector (const NOX::Abstract::MultiVector &input_real, const NOX::Abstract::MultiVector &input_imag, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag) const |
| Compute | |
| virtual NOX::Abstract::Group::ReturnType | applyComplexInverseMultiVector (Teuchos::ParameterList ¶ms, const NOX::Abstract::MultiVector &input_real, const NOX::Abstract::MultiVector &input_imag, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag) const |
| Solve | |
| virtual NOX::Abstract::Group::ReturnType | applyComplexTranspose (const NOX::Abstract::Vector &input_real, const NOX::Abstract::Vector &input_imag, NOX::Abstract::Vector &result_real, NOX::Abstract::Vector &result_imag) const |
| virtual NOX::Abstract::Group::ReturnType | applyComplexTransposeMultiVector (const NOX::Abstract::MultiVector &input_real, const NOX::Abstract::MultiVector &input_imag, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag) const |
| virtual NOX::Abstract::Group::ReturnType | applyComplexTransposeInverseMultiVector (Teuchos::ParameterList ¶ms, const NOX::Abstract::MultiVector &input_real, const NOX::Abstract::MultiVector &input_imag, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag) const |
| Solve | |
| virtual void | setParamsMulti (const std::vector< int > ¶mIDs, const NOX::Abstract::MultiVector::DenseMatrix &vals) |
| Set parameters indexed by (integer) paramIDs. | |
| virtual void | notifyCompletedStep () |
| virtual double | computeFreeEnergy () |
| Computes the free energy at the current solution and parameter values. | |
Public Member Functions inherited from LOCA::Homotopy::AbstractGroup | |
| AbstractGroup () | |
| Default constructor. | |
| virtual | ~AbstractGroup () |
| Destructor. | |
Public Member Functions inherited from LOCA::MultiContinuation::AbstractGroup | |
| AbstractGroup () | |
| Default constructor. | |
Public Member Functions inherited from LOCA::TurningPoint::MinimallyAugmented::FiniteDifferenceGroup | |
| FiniteDifferenceGroup () | |
| Constructor. | |
| FiniteDifferenceGroup (const FiniteDifferenceGroup &source, NOX::CopyType type=NOX::DeepCopy) | |
| Copy constructor. | |
| virtual | ~FiniteDifferenceGroup () |
| Destructor. | |
| virtual NOX::Abstract::Group::ReturnType | computeDwtJnDp (const std::vector< int > ¶mIDs, const NOX::Abstract::Vector &w, const NOX::Abstract::Vector &nullVector, NOX::Abstract::MultiVector::DenseMatrix &result, bool isValid) |
| Computes the derivative | |
| virtual NOX::Abstract::Group::ReturnType | computeDwtJDp (const std::vector< int > ¶mIDs, const NOX::Abstract::Vector &w, NOX::Abstract::MultiVector &result, bool isValid) |
| Computes the derivative | |
| virtual NOX::Abstract::Group::ReturnType | computeDwtJnDx (const NOX::Abstract::Vector &w, const NOX::Abstract::Vector &nullVector, NOX::Abstract::Vector &result) |
| Computes the derivative | |
Public Member Functions inherited from LOCA::TurningPoint::MinimallyAugmented::AbstractGroup | |
| AbstractGroup () | |
| Default constructor. | |
Public Member Functions inherited from LOCA::TurningPoint::MooreSpence::AbstractGroup | |
| AbstractGroup () | |
| Default constructor. | |
Public Member Functions inherited from LOCA::TurningPoint::MooreSpence::FiniteDifferenceGroup | |
| FiniteDifferenceGroup () | |
| Constructor. | |
| FiniteDifferenceGroup (const FiniteDifferenceGroup &source, NOX::CopyType type=NOX::DeepCopy) | |
| Copy constructor. | |
| virtual NOX::Abstract::Group::ReturnType | computeDJnDpMulti (const std::vector< int > ¶mIDs, const NOX::Abstract::Vector &nullVector, NOX::Abstract::MultiVector &result, bool isValid) |
| Computes the derivative | |
| virtual NOX::Abstract::Group::ReturnType | computeDJnDxaMulti (const NOX::Abstract::Vector &nullVector, const NOX::Abstract::MultiVector &aVector, NOX::Abstract::MultiVector &result) |
| Computes the directional derivative | |
| virtual NOX::Abstract::Group::ReturnType | computeDJnDxaMulti (const NOX::Abstract::Vector &nullVector, const NOX::Abstract::Vector &JnVector, const NOX::Abstract::MultiVector &aVector, NOX::Abstract::MultiVector &result) |
| Computes the directional derivative | |
| virtual NOX::Abstract::Group::ReturnType | computeDwtJnDxMulti (const NOX::Abstract::MultiVector &w, const NOX::Abstract::Vector &nullVector, NOX::Abstract::MultiVector &result) |
| Computes the derivative | |
Public Member Functions inherited from LOCA::MultiContinuation::FiniteDifferenceGroup | |
| FiniteDifferenceGroup () | |
| Constructor. | |
| FiniteDifferenceGroup (const FiniteDifferenceGroup &source, NOX::CopyType type=NOX::DeepCopy) | |
| Copy constructor. | |
| virtual void | setDerivUtils (const Teuchos::RCP< LOCA::DerivUtils > &deriv) |
| Set the LOCA::DerivUtils object. | |
Public Member Functions inherited from LOCA::Pitchfork::MinimallyAugmented::AbstractGroup | |
| AbstractGroup () | |
| Default constructor. | |
| virtual | ~AbstractGroup () |
| Destructor. | |
Public Member Functions inherited from LOCA::Pitchfork::MooreSpence::AbstractGroup | |
| AbstractGroup () | |
| Default constructor. | |
| virtual double | innerProduct (const NOX::Abstract::Vector &a, const NOX::Abstract::Vector &b) const |
Compute the inner product of a and b. | |
| virtual void | innerProduct (const NOX::Abstract::MultiVector &a, const NOX::Abstract::MultiVector &b, NOX::Abstract::MultiVector::DenseMatrix &c) const |
Compute the inner product of a and b. | |
Public Member Functions inherited from LOCA::Hopf::MinimallyAugmented::FiniteDifferenceGroup | |
| FiniteDifferenceGroup () | |
| Constructor. | |
| FiniteDifferenceGroup (const FiniteDifferenceGroup &source, NOX::CopyType type=NOX::DeepCopy) | |
| Copy constructor. | |
| virtual | ~FiniteDifferenceGroup () |
| Destructor. | |
| virtual NOX::Abstract::Group::ReturnType | computeDwtCeDp (const std::vector< int > ¶mIDs, const NOX::Abstract::Vector &w1, const NOX::Abstract::Vector &w2, const NOX::Abstract::Vector &y, const NOX::Abstract::Vector &x, double omega, NOX::Abstract::MultiVector::DenseMatrix &result_real, NOX::Abstract::MultiVector::DenseMatrix &result_imag, bool isValid) |
| Computes the derivative | |
| virtual NOX::Abstract::Group::ReturnType | computeDwtCeDx (const NOX::Abstract::Vector &w1, const NOX::Abstract::Vector &w2, const NOX::Abstract::Vector &y, const NOX::Abstract::Vector &z, double omega, NOX::Abstract::Vector &result_real, NOX::Abstract::Vector &result_imag) |
| Computes the derivative | |
Public Member Functions inherited from LOCA::Hopf::MinimallyAugmented::AbstractGroup | |
| AbstractGroup () | |
| Default constructor. | |
| virtual | ~AbstractGroup () |
| Destructor. | |
Public Member Functions inherited from LOCA::Hopf::MooreSpence::AbstractGroup | |
| AbstractGroup () | |
| Default constructor. | |
Public Member Functions inherited from LOCA::TimeDependent::AbstractGroup | |
| AbstractGroup () | |
| Default constructor. | |
Public Member Functions inherited from LOCA::Hopf::MooreSpence::FiniteDifferenceGroup | |
| FiniteDifferenceGroup () | |
| Constructor. | |
| FiniteDifferenceGroup (const FiniteDifferenceGroup &source, NOX::CopyType type=NOX::DeepCopy) | |
| Copy constructor. | |
| virtual NOX::Abstract::Group::ReturnType | computeDCeDp (const std::vector< int > ¶mIDs, const NOX::Abstract::Vector &yVector, const NOX::Abstract::Vector &zVector, double w, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag, bool isValid) |
| Computes the derivative | |
| virtual NOX::Abstract::Group::ReturnType | computeDCeDxa (const NOX::Abstract::Vector &yVector, const NOX::Abstract::Vector &zVector, double w, const NOX::Abstract::MultiVector &aVector, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag) |
| Computes the directional derivative | |
| virtual NOX::Abstract::Group::ReturnType | computeDCeDxa (const NOX::Abstract::Vector &yVector, const NOX::Abstract::Vector &zVector, double w, const NOX::Abstract::MultiVector &aVector, const NOX::Abstract::Vector &Ce_real, const NOX::Abstract::Vector &Ce_imag, NOX::Abstract::MultiVector &result_real, NOX::Abstract::MultiVector &result_imag) |
| Computes the directional derivative | |
Public Member Functions inherited from LOCA::PhaseTransition::AbstractGroup | |
| AbstractGroup () | |
| Default constructor. | |
| virtual | ~AbstractGroup () |
| Destructor. | |
Implementation of LOCA::TimeDependent::AbstractGroup virtual methods. | |
| Teuchos::RCP< LOCA::GlobalData > | globalData |
| Global data. | |
| std::vector< int > | param_index |
| Parameter index in Thyra::ModelEvaluator. | |
| Teuchos::RCP< const ::Thyra::VectorBase< double > > | x_dot_vec |
| Pointer to x_dot vector of zeros. | |
| Teuchos::RCP< LOCA::Thyra::SaveDataStrategy > | saveDataStrategy |
| Strategy object for saving continuation data. | |
| bool | implement_dfdp |
| Whether we should implement df/dp, or use DerivUtils. | |
| Teuchos::RCP< const ::Thyra::VectorBase< double > > | weight_vec_ |
| Optional weighting vector for function scaling. | |
| bool | paramsInSeparatePVecs |
| bool | set_transient_in_args_ |
| virtual NOX::Abstract::Group::ReturnType | computeShiftedMatrix (double alpha, double beta) |
| Compute the shifted matrix. | |
| virtual NOX::Abstract::Group::ReturnType | applyShiftedMatrix (const NOX::Abstract::Vector &input, NOX::Abstract::Vector &result) const |
| Multiply the shifted matrix by a vector. | |
| virtual NOX::Abstract::Group::ReturnType | applyShiftedMatrixMultiVector (const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
| Multiply the shifted matrix by a multi-vector. | |
| virtual NOX::Abstract::Group::ReturnType | applyShiftedMatrixInverseMultiVector (Teuchos::ParameterList ¶ms, const NOX::Abstract::MultiVector &input, NOX::Abstract::MultiVector &result) const |
| Apply the inverse of the shifted matrix by a multi-vector, as needed by the shift-and-invert and generalized Cayley transformations. | |
| void | setSaveDataStrategy (const Teuchos::RCP< LOCA::Thyra::SaveDataStrategy > &s) |
| Set strategy object for saving continuation data. | |
Additional Inherited Members | |
Public Types inherited from NOX::Abstract::Group | |
| enum | ReturnType { Ok , NotDefined , BadDependency , NotConverged , Failed } |
| The computation of, say, the Newton direction in computeNewton() may fail in many different ways, so we have included a variety of return codes to describe the failures. Of course, we also have a code for success. More... | |
Protected Member Functions inherited from NOX::Thyra::Group | |
| void | resetIsValidFlags () |
| resets the isValid flags to false | |
| NOX::Abstract::Group::ReturnType | applyJacobianInverseMultiVector (Teuchos::ParameterList &p, const ::Thyra::MultiVectorBase< double > &input, ::Thyra::MultiVectorBase< double > &result) const |
| Apply Jacobian inverse using Thyra objects. | |
| ::Thyra::ESolveMeasureNormType | getThyraNormType (const std::string &name) const |
| void | updateLOWS () const |
| Finalizes LOWS to be a valid solver for the Jacobian. | |
| void | scaleResidualAndJacobian () const |
| void | unscaleResidualAndJacobian () const |
| void | computeScaledSolution () |
Protected Attributes inherited from NOX::Thyra::Group | |
| bool | is_valid_f_ |
| bool | is_valid_jacobian_ |
| bool | is_valid_newton_dir_ |
| bool | is_valid_gradient_dir_ |
| bool | is_valid_lows_ |
| Teuchos::RCP< NOX::Thyra::Vector > | x_vec_ |
| Solution vector. | |
| Teuchos::RCP< NOX::Thyra::Vector > | f_vec_ |
| Residual vector. | |
| Teuchos::RCP< NOX::Thyra::Vector > | newton_vec_ |
| Newton direction vector. | |
| Teuchos::RCP< NOX::Thyra::Vector > | gradient_vec_ |
| Gradient direction vector. | |
| Teuchos::RCP< NOX::SharedObject< ::Thyra::LinearOpWithSolveBase< double >, NOX::Thyra::Group > > | shared_jacobian_ |
| Shared Jacobian operator with solve. | |
| Teuchos::RCP< ::Thyra::LinearOpBase< double > > | lop_ |
| Jacobian operator. | |
| Teuchos::RCP< const ::Thyra::LinearOpWithSolveFactoryBase< double > > | lows_factory_ |
| Thyra LOWS factory for building Jacobians. | |
| Teuchos::RCP< const ::Thyra::DefaultLinearOpSource< double > > | losb_ |
| Source base needed to create preconditioner. | |
| Teuchos::RCP< ::Thyra::PreconditionerBase< double > > | prec_ |
| Preconditioner for Jacobian. | |
| Teuchos::RCP< ::Thyra::PreconditionerFactoryBase< double > > | prec_factory_ |
| Preconditioner factory. | |
| Teuchos::RCP< const ::Thyra::VectorBase< double > > | weight_vec_ |
| Optional wieghting vector for function scaling. NOX assumes that this vector can be updated in between nonlinear iterations. | |
| Teuchos::RCP< const ::Thyra::VectorBase< double > > | right_weight_vec_ |
| Optional wieghting vector for solution (right) scaling. | |
| Teuchos::RCP< ::Thyra::VectorBase< double > > | inv_weight_vec_ |
| Inverse of weight vector used to unscale function (left) scaling. NOX assumes that this vector can be updated in between nonlinear iterations. | |
| Teuchos::RCP< ::Thyra::VectorBase< double > > | inv_right_weight_vec_ |
| Inverse of weight vector used to unscale solution (right) scaling. | |
| Teuchos::RCP< NOX::Thyra::Vector > | scaled_x_vec_ |
| Scaled solution vector scaled by the. | |
| bool | rightScalingFirst_ |
| Do right scaling before left scaling? | |
| bool | updatePreconditioner_ |
| If set to true, the preconditioner matrix values will be automatically updated via precFactory or ModelEvalautor. If set to false, the user must manually handle updating the preconditioner. | |
| NOX::Abstract::Group::ReturnType | last_linear_solve_status_ |
| The status of the last linear solve performed. | |
| int | last_linear_solve_num_iters_ |
| Number of iterations for last linear solve performed. | |
| double | last_linear_solve_achieved_tol_ |
| The tolerance achieved by the last linear solver. | |
| bool | use_pseudo_transient_terms_ |
| Teuchos::RCP< const ::Thyra::VectorBase< double > > | x_dot_ |
| double | alpha_ |
| double | beta_ |
| double | t_ |
| bool | use_base_point_ |
| ::Thyra::ModelEvaluatorBase::InArgs< double > | base_point_ |
| Teuchos::RCP< const ::Thyra::ModelEvaluator< double > > | model_ |
| Problem interface. | |
Protected Attributes inherited from LOCA::Abstract::Group | |
| Teuchos::RCP< LOCA::GlobalData > | globalData |
| Global data. | |
Protected Attributes inherited from LOCA::MultiContinuation::FiniteDifferenceGroup | |
| Teuchos::RCP< DerivUtils > | derivPtr |
| Pointer to current DerivUtils derivative computation object. | |
Extension of the NOX::Thyra::Group to LOCA.
|
virtual |
Destructor.
Reimplemented from NOX::Abstract::Group.
|
virtual |
Multiply the shifted matrix by a vector.
Reimplemented from LOCA::Abstract::Group.
References NOX::Thyra::Vector::getThyraRCPVector(), NOX::Thyra::Vector::getThyraVector(), and NOX::Abstract::Group::Ok.
|
virtual |
Apply the inverse of the shifted matrix by a multi-vector, as needed by the shift-and-invert and generalized Cayley transformations.
Reimplemented from LOCA::Abstract::Group.
|
virtual |
Multiply the shifted matrix by a multi-vector.
Reimplemented from LOCA::Abstract::Group.
References NOX::Thyra::MultiVector::getThyraMultiVector(), and NOX::Abstract::Group::Ok.
|
virtual |
|
virtual |
Compute 

Implements LOCA::MultiContinuation::AbstractGroup.
References LOCA::MultiContinuation::AbstractGroup::computeDfDpMulti(), NOX::Abstract::Group::Failed, NOX::Thyra::Vector::getThyraRCPVector(), NOX::Abstract::MultiVector::numVectors(), NOX::Abstract::Group::Ok, and NOX::Abstract::MultiVector::subView().
|
virtual |
Overloaded computeF()
Implements NOX::Abstract::Group.
References NOX::Abstract::Group::Failed, and NOX::Abstract::Group::Ok.
|
virtual |
Overloaded computeJacobian()
Reimplemented from NOX::Abstract::Group.
References NOX::Abstract::Group::Failed, and NOX::Abstract::Group::Ok.
|
virtual |
Compute a scaled dot product.
The implementation here uses the standard dot product divided by the length of the vectors.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
References NOX::Abstract::Vector::innerProduct(), and NOX::Abstract::Vector::length().
|
virtual |
Compute the shifted matrix.
Reimplemented from LOCA::Abstract::Group.
References NOX::Abstract::Group::Failed, and NOX::Abstract::Group::Ok.
|
virtual |
Copy.
Reimplemented from LOCA::Abstract::Group.
|
virtual |
Return copy of parameter indexed by paramID.
Implements LOCA::MultiContinuation::AbstractGroup.
References LOCA::ParameterVector::getValue().
|
virtual |
Return copy of parameter indexed by paramID.
Implements LOCA::MultiContinuation::AbstractGroup.
|
virtual |
Return a const reference to the ParameterVector owned by the group.
Implements LOCA::MultiContinuation::AbstractGroup.
|
virtual |
Assignment operator.
Reimplemented in LOCA::Thyra::GroupWrapper.
References LOCA::Abstract::Group::copy(), implement_dfdp, NOX::Thyra::Group::operator=(), param_index, and saveDataStrategy.
Referenced by LOCA::Thyra::GroupWrapper::operator=().
|
virtual |
|
virtual |
Assignment operator.
Reimplemented in LOCA::Thyra::GroupWrapper.
|
virtual |
Perform any postprocessing after a continuation step finishes.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
|
virtual |
Perform any preprocessing before a continuation step starts.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
|
virtual |
Call the user interface print() routine, solution vector.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
|
virtual |
Call the user interface print() routine, any vector.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
|
virtual |
Projects solution to a few scalars for multiparameter continuation.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
|
virtual |
Returns the dimension of the project to draw array.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
|
virtual |
Scales a vector using scaling vector.
The implementation here rescales the vector by the square root of its length.
Reimplemented from LOCA::MultiContinuation::AbstractGroup.
References NOX::Abstract::Vector::length(), and NOX::Abstract::Vector::scale().
|
virtual |
Set parameter indexed by paramID.
Implements LOCA::MultiContinuation::AbstractGroup.
|
virtual |
Set parameter indexed by paramID.
Implements LOCA::MultiContinuation::AbstractGroup.
|
virtual |
Set the parameters.
Implements LOCA::MultiContinuation::AbstractGroup.
|
protected |
Optional weighting vector for function scaling.
This is pulled out of the initial guess vector