|
Optimist
0.0.0
A C++ library for optimization
|
Classes | |
| class | Epsilon |
Typedefs | |
| template<typename Real> | |
| using | VectorXd = Eigen::Vector<Real, Eigen::Dynamic> |
| template<typename Real> | |
| using | MatrixXd = Eigen::Matrix<Real, Eigen::Dynamic, Eigen::Dynamic> |
Functions | |
| template<typename Real> | |
| Real | SideFiniteDifferences (Real const fun_0, Real const fun_1, Real const fun_2, Real h_1, Real h_2) |
| template<typename Real> | |
| Real | CenteredFiniteDifferences (Real const fun_l, Real const fun_c, Real const fun_r, Real h) |
| template<typename Real> | |
| VectorXd< Real > | SideFiniteDifferences (VectorXd< Real > const &fun_0, VectorXd< Real > const &fun_1, VectorXd< Real > const &fun_2, Real h_1, Real h_2) |
| template<typename Real> | |
| VectorXd< Real > | CenteredFiniteDifferences (VectorXd< Real > const &fun_l, VectorXd< Real > const &fun_c, VectorXd< Real > const &fun_r, Real h) |
| template<typename Function, typename Real> | |
| bool | Gradient (VectorXd< Real > const &x, Function fun, VectorXd< Real > &grad) |
| template<typename Function, typename Real> | |
| bool | Jacobian (VectorXd< Real > const &x, Function fun, MatrixXd< Real > &jac) |
| template<typename Function, typename Real> | |
| bool | Hessian (VectorXd< Real > const &x, Function fun, MatrixXd< Real > &hes) |
| template<typename Vector> | |
| Vector | SideFiniteDifferences (Vector const &fun_0, Vector const &fun_1, Vector const &fun_2, typename Vector::Scalar h_1, typename Vector::Scalar h_2) |
| template<typename Vector> | |
| Vector | CenteredFiniteDifferences (Vector const &fun_l, Vector const &fun_c, Vector const &fun_r, typename Vector::Scalar h) |
| template<typename Function, typename Vector> | |
| bool | Gradient (Vector const &x, Function fun, Vector &grad) |
| template<typename Function, typename Vector, typename Matrix> | |
| bool | Jacobian (Vector const &x, Function fun, Matrix &jac) |
| template<typename Function, typename Vector, typename Matrix> | |
| bool | Hessian (Vector const &x, Function fun, Matrix &hes) |
| using Optimist::FiniteDifferences::MatrixXd = Eigen::Matrix<Real, Eigen::Dynamic, Eigen::Dynamic> |
| using Optimist::FiniteDifferences::VectorXd = Eigen::Vector<Real, Eigen::Dynamic> |
< Template alias for VectorXd<Real>. Template alias for MatrixXd<Real>.
|
inline |
|
inline |
Compute centered finite differences (for fixed-size Eigen vectors).
| [in] | fun_l | Vector at \( x-h \). |
| [in] | fun_c | Vector at \( x \). |
| [in] | fun_r | Vector at \( x+h \). |
| [in] | h | Step size. |
| Vector | Fixed-size Eigen vector type. |
|
inline |
Compute centered finite differences (for dynamic-size Eigen vectors).
| [in] | fun_l | Vector at \( x-h \). |
| [in] | fun_c | Vector at \( x \). |
| [in] | fun_r | Vector at \( x+h \). |
| [in] | h | Step size. |
| Real | Scalar number type. |
| bool Optimist::FiniteDifferences::Gradient | ( | Vector const & | x, |
| Function | fun, | ||
| Vector & | grad ) |
Compute finite differences gradient for a scalar function (for fixed-size Eigen vectors).
| [in] | x | Point at which to compute gradient. |
| [in] | fun | Function to differentiate. |
| [out] | grad | Gradient vector. |
| Function | Callable type bool(Vector const &, Real &). |
| Vector | Fixed-size Eigen vector type. |
| bool Optimist::FiniteDifferences::Gradient | ( | VectorXd< Real > const & | x, |
| Function | fun, | ||
| VectorXd< Real > & | grad ) |
Compute finite differences gradient of a scalar function (for dynamic-size Eigen vectors).
| [in] | x | Point at which to compute gradient. |
| [in] | fun | Function to differentiate. |
| [out] | grad | Gradient vector. |
| Function | Callable type bool(VectorXd const &, Real &). |
| Real | Scalar number type. |
| bool Optimist::FiniteDifferences::Hessian | ( | Vector const & | x, |
| Function | fun, | ||
| Matrix & | hes ) |
Compute finite differences Hessian for a scalar function (for fixed-size Eigen vectors).
| [in] | x | Point at which to compute Hessian. |
| [in] | fun | Function to differentiate. |
| [out] | hes | Hessian matrix. |
| Function | Callable type bool(Vector const &, Real &). |
| Vector | Fixed-size Eigen vector type. |
| Matrix | Fixed-size Eigen matrix type. |
| bool Optimist::FiniteDifferences::Hessian | ( | VectorXd< Real > const & | x, |
| Function | fun, | ||
| MatrixXd< Real > & | hes ) |
Compute finite differences Hessian of a scalar function (for dynamic-size Eigen vectors).
| [in] | x | Point at which to compute Hessian. |
| [in] | fun | Function to differentiate. |
| [out] | hes | Hessian matrix. |
| Function | Callable type bool(VectorXd<Real> const &, Real&). |
| Real | Scalar number type. |
| bool Optimist::FiniteDifferences::Jacobian | ( | Vector const & | x, |
| Function | fun, | ||
| Matrix & | jac ) |
Compute finite differences Jacobian for a vector function (for fixed-size Eigen vectors).
| [in] | x | Point at which to compute Jacobian. |
| [in] | fun | Function to differentiate. |
| [out] | jac | Jacobian matrix. |
| Function | Callable type bool(Vector const &, Vector &). |
| Vector | Fixed-size Eigen vector type. |
| Matrix | Fixed-size Eigen matrix type. |
| bool Optimist::FiniteDifferences::Jacobian | ( | VectorXd< Real > const & | x, |
| Function | fun, | ||
| MatrixXd< Real > & | jac ) |
Compute finite differences Jacobian of a vector function (for dynamic-size Eigen vectors).
| [in] | x | Point at which to compute Jacobian. |
| [in] | fun | Function to differentiate. |
| [out] | jac | Output Jacobian matrix. |
| Function | Callable type bool(VectorXd<Real> const &, VectorXd<Real> &). |
| Real | Scalar number type. |
|
inline |
|
inline |
Compute one-sided finite differences (for fixed-size Eigen vectors).
| [in] | fun_0 | Vector at \( x \). |
| [in] | fun_1 | Vector at \( x+h_1 \). |
| [in] | fun_2 | Vector at \( x+h_2 \). |
| [in] | h_1 | Step size 1. |
| [in] | h_2 | Step size 2. |
| Vector | Fixed-size Eigen vector type. |
|
inline |
Compute one-sided finite differences (for dynamic-size Eigen vectors).
| [in] | fun_0 | Vector at \( x \). |
| [in] | fun_1 | Vector at \( x+h_1 \). |
| [in] | fun_2 | Vector at \( x+h_2 \). |
| [in] | h_1 | Step size 1. |
| [in] | h_2 | Step size 2. |
| Real | Scalar number type. |