Statistics
| Branch: | Revision:

adafruit_bno055 / utility @ fd9de024

Name Size
imumaths.h 881 Bytes
matrix.h 4.889 KB
quaternion.h 6.44 KB
vector.h 4.895 KB

Latest revisions

# Date Author Comment
fd9de024 2016-02-26 13:20 Gé Vissers

The cross product is only defined for 3D vectors. Instead of checking the size
at runtime, only provide an implementation for N==3. Trying to use the cross
function with other vector sizes will then result in a link error.

7ede6000 2016-02-25 16:04 Gé Vissers

Excessive parentheses only make the expressions hareder to read.

2dd31024 2016-02-25 15:45 Gé Vissers

Replace use of float by double.

All values in a quaternion are declared double, let's not lose precision on
platforms where double is larger than float.

2b07acc9 2016-02-25 15:42 Gé Vissers

Simplify a few more functions, and pass vector arguments by reference

88b09bb5 2016-02-25 15:20 Gé Vissers

Simplify constructors

0ecc7129 2016-02-25 15:09 Gé Vissers

Simplify several functions by replacing the body with one-line calls to the
constructor. Furthermore, pass Quaternion arguments by reference to avoid
excessive copying.

4a94251b 2016-02-25 14:52 Gé Vissers

Quaternion needs the definition of a matrix. Include it.

e8e79779 2016-02-25 14:04 Gé Vissers

Fix conversion of impure rotation matrices to quaternions

The test for the largest element in the matrix diagonal was reversed, which
resulted in taking the square root of a negative value for matrices with
determinant less than zero.

02609f56 2016-02-24 16:09 Gé Vissers

Store determinant as double when computing matrix inverse. Does not matter on Arduino, but might on other platforms.

ba125e3b 2016-02-24 15:20 Gé Vissers

The recursive definition of the determinant function, combined with the fact
that no specialized function for the base case N==1 is given, leads to
instantiation of this function for all 256 possible values of a uint8_t (even
though these are not used in practice). Fix this by providing an explicit...

View revisions

Also available in: Atom