orientation != I at start.
Being more careful with when using directions relative to the absolute
axes or the direction of something relative to its initial direction.
Renaming p0, v0 to pInitial, vInitial to be clearer.
fixedOrientation constraint does not need a reference orientation, as
it is not to move at all, relative to any orientation, so the
Cartesian axes are fine.
initialOrientation.
Rename of IO to more understandable terms. Rename ref to initial
where correct - ref is to do with the object being in Q = I state,
inital is to do with where things are when the motion starts and
pointDisplacement and value are zero.
Adding initialOrientation so that non Q = I initial states are
correct.
restraints when there were none read. Was not a problem for
restraints, but constraints were stopping the code on a maxIteration
trap, as it defaults to zero.
Adding more constraint reporting.
Changed order of evaluation of while condition to make +iter first,
otherwise doesn't increment iter, reporting 0 iterations.
Adding report Switch to turn on reporting.
Renaming linearSphericalAngularSpring to sphericalAngularSpring and
getting a moment contribution from each axis. Can supply a reference
orientation.
Moving maximum iteration FatalErrorIn check after constraint while loop.
Adding currentOrientation function to give access to Q, but safely and
with a more descriptive name for the function.
Added force to fixedPoint constraint.
Moved application of rotation matrices to function.
Implemented predictedPosition function.
Added maximum iteration check and under-relaxation variable.
Applying restraints, which return the force and moment to be applied
to the attachment point.
Adding linearSpring with along axis damping.
Making access functions for the sixDoFRigidBodyMotion data private
where possible to prevent erroneous external use of body local data.
Fixing bug in unused updateForce(pointField...) function, torques were
not being correctly applied.
Adding gravity lookup to uncoupledSixDoFRigidBodyDisplacement BC to
allow it to be used in, for example, moveDynamicMesh (which would need
read gravity into the database).
restraints and constraints.
Moving sixDoFRigidBodyMotion back one directory.
Adding uncoupledSixDoFRigidBodyDisplacement to execute motion
specified by the six DoF motion state, but not applying surface
forces. Useful for pre-displacing a mesh.
Adding constrainedSixDoFRigidBodyDisplacement to temporarily perform
Vorticity's lander simulation. Will be removed when generalised
constraints are added.