sebcrozet
3cbe60523a
2018 edition.
2019-03-23 14:33:47 +01:00
sebcrozet
ce24ea972e
Remove all spurious allocation introduced by complex number support on decompositions.
2019-03-23 14:13:00 +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
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
sebcrozet
010c009cff
Fix Schur decomposition.
2019-03-12 13:15:02 +01:00
sebcrozet
77f048b6b9
WIP use Complex instead of Real whenever possible on the linalg module.
2019-03-02 19:33:49 +01:00
adamnemecek
975d72f070
Replace explicit types with Self where possible.
2019-02-16 22:29:41 +01:00
sebcrozet
82106caa9e
Merge branch 'dev' into master-public
...
# Conflicts:
# src/linalg/svd.rs
2018-12-29 14:39:32 +01:00
Jack Wrenn
57123ed6aa
Overloaded Indexing
2018-12-29 13:41:56 +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
sebcrozet
14ad10a7e0
Add rustfmt.toml and run it.
2018-10-27 15:00:18 +02:00
João Costa
7a95644a21
Simplify SVD recompose pattern match
2018-10-13 10:55:37 +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
Bruce Mitchener
175c41ed3a
Typo fixes.
2018-09-24 21:15:07 +02:00
sebcrozet
b272f3ba76
Fix compilation errors when the serde-serialize feature is enabled.
...
Fix #369 .
2018-09-13 07:49:38 +02:00
sebcrozet
cdfa73eba6
Fix warnings.
2018-05-26 22:07:57 +02:00
sebcrozet
40e74e0186
Fix compilation with and without #![no_std].
2018-05-26 22:07:57 +02:00
sebcrozet
ca093fad29
Move core/* to base/* + add conditional compilation to dynamics matrices when no_std is enabled.
2018-05-26 22:07:57 +02:00
Sébastien Crozet
662cc9cd7f
Run rust fmt.
2018-02-03 13:59:05 +01:00
Colin Wallace
e5259130e5
Fix spelling of "below"
2017-10-26 21:13:35 -07:00
Sébastien Crozet
740d19437c
Fix unused_result lint errors.
2017-08-15 19:07:18 +02:00
Sébastien Crozet
3e349b80cf
Implement serde traits for all linalg structs.
2017-08-15 19:07:18 +02:00
Sébastien Crozet
70bb2cbe46
Implement Clone, Debug, Copy for all linalg structures.
2017-08-15 19:07:18 +02:00
Sébastien Crozet
c258d13f98
Fix stepping for slices.
...
The previous implementation was wrong compared to what the documentatino claimed.
2017-08-15 19:07:18 +02:00
Sébastien Crozet
053de0576f
nalgebra-lapack: unify API of LU.solve and Cholesky.solve with nalgebra.
2017-08-15 19:07:18 +02:00
Sébastien Crozet
00039c0a76
Add methods for computing decompositions.
2017-08-15 19:07:18 +02:00
Sébastien Crozet
a7bce9cf3f
symmetric_eigen: allow computing only eigenvalues.
2017-08-15 19:07:18 +02:00
Sébastien Crozet
3f70af97dd
Add the most common matrix decompositions.
2017-08-15 19:07:18 +02:00
Sébastien Crozet
99b6181b1e
Complete library rewrite.
...
See comments on #207 for details.
2016-12-04 22:47:36 +01:00
Sébastien Crozet
d45c242a15
Add a Unit
wrapper type, remove UnitQuaternion.
...
The `Unit` wrapper type ensures that elements of the underlying type has a unit norm.
For example, `Unit<Vector3>` designates an element of S².
In particular `UnitQuaternion<N>` is now a type alias for `Unit<Quaternion<N>>`.
2016-08-16 10:27:07 +02:00
Sébastien Crozet
88a74ca4e5
Macro groupping.
2016-08-11 23:28:08 +02:00
Sébastien Crozet
7b4a57c224
Fix some clippy warning.
...
The following lints were disabled:
* wrong_self_convention
* needless_range_loop
* reverse_range_loop
* len_without_is_empty
* explicit_iter_loop
* many_single_char_names
* similar_names
* too_many_arguments
* float_cmp
* new_without_default
2016-08-11 23:08:21 +02:00
Sébastien Crozet
df872f407d
Replace "col" by "column".
...
Related to #176 .
2016-04-18 08:32:12 +02:00
Sébastien Crozet
e6156727f2
Use full names for everything.
...
Note that `sqdist` becomes `distance_squared` and `sqnorm` becomes `norm_squared`.
Fix #176 .
2016-04-17 17:26:58 +02:00
Daniel D
179a6560ce
Fix eigenvalue calculation for diagonal matrices
2015-11-14 15:40:35 +01:00
Sébastien Crozet
37f1a1d26c
Style fixes.
2015-10-13 22:53:19 +02:00
Daniel
c4753aaf65
Implemented QR algorithm with initial transformation to Hessenberg form and Wilkinson shift for symmetric matrices
2015-09-22 15:17:03 +02:00
Sébastien Crozet
ca3c4e73c5
Fix warnings generated by the last rust-nightly.
2015-08-20 21:41:40 +02:00
Sébastien Crozet
2091cd8da6
Minor codding style fixes.
2015-08-09 14:39:45 +02:00
Daniel
89bbe0f4b4
Removed unused code
2015-08-08 17:52:16 +02:00
Daniel
dc571838bb
Added check for symmetricity of input matrix
2015-08-07 15:03:38 +02:00
Daniel
b197959e2b
Implemented Cholesky decomposition with tests
2015-08-07 14:44:25 +02:00
Eduard Bopp
bd593a923c
Fix a number of warnings
...
Mostly related to the `us` → `usize` suffix renaming. It turns out that none of
the suffixes are required any more, as the type inference appears to have
improved in that regard. There were also parantheses around range terms that
are not required any more.
Finally the `[]` syntax has been deprecated and thereby removed.
2015-02-21 15:07:50 +01:00
Eduard Bopp
3107dd607b
Rename similar in-place and copy methods
...
Fixes #52 .
This renames pairs of methods like `normalize_cpy`, `normalize` to `normalize`
and `normalize_mut`. Note that the previous in-place operations had the same
name that now belongs to the copy operations. Therefore this is a breaking
change.
On a similar note, the `Quat::conjugate` method was also renamed to
`conjugate_mut` and a new copying method has taken its place. This appears to
be a similar issue (apart from the lack of the copy operation) and thus was
dealt with here, too.
2015-02-01 23:23:57 +01:00
Sébastien Crozet
1b6a44e8fb
Update to the last rust-nightly.
...
Version of rustc: 1.0.0-nightly (4874ca36f 2015-01-23 00:18:57 +0000).
2015-01-23 21:48:10 +01:00
Sébastien Crozet
4b47b1e98a
Use slice and range syntax when possible.
2015-01-09 22:46:26 +01:00