A scalar type replacement with automatic differentiation capability.
DerivativeType | the vector type used to store/represent the derivatives. The base scalar type as well as the number of derivatives to compute are determined from this type. Typical choices include, e.g., Vector4f for 4 derivatives, or VectorXf if the number of derivatives is not known at compile time, and/or, the number of derivatives is large. Note that DerivativeType can also be a reference (e.g., VectorXf& ) to wrap a existing vector into an AutoDiffScalar. Finally, DerivativeType can also be any Eigen compatible expression. |
This class represents a scalar value while tracking its respective derivatives using Eigen's expression template mechanism.
It supports the following list of global math function:
AutoDiffScalar can be used as the scalar type of an Eigen::Matrix object. However, in that case, the expression template mechanism only occurs at the top Matrix level, while derivatives are computed right away.
Inherits Eigen::internal::auto_diff_special_op< DerivativeType, !internal::is_same< internal::traits< internal::remove_all< DerivativeType >::type >::Scalar, NumTraits< internal::traits< internal::remove_all< DerivativeType >::type >::Scalar >::Real >::value >.
AutoDiffScalar () | |
AutoDiffScalar (const Real &value) | |
AutoDiffScalar (const Scalar &value, const DerType &der) | |
AutoDiffScalar (const Scalar &value, int nbDer, int derNumber) | |
| inline |
Default constructor without any initialization.
| inline |
Constructs an active scalar from its value, and initializes the nbDer derivatives such that it corresponds to the derNumber -th variable
| inline |
Conversion from a scalar constant to an active scalar. The derivatives are set to zero.
| inline |
Constructs an active scalar from its value and derivatives der
© Eigen.
Licensed under the MPL2 License.
https://eigen.tuxfamily.org/dox/unsupported/classEigen_1_1AutoDiffScalar.html