Choreonoid  1.1
公開メンバ関数 | 限定公開型 | 限定公開メンバ関数 | 静的限定公開メンバ関数 | 限定公開変数類 | 全メンバ一覧
cnoid::ForwardDynamics クラスabstract

#include <ForwardDynamics.h>

cnoid::ForwardDynamics の継承関係図
cnoid::ForwardDynamicsABM cnoid::ForwardDynamicsMM

公開メンバ関数

EIGEN_MAKE_ALIGNED_OPERATOR_NEW ForwardDynamics (BodyPtr body)
 
virtual ~ForwardDynamics ()
 
void setGravityAcceleration (const Vector3 &g)
 
void setEulerMethod ()
 
void setRungeKuttaMethod ()
 
void setTimeStep (double timeStep)
 
void enableSensors (bool on)
 
virtual void initialize ()=0
 
virtual void calcNextState ()=0
 

限定公開型

enum  { EULER_METHOD, RUNGEKUTTA_METHOD }
 

限定公開メンバ関数

virtual void initializeSensors ()
 
virtual void updateSensorsFinal ()
 

静的限定公開メンバ関数

static void SE3exp (Vector3 &out_p, Matrix3 &out_R, const Vector3 &p0, const Matrix3 &R0, const Vector3 &w, const Vector3 &vo, double dt)
 update position/orientation using spatial velocity [詳解]
 

限定公開変数類

BodyPtr body
 
Vector3 g
 
double timeStep
 
bool sensorsEnabled
 
enum cnoid::ForwardDynamics:: { ... }  integrationMode
 

詳解

This class calculates the forward dynamics of a Body object by using the Featherstone's articulated body algorithm. The class also integrates motion using the Euler method or RungeKutta method.

列挙型メンバ詳解

anonymous enum
protected
列挙値
EULER_METHOD 
RUNGEKUTTA_METHOD 

構築子と解体子

ForwardDynamics::ForwardDynamics ( BodyPtr  body)
ForwardDynamics::~ForwardDynamics ( )
virtual

関数詳解

virtual void cnoid::ForwardDynamics::calcNextState ( )
pure virtual

cnoid::ForwardDynamicsMM, cnoid::ForwardDynamicsABMで実装されています。

void ForwardDynamics::enableSensors ( bool  on)
virtual void cnoid::ForwardDynamics::initialize ( )
pure virtual

cnoid::ForwardDynamicsMM, cnoid::ForwardDynamicsABMで実装されています。

void ForwardDynamics::initializeSensors ( )
protectedvirtual
void ForwardDynamics::SE3exp ( Vector3 out_p,
Matrix3 out_R,
const Vector3 p0,
const Matrix3 R0,
const Vector3 w,
const Vector3 vo,
double  dt 
)
staticprotected

update position/orientation using spatial velocity

function from Murray, Li and Sastry p.42

引数
out_pp(t+dt)
out_RR(t+dt)
p0p(t)
R0R(t)
wangular velocity
v0spatial velocity
dttime step[s]
void ForwardDynamics::setEulerMethod ( )
void ForwardDynamics::setGravityAcceleration ( const Vector3 g)
void ForwardDynamics::setRungeKuttaMethod ( )
void ForwardDynamics::setTimeStep ( double  timeStep)
void ForwardDynamics::updateSensorsFinal ( )
protectedvirtual

メンバ詳解

BodyPtr cnoid::ForwardDynamics::body
protected
Vector3 cnoid::ForwardDynamics::g
protected
enum { ... } cnoid::ForwardDynamics::integrationMode
bool cnoid::ForwardDynamics::sensorsEnabled
protected
double cnoid::ForwardDynamics::timeStep
protected

このクラス詳解は次のファイルから抽出されました: