Foam::RBD Namespace Reference

Namespaces

 joints
 Namespace for rigid-body joints.
 
 restraints
 Namespace for rigid-body dynamics restraints.
 
 rigidBodySolvers
 

Classes

class  compositeBody
 This specialised rigidBody holds the original body after it has been merged into a parent. More...
 
class  cuboid
 Specialisation of rigidBody to construct a cuboid given the mass and lengths of the sides. More...
 
class  joint
 Abstract base-class for all rigid-body joints. More...
 
class  jointBody
 
class  masslessBody
 
class  restraint
 Base class for defining restraints for rigid-body dynamics. More...
 
class  rigidBody
 
class  rigidBodyInertia
 This class represents the linear and angular inertia of a rigid body by the mass, centre of mass and moment of inertia tensor about the centre of mass. More...
 
class  rigidBodyModel
 Basic rigid-body model representing a system of rigid-bodies connected by 1-6 DoF joints. More...
 
class  rigidBodyModelState
 Holds the motion state of rigid-body model. More...
 
class  rigidBodyMotion
 Six degree of freedom motion for a rigid body. More...
 
class  rigidBodySolver
 
class  sphere
 Specialisation of rigidBody to construct a sphere given the mass and radius. More...
 
class  subBody
 This specialised rigidBody holds the original body after it has been merged into a master. More...
 

Functions

 defineTypeNameAndDebug (cuboid, 0)
 
 addToRunTimeSelectionTable (rigidBody, cuboid, dictionary)
 
 defineTypeNameAndDebug (jointBody, 0)
 
 addToRunTimeSelectionTable (rigidBody, jointBody, dictionary)
 
 defineTypeNameAndDebug (masslessBody, 0)
 
 addToRunTimeSelectionTable (rigidBody, masslessBody, dictionary)
 
 defineTypeNameAndDebug (rigidBody, 0)
 
 defineRunTimeSelectionTable (rigidBody, dictionary)
 
 addToRunTimeSelectionTable (rigidBody, rigidBody, dictionary)
 
Ostreamoperator<< (Ostream &, const rigidBody &)
 
 defineTypeNameAndDebug (sphere, 0)
 
 addToRunTimeSelectionTable (rigidBody, sphere, dictionary)
 
 defineTypeNameAndDebug (joint, 0)
 
 defineRunTimeSelectionTable (joint, dictionary)
 
Ostreamoperator<< (Ostream &, const joint &)
 
 defineTypeNameAndDebug (restraint, 0)
 
 defineRunTimeSelectionTable (restraint, dictionary)
 
Istreamoperator>> (Istream &, rigidBodyInertia &)
 
Ostreamoperator<< (Ostream &, const rigidBodyInertia &)
 
rigidBodyInertia operator+ (const rigidBodyInertia &rbi1, const rigidBodyInertia &rbi2)
 Return the rigid-body inertia of the combined body. More...
 
spatialVector operator & (const rigidBodyInertia &rbi, const spatialVector &sv)
 Inner-product with a spatialVector (e.g. velocity returning the momentum) More...
 
rigidBodyInertia transform (const spatialTransform &X, const rigidBodyInertia &I)
 Return (^BX_A)^* I ^AX_B. More...
 
 defineTypeNameAndDebug (rigidBodyModel, 0)
 
Ostreamoperator<< (Ostream &, const rigidBodyModel &)
 
Istreamoperator>> (Istream &, rigidBodyModelState &)
 
Ostreamoperator<< (Ostream &, const rigidBodyModelState &)
 
 defineTypeNameAndDebug (rigidBodySolver, 0)
 
 defineRunTimeSelectionTable (rigidBodySolver, dictionary)
 

Function Documentation

◆ defineTypeNameAndDebug() [1/9]

Foam::RBD::defineTypeNameAndDebug ( cuboid  ,
 
)

◆ addToRunTimeSelectionTable() [1/5]

Foam::RBD::addToRunTimeSelectionTable ( rigidBody  ,
cuboid  ,
dictionary   
)

◆ defineTypeNameAndDebug() [2/9]

Foam::RBD::defineTypeNameAndDebug ( jointBody  ,
 
)

◆ addToRunTimeSelectionTable() [2/5]

Foam::RBD::addToRunTimeSelectionTable ( rigidBody  ,
jointBody  ,
dictionary   
)

◆ defineTypeNameAndDebug() [3/9]

Foam::RBD::defineTypeNameAndDebug ( masslessBody  ,
 
)

◆ addToRunTimeSelectionTable() [3/5]

Foam::RBD::addToRunTimeSelectionTable ( rigidBody  ,
masslessBody  ,
dictionary   
)

◆ defineTypeNameAndDebug() [4/9]

Foam::RBD::defineTypeNameAndDebug ( rigidBody  ,
 
)

◆ defineRunTimeSelectionTable() [1/4]

Foam::RBD::defineRunTimeSelectionTable ( rigidBody  ,
dictionary   
)

◆ addToRunTimeSelectionTable() [4/5]

Foam::RBD::addToRunTimeSelectionTable ( rigidBody  ,
rigidBody  ,
dictionary   
)

◆ operator<<() [1/5]

Foam::Ostream & operator<< ( Ostream os,
const rigidBody rb 
)
inline

Definition at line 73 of file rigidBodyI.H.

References rigidBody::write().

Here is the call graph for this function:

◆ defineTypeNameAndDebug() [5/9]

Foam::RBD::defineTypeNameAndDebug ( sphere  ,
 
)

◆ addToRunTimeSelectionTable() [5/5]

Foam::RBD::addToRunTimeSelectionTable ( rigidBody  ,
sphere  ,
dictionary   
)

◆ defineTypeNameAndDebug() [6/9]

Foam::RBD::defineTypeNameAndDebug ( joint  ,
 
)

◆ defineRunTimeSelectionTable() [2/4]

Foam::RBD::defineRunTimeSelectionTable ( joint  ,
dictionary   
)

◆ operator<<() [2/5]

Foam::Ostream & operator<< ( Ostream os,
const joint j 
)
inline

Definition at line 122 of file jointI.H.

References token::BEGIN_BLOCK, Foam::decrIndent(), token::END_BLOCK, Foam::endl(), Foam::incrIndent(), Foam::indent(), and joint::write().

Here is the call graph for this function:

◆ defineTypeNameAndDebug() [7/9]

Foam::RBD::defineTypeNameAndDebug ( restraint  ,
 
)

◆ defineRunTimeSelectionTable() [3/4]

Foam::RBD::defineRunTimeSelectionTable ( restraint  ,
dictionary   
)

◆ operator>>() [1/2]

Foam::Istream & operator>> ( Istream is,
rigidBodyInertia rbi 
)
inline

Definition at line 139 of file rigidBodyInertiaI.H.

◆ operator<<() [3/5]

Foam::Ostream & operator<< ( Ostream os,
const rigidBodyInertia rbi 
)
inline

Definition at line 150 of file rigidBodyInertiaI.H.

References Foam::endl(), and Foam::nl.

Here is the call graph for this function:

◆ operator+()

rigidBodyInertia Foam::RBD::operator+ ( const rigidBodyInertia rbi1,
const rigidBodyInertia rbi2 
)
inline

Return the rigid-body inertia of the combined body.

Definition at line 171 of file rigidBodyInertiaI.H.

References rigidBodyInertia::c(), rigidBodyInertia::Ic(), rigidBodyInertia::Icc(), rigidBodyInertia::m(), and rigidBodyInertia::rigidBodyInertia().

Here is the call graph for this function:

◆ operator &()

spatialVector Foam::RBD::operator& ( const rigidBodyInertia rbi,
const spatialVector sv 
)
inline

Inner-product with a spatialVector (e.g. velocity returning the momentum)

Definition at line 190 of file rigidBodyInertiaI.H.

References rigidBodyInertia::c(), rigidBodyInertia::Io(), rigidBodyInertia::m(), and transform().

Here is the call graph for this function:

◆ transform()

rigidBodyInertia Foam::RBD::transform ( const spatialTransform X,
const rigidBodyInertia I 
)
inline

Return (^BX_A)^* I ^AX_B.

Definition at line 208 of file rigidBodyInertiaI.H.

References rigidBodyInertia::c(), spatialTransform::E(), rigidBodyInertia::Ic(), rigidBodyInertia::kineticEnergy(), rigidBodyInertia::m(), spatialTransform::r(), rigidBodyInertia::rigidBodyInertia(), and Tensor< Cmpt >::T().

Referenced by rigidBody::merge(), and operator &().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ defineTypeNameAndDebug() [8/9]

Foam::RBD::defineTypeNameAndDebug ( rigidBodyModel  ,
 
)

◆ operator<<() [4/5]

Foam::Ostream & operator<< ( Ostream os,
const rigidBodyModel rbm 
)

Definition at line 482 of file rigidBodyModel.C.

References rigidBodyModel::write().

Here is the call graph for this function:

◆ operator>>() [2/2]

Foam::Istream & operator>> ( Istream is,
rigidBodyModelState state 
)

Definition at line 54 of file rigidBodyModelStateIO.C.

References IOstream::check().

Here is the call graph for this function:

◆ operator<<() [5/5]

Foam::Ostream & operator<< ( Ostream os,
const rigidBodyModelState state 
)

Definition at line 77 of file rigidBodyModelStateIO.C.

References IOstream::check(), and token::SPACE.

Here is the call graph for this function:

◆ defineTypeNameAndDebug() [9/9]

Foam::RBD::defineTypeNameAndDebug ( rigidBodySolver  ,
 
)

◆ defineRunTimeSelectionTable() [4/4]

Foam::RBD::defineRunTimeSelectionTable ( rigidBodySolver  ,
dictionary   
)