normalize

Quaternion normalization

Description

example

quatNormalized = normalize(quat) normalizes the quaternion.

Given a quaternion of the form $Q=a+b\text{i}+c\text{j}+d\text{k}$, the normalized quaternion is defined as $Q/\sqrt{{a}^{2}+{b}^{2}+{c}^{2}+{d}^{2}}$.

Examples

collapse all

Quaternions can represent rotations when normalized. You can use normalize to normalize a scalar, elements of a matrix, or elements of a multi-dimensional array of quaternions. Create a column vector of quaternions, then normalize them.

quatArray = quaternion([1,2,3,4; ...
2,3,4,1; ...
3,4,1,2]);
quatArrayNormalized = normalize(quatArray)
quatArrayNormalized=3×1 quaternion array
0.18257 + 0.36515i + 0.54772j +  0.7303k
0.36515 + 0.54772i +  0.7303j + 0.18257k
0.54772 +  0.7303i + 0.18257j + 0.36515k

Input Arguments

collapse all

Quaternion to normalize, specified as a scalar, vector, matrix, or multidimensional array of quaternions.

Data Types: quaternion

Output Arguments

collapse all

Normalized quaternion, returned as a quaternion or array of quaternions the same size as quat.

Data Types: quaternion