This is an implementation of quaternions based upon the Cayley-Dickson construction. It make use of recursion and inheritance of data classes. A base type called 'komplex' is defined that acts like MatLab's complex type but is inheritable. It is used to define the other data types recursively. The three normed division algebras, 'komplex', 'quaternion', and 'octonion', are supported in this way. I tossed in the sedenions, too, but of course they are not nicely-normed. The package includes the standard trig functions, log, exp, rotations, and handles symbolic expressions. If you install the package in your 'my_classes' subdirectory and use the pathtool to point to it, the package will be available to you if you get a hankering to perform any quaternion or octonion arithmetic. Also included is a test directory with a script called 'test_driver2' which tests the whole package and spews lots of examples of how to use the functions.
Cite As
Bill Davidson (2024). Quaternion data class (https://www.mathworks.com/matlabcentral/fileexchange/9811-quaternion-data-class), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- MATLAB > Language Fundamentals > Data Types >
- Mathematics and Optimization > Symbolic Math Toolbox > Mathematics > Linear Algebra >
- Aerospace > Aerospace Toolbox > Standard Workflow Procedures > Coordinate Systems > Quaternion Math >
Tags
Acknowledgements
Inspired: Eular angles GUI
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
@komplex/
@komplex/private/
@octonion/
@octonion/private/
@quaternion/
@quaternion/private/
@sedenion/
@sedenion/private/
test_driver/
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 |