rigidBodySolver: Updated comments

This commit is contained in:
Henry Weller
2016-04-12 22:23:04 +01:00
parent a0170df6c1
commit b66675ed58

View File

@ -64,22 +64,22 @@ void Foam::RBD::rigidBodySolver::correctQuaternionJoints()
if (model_.joints()[i].unitQuaternion()) if (model_.joints()[i].unitQuaternion())
{ {
// Calculate the change in the normalized quaternion axis // Calculate the change in the unit quaternion
vector dv((q().block<vector>(qi) - q0().block<vector>(qi))); vector dv((q().block<vector>(qi) - q0().block<vector>(qi)));
scalar magDv = mag(dv); scalar magDv = mag(dv);
if (magDv > SMALL) if (magDv > SMALL)
{ {
// Calculate the quaternion corresponding to the change // Calculate the unit quaternion corresponding to the change
quaternion dQuat(dv/magDv, cos(magDv), true); quaternion dQuat(dv/magDv, cos(magDv), true);
// Transform the previous time quaternion // Transform the previous time unit quaternion
quaternion quat quaternion quat
( (
normalize(model_.joints()[i].unitQuaternion(q0())*dQuat) normalize(model_.joints()[i].unitQuaternion(q0())*dQuat)
); );
// Update the joint state // Update the joint unit quaternion
model_.joints()[i].unitQuaternion(quat, q()); model_.joints()[i].unitQuaternion(quat, q());
} }
} }