Public Member Functions | List of all members
Rx Class Reference

Revolute joint for rotation about the x-axis. More...

Inheritance diagram for Rx:
Inheritance graph
[legend]
Collaboration diagram for Rx:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("Rx")
 Runtime type information. More...
 
 Rx (const rigidBodyModel &model)
 Construct for given model. More...
 
 Rx (const rigidBodyModel &model, const dictionary &dict)
 Construct for given model from dictionary. More...
 
virtual autoPtr< jointclone () const
 Clone this joint. More...
 
virtual ~Rx ()
 Destructor. More...
 
virtual void jcalc (joint::XSvc &J, const rigidBodyModelState &state) const
 Update the model state for this joint. More...
 
- Public Member Functions inherited from joint
 TypeName ("joint")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, joint, dictionary,(const rigidBodyModel &model, const dictionary &dict),(model, dict))
 
 joint (const rigidBodyModel &model, const label nDoF)
 Construct joint setting the size of the motion sub-space. More...
 
virtual ~joint ()
 Destructor. More...
 
label nDoF () const
 Return the number of degrees of freedom in this joint. More...
 
virtual bool unitQuaternion () const
 Return true if this joint describes rotation using a quaternion. More...
 
label index () const
 Return the index of this joint in the model. More...
 
label qIndex () const
 Return start index for the state variables for this joint. More...
 
const List< spatialVector > & S () const
 Return the joint motion sub-space. More...
 
virtual void write (Ostream &) const
 Write. More...
 
void operator= (const joint &j)
 Assignment. More...
 
quaternion unitQuaternion (const scalarField &q) const
 Return the unit quaternion for this joint. More...
 
void unitQuaternion (const quaternion &quat, scalarField &q) const
 Set the unit quaternion for this joint. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from joint
static autoPtr< jointNew (joint *jointPtr)
 Simple selector to return an autoPtr<joint> of the given joint*. More...
 
static autoPtr< jointNew (const rigidBodyModel &model, const dictionary &dict)
 Select from dictionary. More...
 
- Protected Attributes inherited from joint
const rigidBodyModelmodel_
 Reference to the model. More...
 
List< spatialVectorS_
 Joint motion sub-space. More...
 
label index_
 Index of this joint in the rigidBodyModel. More...
 
label qIndex_
 Index of this joints data in the rigidBodyModel state. More...
 

Detailed Description

Revolute joint for rotation about the x-axis.

Reference:

    Featherstone, R. (2008).
    Rigid body dynamics algorithms.
    Springer.
    Chapter 4.
Source files

Definition at line 60 of file Rx.H.

Constructor & Destructor Documentation

◆ Rx() [1/2]

Rx ( const rigidBodyModel model)

Construct for given model.

Definition at line 53 of file Rx.C.

References joint::S_.

Referenced by Rx::clone().

Here is the caller graph for this function:

◆ Rx() [2/2]

Rx ( const rigidBodyModel model,
const dictionary dict 
)

Construct for given model from dictionary.

Definition at line 61 of file Rx.C.

References joint::S_.

◆ ~Rx()

~Rx ( )
virtual

Destructor.

Definition at line 77 of file Rx.C.

References Rx::jcalc().

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

TypeName ( "Rx"  )

Runtime type information.

◆ clone()

Foam::autoPtr< Foam::RBD::joint > clone ( ) const
virtual

Clone this joint.

Implements joint.

Definition at line 69 of file Rx.C.

References Rx::Rx().

Here is the call graph for this function:

◆ jcalc()

void jcalc ( joint::XSvc J,
const rigidBodyModelState state 
) const
virtual

Update the model state for this joint.

Implements joint.

Definition at line 84 of file Rx.C.

References joint::XSvc::c, rigidBodyModelState::q(), rigidBodyModelState::qDot(), joint::qIndex_, joint::XSvc::S1, joint::S_, joint::XSvc::v, SpatialVector< Cmpt >::wx(), joint::XSvc::X, Foam::Xrx(), and Foam::Zero.

Referenced by Rx::~Rx().

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

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