91 J.
X =
Xr(S_[0].w(), q[qIndex_]);
93 J.
v = S_[0]*qDot[qIndex_];
Abstract base-class for all rigid-body joints.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
Revolute joint for rotation about the specified arbitrary axis.
A list of keyword definitions, which are a keyword followed by a number of values (eg...
spatialVector v
The constrained joint velocity.
spatialVector S1
The joint motion sub-space (1-DoF)
defineTypeNameAndDebug(composite, 0)
addToRunTimeSelectionTable(joint, composite, dictionary)
Ostream & writeEntry(const keyType &key, const T &value)
Write a keyword/value entry.
spatialVector c
The constrained joint acceleration correction.
virtual void jcalc(joint::XSvc &J, const scalarField &q, const scalarField &qDot) const
Update the model state for this joint.
Macros for easy insertion into run-time selection tables.
Joint state returned by jcalc.
virtual void write(Ostream &) const
Write.
constexpr T & get(FixedList< T, N > &list) noexcept
SpatialVector< scalar > spatialVector
SpatialVector of scalars.
Ra(const vector &axis)
Construct for given model and axis.
spatialTransform Xr(const vector &a, const scalar omega)
Rotational spatial transformation tensor about axis a by omega radians.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
virtual autoPtr< joint > clone() const
Clone this joint.
A Vector of values with scalar precision, where scalar is float/double depending on the compilation f...
spatialTransform X
The joint transformation.
virtual void write(Ostream &) const
Write.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
tensor Ra(const vector &a, const scalar omega)
Rotational transformation tensor about axis a by omega radians.
static constexpr const zero Zero
Global zero (0)