Commit Graph

88 Commits

Author SHA1 Message Date
YuhanLiin 1acd48f6f1 Address review comments 2022-03-09 21:04:43 -05:00
YuhanLiin 325618ba22 Fix SVD instability bug 2022-03-09 02:13:12 -05:00
Sébastien Crozet c0f8530d5e
Merge pull request #1055 from dimforge/fix-pow
Fix Matrix::pow and make it work with integer matrices
2021-12-31 09:57:56 +01:00
metric-space 498d7e3d4c Semi-unitary test checks for if rows or cols are orthonomal 2021-12-30 21:18:58 -05:00
metric-space ae6fda7dc7 Change svd to svd_unordered for the method output to be equal
Comment out unitary check for now
2021-12-30 21:12:37 -05:00
Sébastien Crozet fdaf8c0fbe Add tests for Matrix::pow 2021-12-30 23:03:22 +01:00
Sébastien Crozet 67a82c2c88 Test: minor style fix 2021-12-30 22:28:55 +01:00
Sébastien Crozet 8e0ca439c2 Use proptest for testing the polar decomposition 2021-12-30 22:15:22 +01:00
metric-space 43c1f8fb9d Increased strength of tests for polar decomposition 2021-12-27 02:12:54 -05:00
metric-space ac94fbe831 Add polar decomposition method to main matrix decomposition interface
Add one more test for decomposition of polar decomposition of rectangular matrix
2021-12-26 21:01:05 -05:00
metric-space 6ac6e7f75e First compiling commit for take-2 of polar-decomposition:
Code inspired by this thread: https://github.com/dimforge/nalgebra/pull/656
Main person behind this is LucasCampos
2021-12-22 00:12:27 -05:00
Sébastien Crozet 88dd5442f3 Add an utility function to check if a slice is sorted in descending order. 2021-12-09 13:32:30 +01:00
Sébastien Crozet 412104fa0a Add comment about the origin of the failing 3x3 SVD matrix 2021-12-09 13:31:39 +01:00
Sébastien Crozet e0a1b1bc34 Fix the special-case for 3x3 Real SVD 2021-12-09 11:52:37 +01:00
Sébastien Crozet 49e9ceea30 Add dedicated implementations of SVD for 2x2 and 3x3 real matrices. 2021-11-26 17:45:42 +01:00
Christopher Gundler 24d29c4de3 Allow sorting SVD according to singular values 2021-11-08 10:27:53 +01:00
Mateusz Kowalczyk d50af9dbfb
Add test for Cholesky::new_with_substitute 2021-09-13 09:08:37 +09:00
Sébastien Crozet 148b164aaa Fix tests 2021-08-04 17:56:57 +02:00
Violeta Hernández 281b140365
Fix most clippy warnings 2021-06-18 09:45:37 +02:00
Crozet Sébastien cc4427e52b Make matrix power work for non-owned matrices. 2021-04-11 14:07:06 +02:00
Crozet Sébastien 24d546d3b6 Rename generic parameter N -> T 2021-04-11 13:57:54 +02:00
Crozet Sébastien 23a7d7475b First compiling version after migrating the geometry module to const-generics. 2021-04-11 13:53:45 +02:00
Crozet Sébastien d17088398a Replace generic-array with a regular array based on min-const-generics. 2021-04-11 13:53:45 +02:00
Jim Turner cea3bdc8e5 Fix Cholesky::determinant for Complex elements
The previous implementation was correct only for real elements. The
Cholesky decomposition is `L L^H`, so the determinant is `det(L) *
det(L^H)`. Since `L` is a triangular matrix, `det(L)` is the product
of the diagonal elements of `L`. Since `L^H` is triangular and its
diagonal elements are the conjugates of the diagonal elements of `L`,
`det(L^H)` is the conjugate of `det(L)`. So, the overall determinant
is the product of the diagonal elements of `L` times its conjugate.
2021-04-09 14:28:16 -04:00
Jim Turner 50fed194f4 Add determinant method to Cholesky 2021-04-07 23:10:19 -04:00
Crozet Sébastien 2e16057e7b Fix some tests requiring a square matrix. 2021-03-01 10:02:45 +01:00
Crozet Sébastien 6cfd2bca14 Use proptest for all nalgebra tests. 2021-02-28 17:52:14 +01:00
Crozet Sébastien aeb9f7ea39 Add a matrix.udu() method to compute the UDU decomposition. 2021-02-25 15:49:24 +01:00
Crozet Sébastien ab0d335b61 Fix tests for the UDU decomposition. 2021-02-25 15:48:44 +01:00
Christopher Rabotin f6c1aeb07f UDU: add panic test for non symmetric matrix
Signed-off-by: Christopher Rabotin <christopher.rabotin@gmail.com>
2021-02-25 15:48:44 +01:00
Christopher Rabotin 7a49b9eeca UDU: d now stored in VectorN instead of MatrixN
Signed-off-by: Christopher Rabotin <christopher.rabotin@gmail.com>
2021-02-25 15:48:44 +01:00
Christopher Rabotin a8d40423ea Fixed UDU algorithm
Signed-off-by: Christopher Rabotin <christopher.rabotin@gmail.com>
2021-02-25 15:48:44 +01:00
Christopher Rabotin d534c3bf9d Trying to break the test to make sure it works
Signed-off-by: Christopher Rabotin <christopher.rabotin@gmail.com>
2021-02-25 15:48:44 +01:00
Christopher Rabotin 8dda6714b5 Untested UDU implementation
Pushing to trigger build

Signed-off-by: Christopher Rabotin <christopher.rabotin@gmail.com>
2021-02-25 15:48:44 +01:00
Crozet Sébastien 308d95386e Fix all tests and the ColPivQR::solve. 2021-02-25 12:06:04 +01:00
russellb23 63a34528e0 Added test for QR factorization and fixed unpack issue 2021-02-25 11:31:37 +01:00
Crozet Sébastien 57723ef8fb Run cargo fmt. 2020-11-20 17:52:32 +01:00
Crozet Sébastien e852df6124 Add sections for most Matrix methods. 2020-11-15 16:57:49 +01:00
Crozet Sébastien d7cb138e22 Fix warnings. 2020-10-25 16:03:07 +01:00
danielschlaugies f9f7169558
Add matrix exponential for complex matrices (#744)
Added matrix exponential for complex matrices.
2020-07-16 10:29:52 +02:00
sebcrozet 0be9a07f8b Use the #[rustfmt::skip] attribute instead of rustfmt_skip. 2020-06-07 09:30:21 +02:00
Fredrik Jansson e914afe2af Added support for dynamic matrices 2020-04-12 11:59:06 +02:00
Fredrik Jansson c7d9e415ce Converted tests to use relative_eq 2020-04-07 09:55:58 +02:00
Fredrik Jansson dbbf87a3dd Rebased against dev 2020-04-07 09:44:06 +02:00
Fredrik Jansson c0a6df55b1 Addition of matrix exponent for static size matrices. 2020-04-07 09:41:32 +02:00
sebcrozet bbb3be512e Run cargo fmt. 2020-04-05 18:49:48 +02:00
sebcrozet b1857e6a36 Fix compilation of tests. 2020-03-21 23:44:24 +01:00
sebcrozet b96159aab3 Fix Cholesky for no-std platforms. 2020-03-02 12:45:36 +01:00
Nestor Demeure 59c6a98615 finished cleaning 2020-03-02 12:45:36 +01:00
Nestor Demeure f54faedc32 tests pass, needs cleanup 2020-03-02 12:45:36 +01:00