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

Kernel for use in Riccati-like algorithms for the proximal LQ subproblem. More...

#include <aligator/gar/riccati-kernel.hpp>

Classes

struct  kkt0_t
 

Public Types

using KnotType = LqrKnotTpl<Scalar>
 
using StageFactorType = StageFactor<Scalar>
 
using value_t = typename StageFactor<Scalar>::value_t
 

Public Member Functions

 ALIGATOR_DYNAMIC_TYPEDEFS_WITH_ROW_TYPES (Scalar)
 

Static Public Member Functions

static void terminalSolve (typename KnotType::const_view_t model, const Scalar mueq, StageFactorType &d)
 
static bool backwardImpl (boost::span< const KnotType > stages, const Scalar mudyn, const Scalar mueq, boost::span< StageFactorType > datas)
 
static void computeInitial (VectorRef x0, VectorRef lbd0, const kkt0_t &kkt0, const std::optional< ConstVectorRef > &theta_)
 Solve initial stage.
 
static void stageKernelSolve (typename KnotType::const_view_t model, StageFactorType &d, value_t &vn, const Scalar mudyn, const Scalar mueq)
 
static bool forwardImpl (boost::span< const KnotType > stages, boost::span< const StageFactorType > datas, boost::span< VectorXs > xs, boost::span< VectorXs > us, boost::span< VectorXs > vs, boost::span< VectorXs > lbdas, const std::optional< ConstVectorRef > &theta_=std::nullopt)
 Forward sweep.
 

Detailed Description

template<typename Scalar>
struct aligator::gar::ProximalRiccatiKernel< Scalar >

Kernel for use in Riccati-like algorithms for the proximal LQ subproblem.

Definition at line 95 of file riccati-kernel.hpp.

Member Typedef Documentation

◆ KnotType

template<typename Scalar>
using aligator::gar::ProximalRiccatiKernel< Scalar >::KnotType = LqrKnotTpl<Scalar>

Definition at line 97 of file riccati-kernel.hpp.

◆ StageFactorType

template<typename Scalar>
using aligator::gar::ProximalRiccatiKernel< Scalar >::StageFactorType = StageFactor<Scalar>

Definition at line 98 of file riccati-kernel.hpp.

◆ value_t

template<typename Scalar>
using aligator::gar::ProximalRiccatiKernel< Scalar >::value_t = typename StageFactor<Scalar>::value_t

Definition at line 99 of file riccati-kernel.hpp.

Member Function Documentation

◆ ALIGATOR_DYNAMIC_TYPEDEFS_WITH_ROW_TYPES()

template<typename Scalar>
aligator::gar::ProximalRiccatiKernel< Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS_WITH_ROW_TYPES ( Scalar )

◆ terminalSolve()

template<typename Scalar>
static void aligator::gar::ProximalRiccatiKernel< Scalar >::terminalSolve ( typename KnotType::const_view_t model,
const Scalar mueq,
StageFactorType & d )
static

◆ backwardImpl()

template<typename Scalar>
static bool aligator::gar::ProximalRiccatiKernel< Scalar >::backwardImpl ( boost::span< const KnotType > stages,
const Scalar mudyn,
const Scalar mueq,
boost::span< StageFactorType > datas )
static

◆ computeInitial()

template<typename Scalar>
static void aligator::gar::ProximalRiccatiKernel< Scalar >::computeInitial ( VectorRef x0,
VectorRef lbd0,
const kkt0_t & kkt0,
const std::optional< ConstVectorRef > & theta_ )
static

Solve initial stage.

◆ stageKernelSolve()

template<typename Scalar>
static void aligator::gar::ProximalRiccatiKernel< Scalar >::stageKernelSolve ( typename KnotType::const_view_t model,
StageFactorType & d,
value_t & vn,
const Scalar mudyn,
const Scalar mueq )
static

◆ forwardImpl()

template<typename Scalar>
static bool aligator::gar::ProximalRiccatiKernel< Scalar >::forwardImpl ( boost::span< const KnotType > stages,
boost::span< const StageFactorType > datas,
boost::span< VectorXs > xs,
boost::span< VectorXs > us,
boost::span< VectorXs > vs,
boost::span< VectorXs > lbdas,
const std::optional< ConstVectorRef > & theta_ = std::nullopt )
static

Forward sweep.


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