The inverse of a rigid transform (rotation and translation): [R' -R't].
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(in) | :: | m(4,4) |
rigid transform (rotation and translation) |
pure function rigid_inverse(m) result(inv) real(wp), intent(in) :: m(4,4) !! rigid transform (rotation and translation) real(wp) :: inv(4,4) inv = 0.0_wp inv(1:3, 1:3) = transpose(m(1:3, 1:3)) inv(1:3, 4) = -matmul(inv(1:3, 1:3), m(1:3, 4)) inv(4, 4) = 1.0_wp end function rigid_inverse