38 Commits

Author SHA1 Message Date
kritz
4f3565da94 Add asserts (#115)
* Add asserts

* Type cast literals

* asserts for indexing vectors

* include assert

* Fix accessing elements outside of slice
2019-12-09 10:21:27 +01:00
kritz
2f6398168d Add several functions that are useful for coavriance matrices: (#114)
* uncorrelateCovariance
	* uncorrelateCovarianceSetVariance
	* makeBlockSymmetric
	* makeRowColSymmetric
	* isBlockSymmetric
	* isRowColSymmetric
2019-12-06 12:03:26 +01:00
kritz
5cbcf6035a Set Matrix's col amd row to single value (#113) 2019-12-05 18:16:14 +01:00
Daniel Agar
cd185c995b add braces around statements and cleanup formatting (#107) 2019-11-13 10:41:38 -08:00
Matthias Grob
740324cf1e Make all array constructors explicit (#99)
* Make all array constructors explicit

to avoid accidental implicit casts like e.g.
Vector3f v = 0;
assigning nullpointer content.
2019-10-03 13:38:51 +02:00
Matthias Grob
a374f37a54 Include helper_functions like all other library components 2019-09-18 09:59:50 +02:00
Julian Kent
82d565f4d9 Add support for Slice to Matrix, SquareMatrix, Vector 2019-09-16 16:11:08 +02:00
TSC21
ec436d5aee define FLT_EPSILON; be descriptive about upper_right_triangle() method 2019-02-24 17:14:05 +00:00
TSC21
7355a29a2a tests: use __FLT_EPSILON__ in comparisons 2019-02-24 17:14:05 +00:00
TSC21
96cb9ab146 add NaN value set for Matrix; add return of URT of a matrix 2019-02-24 17:14:05 +00:00
Daniel Agar
dc3af80977 constructors use array size rather than pointers 2018-08-31 08:11:02 +02:00
Daniel Agar
f1bee775a0 use default constructors and skip unnecessary initialization 2018-08-31 08:11:02 +02:00
Pavel Kirienko
9ebf5f89db Removed all use of C library from the matrix namespace 2017-03-17 12:18:39 -04:00
Daniel Agar
cfa68c2196 clang-tidy trivial cleanup 2017-02-24 20:47:41 -05:00
Lorenz Meier
2283e6946a Matrix inversion: Ensure that null check is done against the same type 2017-02-04 10:42:10 +01:00
James Goppert
843be9418b Rename isfinite to is_finite to avoid name conflicts. 2017-02-03 18:15:43 -05:00
James Goppert
63aea23f9e Add cholesky decomp, Closes #30, and dynamic print buf 2017-02-03 17:54:16 -05:00
James Goppert
a154e14439 Fix coverage for inverse. 2017-02-03 17:24:15 -05:00
James Goppert
db6dfeafbe Add helper_functions include for inverse and in general header 2017-02-03 16:56:33 -05:00
James Goppert
230e84702a Fix unit test, create matrix isfinite. 2017-02-03 16:25:55 -05:00
Siddharth Bharat Purohit
7e3eff7b2d remove unnecessary duplicate matrices from inverse 2017-02-03 16:12:17 -05:00
James Goppert
f3e478cbff Fix matrix inverse pivotting logic. 2016-11-22 10:04:45 -05:00
Matthias Grob
65679fbcbb Features and fixes
* added the trace function for a SquareMatrix

* added Vector3.hat() and it's counterpart Dcm.vee()
for skewsymskew symmetric matrix operations in relation to the cross product
see https://en.wikipedia.org/wiki/Hat_operator

* Matrix::write_string produced runtime errors when I used it in PX4 posix simulation, i simplified it

* a Matrix3f is a SquareMatrix

* added tests for SquareMatrix.trace, Vector3.hat and Dcm.vee

* added a test for quaternion initialisation from array

* preventing buffer overflows in Matrix.write_string method
2016-04-28 15:16:36 -04:00
Thomas Gubler
99ac532746 remove unnecessary ; 2015-12-26 12:07:12 +01:00
jgoppert
222a97e73f Merge ../Firmware/src/lib/matrix 2015-11-08 12:08:52 -05:00
jgoppert
5c573b075f Fixes for nuttx. 2015-11-08 12:08:19 -05:00
jgoppert
9b995e19f3 Added vector2. 2015-11-07 14:27:12 -05:00
jgoppert
1fb0f33eb4 Removed old references to matrix.hpp. 2015-11-07 11:08:17 -05:00
jgoppert
cefe7b3e80 Cleaned up header includes. 2015-11-05 19:25:44 -05:00
jgoppert
00a0b36836 Moved inverse outside of matrix definition. 2015-11-05 15:43:36 -05:00
jgoppert
5566b3dc77 expm testing and fixes. 2015-11-05 15:39:41 -05:00
jgoppert
9d88b0d573 Fix for gcc 4.6 2015-11-05 11:29:18 -05:00
jgoppert
bb6b375390 Travis fix. 2015-11-05 11:25:47 -05:00
jgoppert
5b0ea675c3 Fixed float in square matrix. 2015-11-05 11:23:54 -05:00
jgoppert
0062cbcbe2 Added more warnings, and fixed issues. 2015-11-05 11:17:54 -05:00
jgoppert
52956e360a Added filtering test. 2015-11-04 20:43:22 -05:00
jgoppert
b2e9e1e3c7 Added kalman filter. 2015-11-04 18:58:29 -05:00
jgoppert
18f80462b7 Got coverage working for templates. 2015-11-04 12:11:32 -05:00