euler_shift_tensor3 Subroutine

public subroutine euler_shift_tensor3(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 third-order tensors from A to B or B to A.

Arguments

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

Third-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,3) :: ashift

Shifted third-order tensor.