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
Sébastien Crozet
fa2e025a1e
Merge pull request #824 from tpdickso/dual_quaternion
...
Implement additional `DualQuaternion` ops and `UnitDualQuaternion`
2021-02-25 15:46:34 +01:00
Sébastien Crozet
bc6faa22f3
Merge pull request #797 from Recmo/remco/feat/double-ended-iter
...
impl DoubleEndedIterator for {MatrixIter, MatrixIterMut}
2021-02-25 15:46:11 +01:00
Sébastien Crozet
06f92ad1e3
Merge pull request #613 from russellb23/dev
...
QR factorizatio nwith column pivoting
2021-02-25 15:45:58 +01:00
Remco Bloemen
59f4e8a7d4
Remove dbg statement
2021-02-25 13:31:16 +01:00
Remco Bloemen
dd31f09105
Test reverse
2021-02-25 13:31:16 +01:00
Remco Bloemen
dcd87287bf
Add DoubleEndedIterator test
2021-02-25 13:31:16 +01:00
Sébastien Crozet
adc82845d1
Merge pull request #823 from Andlon/sparse-rework
...
Sparse rework: nalgebra-sparse
2021-02-25 12:58:28 +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
7d5cc4912d
Update cargo badge and categories.
2021-01-29 13:33:37 +01:00
Terence
8c52e4dfdc
rustfmt
2021-01-28 19:29:12 -05:00
Terence
ac92e68486
add new operators
2021-01-28 19:27:40 -05:00
Terence
ecda74f6b2
clippify
2021-01-28 18:50:34 -05:00
Terence
388b77108e
rustfmt
2021-01-28 18:46:14 -05:00
Terence
6be0365203
add integration test
2021-01-28 18:45:34 -05:00
Andreas Longva
5dfe06897f
Rename nalgebra/proptest to /proptest-support
...
This gives us some freedom in the future, in case we need
additional dependencies for the proptest integration.
2021-01-26 09:49:01 +01:00
Andreas Longva
402de4d045
Move nalgebra proptest slow tests into `slow` submodule
...
This way it's easier to keep track of what imports are only
necessary for the slow tests.
2021-01-26 08:57:47 +01:00
Andreas Longva
f909638bf4
Designate exhaustive matrix proptest as slow-tests
...
The slow-tests feature flag is intended to be used for tests
that take substantially more time to run than other unit tests.
2021-01-26 08:57:47 +01:00
Andreas Longva
cbef37ed9c
Fix proptest functionality test
...
The previous test claimed to verify that all possible outputs
are sampled, but it didn't. This commits fixes this issue
by actually computing all possible combinations.
However, to accomplish this we needed to add itertools as a test
dependency. Otherwise we'd have to implement our own way of
generating the Cartesian product of an arbitrary number
of sets.
2021-01-26 08:57:47 +01:00
Andreas Longva
f9ea2b4471
Initial proptest implementation for nalgebra
...
This introduces functionality for creating strategies for matrices and
vectors, as well as an implementation of Arbitrary.
Strategies for the geometric types (Point3, Quaternion etc.) are not
currently part of this contribution.
The current strategy implementation for matrices has some limitations
that lead to suboptimal shrinking behavior. This is documented in the
module-level docs, with some additional comments in the code.
2021-01-26 08:57:47 +01:00
Chinedu Francis Nwafili
b9513257b8
Serialize DQ to [N;8]
...
Closes #816
2020-12-18 12:19:38 -05:00
Sébastien Crozet
88145b7f8c
Merge pull request #814 from dimforge/quaternion_partial_eq_fix
...
Fix the PartialEq impl for quaternions.
2020-12-18 12:29:38 +01:00
Crozet Sébastien
b15a274a14
Add workaround for the deserialization of a matrix containing an enum.
2020-12-18 11:54:56 +01:00
Crozet Sébastien
67603be6ed
Fix the PartialEq impl for quaternions.
...
The double-covering property should only be taken into account for `UnitQuaternion` instead of `Quaternion` itself.
2020-12-18 11:38:33 +01:00
Crozet Sébastien
57723ef8fb
Run cargo fmt.
2020-11-20 17:52:32 +01:00
Andreas Longva
93eddc2120
Add example to compile_error message
2020-11-16 14:13:17 +01:00
Andreas Longva
a4fa3f9c1b
Fail test compilation if mandatory features are missing
2020-11-16 11:36:54 +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
Sébastien Crozet
2ab82befe4
Merge pull request #631 from Andlon/matrixcompare
...
Basic matrixcompare functionality
2020-07-17 01:10:04 -07:00
danielschlaugies
f9f7169558
Add matrix exponential for complex matrices ( #744 )
...
Added matrix exponential for complex matrices.
2020-07-16 10:29:52 +02:00
Adam Nemecek
1cf7d12695
unrolled new_nonuniform_scaling_wrt_point
2020-07-05 13:29:08 -07:00
Adam Nemecek
6a1c4f84af
cargo fmt
2020-07-02 10:31:30 -07:00
Adam Nemecek
4653f772bd
added new_nonuniform_scaling_wrt_point to Matrix3 & Matrix4
2020-07-02 10:16:18 -07:00
Andreas Longva
9196759bc2
Improve matrixcompare example
2020-06-29 19:03:20 +02:00
Andreas Longva
f6730dac1f
Basic matrixcompare functionality
2020-06-29 18:50:19 +02:00
sebcrozet
0be9a07f8b
Use the #[rustfmt::skip] attribute instead of rustfmt_skip.
2020-06-07 09:30:21 +02:00
Max Orok
a50e567fcd
Fix alga cfg gate for some quickcheck tests.
2020-04-20 10:06:38 -04: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
f782060e99
Fix trailing commas in tests.
2020-04-05 20:36:26 +02:00
sebcrozet
bbb3be512e
Run cargo fmt.
2020-04-05 18:49:48 +02:00
sebcrozet
691f58b622
Fix compilation of tests.
2020-04-05 18:33:03 +02:00
sebcrozet
b1857e6a36
Fix compilation of tests.
2020-03-21 23:44:24 +01:00
sebcrozet
f8cd26cfa9
Replace alga by simba.
2020-03-21 12:16:46 +01:00
S.Brandeis
4d97447cbd
Add type annotations in serde tests
2020-03-02 12:45:38 +01:00
S.Brandeis
703ba3e716
Refactor var names and add symmetric assert_eq!()s in test; add TODO
2020-03-02 12:45:38 +01:00
S.Brandeis
12c2efdb66
Separate test for shape mismatch and for PartialEq on different types
2020-03-02 12:45:38 +01:00
S.Brandeis
215df7948e
Modify PartialEq test to take into account typenum UInt dimensions
2020-03-02 12:45:38 +01:00
S.Brandeis
35eafa0337
Add unit test for more general PartialEq trait impl. for Matrix type
2020-03-02 12:45:38 +01:00
Sébastien Crozet
5a0ee23e3b
Fix Vector::axpy for noncommutative cases ( #648 )
...
Fix Vector::axpy for noncommutative cases
2020-03-02 12:45:37 +01:00
Sébastien Crozet
ef3406cc8f
Cholupdate ( #673 )
...
Cholupdate
2020-03-02 12:45:37 +01:00
Jakub Konka
e1c8e1bccf
Fix Vector::axpy for noncommutative cases
...
One example would be performing simple matrix multiplication
over a division algebra such as quaternions.
2020-03-02 12:45:37 +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
Nestor Demeure
b29231cf7b
found uneeded storagemut
2020-03-02 12:45:36 +01:00
Nestor Demeure
cfa7bbdc7c
remove column is now working
2020-03-02 12:45:36 +01:00
Nestor Demeure
516155025a
code cleaned
2020-03-02 12:45:36 +01:00
Nestor Demeure
7347d467ae
rank update passed tests
2020-03-02 12:45:36 +01:00
Nestor Demeure
16154f163a
added real constraint on sigma
2020-03-02 12:45:36 +01:00
Nestor Demeure
45e6ac7c2a
test is now correct
2020-03-02 12:45:36 +01:00
Nestor Demeure
5942a2a125
got test to compile
2020-03-02 12:45:36 +01:00
Nestor Demeure
cc478c6c6d
added test for update
2020-03-02 12:45:36 +01:00
Andreas Longva
2f77d73226
Generalize From<_> for MatrixSlice(Mut) to allow different strides
2020-03-02 12:45:35 +01:00
Andreas Longva
a05aa313da
Implement From<&Matrix> for MatrixSlice
2020-03-02 12:45:35 +01:00
sebcrozet
be41cb96e8
GEMM on empty matrices: properly take the beta parameter into account.
2019-10-28 14:15:03 +01:00
sebcrozet
f9f7ddd08f
Add test for empty matrix tr_mul.
2019-10-28 14:15:03 +01:00
sebcrozet
e30db9e8b1
Add test for empty matrix multiplication.
2019-10-28 14:15:03 +01:00
sebcrozet
cfb654240c
Matrix::transform_point: correctly take the normalization term into account.
...
Fix #640
2019-08-27 22:05:28 +02:00
Stefan Mesken
3baefb1319
Allow the removal of multiple rows/columns given an array of indices. #530
2019-08-27 22:05:28 +02:00
sebcrozet
dda41c1508
Add tests for serialization of 2D transformations.
...
Fix #320 .
2019-08-27 22:05:28 +02:00
sebcrozet
bb06701eff
Fix the return type of `convolve_same` to match the documentation.
2019-03-31 17:04:20 +02:00
sebcrozet
18b9f82042
Fix warnings.
2019-03-31 13:32:26 +02:00
sebcrozet
38ef0cbf7b
Merge branch 'dev' into complex
...
# Conflicts:
# src/base/ops.rs
# src/geometry/isometry.rs
# src/geometry/quaternion.rs
# src/geometry/quaternion_construction.rs
# src/geometry/rotation.rs
# src/geometry/similarity.rs
# src/geometry/transform.rs
# src/geometry/translation.rs
# src/geometry/unit_complex.rs
2019-03-31 10:48:59 +02:00
sebcrozet
f9995f1fcc
Fix tests.
2019-03-31 09:12:54 +02:00
sebcrozet
4ef4001836
Rename Real to RealField.
2019-03-25 11:21:41 +01:00
sebcrozet
5b28c39fa7
Rename Complex to ComplexField.
2019-03-25 11:19:36 +01:00
sebcrozet
3cbe60523a
2018 edition.
2019-03-23 14:33:47 +01:00
sebcrozet
921a05d523
Implement some BLAS opertaions involving adjoint.
2019-03-23 11:48:12 +01:00
sebcrozet
1001e8ee0f
Cleanup warnings and rename Schur -> RealSchur
2019-03-23 11:46:56 +01:00
sebcrozet
cb367a645d
Fix mint tests.
2019-03-19 22:53:21 +01:00
sebcrozet
3edef2f006
Decomposition results: return a real vector whenever applicable.
...
This includes singular values, eigenvalues of hermitian matrices, tridiagonalization and bidiagonalization diagonal and off-diagonal elements.
2019-03-19 14:22:59 +01:00
sebcrozet
2f0d95bdbb
Fix most tests.
2019-03-19 12:00:10 +01:00
sebcrozet
e4748c69ce
Start fixing SVD.
2019-03-18 11:23:19 +01:00
sebcrozet
010c009cff
Fix Schur decomposition.
2019-03-12 13:15:02 +01:00
Nathan
36feddb8c2
Moving functions into impl for Vector<N,D,S>
2019-03-02 15:00:40 -06:00
sebcrozet
77f048b6b9
WIP use Complex instead of Real whenever possible on the linalg module.
2019-03-02 19:33:49 +01:00
Nathan
28525bfc20
Restructured usage of convolves, added unit testing.
2019-02-24 19:53:09 -06:00
Nathan
a3d571ea6b
Merge remote-tracking branch 'upstream/master' into Implement_convolution_#520
2019-02-23 08:29:41 -06:00
Nathan
9f52019385
Fixing type traits based on feedback, `convolve_full` still broken
2019-02-18 19:01:18 -06:00
Nathan
b3c6492530
Moved test file to lingal folder, wrote tests based on github ticket request (scipy reference)
2019-02-10 13:40:32 -06:00
sebcrozet
fc24db8ff3
Merge branch 'master-public' into sparse
...
# Conflicts:
# Cargo.toml
# examples/matrix_construction.rs
# nalgebra-glm/src/constructors.rs
# nalgebra-glm/src/ext/matrix_clip_space.rs
# nalgebra-glm/src/ext/matrix_transform.rs
# nalgebra-glm/src/ext/mod.rs
# nalgebra-glm/src/ext/quaternion_common.rs
# nalgebra-glm/src/gtx/quaternion.rs
# nalgebra-glm/src/gtx/rotate_vector.rs
# nalgebra-glm/src/lib.rs
# nalgebra-glm/src/traits.rs
# nalgebra-lapack/src/cholesky.rs
# nalgebra-lapack/src/eigen.rs
# nalgebra-lapack/src/hessenberg.rs
# nalgebra-lapack/src/lu.rs
# nalgebra-lapack/src/qr.rs
# nalgebra-lapack/src/schur.rs
# nalgebra-lapack/src/svd.rs
# nalgebra-lapack/src/symmetric_eigen.rs
# rustfmt.toml
# src/base/array_storage.rs
# src/base/blas.rs
# src/base/cg.rs
# src/base/default_allocator.rs
# src/base/edition.rs
# src/base/iter.rs
# src/base/matrix.rs
# src/base/swizzle.rs
# src/base/vec_storage.rs
# src/geometry/mod.rs
# src/geometry/point_construction.rs
# src/geometry/quaternion.rs
# src/geometry/similarity.rs
# src/geometry/translation.rs
# src/geometry/unit_complex_construction.rs
# src/linalg/bidiagonal.rs
# src/linalg/cholesky.rs
# src/linalg/full_piv_lu.rs
# src/linalg/hessenberg.rs
# src/linalg/lu.rs
# src/linalg/permutation_sequence.rs
# src/linalg/qr.rs
# src/linalg/schur.rs
# src/linalg/svd.rs
# src/linalg/symmetric_eigen.rs
# src/linalg/symmetric_tridiagonal.rs
# tests/geometry/point.rs
# tests/geometry/quaternion.rs
# tests/lib.rs
# tests/linalg/eigen.rs
# tests/linalg/svd.rs
2019-02-03 12:53:41 +01:00
sebcrozet
381fdb642c
Remove useless extern crate in doc-tests.
2019-02-03 11:01:11 +01:00
sebcrozet
dcae274d2e
Fix rebase fallback + add missing docs.
2019-02-03 08:33:07 +01:00
sebcrozet
01d1f9d24b
Simplify the construction of DVector.
...
Fix #377 .
2019-02-03 08:06:24 +01:00
Sébastien Crozet
570611a59b
Merge pull request #524 from shivshank/master
...
Add `push` method to Vector
2019-02-03 07:52:03 +01:00
Gedl
3fdcf5329d
Rename ::new_observer_frame to ::face_towards
2019-01-16 22:41:25 +01:00
shivshank
3055c289c0
Add `push` method to Vector
2019-01-09 21:38:58 -05:00
sebcrozet
82106caa9e
Merge branch 'dev' into master-public
...
# Conflicts:
# src/linalg/svd.rs
2018-12-29 14:39:32 +01:00
sebcrozet
f36ff97d6a
Fix deprecation warnings.
2018-12-29 13:19:09 +01:00
Jack Wrenn
0d47a8e16b
Rename `Perspective3::unwrap` to `Perspective3::into_inner` and deprecate `Perspective3::unwrap`
...
See #460
2018-12-16 12:58:20 +01:00
Jack Wrenn
9600c45dd4
Rename `Orthographic3::unwrap` to `Orthographic3::into_inner` and deprecate `Orthographic3::unwrap`
...
See #460
2018-12-16 12:58:20 +01:00
sebcrozet
c69ab193be
Fix cornercase for Rotation3 conversion to euler angles.
...
Fix #494
2018-12-04 22:04:07 +01:00
Jochen Görtler
72f61918f4
RFC: Fix type annotations
2018-11-20 17:47:29 +01:00
Jochen Görtler
3ac5efeac1
WIP: to_homogeneous for MatrixN
2018-11-20 17:47:29 +01:00
sebcrozet
8341ec2f10
Run rustfmt.
2018-11-06 18:32:20 +01:00
sebcrozet
ed07b78b97
Add matrixmarket parser.
2018-11-06 18:31:04 +01:00
sebcrozet
538e18b3e9
Ensure the output of addition is sorted.
2018-11-05 16:44:59 +01:00
sebcrozet
748cfeea66
Ensure the output of multiplication and triangular solve are sorted.
2018-11-05 16:38:43 +01:00
sebcrozet
c3e8112d5e
Add implementation of the left-looking cholesky decomposition.
2018-11-04 07:10:43 +01:00
sebcrozet
98b0b842e9
Remove the inherent clone method from points.
...
Fix #458 .
2018-11-01 10:22:10 +01:00
sebcrozet
9bf1d0280d
Fix cholesky computation.
2018-10-30 17:29:32 +01:00
sebcrozet
92d9f82caf
Fix syntax error.
2018-10-27 15:00:18 +02:00
sebcrozet
14ad10a7e0
Add rustfmt.toml and run it.
2018-10-27 15:00:18 +02:00
sebcrozet
34b20dc291
Add lower triangular solve with sparse right-hand-side.
2018-10-23 18:18:05 +02:00
sebcrozet
9fa3e7a769
Implement CsMatrix: axpy_cs, transpose, Add and Mul.
2018-10-20 22:42:16 +02:00
sebcrozet
0d24cf4dc0
Run rustmt.
2018-10-20 22:26:44 +02:00
sebcrozet
54747817b2
Remove node on test.
2018-10-13 12:59:36 +02:00
sebcrozet
a390732b97
Fix partial_cmp
2018-10-13 12:59:36 +02:00
sebcrozet
18e9b8998d
Add impls of From/Into to convert any transformation types to a matrix.
2018-10-13 11:25:19 +02:00
João Costa
8b1aa2078c
Change the SVD methods to return a Result instead of panicking
2018-10-13 10:55:37 +02:00
mborst
12962c3c13
Implement map_with_location.
2018-09-28 05:22:32 +02:00
sebcrozet
51a4e73386
Use typenum type-level integer for swizzle dimension comparison.
...
Fix #408 .
2018-09-24 22:04:05 +02:00
sebcrozet
c6bc62c95f
For matrices, return the actual result of partial_clamp instead of None.
...
Fix #401
2018-09-24 20:58:09 +02:00
sebcrozet
f6cbc82152
Add tests attempting to copy from a slice that is too small or too large.
2018-09-13 08:37:20 +02:00
sebcrozet
99b54465c7
Add a copy_from_slice method.
...
Fix #381 .
2018-09-13 08:37:20 +02:00
sebcrozet
1706f9c15f
Fix compilation of test when arbitrary is enabled but not `debug`.
2018-09-13 08:36:37 +02:00
sebcrozet
a5ae1052e6
Fix tests with the 'mint' feature.
2018-05-26 22:07:57 +02:00
sebcrozet
05e053a310
Fix tests.
2018-05-26 22:07:57 +02:00
sebcrozet
d89e3dbac6
Rename the matrix slice constructors from `::new_*` to `_from_slice_*`.
2018-05-06 23:44:57 +02:00
Sébastien Crozet
7004610106
Adapt the debug_output_corresponds_to_data_container test to work on both stable and nightly.
...
For some reasons the formating of floats seem to have changed.
2018-02-03 13:59:05 +01:00
Sébastien Crozet
487af7d979
Fix matrix resizing with empty matrices.
...
Fix #306 .
2018-02-03 13:59:05 +01:00
Sébastien Crozet
5a4179c287
Re-enable most tests.
2018-02-03 13:59:05 +01:00
Sébastien Crozet
662cc9cd7f
Run rust fmt.
2018-02-03 13:59:05 +01:00
Sébastien Crozet
144dfbd555
Add quadform/cmpy/cdpy.
2018-02-03 13:59:05 +01:00
Sébastien Crozet
300b3d0452
Add transpose gemv.
2018-02-03 13:59:05 +01:00
Sébastien Crozet
1ee8a702ea
Fix quadratic form computation.
...
For the moment only the version that does not make any assumption regarding symmetry is
implemented.
2018-02-03 13:59:05 +01:00
Sébastien Crozet
39d20306f1
Add symmetric quadratic form computation.
2018-02-03 13:59:05 +01:00
Sébastien Crozet
94c1ab8e7b
Add matrix slice construction from array slices.
2018-02-03 13:59:05 +01:00
Eduard Bopp
098d91cae0
Remove phantom data from matrix debug output
...
Addresses #295 .
2018-01-31 19:24:42 +01:00