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

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

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

Public Types

using Scalar = _Scalar
 
using Base = CostFunctionBaseTpl<Scalar>
 
using C2Function = C2FunctionTpl<Scalar>
 
- Public Types inherited from proxsuite::nlp::CostFunctionBaseTpl< _Scalar >
using Scalar
 
using Base
 
- Public Types inherited from proxsuite::nlp::C2FunctionTpl< _Scalar >
using Scalar
 
using Base
 
- 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

 func_to_cost (const shared_ptr< C2Function > &func)
 Constructor.
 
Scalar call (const ConstVectorRef &x) const
 Evaluate the cost function.
 
void computeGradient (const ConstVectorRef &x, VectorRef out) const
 
void computeHessian (const ConstVectorRef &x, MatrixRef Hout) const
 
- Public Member Functions inherited from proxsuite::nlp::CostFunctionBaseTpl< _Scalar >
 CostFunctionBaseTpl (const int nx, const int ndx)
 
 CostFunctionBaseTpl (const ManifoldAbstractTpl< _Scalar > &manifold)
 
VectorXs computeGradient (const ConstVectorRef &x) const
 
MatrixXs computeHessian (const ConstVectorRef &x) const
 
VectorXs operator() (const ConstVectorRef &x) const
 Evaluate the residual at a given point x.
 
void computeJacobian (const ConstVectorRef &x, MatrixRef Jout) const
 Jacobian matrix of the constraint function.
 
void vectorHessianProduct (const ConstVectorRef &x, const ConstVectorRef &v, MatrixRef Hout) const
 Vector-hessian product.
 
virtual ~CostFunctionBaseTpl ()=default
 
- Public Member Functions inherited from proxsuite::nlp::C2FunctionTpl< _Scalar >
 C2FunctionTpl (const int nx, const int ndx, const int nr)
 
 C2FunctionTpl (const ManifoldAbstractTpl< _Scalar > &manifold, const int nr)
 
- 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)
 
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 ~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::CostFunctionBaseTpl< _Scalar >
 Scalar
 
- Public Attributes inherited from proxsuite::nlp::C2FunctionTpl< _Scalar >
 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::func_to_cost< Scalar >

Definition at line 79 of file fwd.hpp.

Member Typedef Documentation

◆ Scalar

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

Definition at line 93 of file cost-function.hpp.

◆ Base

template<typename Scalar >
using proxsuite::nlp::func_to_cost< Scalar >::Base = CostFunctionBaseTpl<Scalar>

Definition at line 95 of file cost-function.hpp.

◆ C2Function

template<typename Scalar >
using proxsuite::nlp::func_to_cost< Scalar >::C2Function = C2FunctionTpl<Scalar>

Definition at line 96 of file cost-function.hpp.

Constructor & Destructor Documentation

◆ func_to_cost()

template<typename Scalar >
proxsuite::nlp::func_to_cost< Scalar >::func_to_cost ( const shared_ptr< C2Function > & func)
inline

Constructor.

This defines an implicit conversion from the C2FunctionTpl type.

Definition at line 101 of file cost-function.hpp.

Member Function Documentation

◆ call()

template<typename Scalar >
Scalar proxsuite::nlp::func_to_cost< Scalar >::call ( const ConstVectorRef & x) const
inlinevirtual

Evaluate the cost function.

Implements proxsuite::nlp::CostFunctionBaseTpl< _Scalar >.

Definition at line 104 of file cost-function.hpp.

◆ computeGradient()

template<typename Scalar >
void proxsuite::nlp::func_to_cost< Scalar >::computeGradient ( const ConstVectorRef & x,
VectorRef out ) const
inlinevirtual

Implements proxsuite::nlp::CostFunctionBaseTpl< _Scalar >.

Definition at line 106 of file cost-function.hpp.

◆ computeHessian()

template<typename Scalar >
void proxsuite::nlp::func_to_cost< Scalar >::computeHessian ( const ConstVectorRef & x,
MatrixRef Hout ) const
inlinevirtual

Implements proxsuite::nlp::CostFunctionBaseTpl< _Scalar >.

Definition at line 110 of file cost-function.hpp.

Member Data Documentation

◆ Scalar

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

Definition at line 94 of file cost-function.hpp.


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