set_attitude Subroutine

private subroutine set_attitude(self, q)

Attitude relative to the parent frame, a quaternion [x, y, z, w] (normalized here; overridden by a followed trajectory).

Type Bound

ReferenceFrame

Arguments

Type IntentOptional Attributes Name
class(ReferenceFrame), intent(inout) :: self
real(kind=wp), intent(in) :: q(4)

attitude quaternion [x, y, z, w] (normalized here)


Calls

proc~~set_attitude~~CallsGraph proc~set_attitude ReferenceFrame%set_attitude proc~next_motion_stamp next_motion_stamp proc~set_attitude->proc~next_motion_stamp proc~quat_normalize quat_normalize proc~set_attitude->proc~quat_normalize

Called by

proc~~set_attitude~~CalledByGraph proc~set_attitude ReferenceFrame%set_attitude proc~make_cone_look_at PolyhedralCone%make_cone_look_at proc~make_cone_look_at->proc~set_attitude proc~place place proc~place->proc~set_attitude proc~shadow_late_update ShadowCones%shadow_late_update proc~shadow_late_update->proc~place

Source Code

    subroutine set_attitude(self, q)
        class(ReferenceFrame), intent(inout) :: self
        real(wp), intent(in) :: q(4)                        !! attitude quaternion [x, y, z, w] (normalized here)
        real(wp) :: qn(4)
        qn = quat_normalize(q)
        if (any(qn /= self%attitude_)) self%stamp_ = next_motion_stamp()
        self%attitude_ = qn
    end subroutine set_attitude