Public Member Functions | Protected Attributes | List of all members
corbo::MinTimeQuadraticStates Class Reference

#include <hybrid_cost.h>

Inheritance diagram for corbo::MinTimeQuadraticStates:
Inheritance graph
[legend]

Public Member Functions

void computeIntegralStateControlTerm (int k, const Eigen::Ref< const Eigen::VectorXd > &x_k, const Eigen::Ref< const Eigen::VectorXd > &u_k, Eigen::Ref< Eigen::VectorXd > cost) const override
 
void computeNonIntegralDtTerm (int k, double dt, Eigen::Ref< Eigen::VectorXd > cost) const override
 
void computeNonIntegralStateTerm (int k, const Eigen::Ref< const Eigen::VectorXd > &x_k, Eigen::Ref< Eigen::VectorXd > cost) const override
 
StageCost::Ptr getInstance () const override
 Return a newly created shared instance of the implemented class. More...
 
int getIntegralStateControlTermDimension (int k) const override
 
int getNonIntegralDtTermDimension (int k) const override
 
int getNonIntegralStateTermDimension (int k) const override
 
bool hasIntegralTerms (int k) const override
 
bool hasNonIntegralTerms (int k) const override
 
bool isLsqFormNonIntegralDtTerm (int k) const override
 
bool isLsqFormNonIntegralStateTerm (int k) const override
 
 MinTimeQuadraticStates ()=default
 
 MinTimeQuadraticStates (const Eigen::Ref< const Eigen::MatrixXd > &Q, bool integral_form, bool lsq_form=false)
 
bool update (int n, double t, ReferenceTrajectoryInterface &xref, ReferenceTrajectoryInterface &uref, ReferenceTrajectoryInterface *sref, bool single_dt, const Eigen::VectorXd &x0, StagePreprocessor::Ptr stage_preprocessor, const std::vector< double > &dts, const DiscretizationGridInterface *grid) override
 
- Public Member Functions inherited from corbo::StageFunction
virtual bool checkParameters (int state_dim, int control_dim, std::stringstream *issues) const
 
virtual void computeConcatenatedNonIntegralStateControlTerms (int k, const Eigen::Ref< const Eigen::VectorXd > &x_k, const Eigen::Ref< const Eigen::VectorXd > &u_k, double dt_k, Eigen::Ref< Eigen::VectorXd > cost, bool lsq_mode=false) const
 
virtual void computeConcatenatedNonIntegralStateTerms (int k, const Eigen::Ref< const Eigen::VectorXd > &x_k, const Eigen::Ref< const Eigen::VectorXd > &u_k, double dt_k, Eigen::Ref< Eigen::VectorXd > cost, bool lsq_mode=false) const
 
virtual void computeNonIntegralControlDeviationTerm (int k, const Eigen::Ref< const Eigen::VectorXd > &u_k, const Eigen::Ref< const Eigen::VectorXd > &u_prev, double dt_prev, Eigen::Ref< Eigen::VectorXd > cost) const
 
virtual void computeNonIntegralControlTerm (int k, const Eigen::Ref< const Eigen::VectorXd > &u_k, Eigen::Ref< Eigen::VectorXd > cost) const
 
virtual void computeNonIntegralStateControlDtTerm (int k, const Eigen::Ref< const Eigen::VectorXd > &x_k, const Eigen::Ref< const Eigen::VectorXd > &u_k, double dt_k, Eigen::Ref< Eigen::VectorXd > cost) const
 
virtual void computeNonIntegralStateControlTerm (int k, const Eigen::Ref< const Eigen::VectorXd > &x_k, const Eigen::Ref< const Eigen::VectorXd > &u_k, Eigen::Ref< Eigen::VectorXd > cost) const
 
virtual void computeNonIntegralStateDtTerm (int k, const Eigen::Ref< const Eigen::VectorXd > &x_k, double dt_k, Eigen::Ref< Eigen::VectorXd > cost) const
 computeNonIntegralStateDtTerm: warning: currently only supported for full discretization More...
 
virtual int getConcatenatedNonIntegralStateControlTermDimension (int k, bool lsq_mode=false) const
 
virtual int getConcatenatedNonIntegralStateTermDimension (int k, bool lsq_mode=false) const
 
virtual int getNonIntegralControlDeviationTermDimension (int k) const
 
virtual int getNonIntegralControlTermDimension (int k) const
 
virtual int getNonIntegralStateControlDtTermDimension (int k) const
 
virtual int getNonIntegralStateControlTermDimension (int k) const
 
virtual int getNonIntegralStateDtTermDimension (int k) const
 
virtual bool isLinearNonIntegralControlTerm (int k) const
 
virtual bool isLinearNonIntegralDtTerm (int k) const
 
virtual bool isLinearNonIntegralStateTerm (int k) const
 
virtual bool isLsqFormNonIntegralControlTerm (int k) const
 
virtual ~StageFunction ()=default
 Default destructor. More...
 

Protected Attributes

MinimumTime _min_time
 
QuadraticStateCost _quad_state_cost
 

Additional Inherited Members

- Public Types inherited from corbo::StageCost
using ConstPtr = std::shared_ptr< const StageCost >
 
using Ptr = std::shared_ptr< StageCost >
 
- Public Types inherited from corbo::StageFunction
using ConstPtr = std::shared_ptr< const StageFunction >
 
using Ptr = std::shared_ptr< StageFunction >
 

Detailed Description

Definition at line 392 of file hybrid_cost.h.

Constructor & Destructor Documentation

◆ MinTimeQuadraticStates() [1/2]

corbo::MinTimeQuadraticStates::MinTimeQuadraticStates ( )
default

◆ MinTimeQuadraticStates() [2/2]

corbo::MinTimeQuadraticStates::MinTimeQuadraticStates ( const Eigen::Ref< const Eigen::MatrixXd > &  Q,
bool  integral_form,
bool  lsq_form = false 
)
inline

Definition at line 397 of file hybrid_cost.h.

Member Function Documentation

◆ computeIntegralStateControlTerm()

void corbo::MinTimeQuadraticStates::computeIntegralStateControlTerm ( int  k,
const Eigen::Ref< const Eigen::VectorXd > &  x_k,
const Eigen::Ref< const Eigen::VectorXd > &  u_k,
Eigen::Ref< Eigen::VectorXd >  cost 
) const
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 444 of file hybrid_cost.h.

◆ computeNonIntegralDtTerm()

void corbo::MinTimeQuadraticStates::computeNonIntegralDtTerm ( int  k,
double  dt,
Eigen::Ref< Eigen::VectorXd >  cost 
) const
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 434 of file hybrid_cost.h.

◆ computeNonIntegralStateTerm()

void corbo::MinTimeQuadraticStates::computeNonIntegralStateTerm ( int  k,
const Eigen::Ref< const Eigen::VectorXd > &  x_k,
Eigen::Ref< Eigen::VectorXd >  cost 
) const
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 439 of file hybrid_cost.h.

◆ getInstance()

StageCost::Ptr corbo::MinTimeQuadraticStates::getInstance ( ) const
inlineoverridevirtual

Return a newly created shared instance of the implemented class.

Implements corbo::StageCost.

Definition at line 405 of file hybrid_cost.h.

◆ getIntegralStateControlTermDimension()

int corbo::MinTimeQuadraticStates::getIntegralStateControlTermDimension ( int  k) const
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 415 of file hybrid_cost.h.

◆ getNonIntegralDtTermDimension()

int corbo::MinTimeQuadraticStates::getNonIntegralDtTermDimension ( int  k) const
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 413 of file hybrid_cost.h.

◆ getNonIntegralStateTermDimension()

int corbo::MinTimeQuadraticStates::getNonIntegralStateTermDimension ( int  k) const
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 414 of file hybrid_cost.h.

◆ hasIntegralTerms()

bool corbo::MinTimeQuadraticStates::hasIntegralTerms ( int  k) const
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 411 of file hybrid_cost.h.

◆ hasNonIntegralTerms()

bool corbo::MinTimeQuadraticStates::hasNonIntegralTerms ( int  k) const
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 407 of file hybrid_cost.h.

◆ isLsqFormNonIntegralDtTerm()

bool corbo::MinTimeQuadraticStates::isLsqFormNonIntegralDtTerm ( int  k) const
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 420 of file hybrid_cost.h.

◆ isLsqFormNonIntegralStateTerm()

bool corbo::MinTimeQuadraticStates::isLsqFormNonIntegralStateTerm ( int  k) const
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 421 of file hybrid_cost.h.

◆ update()

bool corbo::MinTimeQuadraticStates::update ( int  n,
double  t,
ReferenceTrajectoryInterface xref,
ReferenceTrajectoryInterface uref,
ReferenceTrajectoryInterface sref,
bool  single_dt,
const Eigen::VectorXd &  x0,
StagePreprocessor::Ptr  stage_preprocessor,
const std::vector< double > &  dts,
const DiscretizationGridInterface grid 
)
inlineoverridevirtual

Reimplemented from corbo::StageFunction.

Definition at line 423 of file hybrid_cost.h.

Member Data Documentation

◆ _min_time

MinimumTime corbo::MinTimeQuadraticStates::_min_time
protected

Definition at line 473 of file hybrid_cost.h.

◆ _quad_state_cost

QuadraticStateCost corbo::MinTimeQuadraticStates::_quad_state_cost
protected

Definition at line 474 of file hybrid_cost.h.


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


control_box_rst
Author(s): Christoph Rösmann
autogenerated on Mon Feb 28 2022 22:08:03