Syntax
[~, R] = sw_rot(rotAxis,rotAngle)
[VR, R] = sw_rot(rotAxis,rotAngle,V)
Description
[~, R] = sw_rot(rotAxis,rotAngle)
produces the R
rotation matrix that
rotates any vector around the given rotAxis
rotation axis by rotAngle
angle in radian. Positive rotation is the right-hand direction around the
rotation axis and using the following rotation formula:
VR = R*V
To rotate tensors (\(3\times 3\) matrices) use the following formula:
Mp = R * M * R';
[VR, R] = sw_rot(rotAxis,rotAngle,V)
also rotates the given V
vectors where VR
are the transformed vectors.
Input Arguments
rotAxis
- Axis of rotation, stored in a row vector with 3 elements.
rotAngle
- Angle of rotation in radian, can be also a row vector with \(n_{ang}\) number of elements.
V
- Matrix with 3 rows, where each column is a vector in 3D space.
Output Arguments
VR
- Rotated vectors, stored in a matrix with dimensions of \([3\times N n_{ang}]\).
R
- Rotation matrix with dimensions of \([3\times 3]\) if a single rotation
angle is given. If
rotAngle
is a vector,R
will contain a rotation matrix for each angle, it’s dimensions are \([3\times 3\times n_{ang}]\).