aligator  0.6.1
A primal-dual augmented Lagrangian-type solver for nonlinear trajectory optimization.
Loading...
Searching...
No Matches
aligator::WorkspaceBaseTpl< Scalar > Struct Template Reference

Base workspace struct for the algorithms. More...

#include <aligator/core/workspace-base.hpp>

Inheritance diagram for aligator::WorkspaceBaseTpl< Scalar >:
[legend]
Collaboration diagram for aligator::WorkspaceBaseTpl< Scalar >:
[legend]

Public Member Functions

 ALIGATOR_DYNAMIC_TYPEDEFS (Scalar)
 
 WorkspaceBaseTpl ()
 
 WorkspaceBaseTpl (const TrajOptProblemTpl< Scalar > &problem)
 
 ~WorkspaceBaseTpl ()=default
 
bool isInitialized () const
 
void cycleLeft ()
 Cycle the workspace data to the left.
 
void cycleAppend (shared_ptr< StageDataTpl< Scalar > > data)
 Same as cycleLeft(), but add a StageDataTpl to problem_data.
 

Public Attributes

std::size_t nsteps
 Number of steps in the problem.
 
TrajOptDataTpl< Scalar > problem_data
 Problem data.
 
std::vector< VectorXs > dyn_slacks
 Dynamical infeasibility gaps.
 
Linesearch data
std::vector< VectorXs > trial_xs
 
std::vector< VectorXs > trial_us
 

Protected Attributes

bool m_isInitialized
 

Detailed Description

template<typename Scalar>
struct aligator::WorkspaceBaseTpl< Scalar >

Base workspace struct for the algorithms.

Definition at line 12 of file workspace-base.hpp.

Constructor & Destructor Documentation

◆ WorkspaceBaseTpl() [1/2]

template<typename Scalar >
aligator::WorkspaceBaseTpl< Scalar >::WorkspaceBaseTpl ( )
inline

Definition at line 34 of file workspace-base.hpp.

◆ WorkspaceBaseTpl() [2/2]

template<typename Scalar >
aligator::WorkspaceBaseTpl< Scalar >::WorkspaceBaseTpl ( const TrajOptProblemTpl< Scalar > & problem)
explicit

Definition at line 59 of file workspace-base.hpp.

◆ ~WorkspaceBaseTpl()

template<typename Scalar >
aligator::WorkspaceBaseTpl< Scalar >::~WorkspaceBaseTpl ( )
default

Member Function Documentation

◆ ALIGATOR_DYNAMIC_TYPEDEFS()

template<typename Scalar >
aligator::WorkspaceBaseTpl< Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS ( Scalar )

◆ isInitialized()

template<typename Scalar >
bool aligator::WorkspaceBaseTpl< Scalar >::isInitialized ( ) const
inline

Definition at line 40 of file workspace-base.hpp.

◆ cycleLeft()

template<typename Scalar >
void aligator::WorkspaceBaseTpl< Scalar >::cycleLeft ( )

Cycle the workspace data to the left.

Useful in model-predictive control (MPC) applications.

Definition at line 68 of file workspace-base.hpp.

◆ cycleAppend()

template<typename Scalar >
void aligator::WorkspaceBaseTpl< Scalar >::cycleAppend ( shared_ptr< StageDataTpl< Scalar > > data)
inline

Same as cycleLeft(), but add a StageDataTpl to problem_data.

The implementation pushes back on top of the vector of StageDataTpl, rotates left, then pops the first element back out.

Definition at line 49 of file workspace-base.hpp.

Member Data Documentation

◆ m_isInitialized

template<typename Scalar >
bool aligator::WorkspaceBaseTpl< Scalar >::m_isInitialized
protected

Definition at line 17 of file workspace-base.hpp.

◆ nsteps

template<typename Scalar >
std::size_t aligator::WorkspaceBaseTpl< Scalar >::nsteps

Number of steps in the problem.

Definition at line 21 of file workspace-base.hpp.

◆ problem_data

template<typename Scalar >
TrajOptDataTpl<Scalar> aligator::WorkspaceBaseTpl< Scalar >::problem_data

Problem data.

Definition at line 23 of file workspace-base.hpp.

◆ trial_xs

template<typename Scalar >
std::vector<VectorXs> aligator::WorkspaceBaseTpl< Scalar >::trial_xs

Definition at line 27 of file workspace-base.hpp.

◆ trial_us

template<typename Scalar >
std::vector<VectorXs> aligator::WorkspaceBaseTpl< Scalar >::trial_us

Definition at line 28 of file workspace-base.hpp.

◆ dyn_slacks

template<typename Scalar >
std::vector<VectorXs> aligator::WorkspaceBaseTpl< Scalar >::dyn_slacks

Dynamical infeasibility gaps.

Definition at line 32 of file workspace-base.hpp.


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