The following repository contains a modified version of Bolder Flight Systems' Eigen port for Arduino ARM and CMake build systems. The Eigen matrix math library can be found from their website. Here, several function and API descriptions can be found detailing use of the library.
Bolder Flight Systems' Eigen port has most features of the main Eigen library. However, one capability of the main Eigen library that was NOT ported by Bolder Flight Systems was nonlinear optimization algorithms such as the Levenberg-Marquardt algorithm and the Powell hybrid "dogleg" method, described in more detail here. This modified port incorporates the NonLinearOptimization module to allow the Levenberg-Marquardt algorithm to be performed on Arduino ARM and CMake build systems.
After downloading the modified Eigen port from the GitHub repository, move the 'Eigen-Port-main' folder from inside the downloaded zip folder into the Arduino libraries folder. Once installed, the user only needs the following include at the beginning of the firmware script.
#include "eigen.h"