Standard Euclidean vector space. More...
#include <proxsuite-nlp/modelling/spaces/vector-space.hpp>
Public Types | |
| enum | { Dim = _Dim , Options = _Options } |
| using | Scalar = _Scalar |
| using | Base = ManifoldAbstractTpl<Scalar, Options> |
Public Types inherited from proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options > | |
| using | Scalar = _Scalar |
| using | TangentSpaceType = VectorSpaceTpl<Scalar, Eigen::Dynamic, Options> |
| Typedef for the tangent space, as a manifold. | |
Public Member Functions | |
| template<int N = Dim, typename = typename std::enable_if_t<N == Eigen::Dynamic>> | |
| VectorSpaceTpl (const int dim) | |
| Default constructor where the dimension is supplied. | |
| template<int N = Dim, typename = typename std::enable_if_t<N != Eigen::Dynamic>> | |
| VectorSpaceTpl () | |
| Default constructor without arguments. | |
| int | nx () const |
| Get manifold representation dimension. | |
| int | ndx () const |
| Get manifold tangent space dimension. | |
implementations | |
| void | integrate_impl (const ConstVectorRef &x, const ConstVectorRef &v, VectorRef out) const |
| Perform the manifold integration operation. | |
| void | Jintegrate_impl (const ConstVectorRef &, const ConstVectorRef &, MatrixRef Jout, int) const |
| void | JintegrateTransport (const ConstVectorRef &, const ConstVectorRef &, MatrixRef, int) const |
| Perform the parallel transport operation. | |
| void | difference_impl (const ConstVectorRef &x0, const ConstVectorRef &x1, VectorRef out) const |
| Implementation of the manifold retraction operation. | |
| void | Jdifference_impl (const ConstVectorRef &, const ConstVectorRef &, MatrixRef Jout, int arg) const |
| void | interpolate_impl (const ConstVectorRef &x0, const ConstVectorRef &x1, const Scalar &u, VectorRef out) const |
| Interpolation operation. | |
Public Member Functions inherited from proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options > | |
| virtual VectorXs | neutral () const |
| Get the neutral element \(e \in M\) from the manifold (if this makes sense). | |
| virtual VectorXs | rand () const |
| Sample a random point \(x \in M\) on the manifold. | |
| virtual bool | isNormalized (const ConstVectorRef &) const |
Check if the input vector x is a viable element of the manifold. | |
| const TangentSpaceType | tangentSpace () const |
| Return an object representing the tangent space as a manifold. | |
| void | integrate (const ConstVectorRef &x, const ConstVectorRef &v, VectorRef out) const |
| Manifold integration operation \(x \oplus v\). | |
| void | Jintegrate (const ConstVectorRef &x, const ConstVectorRef &v, MatrixRef Jout, int arg) const |
| Jacobian of the integation operation. | |
| void | difference (const ConstVectorRef &x0, const ConstVectorRef &x1, VectorRef out) const |
| Manifold difference/retraction operation \(x_1 \ominus x_0\). | |
| void | Jdifference (const ConstVectorRef &x0, const ConstVectorRef &x1, MatrixRef Jout, int arg) const |
| Jacobian of the retraction operation. | |
| void | interpolate (const ConstVectorRef &x0, const ConstVectorRef &x1, const Scalar &u, VectorRef out) const |
| VectorXs | integrate (const ConstVectorRef &x, const ConstVectorRef &v) const |
| Manifold integration operation \(x \oplus v\). | |
| VectorXs | difference (const ConstVectorRef &x0, const ConstVectorRef &x1) const |
| Manifold difference/retraction operation \(x_1 \ominus x_0\). | |
| VectorXs | interpolate (const ConstVectorRef &x0, const ConstVectorRef &x1, const Scalar &u) const |
| Interpolation operation. | |
Public Attributes | |
| Scalar | |
| int | dim_ |
Public Attributes inherited from proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options > | |
| Scalar | |
Additional Inherited Members | |
Static Public Attributes inherited from proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options > | |
| static constexpr int | Options = _Options |
| Scalar type. | |
Standard Euclidean vector space.
Definition at line 12 of file vector-space.hpp.
| using proxsuite::nlp::VectorSpaceTpl< _Scalar, _Dim, _Options >::Scalar = _Scalar |
Definition at line 13 of file vector-space.hpp.
| using proxsuite::nlp::VectorSpaceTpl< _Scalar, _Dim, _Options >::Base = ManifoldAbstractTpl<Scalar, Options> |
Definition at line 15 of file vector-space.hpp.
| anonymous enum |
Definition at line 14 of file vector-space.hpp.
|
inline |
Default constructor where the dimension is supplied.
Definition at line 23 of file vector-space.hpp.
|
inline |
Default constructor without arguments.
This constructor is disabled for the dynamic-sized vectors.
Definition at line 30 of file vector-space.hpp.
|
inlinevirtual |
Get manifold representation dimension.
Implements proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options >.
Definition at line 32 of file vector-space.hpp.
|
inlinevirtual |
Get manifold tangent space dimension.
Implements proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options >.
Definition at line 33 of file vector-space.hpp.
|
inlinevirtual |
Perform the manifold integration operation.
Implements proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options >.
Definition at line 39 of file vector-space.hpp.
|
inlinevirtual |
Implements proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options >.
Definition at line 44 of file vector-space.hpp.
|
inlinevirtual |
Perform the parallel transport operation.
Implements proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options >.
Definition at line 49 of file vector-space.hpp.
|
inlinevirtual |
Implementation of the manifold retraction operation.
Implements proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options >.
Definition at line 54 of file vector-space.hpp.
|
inlinevirtual |
Implements proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options >.
Definition at line 59 of file vector-space.hpp.
|
inlinevirtual |
Interpolation operation.
Reimplemented from proxsuite::nlp::ManifoldAbstractTpl< _Scalar, _Options >.
Definition at line 73 of file vector-space.hpp.
| proxsuite::nlp::VectorSpaceTpl< _Scalar, _Dim, _Options >::Scalar |
Definition at line 16 of file vector-space.hpp.
| int proxsuite::nlp::VectorSpaceTpl< _Scalar, _Dim, _Options >::dim_ |
Definition at line 18 of file vector-space.hpp.