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

#include <final_state_constraints.h>

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

Public Types

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

Public Member Functions

bool checkParameters (int state_dim, int control_dim, FinalStageCost::ConstPtr final_stage_cost, std::stringstream *issues) const override
 
void computeNonIntegralStateTerm (int k, const Eigen::Ref< const Eigen::VectorXd > &x_k, Eigen::Ref< Eigen::VectorXd > cost) const override
 
double getGamma ()
 
FinalStageConstraint::Ptr getInstance () const override
 Return a newly created shared instance of the implemented class. More...
 
int getNonIntegralStateTermDimension (int k) const override
 
const Eigen::MatrixXd & getWeightS () const
 
bool isEqualityConstraint () const override
 
void setGamma (double gamma)
 
bool setWeightS (const Eigen::Ref< const Eigen::MatrixXd > &S)
 
bool setWeightS (const Eigen::DiagonalMatrix< double, -1 > &S)
 
 TerminalBall ()=default
 
 TerminalBall (const Eigen::Ref< const Eigen::MatrixXd > &S, double gamma)
 
bool update (int n, double t, ReferenceTrajectoryInterface &xref, ReferenceTrajectoryInterface &uref, ReferenceTrajectoryInterface *sref, bool single_dt, const Eigen::VectorXd &x0, FinalStageCost::ConstPtr final_stage_cost, StagePreprocessor::Ptr stage_preprocessor, const std::vector< double > &dts, const DiscretizationGridInterface *) override
 
- Public Member Functions inherited from corbo::FinalStageConstraint
bool hasIntegralTerms (int k) const final
 
bool hasNonIntegralTerms (int k) const final
 
bool isInequalityConstraint () const
 
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) final
 
- 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 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 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 bool isLsqFormNonIntegralDtTerm (int k) const
 
virtual bool isLsqFormNonIntegralStateTerm (int k) const
 
virtual ~StageFunction ()=default
 Default destructor. More...
 

Protected Attributes

bool _diagonal_mode = false
 
bool _diagonal_mode_intentionally = false
 
double _gamma = 0.0
 
Eigen::MatrixXd _S
 
Eigen::DiagonalMatrix< double, -1 > _S_diag
 
const ReferenceTrajectoryInterface_x_ref = nullptr
 
bool _zero_x_ref = false
 

Detailed Description

Definition at line 38 of file final_state_constraints.h.

Member Typedef Documentation

◆ ConstPtr

using corbo::TerminalBall::ConstPtr = std::shared_ptr<const TerminalBall>

Definition at line 42 of file final_state_constraints.h.

◆ Ptr

using corbo::TerminalBall::Ptr = std::shared_ptr<TerminalBall>

Definition at line 41 of file final_state_constraints.h.

Constructor & Destructor Documentation

◆ TerminalBall() [1/2]

corbo::TerminalBall::TerminalBall ( )
default

◆ TerminalBall() [2/2]

corbo::TerminalBall::TerminalBall ( const Eigen::Ref< const Eigen::MatrixXd > &  S,
double  gamma 
)
inline

Definition at line 46 of file final_state_constraints.h.

Member Function Documentation

◆ checkParameters()

bool corbo::TerminalBall::checkParameters ( int  state_dim,
int  control_dim,
FinalStageCost::ConstPtr  final_stage_cost,
std::stringstream *  issues 
) const
overridevirtual

Reimplemented from corbo::FinalStageConstraint.

Reimplemented in corbo::TerminalBallInheritFromCost.

Definition at line 81 of file final_state_constraints.cpp.

◆ computeNonIntegralStateTerm()

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

Implements corbo::FinalStageConstraint.

Reimplemented in corbo::TerminalBallInheritFromCost.

Definition at line 60 of file final_state_constraints.cpp.

◆ getGamma()

double corbo::TerminalBall::getGamma ( )
inline

Definition at line 63 of file final_state_constraints.h.

◆ getInstance()

FinalStageConstraint::Ptr corbo::TerminalBall::getInstance ( ) const
inlineoverridevirtual

Return a newly created shared instance of the implemented class.

Implements corbo::FinalStageConstraint.

Reimplemented in corbo::TerminalBallInheritFromCost.

Definition at line 52 of file final_state_constraints.h.

◆ getNonIntegralStateTermDimension()

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

Implements corbo::FinalStageConstraint.

Reimplemented in corbo::TerminalBallInheritFromCost.

Definition at line 56 of file final_state_constraints.h.

◆ getWeightS()

const Eigen::MatrixXd& corbo::TerminalBall::getWeightS ( ) const
inline

Definition at line 60 of file final_state_constraints.h.

◆ isEqualityConstraint()

bool corbo::TerminalBall::isEqualityConstraint ( ) const
inlineoverridevirtual

Implements corbo::FinalStageConstraint.

Definition at line 54 of file final_state_constraints.h.

◆ setGamma()

void corbo::TerminalBall::setGamma ( double  gamma)
inline

Definition at line 62 of file final_state_constraints.h.

◆ setWeightS() [1/2]

bool corbo::TerminalBall::setWeightS ( const Eigen::Ref< const Eigen::MatrixXd > &  S)

Definition at line 35 of file final_state_constraints.cpp.

◆ setWeightS() [2/2]

bool corbo::TerminalBall::setWeightS ( const Eigen::DiagonalMatrix< double, -1 > &  S)

Definition at line 49 of file final_state_constraints.cpp.

◆ update()

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

Reimplemented from corbo::FinalStageConstraint.

Reimplemented in corbo::TerminalBallInheritFromCost.

Definition at line 67 of file final_state_constraints.h.

Member Data Documentation

◆ _diagonal_mode

bool corbo::TerminalBall::_diagonal_mode = false
protected

Definition at line 93 of file final_state_constraints.h.

◆ _diagonal_mode_intentionally

bool corbo::TerminalBall::_diagonal_mode_intentionally = false
protected

Definition at line 94 of file final_state_constraints.h.

◆ _gamma

double corbo::TerminalBall::_gamma = 0.0
protected

Definition at line 88 of file final_state_constraints.h.

◆ _S

Eigen::MatrixXd corbo::TerminalBall::_S
protected

Definition at line 86 of file final_state_constraints.h.

◆ _S_diag

Eigen::DiagonalMatrix<double, -1> corbo::TerminalBall::_S_diag
protected

Definition at line 87 of file final_state_constraints.h.

◆ _x_ref

const ReferenceTrajectoryInterface* corbo::TerminalBall::_x_ref = nullptr
protected

Definition at line 90 of file final_state_constraints.h.

◆ _zero_x_ref

bool corbo::TerminalBall::_zero_x_ref = false
protected

Definition at line 91 of file final_state_constraints.h.


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


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