|
FhSim
3.1.0
Marine systems simulation
|
Inheritance diagram for rigidbody::CRigidCompositeBody:
Collaboration diagram for rigidbody::CRigidCompositeBody:Classes | |
| struct | rbody |
Public Member Functions | |
| void | AddComponent (CRigidBody *component, const vec6 &orientation) |
| mat6 | GetInertiaMatrix (const vec3 &r, double time, const double *states, environment::EnvironmentProvider *environment) |
| vec6 | GetInternalForces (const vec6 &dX, const vec3 &r, const quat &q, environment::EnvironmentProvider *environment, double time, const double *states) |
| mat64 | GetGravityForceDerivative (const quat &q) |
Public Member Functions inherited from rigidbody::CRigidBody | |
| vec13 | GetSecondDerivative (const vec3 &r, const quat &q, const vec3 &v, const vec3 w, const vec6 &externalForces, environment::EnvironmentProvider *environment, double time, const double *states) |
| mat13 | GetSecondDerivativeJacobian (const vec3 &r, const quat &q, const vec3 &v, const vec3 &w, const vec6 &externalForces, environment::EnvironmentProvider *environment, double time, const double *states) |
| void | WriteStateJacobian (const double *X, int positionIndex, int quaterIndex, int velocityIndex, int omegaIndex, const vec6 &externalForces, environment::EnvironmentProvider *environment, double time, double *J, int nStates) |
Static Protected Member Functions | |
| static quat | ComponentQuaternion (const vec3 &thetaC) |
The quaternion of a component's rotation vector thetaC. | |
Protected Attributes | |
| list< rbody, Eigen::aligned_allocator< rbody > > | clist |
| mat6 | m_inertia |
Additional Inherited Members | |
Static Public Member Functions inherited from rigidbody::CRigidBody | |
| static vec6 | GetCoriolisForce (const vec6 &dX, const mat6 &Inertia) |
| static mat6 | GetCoriolisForceDerivative (const vec6 &dX, const mat6 &Inertia) |
| d(GetCoriolisForce)/d(dX) at a fixed inertia matrix, bodylocal. | |
| static mat6 | ReorientInertiaTranslateRotate (const mat6 &Inertia, const vec6 &orientation) |
| static mat3 | MakeDyadic (const vec3 &vector) |
| static mat34 | RotationDerivative (const quat &q, const vec3 &x) |
| static mat34 | ConjugateRotationDerivative (const quat &q, const vec3 &x) |
| static mat3 | GetRotation (const vec3 &angle) |
| static mat6 | GetRotation6 (const vec3 &angle) |
|
virtual |
d(gravity part of GetInternalForces)/dq, over (q.w, q.x, q.y, q.z).
q: global; return: bodylocal. The other internal forces (drag, soil) have no derivative here.
Implements rigidbody::CRigidBody.
|
virtual |
Implements rigidbody::CRigidBody.
|
virtual |
Implements rigidbody::CRigidBody.