euler_shift_tensor2 Subroutine

public subroutine euler_shift_tensor2(a, euler, seq, world, forward, ashift)

Given two frames A and B such that the orientation of frame B with respect to frame A is given by three Euler angles, shifts second-order tensors from A to B or B to A.

Arguments

Type IntentOptional Attributes Name
real(kind=rp), intent(in), dimension(3,3) :: a

Second-order tensor.

real(kind=rp), intent(in), dimension(3) :: euler

Euler angles.

character(len=3), intent(in) :: seq

'XYZ'|'XZY' | 'YXZ' | 'YZX' | 'ZXY' | 'ZYX'. Euler angle sequence.

logical, intent(in) :: world

Whether the Euler angles are with respect to the world frame or not.

logical, intent(in) :: forward

If .true., shift from A to B. If .false., shift from B to A.

real(kind=rp), intent(out), dimension(3,3) :: ashift

Shifted second-order tensor.