Node RigidInertialMidpointNode#
Defined in mime.nodes.body._rigid_inertial.RigidInertialMidpointNode.
Algorithm MIME-NODE-112.
A rigid body with the gyroscopic term linearly implicit at the midpoint: Newton’s and Euler’s equations for its centre of mass, every delivered resistance integrated implicitly, the pose turned by the exponential of the new rate. Torque-free it keeps the kinetic energy and the magnitude of the angular momentum to second order in the step.
Governing equations#
Discretisation#
Linearly implicit midpoint (a Rosenbrock step with the exact Jacobian of the gyroscopic term), second order for the gyroscopic term alone: the resistance implicit, every other load at the start of the step; the position from the new velocity, the orientation turned by the exponential of the new angular velocity.
Assumptions#
A rigid body whose principal moments are about its body axes
The step’s matrix is not symmetric for unequal moments (MIME-ANO-129)
The rotation rate times the step is below about one half: past it the gyroscopic term is not resolved and nothing refuses the run (MIME-ANO-129)
Limitations#
none declared
Declared regimes (not evidenced here)#
none declared
References#
[@PeraireWidnall2009], [@Sola2017]
Symbols#
Symbol |
Kind |
Name |
Units |
Implemented by |
|---|---|---|---|---|
\(\mathbf{M}\) |
parameter |
|
kg (units declared, not checked) |
|
\(\mathbf{I}\) |
parameter |
|
kg m^2 (units declared, not checked) |
|
\(\mathbf{R}\) |
input |
|
N s/m; N s; N m s |
|
\(\mathbf{F}\) |
input |
|
N; N m |
|
\(\mathbf{V}\) |
state |
|
m/s; rad/s |
|
\(\boldsymbol{\omega}\) |
state |
|
m/s; rad/s |
|
\(\mathbf{K}\) |
parameter |
|
kg m^2 (units declared, not checked) |
|
A row marked units declared, not checked has the units its author wrote: the code declares none there, so the node walk cannot compare them with anything.
Built by#
rigid_inertial0.3.0