proxsuite-nlp  0.10.0
A primal-dual augmented Lagrangian-type solver for nonlinear programming on manifolds.
Loading...
Searching...
No Matches
proxsuite::nlp::C2FunctionTpl< Scalar > Struct Template Reference

Twice-differentiable function, with method Jacobian and vector-hessian product evaluation. More...

#include <proxsuite-nlp/function-base.hpp>

Inheritance diagram for proxsuite::nlp::C2FunctionTpl< Scalar >:
[legend]
Collaboration diagram for proxsuite::nlp::C2FunctionTpl< Scalar >:
[legend]

Public Types

using Scalar = _Scalar
 
using Base = C1FunctionTpl<_Scalar>
 
- Public Types inherited from proxsuite::nlp::C1FunctionTpl< _Scalar >
using Scalar
 
using Base
 
- Public Types inherited from proxsuite::nlp::BaseFunctionTpl< _Scalar >
using Scalar
 
- Public Types inherited from proxsuite::nlp::math_types< _Scalar >
using Scalar = _Scalar
 

Public Member Functions

 C2FunctionTpl (const int nx, const int ndx, const int nr)
 
 C2FunctionTpl (const ManifoldAbstractTpl< Scalar > &manifold, const int nr)
 
virtual void vectorHessianProduct (const ConstVectorRef &, const ConstVectorRef &, MatrixRef Hout) const
 Vector-hessian product.
 
- Public Member Functions inherited from proxsuite::nlp::C1FunctionTpl< _Scalar >
 C1FunctionTpl (const int nx, const int ndx, const int nr)
 
 C1FunctionTpl (const ManifoldAbstractTpl< _Scalar > &manifold, const int nr)
 
virtual void computeJacobian (const ConstVectorRef &x, MatrixRef Jout) const=0
 Jacobian matrix of the constraint function.
 
MatrixXs computeJacobian (const ConstVectorRef &x) const
 Jacobian matrix of the constraint function.
 
- Public Member Functions inherited from proxsuite::nlp::BaseFunctionTpl< _Scalar >
 BaseFunctionTpl (const int nx, const int ndx, const int nr)
 
 BaseFunctionTpl (const ManifoldAbstractTpl< _Scalar > &manifold, const int nr)
 
virtual VectorXs operator() (const ConstVectorRef &x) const=0
 Evaluate the residual at a given point x.
 
virtual ~BaseFunctionTpl ()=default
 
int nx () const
 Get function input vector size (representation of manifold).
 
int ndx () const
 Get input manifold's tangent space dimension.
 
int nr () const
 Get function codimension.
 

Public Attributes

 Scalar
 
- Public Attributes inherited from proxsuite::nlp::C1FunctionTpl< _Scalar >
 Scalar
 
- Public Attributes inherited from proxsuite::nlp::BaseFunctionTpl< _Scalar >
 Scalar
 
- Public Attributes inherited from proxsuite::nlp::math_types< _Scalar >
 _Scalar
 

Additional Inherited Members

- Protected Attributes inherited from proxsuite::nlp::BaseFunctionTpl< _Scalar >
int nx_
 
int ndx_
 
int nr_
 

Detailed Description

template<typename Scalar>
struct proxsuite::nlp::C2FunctionTpl< Scalar >

Twice-differentiable function, with method Jacobian and vector-hessian product evaluation.

Definition at line 76 of file fwd.hpp.

Member Typedef Documentation

◆ Scalar

template<typename Scalar >
using proxsuite::nlp::C2FunctionTpl< Scalar >::Scalar = _Scalar

Definition at line 79 of file function-base.hpp.

◆ Base

template<typename Scalar >
using proxsuite::nlp::C2FunctionTpl< Scalar >::Base = C1FunctionTpl<_Scalar>

Definition at line 80 of file function-base.hpp.

Constructor & Destructor Documentation

◆ C2FunctionTpl() [1/2]

template<typename Scalar >
proxsuite::nlp::C2FunctionTpl< Scalar >::C2FunctionTpl ( const int nx,
const int ndx,
const int nr )
inline

Definition at line 85 of file function-base.hpp.

◆ C2FunctionTpl() [2/2]

template<typename Scalar >
proxsuite::nlp::C2FunctionTpl< Scalar >::C2FunctionTpl ( const ManifoldAbstractTpl< Scalar > & manifold,
const int nr )
inline

Definition at line 87 of file function-base.hpp.

Member Function Documentation

◆ vectorHessianProduct()

template<typename Scalar >
virtual void proxsuite::nlp::C2FunctionTpl< Scalar >::vectorHessianProduct ( const ConstVectorRef & ,
const ConstVectorRef & ,
MatrixRef Hout ) const
inlinevirtual

Member Data Documentation

◆ Scalar

template<typename Scalar >
proxsuite::nlp::C2FunctionTpl< Scalar >::Scalar

Definition at line 81 of file function-base.hpp.


The documentation for this struct was generated from the following files: