sebcrozet
cb367a645d
Fix mint tests.
2019-03-19 22:53:21 +01:00
sebcrozet
b0a9eab0b9
Final SVD fix.
2019-03-19 22:52:57 +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
adamnemecek
1e614db227
Quaternionic division + refactoring ( #563 )
2019-03-18 09:08:42 +01:00
Sébastien Crozet
f916dae6ed
Merge pull request #537 from greizgh/fix-axpy-typo
...
Fix typo in axpy documentation
2019-03-16 10:06:35 +01:00
Sébastien Crozet
fac012a775
Merge pull request #558 from tpdickso/geometric-transform-point
...
Add the `transform` methods as inherent methods on geometric types
2019-03-16 10:06:00 +01:00
Greizgh
0f09f2a58c
Fix typo in axpy documentation
2019-03-15 15:59:39 +01:00
Sébastien Crozet
a2c0a453d3
Add operator explanation to docs
...
Co-Authored-By: tpdickso <tpdickso@uwaterloo.ca>
2019-03-15 10:50:47 -04:00
sebcrozet
010c009cff
Fix Schur decomposition.
2019-03-12 13:15:02 +01:00
est31
db3d08f81a
Fix two compiler warnings
...
Fixes #561
2019-03-12 09:00:23 +01:00
Sébastien Crozet
b46cf75996
Merge pull request #560 from adamnemecek/master
...
quaternion trigonometry
2019-03-04 21:18:24 +01:00
Adam Nemecek
edb08cd900
quaternion trigonometry
2019-03-04 08:36:46 -08:00
Sébastien Crozet
2f4983d778
Merge pull request #539 from npapapietro/Implement_convolution_#520
...
Implement convolution #520
2019-03-02 22:47:21 +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
Benjamin Hetherington
aeff67ecbd
Correct typo in quaternion documentation ( #559 )
...
Correct "looses" to "loses" in quaternion.rs documentation.
2019-02-25 17:34:13 +01:00
Nathan
28525bfc20
Restructured usage of convolves, added unit testing.
2019-02-24 19:53:09 -06:00
Terence
2a2e9d7f8e
Add the `transform` methods as inherent methods on geometric types
...
This adds `transform_point`, `transform_vector`,
`inverse_transform_point` and `inverse_transform_vector` as inherent
methods on the applicable geometric transformation structures, such
that they can be used without the need to import the `Transformation`
and `ProjectiveTransformation` traits from `alga`.
2019-02-24 11:29:27 -05:00
adamnemecek
704331be4f
added Quaternion accessors for r,i,j,k, refactored conjugate to use imag ( #551 )
2019-02-23 16:03:01 +01:00
Nathan
a3d571ea6b
Merge remote-tracking branch 'upstream/master' into Implement_convolution_#520
2019-02-23 08:29:41 -06:00
Jack Wrenn
20e9c6f480
Implement `iter::Sum` for `DMatrix` ( #552 )
...
Fixes #514 .
2019-02-23 15:02:27 +01:00
sebcrozet
7c91f2eeb5
Use Complex instead of Real whenever possible on the base/ module.
2019-02-23 11:24:07 +01:00
Nathan
2a2debf58b
Fixing documentation
2019-02-20 20:32:09 -06:00
Nathan
9f52019385
Fixing type traits based on feedback, `convolve_full` still broken
2019-02-18 19:01:18 -06:00
Sébastien Crozet
c97dfaf381
Add renormalization and rotation extraction from general 2D and 3D matrices. ( #549 )
...
* Add From impls to convert between UnitQuaterion/UnitComplex and Rotation2/3
* Add rotation extraction from a Matrix2 or Matrix3.
* Add fast Taylor renormalization for Unit.
Fix 376.
* Add renormalization for Rotation3.
Renormalization for Rotation2 requires Complex to implement VectorSpace which will be fixed only on alga v0.9
* Update Changelog.
2019-02-18 22:41:46 +01:00
adamnemecek
975d72f070
Replace explicit types with Self where possible.
2019-02-16 22:29:41 +01:00
Nathan
b08c2ad70d
Feedback updates round 1
2019-02-14 20:54:26 -06:00
Nathan
bca385ea6b
Quick fix to documentation
2019-02-10 13:46:37 -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
fac709b0c0
Release nalgebra v0.17 and nalgebra-glm v0.3.
2019-02-03 17:03:12 +01:00
Sébastien Crozet
cc7bab9755
Merge branch 'master' into as_ptr
2019-02-03 16:55:54 +01:00
sebcrozet
08f31837a8
Update to alga 0.8.
2019-02-03 15:52:15 +01:00
sebcrozet
7be7fc8776
Fix compilation with no-std.
2019-02-03 15:16:50 +01:00
sebcrozet
ce8879c37a
Add all the missing docs.
2019-02-03 14:18:55 +01: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
f52bd4be3d
Rename VecStorage::data/data_mut to ::as_vec/as_vec_mut
2019-02-03 11:48:42 +01:00
sebcrozet
664658760a
Remove the Deref implementation for MatrixRef.
...
Fix #380 .
2019-02-03 11:41:14 +01:00
sebcrozet
e225297147
Add doc-tests for apply_norm and apply_metric_distance.
2019-02-03 11:29:10 +01:00
sebcrozet
48e9bbc065
Add tests for row and column iterators.
2019-02-03 11:17:23 +01:00
sebcrozet
bafd74da70
Fix doc-tests for variance.
2019-02-03 11:06:06 +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
414fe8afda
Pass references to zip_apply and zip_zip_apply.
2019-02-03 08:08:03 +01:00
sebcrozet
da8dc6c4bd
Use IntoIterator for select_rows and select_columns argument.
2019-02-03 08:08:03 +01:00
sebcrozet
d1391592a0
Add zip_apply and zip_zip_apply.
2019-02-03 08:08:03 +01:00
sebcrozet
904000ce27
Add argmin and argmax.
2019-02-03 08:08:03 +01:00
sebcrozet
0d2c1be8da
Add row and column iterators.
2019-02-03 08:08:03 +01:00
sebcrozet
bba1f48e81
Add select_rows and select_columns.
2019-02-03 08:06:24 +01:00
sebcrozet
01d1f9d24b
Simplify the construction of DVector.
...
Fix #377 .
2019-02-03 08:06:24 +01:00
sebcrozet
660b868603
Add more general norms and metrics.
...
Fix #258 .
2019-02-03 08:06:24 +01:00
sebcrozet
cc2a70664d
Add statistics functions: sum, variance, mean.
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
Sébastien Crozet
9167965252
Merge pull request #525 from jswrenn/fix-serde-deserialization-panic
...
Fix out-of-bounds panic during deserialization; produce error instead
2019-02-03 07:31:03 +01:00
Sébastien Crozet
77a317234c
Merge pull request #533 from ybyygu/master
...
fix doc strings for `map_with_location` and `lower_triangle`
2019-02-03 07:29:49 +01:00
Wenping Guo
b42339ec94
fix doc string of `lower_triangle` method
2019-01-30 15:42:28 +08:00
Wenping Guo
bb3f3ac2ee
fix doc for `map_with_location` method
2019-01-30 09:33:45 +08:00
sebcrozet
13f76efe36
Add simple constructors for pure-translation and pure-rotation isometries.
2019-01-29 12:04:23 +01:00
sebcrozet
a7ab61f974
Add horizontal and vertical resizing for dynamic matrices and vectors.
2019-01-29 12:03:48 +01:00
sebcrozet
9fbdedb942
Implement ContiguousStorage for some matrix slices.
2019-01-29 12:02:05 +01:00
Gedl
59b0709fcf
Retain new_observer_frame as a deprecated wrapper function
2019-01-17 10:17:00 +01:00
Gedl
3fdcf5329d
Rename ::new_observer_frame to ::face_towards
2019-01-16 22:41:25 +01:00
Jack Wrenn
6426a7cb6f
Fix out-of-bounds panic during deserialization; produce error instead.
...
Fixes #522
2019-01-16 11:23:20 -05:00
shivshank
85a943b7ef
Rewrite to_homogenous for vectors to use push
2019-01-09 21:48:03 -05:00
shivshank
3055c289c0
Add `push` method to Vector
2019-01-09 21:38:58 -05:00
sebcrozet
5569850dbd
Fix examples on stable.
2018-12-29 15:32:09 +01:00
sebcrozet
c9351cb818
Fix merge fallout.
2018-12-29 14:57:26 +01:00
sebcrozet
82106caa9e
Merge branch 'dev' into master-public
...
# Conflicts:
# src/linalg/svd.rs
2018-12-29 14:39:32 +01:00
Sébastien Crozet
564246ec1c
Merge pull request #507 from burtonageo/update_deps_2
...
Update dependencies, and fix tests from fallout
2018-12-29 14:33:53 +01:00
sebcrozet
be8d1ce3ce
Fix compilation errors related to rand.
2018-12-29 14:22:24 +01:00
Jack Wrenn
5a9a1eb645
typofix: indicies -> indices
2018-12-29 13:41:56 +01:00
Jack Wrenn
4ab8a290c7
groundwork for indexing with typenums
2018-12-29 13:41:56 +01:00
Jack Wrenn
939915131d
MutMatrixIndex -> MatrixIndexMut
2018-12-29 13:41:56 +01:00
Jack Wrenn
57123ed6aa
Overloaded Indexing
2018-12-29 13:41:56 +01:00
Jack Wrenn
d3510b8ff6
typofix: `DimNameNimimum` -> `DimNameMinimum`
2018-12-29 13:41:23 +01:00
sebcrozet
f36ff97d6a
Fix deprecation warnings.
2018-12-29 13:19:09 +01:00
Jack Wrenn
53632cd1b4
Implement `Hash` for all `Matrix<N, R, C>` where `N: Hash`.
...
Implements #508 .
2018-12-29 11:29:13 +01:00
sebcrozet
a14d8a4cb2
Add coordinates access to translations.
...
Fix #509 .
2018-12-26 15:19:50 +01:00
sebcrozet
cae2be5cad
Add .min and .max.
2018-12-22 18:03:32 +01:00
George Burton
6a4323d0ea
Fix unintentional change
2018-12-18 14:46:29 +00:00
George Burton
9c37c51203
Update dependencies, and fix tests from fallout
2018-12-18 14:44:53 +00:00
Jack Wrenn
8b8f127f8d
Deprecate `origin`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
daadac7647
Deprecate `try_normalize`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
8a5e062e7e
Deprecate `normalize`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
e89faca588
Deprecate `magnitude_squared`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
770489c664
Deprecate `magnitude`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
2bb7c011b1
Deprecate `norm_squared`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
e55c72fddc
Deprecate `norm`.
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
03f7c2d286
Deprecate `angle`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
52b8155c67
Deprecate `dot`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
aac29b70ea
Deprecate `abs`
...
See #371
2018-12-16 12:58:51 +01:00
Jack Wrenn
2595db1607
Fix doctests broken by 35d2381a2a
2018-12-16 12:58:20 +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
Jack Wrenn
43c5f4cb73
Rename `Transform::unwrap` to `Transform::into_inner` and deprecate `Transform::unwrap`
...
See #460
2018-12-16 12:58:20 +01:00
Jack Wrenn
35ab64b086
Rename `Rotation::unwrap` to `Rotation::into_inner` and deprecate `Rotation::unwrap`
...
See #460
2018-12-16 12:58:20 +01:00
Jack Wrenn
0ab137bfcf
Rename `Unit::unwrap` to `Unit::into_inner` and deprecate `Unit::unwrap`
...
See #460
2018-12-16 12:58:20 +01:00
Jack Wrenn
0f66403cbb
Rename `MatrixVec` to `VecStorage`.
...
See #470 .
2018-12-06 20:51:29 +01:00
Jack Wrenn
b83c3b857b
Rename `MatrixArray` to `ArrayStorage`.
...
See #470 .
2018-12-06 20:51:29 +01:00
sebcrozet
c69ab193be
Fix cornercase for Rotation3 conversion to euler angles.
...
Fix #494
2018-12-04 22:04:07 +01:00
Jack Wrenn
72d89c75ae
Group swizzle methods by dimensional requirement.
...
This is semantically equivalent, but improves the rendered documentation.
2018-11-24 08:03:54 +01:00
sebcrozet
f972d1dd7e
Small dimension check fix for swizzling.
2018-11-23 07:01:35 +01:00
Jack Wrenn
accdd51faf
Implement `Into<Vec<N>>` for `MatrixVec<N, R, C>`
2018-11-23 07:01:15 +01:00
Jack Wrenn
74ff6ae199
Implement `Point` swizzling
2018-11-23 06:34:00 +01:00
Jochen Görtler
85bfae5390
RFC: Add comment in `Rotation::to_homogeneous()`
2018-11-20 17:47:29 +01:00
Sébastien Crozet
bc9c74cbb6
RFC: Remove redundant `Dim` trait
...
Co-Authored-By: grtlr <grtlr@users.noreply.github.com>
2018-11-20 17:47:29 +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
Jim Turner
267d9760bd
Add as_ptr and as_mut_ptr methods
...
This is useful for moving around a matrix/slice in unsafe code and for
converting slices to other types (e.g. `ndarray::ArrayView`).
2018-11-19 16:53:46 -05:00
Jack Wrenn
c36416b9c0
Add `ShapeConstraint` for `Extend<Vector<_,_,_>>` implementations.
2018-11-18 06:36:04 +01:00
Jack Wrenn
0ed67d0470
Implement `Extend<Vector<_,_,_>>` for `Matrix`.
...
Extend a `Matrix` with columns drawn from an iterator of `Vector`s.
2018-11-18 06:36:04 +01:00
Jack Wrenn
0f29a3ae0a
Simplify documentation examples for `Extend` implementations.
2018-11-18 06:36:04 +01:00
Jack Wrenn
f711c107ca
Implements `Extend` for `Matrix<N, Dynamic, U1>`.
...
Extends a `Vector` with new rows populated from an iterator.
Inspired by https://github.com/rustsim/nalgebra/issues/446#issuecomment-437931790
2018-11-18 06:36:04 +01:00
Jack Wrenn
c3dd709c0a
Implements `Extend` for `Matrix<N, Dim, Dynamic>`.
...
Extends a matrix with new columns populated from an iterator.
2018-11-18 06:36:04 +01:00
sebcrozet
bd7d0be7a8
Remove over-restrictive assertions on Orthographic3 construction + add doc-tests.
...
Fix #365
2018-11-10 12:57:47 +01:00
sebcrozet
69490c2cea
Add doc-tests to Transform.
2018-11-10 11:20:34 +01:00
sebcrozet
b6d741c593
Document similarity_construction.rs.
2018-11-10 11:20:34 +01:00
sebcrozet
a8a9a3082a
Add doc-tests to unit_complex_construction.
2018-11-10 11:20:34 +01:00
sebcrozet
ff5b64e35d
Add doc-tests to unit_complex.rs.
2018-11-10 11:20:34 +01:00
sebcrozet
536923f9fc
Add doc-tests to rotation_specialization.
2018-11-10 11:20:34 +01:00
sebcrozet
80fc057ead
Add doc-tests to rotation_construction.
2018-11-10 11:20:34 +01:00
sebcrozet
7d9d47d9ea
Complete doc-tests of rotation.rs.
2018-11-10 11:20:34 +01:00
sebcrozet
c24caa311f
Add some documentation for Rotation.
2018-11-10 11:20:34 +01:00
Jack Wrenn
9e763bbcff
doc tests for `from_vec_generic` and `from_vec`
2018-11-08 06:42:55 +01:00
Jack Wrenn
d6fb07dad2
Introduce `from_vec`, to complement `from_vec_generic`
2018-11-08 06:42:55 +01:00
Jack Wrenn
68bdb427cf
Rename: `from_vec` -> `from_vec_generic`
2018-11-08 06:42:55 +01:00
Jack Wrenn
ff4e44a8ed
Introduces a `from_vec` constructor for `MatrixMN`.
...
Addresses #378 .
The implementation of `from_vec` simply wraps a call to
`from_iterator_generic`. Because the standard library's implementation
of `into_iter` is specialized for the `.into_iter().collect<Vec<_>>()`
case (see https://github.com/rust-lang/rust/issues/46084#issuecomment-345524508 ),
this is equivalent to re-using the original Vec as storage.
2018-11-08 06:42:55 +01:00
sebcrozet
b4b66bddd2
Add comment about cs matrix multiplication implementation.
2018-11-06 19:25:27 +01:00
sebcrozet
f43ab963ad
Fix matrix market grammar.
2018-11-06 19:25:16 +01:00
Antony Lesage
c370564dba
Fix MatrixMN::from_distribution ( #463 )
2018-11-06 19:24:20 +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
383a18f083
Improve CsMatrix multiplaction performances.
2018-11-06 18:27:43 +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
a7acd5b832
Fix missing type annotation.
2018-11-01 11:07:36 +01:00
sebcrozet
2119c1adf5
Complete documentation for quaternions.
2018-11-01 11:07:36 +01:00
sebcrozet
911ddca588
Implement From<Vector> for Translation and Quaternion.
2018-11-01 11:07:36 +01:00
sebcrozet
96db8e564a
Complete the documentation for Translation.
2018-11-01 11:07:36 +01:00
sebcrozet
1dd6bcce6a
Add doc-tests to most of quaternion.rs.
2018-11-01 11:07:36 +01:00
sebcrozet
98b0b842e9
Remove the inherent clone method from points.
...
Fix #458 .
2018-11-01 10:22:10 +01:00
sebcrozet
50d0b64924
Avoid bound-checking on cholesky decomposition.
2018-10-30 17:45:59 +01:00
sebcrozet
9bf1d0280d
Fix cholesky computation.
2018-10-30 17:29:32 +01:00
sebcrozet
0ba23da475
Make transform_vector and transform_point public.
2018-10-30 07:55:08 +01:00
sebcrozet
19d2bc0b7c
Fix typo.
2018-10-30 07:55:08 +01:00
sebcrozet
fc782f3644
Make MatrixN::{transform_vector, transform_point} inherent methods.
...
Addresses https://github.com/rustsim/nalgebra/issues/372
2018-10-30 07:55:08 +01:00
sebcrozet
7ecbacacda
Add elimination tree computation.
2018-10-30 07:46:34 +01:00
sebcrozet
bfab204a24
Add lerp for vectors.
...
Fix #453
2018-10-27 16:06:45 +02:00