| 
    NOX
    Development
    
   | 
 
LOCA's generic derivative computation class to compute various derivatives via finite differencing. More...
#include <LOCA_DerivUtils.H>


Public Member Functions | |
| DerivUtils (const Teuchos::RCP< LOCA::GlobalData > &global_data, double perturb=1.0e-6) | |
| Default constructor. perturb is the relative perturbation size used in differencing calculations.  | |
| DerivUtils (const DerivUtils &) | |
| Copy constructor.  | |
| virtual | ~DerivUtils () | 
| Destructor.  | |
| virtual Teuchos::RCP< DerivUtils > | clone (NOX::CopyType type=NOX::DeepCopy) const | 
| Cloning function. Creates a copy of the DerivUtils object of the same type.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDfDp (LOCA::MultiContinuation::AbstractGroup &grp, const std::vector< int > ¶m_ids, NOX::Abstract::MultiVector &result, bool isValidF) const | 
| Compute derivative of f with respect to parameter, identified by param_id.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDJnDp (LOCA::MultiContinuation::AbstractGroup &, const std::vector< int > ¶mIDs, const NOX::Abstract::Vector &nullVector, NOX::Abstract::MultiVector &result, bool isValid) const | 
| Compute derivative of Jn with respect to particular parameter param_id.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDJnDxa (LOCA::MultiContinuation::AbstractGroup &grp, const NOX::Abstract::Vector &nullVector, const NOX::Abstract::MultiVector &aVector, NOX::Abstract::MultiVector &result) const | 
| Compute vector (Jn)_{x}a given multi-vector a.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDJnDxa (LOCA::MultiContinuation::AbstractGroup &grp, const NOX::Abstract::Vector &nullVector, const NOX::Abstract::MultiVector &aVector, const NOX::Abstract::Vector &JnVector, NOX::Abstract::MultiVector &result) const | 
| Compute vector (Jn)_{x}a given multi-vector a, given JnVector.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDwtJnDp (LOCA::MultiContinuation::AbstractGroup &grp, const std::vector< int > ¶mIDs, const NOX::Abstract::Vector &w, const NOX::Abstract::Vector &nullVector, NOX::Abstract::MultiVector::DenseMatrix &result, bool isValid) const | 
| Compute derivative of w^TJn with respect to particular parameter param_id.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDwtJDp (LOCA::MultiContinuation::AbstractGroup &grp, const std::vector< int > ¶mIDs, const NOX::Abstract::Vector &w, NOX::Abstract::MultiVector &result, bool isValid) const | 
| Compute derivative of w^TJ with respect to particular parameter param_id.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDwtJnDx (LOCA::MultiContinuation::AbstractGroup &grp, const NOX::Abstract::Vector &w, const NOX::Abstract::Vector &nullVector, NOX::Abstract::Vector &result) const | 
| Compute vector (w^TJn)_{x}.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDwtJnDx (LOCA::MultiContinuation::AbstractGroup &grp, const NOX::Abstract::MultiVector &w, const NOX::Abstract::Vector &nullVector, NOX::Abstract::MultiVector &result) const | 
| Compute vector (w^TJn)_{x}.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDCeDp (LOCA::Hopf::MooreSpence::AbstractGroup &grp, 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) const | 
| Compute derivative of (J+iwM)(y+iz) with respect to parameter,.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDCeDxa (LOCA::Hopf::MooreSpence::AbstractGroup &grp, 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) const | 
| Compute vector (J+iwM)(y+iz))_{x}a given a.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDCeDxa (LOCA::Hopf::MooreSpence::AbstractGroup &grp, 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) const | 
| Compute vector (J+iwM)(y+iz))_{x}a given a and (J+iwM)(y+iz) vector.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDwtCeDp (LOCA::Hopf::MinimallyAugmented::AbstractGroup &grp, const std::vector< int > ¶mIDs, const NOX::Abstract::Vector &w1, const NOX::Abstract::Vector &w2, const NOX::Abstract::Vector &yVector, const NOX::Abstract::Vector &zVector, double omega, NOX::Abstract::MultiVector::DenseMatrix &result_real, NOX::Abstract::MultiVector::DenseMatrix &result_imag, bool isValid) const | 
| Compute derivative of (w1+iw2)^T(J+iwM)(y+iz) w.r.t. parameter p.  | |
| 
virtual  NOX::Abstract::Group::ReturnType  | computeDwtCeDx (LOCA::Hopf::MinimallyAugmented::AbstractGroup &grp, const NOX::Abstract::Vector &w1, const NOX::Abstract::Vector &w2, const NOX::Abstract::Vector &yVector, const NOX::Abstract::Vector &zVector, double omega, NOX::Abstract::Vector &result_real, NOX::Abstract::Vector &result_imag) const | 
| Compute vector (w1+iw2)^T(J+iwM)(y+iz))_{x}.  | |
Protected Member Functions | |
| virtual double | perturbParam (LOCA::MultiContinuation::AbstractGroup &grp, double ¶m, int param_id) const | 
| Perturb parameter param_id in the group's parameter vector, and return perturbation size.  | |
| virtual double | perturbXVec (LOCA::MultiContinuation::AbstractGroup &grp, const NOX::Abstract::Vector &xVector, const NOX::Abstract::Vector &aVector) const | 
| Perturb group's solution vector in direction of aVector, and return perturbation size.  | |
| virtual double | epsScalar (double p) const | 
| Return perturbation for finite differencing around given double variable.  | |
| virtual double | epsVector (const NOX::Abstract::Vector &xVector, const NOX::Abstract::Vector &aVector) const | 
| Return perturbation for directional derivatives around first vector in direction of second vector.  | |
Protected Attributes | |
| Teuchos::RCP< LOCA::GlobalData > | globalData | 
| Global data.  | |
| double | perturb | 
| Relative perturbation size using in differencing calculations.  | |
LOCA's generic derivative computation class to compute various derivatives via finite differencing.
The DerivUtils class provides generic methods to compute the following derivatives:
 where 
 and 
, 
 are vectors. These quantities are calculate by finite differencing. 
 1.8.5