Prismatic joint for translation along the specified arbitrary axis. More...
#include <floatingJoint.H>


Public Member Functions | |
| TypeName ("floating") | |
| Runtime type information. | |
| floating () | |
| Construct. | |
| floating (const dictionary &dict) | |
| Construct for given model from dictionary. | |
| virtual autoPtr< joint > | clone () const |
| Clone this joint. | |
| virtual | ~floating ()=default |
| Destructor. | |
| virtual void | write (Ostream &) const |
| Write. | |
| Public Member Functions inherited from composite | |
| TypeName ("composite") | |
| Runtime type information. | |
| composite (const PtrList< joint > &joints) | |
| Construct for given PtrList<joint>. | |
| composite (const dictionary &dict) | |
| Construct for given model from dictionary. | |
| virtual | ~composite () |
| Destructor. | |
| virtual void | jcalc (joint::XSvc &J, const scalarField &q, const scalarField &qDot) const |
| Update the model state for this joint. | |
| Public Member Functions inherited from PtrList< joint > | |
| Foam::PtrList< joint > | clone (Args &&... args) const |
| constexpr | PtrList () noexcept |
| Default construct. | |
| ~PtrList () | |
| Destructor. Frees all pointers. | |
| const joint * | set (const label i) const |
| Return const pointer to element (can be nullptr), or nullptr for out-of-range access (ie, with bounds checking). | |
| void | clear () |
| Clear the PtrList. Delete allocated entries and set size to zero. | |
| void | free () |
| Free memory and nullify all entries. Does not change the list size. | |
| void | resize (const label newLen) |
| Adjust size of PtrList. | |
| void | resize_null (const label newLen) |
Set the addressed list to the given size, deleting all existing entries. Afterwards the list contains all nullptr entries. | |
| joint & | emplace_back (Args &&... args) |
| Construct and append an element to the end of the list, return reference to the new list element. | |
| void | push_back (joint *ptr) |
| Append an element to the end of the list. | |
| joint & | emplace_set (const label i, Args &&... args) |
| Construct and set a new element at given position, (discard old element at that location). | |
| joint & | emplace (const label i, Args &&... args) |
| Same as emplace_set(). | |
| joint & | try_emplace (const label i, Args &&... args) |
| Like emplace_set() but will not overwrite an occupied (non-null) location. | |
| autoPtr< joint > | release (const label i) |
| Release ownership of the pointer at the given position. | |
| void | transfer (PtrList< joint > &list) |
| Transfer into this list and annul the argument list. | |
| void | operator= (const UPtrList< joint > &list) |
| Copy assignment. | |
| void | setSize (const label n) |
| Same as resize(). | |
| void | append (autoPtr< joint > &ptr) |
| Move append an element to the end of the list. | |
| Public Member Functions inherited from UPtrList< joint > | |
| bool | empty () const noexcept |
| True if the list is empty (ie, size() is zero). | |
| label | size () const noexcept |
| The number of entries in the list. | |
| label | capacity () const noexcept |
| Size of the underlying storage. | |
| label | count_nonnull () const noexcept |
| The number of non-nullptr entries in the list. | |
| joint & | front () |
| Reference to the first element of the list. | |
| joint & | back () |
| Reference to the last element of the list. | |
| const joint * | test (const label i) const |
| Return const pointer to element (can be nullptr), or nullptr for out-of-range access (ie, with bounds checking). | |
| const joint * | get (const label i) const |
| Return const pointer to element (can be nullptr), or nullptr for out-of-range access (ie, with bounds checking). | |
| const joint * | set (const label i) const |
| Return const pointer to element (can be nullptr), or nullptr for out-of-range access (ie, with bounds checking). | |
| void | clear () |
| Set list size to zero. | |
| void | free () |
| Nullify all entries. Does not change the list size. | |
| void | resize (const label newLen) |
Change the size of the list. Any new entries are nullptr. | |
| void | resize_null (const label newLen) |
Set the list to the given size and set all entries to nullptr. | |
| label | squeezeNull () |
| Squeeze out nullptr entries in the list of pointers after which any null pointers will be at the end of the list. | |
| void | push_back (joint *ptr) |
| Append an element to the end of the list. | |
| void | swap (UPtrList< joint > &list) noexcept |
| Swap content. | |
| void | transfer (UPtrList< joint > &list) |
| Transfer contents into this list and annul the argument. | |
| void | reorder (const labelUList &oldToNew, const bool check=false) |
| Reorder elements. Reordering must be unique (ie, shuffle). | |
| void | sortOrder (const labelUList &order, const bool check=false) |
| Reorder elements according to new order mapping (newToOld). Reordering must be unique (ie, shuffle). | |
| void | checkNonNull () const |
| Check and raise FatalError if any nullptr exists in the list. | |
| const joint & | at (const label i) const |
| Return const reference to the element at given position. FatalError for bounds problem or nullptr. | |
| const joint & | operator[] (const label i) const |
| Return const reference to the element at given position. FatalError for bounds problem or nullptr. Same as at(). | |
| FOAM_DEPRECATED_FOR (2022-09, "get(), set() or test() methods") const joint *operator()(const label i) const | |
| Deprecated(2022-09) - same as get(). | |
| void | operator= (const UPtrList< joint > &list) |
| Copy assignment (shallow copies addresses). | |
| Ostream & | printAddresses (Ostream &os) const |
| Print pointer addresses to Ostream (debugging only). | |
| Ostream & | writeList (Ostream &os, const bool trimNull=false) const |
| Write UPtrList to Ostream, optionally ignoring null entries. | |
| joint ** | begin_ptr () noexcept |
| Iterator to begin of raw pointers traversal (use with caution). | |
| joint ** | end_ptr () noexcept |
| Iterator beyond end of raw pointers traversal (use with caution). | |
| iterator | begin () |
| Return iterator to begin traversal of non-nullptr entries. | |
| iterator | end () noexcept |
| Return iterator beyond end of UPtrList traversal. | |
| const_iterator | cbegin () const |
| Return const_iterator to begin traversal of non-nullptr entries. | |
| const_iterator | cend () const noexcept |
| Return const_iterator beyond end of UPtrList traversal. | |
| void | setSize (const label n) |
| Alias for resize(). | |
| joint & | first () |
| Reference to the first element of the list. | |
| joint & | last () |
| Return reference to the last element of the list. | |
| void | append (joint *ptr) |
| Append an element to the end of the list. | |
| label | count () const noexcept |
| The number of non-nullptr entries in the list. | |
| Public Member Functions inherited from joint | |
| TypeName ("joint") | |
| Runtime type information. | |
| declareRunTimeSelectionTable (autoPtr, joint, dictionary,(const dictionary &dict),(dict)) | |
| joint (const label nDoF) | |
| Construct joint setting the size of the motion sub-space. | |
| virtual | ~joint () |
| Destructor. | |
| label | nDoF () const |
| Return the number of degrees of freedom in this joint. | |
| virtual bool | unitQuaternion () const |
| Return true if this joint describes rotation using a quaternion. | |
| label | index () const |
| Return the index of this joint in the model. | |
| label | qIndex () const |
| Return start index for the state variables for this joint. | |
| const List< spatialVector > & | S () const |
| Return the joint motion sub-space. | |
| quaternion | unitQuaternion (const scalarField &q) const |
| Return the unit quaternion for this joint. | |
| void | unitQuaternion (const quaternion &quat, scalarField &q) const |
| Set the unit quaternion for this joint. | |
Additional Inherited Members | |
| Public Types inherited from UPtrList< joint > | |
| typedef joint | value_type |
| Type of values the list contains. | |
| typedef joint & | reference |
| A non-const reference to the value_type. | |
| typedef const joint & | const_reference |
| A const reference to the value_type. | |
| Static Public Member Functions inherited from joint | |
| static autoPtr< joint > | New (joint *jointPtr) |
| Simple selector to return an autoPtr<joint> of the given joint*. | |
| static autoPtr< joint > | New (const dictionary &dict) |
| Select from dictionary. | |
| Protected Member Functions inherited from PtrList< joint > | |
| void | readIstream (Istream &is, const INew &inew) |
| Read from Istream using Istream constructor class. | |
| Protected Member Functions inherited from UPtrList< joint > | |
| void | setAddressableSize (const label n) noexcept |
| Adjust addressable size. | |
| label | find_next (label pos) const |
| The next non-null entry after the specified position. | |
| UPtrList (Detail::PtrListDetail< joint > &&ptrs) noexcept | |
| Low-level move construct. | |
| Protected Attributes inherited from UPtrList< joint > | |
| Detail::PtrListDetail< joint > | ptrs_ |
| The list of pointers. | |
| Protected Attributes inherited from joint | |
| List< spatialVector > | S_ |
| Joint motion sub-space. | |
| label | index_ |
| Index of this joint in the rigidBodyModel. | |
| label | qIndex_ |
| Index of this joints data in the rigidBodyModel state. | |
Prismatic joint for translation along the specified arbitrary axis.
Reference:
Featherstone, R. (2008).
Rigid body dynamics algorithms.
Springer.
Chapter 4.
Definition at line 61 of file floatingJoint.H.
| floating | ( | ) |
Construct.
Definition at line 70 of file floatingJoint.C.
References composite::composite().
Referenced by clone(), and floating().


| floating | ( | const dictionary & | dict | ) |
Construct for given model from dictionary.
Definition at line 76 of file floatingJoint.C.
References dict, and floating().

|
virtualdefault |
Destructor.
| TypeName | ( | "floating" | ) |
Runtime type information.
References dict.
|
virtual |
Clone this joint.
Reimplemented from composite.
Definition at line 82 of file floatingJoint.C.
References floating().

|
virtual |
Write.
Reimplemented from composite.
Definition at line 90 of file floatingJoint.C.
References os(), and joint::write().
