Skip to content

C library for fixed point matrix, quaternion and vector calculations

License

Notifications You must be signed in to change notification settings

sunsided/libfixmatrix

 
 

Repository files navigation

http://kapsi.fi/~jpa/stuff/pix/fixmatrixlogo.png

Fixed point matrix library

Libfixmatrix is a matrix computation library for microcontrollers. It is based on the libfixmath library, which uses 16.16 bit fixed point values. The main focus is processors without an FPU, such as ARM Cortex-M3. The compiled size of the library is less than 5 kB, depending on optimization settings and processor.

The library includes all basic matrix operations, such as multiplication, addition and transposition. Matrix equation solving (and matrix inversion) is implemented through QR decomposition. Also Cholesky decomposition is included. See function reference for details.

To avoid complexity and dynamic memory allocations, all matrices are allocated a buffer with constant size, specified with parameter FIXMATRIX_MAX_SIZE. This wastes some memory with matrices smaller than the maximum size, but allows more predictable memory usage.

Libfixmatrix is suited well for tasks involving small matrices (often less than 10x10): Kalman filters, transformation matrices and solving systems of linear equations.

About

C library for fixed point matrix, quaternion and vector calculations

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 100.0%