summaryrefslogtreecommitdiffstats
path: root/include/mm/mmmatrix.hpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-10-10Update access model for operator|Nao Pross1-27/+93
The operator | can access the matrix either by directly changing the values (by reference, mm::mutate(M)) or by creating first a a copy of the matrix (mm::clone(M)). ToDo: The order of destruction of the mutate object is not yet well defined, and therefore it is not yet deterministic enough to work with expressions like (pseudocode) matrix m = a * b * (a | mm::alg::invert) because operator| (defaults to mutate), should not but could, change the value of a before the product a * b gets evaluated.
2019-10-05New matrix data model (breaks everything)Nao Pross1-529/+66
2019-07-10Implicit convertion to basic_vec to vec2 or vec3ancarola1-56/+142
2019-07-01Small correction on basic multiplicationancarola1-1/+3
2019-07-01The matrix library is compiling and all tested operations work fine.ancarola1-38/+73
Next goals: - Implement optimisations for multiplication in K-diagonal - Add adjoint operation for complex matrices - Determinant - Algorithms: Gauss Jordan
2019-06-30Optimized matrix sectionancarola1-454/+262
- Vector iterators: allow to iterate on rows, columns or diagonals - Transposition doesn't affect allocated space, O(1)
2019-06-29Finally compilesancarola1-132/+198
2019-06-28Small correction on interatorsancarola1-2/+2
2019-06-28Iterators compacting code improvements, still not compilesancarola1-274/+107
2019-06-28Optimising matrices access and operationsancarola1-9/+396
Creating the K-diagonal matrix
2019-02-22Undo directory structure changeNao Pross1-59/+0
2019-02-07Add initial implementation for mmmatrix and update to build.ninjaNao Pross1-0/+59