I have been working with 3D rotations for some time now, wth my preferred implementation being realised using unit quaternions - especially from a computational efficiency point of view by avoiding any trigonomtric operations (the target is typically a resource-constrained microcontroller, sometimes without an FPU).
I now have a problem where I need to operate only in 2D space, rotating by a single angle (or, more correctly, successive single rotations, and using the ersult to rotate vectors). Of course, I have the option of ordinary complex numbers, or a reduced quaternion set, keeping two of the complex terms at zero.
I'm guessing this isn't the first time someone has needed to tackle this problem. So my questions are:
- What would be the analog to unit quaternions in 2D space? Does it have a name, and does it have similar properies to unit quaternions in 3D space? Is this simply a a "reduced set" of unit quaternions being a complex number with the angle encoded as $z = \cos(\theta/2) + j \sin(\theta/2)$?
- What are the advantages and disadvantages - especially from a numerical error and computational efficincy point of view - of using this represenation vs a standard complex number represenation, i.e. $z = \cos(\theta) + j \sin(\theta)$?
- Or, am I better off with a different rotation represenation altogether, given the goals stated above?
Bonus question: I'm guessing this is part of a more general field of mathematics. What should I be looking at to find out more?