Pa Class Reference

Prismatic joint for translation along the specified arbitrary axis. More...

Inheritance diagram for Pa:
[legend]
Collaboration diagram for Pa:
[legend]

Public Member Functions

 TypeName ("Pa")
 Runtime type information. More...
 
 Pa (const vector &axis)
 Construct for given model and axis. More...
 
 Pa (const dictionary &dict)
 Construct for given model from dictionary. More...
 
virtual autoPtr< jointclone () const
 Clone this joint. More...
 
virtual ~Pa ()
 Destructor. More...
 
virtual void jcalc (joint::XSvc &J, const scalarField &q, const scalarField &qDot) const
 Update the model state for this joint. More...
 
virtual void write (Ostream &) const
 Write. More...
 
- Public Member Functions inherited from joint
 TypeName ("joint")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, joint, dictionary,(const dictionary &dict),(dict))
 
 joint (const label nDoF)
 Construct joint setting the size of the motion sub-space. More...
 
virtual autoPtr< jointclone () const =0
 Clone this joint (needed by PtrList) 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 jcalc (XSvc &J, const scalarField &q, const scalarField &qDot) const =0
 Update the rigidBodyModel state for the joint given. More...
 
virtual void write (Ostream &) const
 Write. 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 dictionary &dict)
 Select from dictionary. More...
 
- Protected Attributes inherited from joint
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

Prismatic joint for translation along the specified arbitrary axis.

Reference:

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

Definition at line 65 of file Pa.H.

Constructor & Destructor Documentation

◆ Pa() [1/2]

Pa ( const vector axis)

Construct for given model and axis.

Definition at line 56 of file Pa.C.

References Foam::mag(), joint::S_, and Foam::Zero.

Here is the call graph for this function:

◆ Pa() [2/2]

Pa ( const dictionary dict)

Construct for given model from dictionary.

Definition at line 64 of file Pa.C.

◆ ~Pa()

~Pa ( )
virtual

Destructor.

Definition at line 78 of file Pa.C.

Member Function Documentation

◆ TypeName()

TypeName ( "Pa"  )

Runtime type information.

◆ clone()

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

Clone this joint.

Implements joint.

Definition at line 70 of file Pa.C.

◆ jcalc()

void jcalc ( joint::XSvc J,
const scalarField q,
const scalarField qDot 
) const
virtual

Update the model state for this joint.

Implements joint.

Definition at line 84 of file Pa.C.

References joint::XSvc::c, joint::XSvc::S1, joint::XSvc::v, joint::XSvc::X, Foam::Xt(), and Foam::Zero.

Here is the call graph for this function:

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented from joint.

Definition at line 98 of file Pa.C.

References os(), and ObukhovLength::write().

Here is the call graph for this function:

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