|
typedef Eigen::Matrix< double, OUT_DIM, 1 > | OUT_TYPE |
| function output vector type More...
|
|
typedef Eigen::Matrix< double, OUT_DIM, IN_DIM > | JAC_TYPE |
|
typedef Eigen::Matrix< double, IN_DIM, IN_DIM > | HES_TYPE |
|
typedef std::function< OUT_TYPE(const IN_TYPE &)> | Function |
| function tpye More...
|
|
typedef Eigen::Matrix< double, IN_DIM, 1 > | IN_TYPE |
| function input vector type More...
|
|
typedef Eigen::Matrix< double, OUT_DIM, 1 > | OUT_TYPE |
| function output vector type More...
|
|
typedef Eigen::Matrix< double, OUT_DIM, IN_DIM > | JAC_TYPE |
|
typedef Eigen::Matrix< double, IN_DIM, IN_DIM > | HES_TYPE |
|
|
| DerivativesNumDiff (Function &f, bool doubleSidedDerivative=false) |
| default constructor More...
|
|
| DerivativesNumDiff (const DerivativesNumDiff &arg) |
|
virtual | ~DerivativesNumDiff () |
| default destructor More...
|
|
DerivativesNumDiff * | clone () const override |
| deep cloning More...
|
|
virtual OUT_TYPE | forwardZero (const Eigen::VectorXd &x) override |
| Evaluates the method itself. More...
|
|
virtual JAC_TYPE | jacobian (const Eigen::VectorXd &x) override |
| evaluate Derivatives at a given point More...
|
|
| Derivatives () |
|
virtual | ~Derivatives () |
| default destructor More...
|
|
virtual void | sparseJacobian (const Eigen::VectorXd &x, Eigen::VectorXd &jac, Eigen::VectorXi &iRow, Eigen::VectorXi &jCol) |
| Returns the evaluated jacobian in sparse format. More...
|
|
virtual Eigen::VectorXd | sparseJacobianValues (const Eigen::VectorXd &x) |
| Returns the non zero values of the jacobian. More...
|
|
virtual HES_TYPE | hessian (const Eigen::VectorXd &x, const Eigen::VectorXd &lambda) |
| Evaluates the hessian (2nd order derivatives with respect to input) of the method. In case of a vector valued function, the method returns the weighted sum of the hessians with weights w. More...
|
|
virtual void | sparseHessian (const Eigen::VectorXd &x, const Eigen::VectorXd &lambda, Eigen::VectorXd &hes, Eigen::VectorXi &iRow, Eigen::VectorXi &jCol) |
| Returns the weighted sum of hessian of the problem in sparse format. More...
|
|
virtual Eigen::VectorXd | sparseHessianValues (const Eigen::VectorXd &x, const Eigen::VectorXd &lambda) |
| Returns the non zero elements of the hessian of the problem. More...
|
|
template<int IN_DIM, int OUT_DIM>
class ct::core::DerivativesNumDiff< IN_DIM, OUT_DIM >
Derivatives using Num-Diff Codegeneration.
Uses Num-Diff code generation to compute the Derivatives of a regular vector-valued mathematical function .
x has IN_DIM dimension and y has OUT_DIM dimension. Thus, they can be scalar functions (IN_DIM = 1, OUT_DIM = 1), fixed or variable size (IN_DIM = -1, OUT_DIM = -1) functions.
- Note
- In fact, this class is called Derivatives but computes also zero order derivatives
- Template Parameters
-
IN_DIM | Input dimensionality of the function (use Eigen::Dynamic (-1) for dynamic size) |
OUT_DIM | Output dimensionailty of the function (use Eigen::Dynamic (-1) for dynamic size) |