composite Class Reference

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

Inheritance diagram for composite:
Collaboration diagram for composite:

Public Member Functions

 TypeName ("composite")
 Runtime type information. More...
 
 composite (const PtrList< joint > &joints)
 Construct for given PtrList<joint> More...
 
 composite (const rigidBodyModel &model, const dictionary &dict)
 Construct for given model from dictionary. More...
 
virtual autoPtr< jointclone () const
 Clone this joint. More...
 
virtual ~composite ()
 Destructor. More...
 
virtual void jcalc (joint::XSvc &J, const rigidBodyModelState &state) const
 Update the model state for this joint. More...
 
virtual void write (Ostream &) const
 Write. More...
 
- Public Member Functions inherited from PtrList< joint >
 PtrList ()
 Null Constructor. More...
 
 PtrList (const label)
 Construct with size specified. More...
 
 PtrList (const PtrList< joint > &)
 Copy constructor. More...
 
 PtrList (const PtrList< joint > &, const CloneArg &)
 Copy constructor with additional argument for clone. More...
 
 PtrList (PtrList< joint > &&)
 Move constructor. More...
 
 PtrList (PtrList< joint > &, bool reuse)
 Construct as copy or re-use as specified. More...
 
 PtrList (const SLPtrList< joint > &)
 Construct as copy of SLPtrList<T> More...
 
 PtrList (Istream &, const INew &)
 Construct from Istream using given Istream constructor class. More...
 
 PtrList (Istream &)
 Construct from Istream using default Istream constructor class. More...
 
 ~PtrList ()
 Destructor. More...
 
void setSize (const label)
 Reset size of PtrList. If extending the PtrList, new entries are. More...
 
void resize (const label)
 Alias for setSize(const label) More...
 
void clear ()
 Clear the PtrList, i.e. set size to zero deleting all the. More...
 
void append (joint *)
 Append an element at the end of the list. More...
 
void append (const autoPtr< joint > &)
 
void append (const tmp< joint > &)
 
void transfer (PtrList< joint > &)
 Transfer the contents of the argument PtrList into this PtrList. More...
 
bool set (const label) const
 Is element set. More...
 
autoPtr< joint > set (const label, joint *)
 Set element to given T* and return old element (can be nullptr) More...
 
autoPtr< joint > set (const label, const autoPtr< joint > &)
 Set element to given autoPtr<T> and return old element. More...
 
autoPtr< joint > set (const label, const tmp< joint > &)
 Set element to given tmp<T> and return old element. More...
 
void reorder (const labelUList &oldToNew)
 Reorders elements. Ordering does not have to be done in. More...
 
void shuffle (const labelUList &newToOld)
 Reorders elements. Ordering does not have to be done in. More...
 
void operator= (const PtrList< joint > &)
 Assignment operator. More...
 
void operator= (PtrList< joint > &&)
 Move assignment operator. More...
 
- Public Member Functions inherited from UPtrList< T >
 UPtrList ()
 Null Constructor. More...
 
 UPtrList (const label)
 Construct with size specified. More...
 
 UPtrList (UPtrList< T > &, bool reuse)
 Construct as copy or re-use as specified. More...
 
label size () const
 Return the number of elements in the UPtrList. More...
 
bool empty () const
 Return true if the UPtrList is empty (ie, size() is zero) More...
 
Tfirst ()
 Return reference to the first element of the list. More...
 
const Tfirst () const
 Return reference to first element of the list. More...
 
Tlast ()
 Return reference to the last element of the list. More...
 
const Tlast () const
 Return reference to the last element of the list. More...
 
void setSize (const label)
 Reset size of UPtrList. This can only be used to set the size. More...
 
void resize (const label)
 Reset size of UPtrList. This can only be used to set the size. More...
 
void clear ()
 Clear the UPtrList, i.e. set size to zero. More...
 
void transfer (UPtrList< T > &)
 Transfer the contents of the argument UPtrList into this. More...
 
bool set (const label) const
 Is element set. More...
 
Tset (const label, T *)
 Set element. Return old element (can be nullptr). More...
 
void reorder (const labelUList &oldToNew)
 Reorders elements. Ordering does not have to be done in. More...
 
void shuffle (const labelUList &newToOld)
 Reorders elements. Ordering does not have to be done in. More...
 
template<class T2 >
UPtrList< T2 > convert ()
 Convert to list of different pointer type. More...
 
template<class T2 >
UPtrList< const T2 > convert () const
 Convert to list of different pointer type. More...
 
const Toperator[] (const label) const
 Return element const reference. More...
 
Toperator[] (const label)
 Return element reference. More...
 
const Toperator() (const label) const
 Return element const pointer. More...
 
iterator begin ()
 Return an iterator to begin traversing the UPtrList. More...
 
iterator end ()
 Return an iterator to end traversing the UPtrList. More...
 
const_iterator cbegin () const
 Return an const_iterator to begin traversing the UPtrList. More...
 
const_iterator cend () const
 Return an const_iterator to end traversing the UPtrList. More...
 
const_iterator begin () const
 Return an const_iterator to begin traversing the UPtrList. More...
 
const_iterator end () const
 Return an const_iterator to end traversing the UPtrList. More...
 
template<class T2 >
Foam::UPtrList< T2 > convert ()
 
template<class T2 >
Foam::UPtrList< const T2 > convert () const
 
- 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...
 
 joint (const joint &)=default
 Copy constructor. 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...
 
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...
 

Friends

class Foam::RBD::rigidBodyModel
 Allow the rigidBodyModel class to set the last joint state. More...
 

Additional Inherited Members

- Public Types inherited from UPtrList< T >
typedef T value_type
 Type of values the UPtrList contains. More...
 
typedef Treference
 Type that can be used for storing into UPtrList::value_type objects. More...
 
typedef const Tconst_reference
 Type that can be used for storing into constant UPtrList::value_type. More...
 
- 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 Member Functions inherited from PtrList< joint >
void read (Istream &, const INew &inewt)
 Read from Istream using given Istream constructor class. 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

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 64 of file compositeJoint.H.

Constructor & Destructor Documentation

◆ composite() [1/2]

composite ( const PtrList< joint > &  joints)

Construct for given PtrList<joint>

Definition at line 61 of file compositeJoint.C.

Referenced by composite::clone().

Here is the caller graph for this function:

◆ composite() [2/2]

composite ( const rigidBodyModel model,
const dictionary dict 
)

Construct for given model from dictionary.

Definition at line 69 of file compositeJoint.C.

◆ ~composite()

~composite ( )
virtual

Destructor.

Definition at line 87 of file compositeJoint.C.

References composite::jcalc().

Here is the call graph for this function:

Member Function Documentation

◆ TypeName()

TypeName ( "composite"  )

Runtime type information.

◆ clone()

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

Clone this joint.

Implements joint.

Reimplemented in floating.

Definition at line 79 of file compositeJoint.C.

References composite::composite().

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 94 of file compositeJoint.C.

References UPtrList< T >::last().

Referenced by composite::~composite().

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

◆ write()

void write ( Ostream os) const
virtual

Write.

Reimplemented from joint.

Reimplemented in floating.

Definition at line 103 of file compositeJoint.C.

References joint::write(), and Foam::writeKeyword().

Here is the call graph for this function:

Friends And Related Function Documentation

◆ Foam::RBD::rigidBodyModel

friend class Foam::RBD::rigidBodyModel
friend

Allow the rigidBodyModel class to set the last joint state.

Definition at line 82 of file compositeJoint.H.


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