Line | |
---|
1 | function n = modsquared(q) |
---|
2 | % Modulus squared of a quaternion. |
---|
3 | |
---|
4 | % Copyright © 2005 Stephen J. Sangwine and Nicolas Le Bihan. |
---|
5 | % See the file : Copyright.m for further details. |
---|
6 | |
---|
7 | error(nargchk(1, 1, nargin)), error(nargoutchk(0, 1, nargout)) |
---|
8 | |
---|
9 | % Implementation note. We do not use q .* conj(q) because this would give |
---|
10 | % a quaternion result with a zero vector part. It is better not to compute |
---|
11 | % the vector part. |
---|
12 | |
---|
13 | if ispure(q) |
---|
14 | n = x(q).^2 + y(q).^2 + z(q).^2; |
---|
15 | else |
---|
16 | n = s(q).^ 2 + x(q).^2 + y(q).^2 + z(q).^2; |
---|
17 | end |
---|
Note: See
TracBrowser
for help on using the repository browser.