Defines data structures and algorithms for configuring, calculating, and time-integrating the rigid-body motion (translation and rotation) of objects in an ALE simulation. CPU-only module.
|
| subroutine, public | init_pivot_state (pivot, body_conf) |
| | Initialize pivot state.
|
| |
| subroutine, public | ab_integrate_point_pos (pos, vel_lag, current_vel, time, nadv) |
| | Advance a single point position (x,y,z) from the point's velocity using AB time-integration.
|
| |
| subroutine, public | advance_point_tracker (tracker, current_vel, time, nadv) |
| | Updates the point tracker's position and velocity history using AB time integration based on the current velocity.
|
| |
| subroutine, public | compute_body_kinematics_built_in (kinematics, body_conf, time) |
| | Compute built-in kinematics for a body. Uses inputs from JSON. CPU-only.
|
| |
| subroutine, public | update_pivot_location (pivot, pivot_loc, pivot_vel, time, nadv, body_conf) |
| | Updates pivot location.
|
| |
◆ ab_integrate_point_pos()
| subroutine, public ale_rigid_kinematics::ab_integrate_point_pos |
( |
real(kind=rp), dimension(3), intent(inout) |
pos, |
|
|
real(kind=rp), dimension(3, 3), intent(inout) |
vel_lag, |
|
|
real(kind=rp), dimension(3), intent(in) |
current_vel, |
|
|
type(time_state_t), intent(in) |
time, |
|
|
integer, intent(in) |
nadv |
|
) |
| |
◆ advance_point_tracker()
◆ compute_body_kinematics_built_in()
◆ init_pivot_state()
◆ update_pivot_location()
| subroutine, public ale_rigid_kinematics::update_pivot_location |
( |
type(pivot_state_t), intent(inout) |
pivot, |
|
|
real(kind=rp), dimension(3), intent(out) |
pivot_loc, |
|
|
real(kind=rp), dimension(3), intent(in) |
pivot_vel, |
|
|
type(time_state_t), intent(in) |
time, |
|
|
integer, intent(in) |
nadv, |
|
|
type(ale_body_t), intent(in) |
body_conf |
|
) |
| |