quat_rot Function

public pure function quat_rot(v, theta, axis, origin) result(v_rot)

Rotate point v by theta [rad] about axis through origin (right-hand rule). Equivalent to Incompact3d's quaternion QuatRot, written in Rodrigues' form; axis need not be normalised.

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: v(3)
real(kind=dp), intent(in) :: theta
real(kind=dp), intent(in) :: axis(3)
real(kind=dp), intent(in) :: origin(3)

Return Value real(kind=dp), (3)


Calls

proc~~quat_rot~~CallsGraph proc~quat_rot m_alm_element::quat_rot proc~cross m_alm_element::cross proc~quat_rot->proc~cross

Called by

proc~~quat_rot~~CalledByGraph proc~quat_rot m_alm_element::quat_rot proc~pitch_line m_alm_element::pitch_line proc~pitch_line->proc~quat_rot proc~rotate_line m_alm_element::rotate_line proc~rotate_line->proc~quat_rot proc~set_turbine_geometry m_alm_turbine::set_turbine_geometry proc~set_turbine_geometry->proc~quat_rot proc~set_turbine_geometry->proc~pitch_line proc~set_turbine_geometry->proc~rotate_line proc~advance_turbine m_alm_turbine::advance_turbine proc~advance_turbine->proc~pitch_line proc~advance_turbine->proc~rotate_line