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