humoto
Public Member Functions | Static Public Member Functions | Public Attributes | Static Private Member Functions | List of all members
humoto::walking::PointMassModel6z Class Reference

Detailed Description

Point Mass Model with piece-wise constant CoP velocity.

This class generates matrices of the following systems:

1) controlled by position of the CoP c(k+1) = A c(k) + B z(k+1) zdot(k) = D c(k) + E z(k+1)

2) controlled by velocity of the CoP c(k+1) = Adz c(k) + Bdz dz(k+1) z(k) = Ddz c(k)

Todo:
It can be faster if A,B are computed directly as derived in documentation.

Definition at line 33 of file point_mass_model_6z.h.

#include <point_mass_model_6z.h>

Inheritance diagram for humoto::walking::PointMassModel6z:
Inheritance graph

Public Member Functions

 PointMassModel6z ()
 Constructor. More...
 

Static Public Member Functions

static humoto::rigidbody::PointMassState convertCoMState (const etools::Vector6 &cstate, const double com_height)
 Converts given cstate vector to CoM state. More...
 
static etools::Vector6 convertCoMState (const humoto::rigidbody::PointMassState &com_state)
 Get cstate. More...
 
static humoto::rigidbody::PointMassState evaluate (const double Ts, const double T, const double com_height, const etools::Vector6 &cstate, const etools::Vector2 &control)
 
static etools::Matrix3 getA3 (const double T, const double omega, const double Tsample)
 Create A matrix of final model. More...
 
static etools::Matrix3 getA3 (const double T, const double omega)
 Create A matrix of final model. More...
 
static etools::Matrix6 getA6 (const double T, const double omega, const double Tsample)
 Create A matrix of final model. More...
 
static etools::Matrix6 getA6 (const double T, const double omega)
 Create A matrix of final model. More...
 
static etools::Vector3 getB3 (const double T, const double omega, const double Tsample)
 Create B matrix of final model. More...
 
static etools::Vector3 getB3 (const double T, const double omega)
 Create A matrix of final model. More...
 
static etools::Matrix6x2 getB6 (const double T, const double omega, const double Tsample)
 Create B matrix of final model. More...
 
static etools::Matrix6x2 getB6 (const double T, const double omega)
 Create B matrix of final model. More...
 
static etools::Matrix1x3 getD3 (const double T, const double omega)
 Create D matrix of final model. More...
 
static etools::Matrix2x6 getD6 (const double T, const double omega)
 Create D matrix of final model. More...
 
static etools::Matrix2x6 getDcpv6 (const double omega)
 Create ksi matrix. More...
 
static etools::Matrix2x6 getDdz6 (const double com_height)
 Create Ddz6 matrix. More...
 
static double getE3 (const double T)
 Create E matrix of final model. More...
 
static etools::Matrix2 getE6 (const double T, const double omega)
 Create E matrix of final model. More...
 
static double getOmega (const double com_height)
 

Public Attributes

const std::size_t Ns_
 Number of state variables. More...
 
const int Nu_
 Number of control variables. More...
 

Static Private Member Functions

static etools::Matrix3 getAdz3 (const double T, const double omega)
 Create A matrix of unrefined model. More...
 
static etools::Vector3 getBdz3 (const double T, const double omega)
 Create B matrix of unrefined model. More...
 
static etools::Matrix1x3 getDdz3 (const double omega)
 Create D matrix of unrefined model. More...
 

Constructor & Destructor Documentation

◆ PointMassModel6z()

humoto::walking::PointMassModel6z::PointMassModel6z ( )
inline

Constructor.

Definition at line 101 of file point_mass_model_6z.h.

Member Function Documentation

◆ convertCoMState() [1/2]

static humoto::rigidbody::PointMassState humoto::walking::PointMassModel6z::convertCoMState ( const etools::Vector6 &  cstate,
const double  com_height 
)
inlinestatic

Converts given cstate vector to CoM state.

Returns
CoM state

Definition at line 117 of file point_mass_model_6z.h.

◆ convertCoMState() [2/2]

static etools::Vector6 humoto::walking::PointMassModel6z::convertCoMState ( const humoto::rigidbody::PointMassState com_state)
inlinestatic

Get cstate.

Definition at line 134 of file point_mass_model_6z.h.

◆ evaluate()

static humoto::rigidbody::PointMassState humoto::walking::PointMassModel6z::evaluate ( const double  Ts,
const double  T,
const double  com_height,
const etools::Vector6 &  cstate,
const etools::Vector2 &  control 
)
inlinestatic

Definition at line 147 of file point_mass_model_6z.h.

◆ getA3() [1/2]

static etools::Matrix3 humoto::walking::PointMassModel6z::getA3 ( const double  T,
const double  omega,
const double  Tsample 
)
inlinestatic

Create A matrix of final model.

Definition at line 169 of file point_mass_model_6z.h.

◆ getA3() [2/2]

static etools::Matrix3 humoto::walking::PointMassModel6z::getA3 ( const double  T,
const double  omega 
)
inlinestatic

Create A matrix of final model.

Definition at line 183 of file point_mass_model_6z.h.

◆ getA6() [1/2]

static etools::Matrix6 humoto::walking::PointMassModel6z::getA6 ( const double  T,
const double  omega,
const double  Tsample 
)
inlinestatic

Create A matrix of final model.

Definition at line 192 of file point_mass_model_6z.h.

◆ getA6() [2/2]

static etools::Matrix6 humoto::walking::PointMassModel6z::getA6 ( const double  T,
const double  omega 
)
inlinestatic

Create A matrix of final model.

Definition at line 206 of file point_mass_model_6z.h.

◆ getAdz3()

static etools::Matrix3 humoto::walking::PointMassModel6z::getAdz3 ( const double  T,
const double  omega 
)
inlinestaticprivate

Create A matrix of unrefined model.

Definition at line 39 of file point_mass_model_6z.h.

◆ getB3() [1/2]

static etools::Vector3 humoto::walking::PointMassModel6z::getB3 ( const double  T,
const double  omega,
const double  Tsample 
)
inlinestatic

Create B matrix of final model.

Definition at line 215 of file point_mass_model_6z.h.

◆ getB3() [2/2]

static etools::Vector3 humoto::walking::PointMassModel6z::getB3 ( const double  T,
const double  omega 
)
inlinestatic

Create A matrix of final model.

Definition at line 227 of file point_mass_model_6z.h.

◆ getB6() [1/2]

static etools::Matrix6x2 humoto::walking::PointMassModel6z::getB6 ( const double  T,
const double  omega,
const double  Tsample 
)
inlinestatic

Create B matrix of final model.

Definition at line 236 of file point_mass_model_6z.h.

◆ getB6() [2/2]

static etools::Matrix6x2 humoto::walking::PointMassModel6z::getB6 ( const double  T,
const double  omega 
)
inlinestatic

Create B matrix of final model.

Definition at line 251 of file point_mass_model_6z.h.

◆ getBdz3()

static etools::Vector3 humoto::walking::PointMassModel6z::getBdz3 ( const double  T,
const double  omega 
)
inlinestaticprivate

Create B matrix of unrefined model.

Definition at line 59 of file point_mass_model_6z.h.

◆ getD3()

static etools::Matrix1x3 humoto::walking::PointMassModel6z::getD3 ( const double  T,
const double  omega 
)
inlinestatic

Create D matrix of final model.

Definition at line 260 of file point_mass_model_6z.h.

◆ getD6()

static etools::Matrix2x6 humoto::walking::PointMassModel6z::getD6 ( const double  T,
const double  omega 
)
inlinestatic

Create D matrix of final model.

Definition at line 272 of file point_mass_model_6z.h.

◆ getDcpv6()

static etools::Matrix2x6 humoto::walking::PointMassModel6z::getDcpv6 ( const double  omega)
inlinestatic

Create ksi matrix.

Note
Used to generate matrix for terminal constraint

Definition at line 319 of file point_mass_model_6z.h.

◆ getDdz3()

static etools::Matrix1x3 humoto::walking::PointMassModel6z::getDdz3 ( const double  omega)
inlinestaticprivate

Create D matrix of unrefined model.

Definition at line 79 of file point_mass_model_6z.h.

◆ getDdz6()

static etools::Matrix2x6 humoto::walking::PointMassModel6z::getDdz6 ( const double  com_height)
inlinestatic

Create Ddz6 matrix.

Definition at line 304 of file point_mass_model_6z.h.

◆ getE3()

static double humoto::walking::PointMassModel6z::getE3 ( const double  T)
inlinestatic

Create E matrix of final model.

Definition at line 286 of file point_mass_model_6z.h.

◆ getE6()

static etools::Matrix2 humoto::walking::PointMassModel6z::getE6 ( const double  T,
const double  omega 
)
inlinestatic

Create E matrix of final model.

Definition at line 295 of file point_mass_model_6z.h.

◆ getOmega()

static double humoto::walking::PointMassModel6z::getOmega ( const double  com_height)
inlinestatic

Definition at line 106 of file point_mass_model_6z.h.

Member Data Documentation

◆ Ns_

const std::size_t humoto::walking::PointMassModel6z::Ns_

Number of state variables.

Definition at line 91 of file point_mass_model_6z.h.

◆ Nu_

const int humoto::walking::PointMassModel6z::Nu_

Number of control variables.

Definition at line 94 of file point_mass_model_6z.h.


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