sofa::component::ArticulatedMass Class Reference

#include <ArticulatedMass.h>

Inheritance diagram for sofa::component::ArticulatedMass:

Inheritance graph
[legend]
Collaboration diagram for sofa::component::ArticulatedMass:

Collaboration graph
[legend]

Detailed Description

Definition at line 18 of file ArticulatedMass.h.


Public Types

typedef
core::objectmodel::BaseContext::SolidTypes 
SolidTypes
typedef SolidTypes::Real Real
typedef SolidTypes::Vec Vec
typedef
SolidTypes::RigidInertia 
RigidInertia
typedef
SolidTypes::ArticulatedInertia 
ArticulatedInertia

Public Member Functions

 ArticulatedMass (ArticulatedBody *)
virtual ~ArticulatedMass ()
void setInertia (Real m, const Vec &c, Real xx, Real yy, Real zz, Real xy, Real yz, Real zx)
virtual void addMDx (VecDeriv &f, const VecDeriv &dx)
 f += M dx
virtual void accFromF (VecDeriv &a, const VecDeriv &f)
 dx = M^-1 f
virtual void computeForce (VecDeriv f, const VecCoord &x, const VecDeriv &v)
virtual void computeDf (VecDeriv df, const VecCoord &x, const VecDeriv &v, const VecDeriv &dx)
 f += gravity and inertia forces

Data Fields

RigidInertia sp_I
 Rigid body inertia matrix in local coordinates.
ArticulatedInertia sp_Ia
 Articulated body inertia matrix in world coordinates.

Protected Attributes

ArticulatedBodybody_

Member Typedef Documentation

typedef core::objectmodel::BaseContext::SolidTypes sofa::component::ArticulatedMass::SolidTypes

Definition at line 21 of file ArticulatedMass.h.

typedef SolidTypes::Real sofa::component::ArticulatedMass::Real

Definition at line 22 of file ArticulatedMass.h.

typedef SolidTypes::Vec sofa::component::ArticulatedMass::Vec

Definition at line 23 of file ArticulatedMass.h.

typedef SolidTypes::RigidInertia sofa::component::ArticulatedMass::RigidInertia

Definition at line 24 of file ArticulatedMass.h.

typedef SolidTypes::ArticulatedInertia sofa::component::ArticulatedMass::ArticulatedInertia

Definition at line 25 of file ArticulatedMass.h.


Constructor & Destructor Documentation

sofa::component::ArticulatedMass::ArticulatedMass ( ArticulatedBody s  ) 

Definition at line 15 of file ArticulatedMass.cpp.

References body_, sofa::defaulttype::SolidTypes< R >::RigidInertia::h, sofa::defaulttype::SolidTypes< R >::RigidInertia::I, sofa::defaulttype::SolidTypes< R >::RigidInertia::m, and sp_I.

virtual sofa::component::ArticulatedMass::~ArticulatedMass (  )  [inline, virtual]

Definition at line 28 of file ArticulatedMass.h.


Member Function Documentation

void sofa::component::ArticulatedMass::setInertia ( Real  m,
const Vec c,
Real  xx,
Real  yy,
Real  zz,
Real  xy,
Real  yz,
Real  zx 
)

Definition at line 26 of file ArticulatedMass.cpp.

References sofa::defaulttype::SolidTypes< R >::crossM(), sofa::defaulttype::SolidTypes< R >::RigidInertia::h, sofa::defaulttype::SolidTypes< R >::RigidInertia::I, sofa::defaulttype::SolidTypes< R >::RigidInertia::m, sp_I, and sofa::defaulttype::Mat< L, C, real >::transposed().

void sofa::component::ArticulatedMass::addMDx ( VecDeriv f,
const VecDeriv dx 
) [virtual]

f += M dx

Definition at line 46 of file ArticulatedMass.cpp.

void sofa::component::ArticulatedMass::accFromF ( VecDeriv a,
const VecDeriv f 
) [virtual]

dx = M^-1 f

Definition at line 49 of file ArticulatedMass.cpp.

void sofa::component::ArticulatedMass::computeForce ( VecDeriv  f,
const VecCoord x,
const VecDeriv v 
) [virtual]

Definition at line 52 of file ArticulatedMass.cpp.

References body_, sofa::core::objectmodel::ContextObject::getContext(), sofa::component::ArticulatedBody::getF(), sofa::component::ArticulatedBody::getV(), sp_I, and sp_Ia.

void sofa::component::ArticulatedMass::computeDf ( VecDeriv  df,
const VecCoord x,
const VecDeriv v,
const VecDeriv dx 
) [virtual]

f += gravity and inertia forces

Definition at line 68 of file ArticulatedMass.cpp.


Field Documentation

RigidInertia sofa::component::ArticulatedMass::sp_I

Rigid body inertia matrix in local coordinates.

Definition at line 41 of file ArticulatedMass.h.

Referenced by ArticulatedMass(), computeForce(), and setInertia().

ArticulatedInertia sofa::component::ArticulatedMass::sp_Ia

Articulated body inertia matrix in world coordinates.

Definition at line 42 of file ArticulatedMass.h.

Referenced by computeForce().

ArticulatedBody* sofa::component::ArticulatedMass::body_ [protected]

Definition at line 45 of file ArticulatedMass.h.

Referenced by ArticulatedMass(), and computeForce().


The documentation for this class was generated from the following files:
Generated on Mon May 5 23:32:53 2008 for Sofa by  doxygen 1.5.3