84 const scalar t = state.
t(), deltaT = state.
deltaT();
86 if (t < vSmall || deltaT < vSmall)
91 const vector omega = omega_->value(t);
92 const vector omegaDot = (omega - omega_->value(t - deltaT))/deltaT;
93 const vector theta = omega_->integral(0, t);
94 const scalar magTheta =
mag(theta);
Abstract base-class for all rigid-body joints.
Run-time selectable general function of one variable.
tensor R() const
The rotation tensor corresponding the quaternion.
A list of keyword definitions, which are a keyword followed by any number of values (e...
spatialVector v
The constrained joint velocity.
spatialVector S1
The joint motion sub-space (1-DoF)
compactSpatialTensor S
The joint motion sub-space (3-DoF)
defineTypeNameAndDebug(composite, 0)
addToRunTimeSelectionTable(joint, composite, dictionary)
spatialVector c
The constrained joint acceleration correction.
Macros for easy insertion into run-time selection tables.
Holds the motion state of rigid-body model.
Joint state returned by jcalc.
scalar t() const
Return access to the time.
SpatialVector< scalar > spatialVector
SpatialVector of scalars.
Quaternion class used to perform rotations in 3D space.
Joint with a specified rotational speed.
virtual ~rotating()
Destructor.
scalar deltaT() const
Return access to the time-step.
rotating(const rigidBodyModel &model, const dictionary &dict)
Construct for given model from dictionary.
spatialTransform X
The joint transformation.
#define R(A, B, C, D, E, F, K, M)
virtual void jcalc(joint::XSvc &J, const rigidBodyModelState &state) const
Update the model state for this joint.
dimensioned< scalar > mag(const dimensioned< Type > &)
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Basic rigid-body model representing a system of rigid-bodies connected by 1-6 DoF joints...
virtual autoPtr< joint > clone() const
Clone this joint.