aligator  0.16.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
Loading...
Searching...
No Matches
aligator::WorkspaceBaseTpl< Scalar > Struct Template Reference

Base workspace struct for the algorithms. More...

#include <aligator/solvers/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 13 of file workspace-base.hpp.

Constructor & Destructor Documentation

◆ WorkspaceBaseTpl() [1/2]

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

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

◆ WorkspaceBaseTpl() [2/2]

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

Definition at line 62 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 43 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 70 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 52 of file workspace-base.hpp.

Member Data Documentation

◆ m_isInitialized

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

Definition at line 18 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 22 of file workspace-base.hpp.

◆ problem_data

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

Problem data.

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

◆ trial_xs

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

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

◆ trial_us

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

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

◆ dyn_slacks

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

Dynamical infeasibility gaps.

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


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