Commit Graph

59 Commits

Author SHA1 Message Date
sebcrozet 8cfd89f287 Add ::from_distribution to build a matrix from a user-provided distribution. 2018-05-17 15:59:51 +02:00
Sébastien Crozet 60fcff9e1d Re-add the ::new slice constructor, but mark them as deprecated. 2018-05-06 23:44: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 7357d17b77 Fix typos. 2018-05-06 23:31:36 +02:00
Sébastien Crozet 1ac8bbd3d1 Add .axis_angle to UnitComplex and UnitQuaternion + .rotation_between_axis to UnitComplex. 2018-03-08 17:30:59 +01:00
Sébastien Crozet 5ce41060e5 Fix typos. 2018-02-03 15:25:04 +01:00
Sébastien Crozet daba16023a Comment the argument of the (private) extend_rows function. 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 9bd2890875 Add documentation. 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 6d4bfc3b79 Fix warnings. 2018-02-03 13:59:05 +01:00
Sébastien Crozet 5c28af3a53 Add 3d cross-product matrix construction from a vector. 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 dc41b55e5a Add iamin. 2018-02-03 13:59:05 +01:00
Sébastien Crozet fcfcc391b5 Rename slice constructors to remove the "_slice" after "new". 2018-02-03 13:59:05 +01:00
Sébastien Crozet 4cb43498a4 Add unsafe slice construction. 2018-02-03 13:59:05 +01:00
Sébastien Crozet a35e40b38e Add the `repeat` constructor. 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 1a7f0dea9f Add column vector slice aliases. 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
Sébastien Crozet adbb7d989e Add aliases for matrix 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
Nil Goyette 2ad227661a Fix RowVector3 cross product 2018-01-17 11:23:27 -05:00
Colin Wallace e5259130e5 Fix spelling of "below" 2017-10-26 21:13:35 -07:00
Dzmitry Malyshau 94db3f533b Mint rebase 2017-10-09 20:22:24 +02:00
Dzmitry Malyshau 6b6a0717c2 Mint matrices 2017-10-09 20:22:24 +02:00
Dzmitry Malyshau 7d96007bdb Mint vector conversions 2017-10-09 20:22:24 +02:00
Sébastien Crozet afef66227e Merge branch 'master' into abomonation 2017-08-15 19:18:39 +02:00
Sébastien Crozet 740d19437c Fix unused_result lint errors. 2017-08-15 19:07:18 +02:00
Sébastien Crozet b475c4da9f Move `set_row`, `set_column` from matrix.rs to edition.rs. 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 e84b73c848 Deprecate into_owned and clone_owned for Quaternion, UnitQuaternion, and Transform. 2017-08-15 19:07:18 +02:00
Sébastien Crozet b22eb91a16 Add documentation. 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 41f5231446 Add `assign` and generalize `map` to other return types.
The method assign replaces each components with the result of a closure (that takes the
corresponding component as parameter).
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
Eduard Bopp a45ef26375 Provide safer Abomonation impl for matrix arrays
This is more robust than delegating to a slice, which has been removed
upstream due to unsafety. Since we can rely on there being no pointer
indirection in a GenericArray, we just iterate over the array.
2017-08-14 20:53:55 +02:00
Eduard Bopp e09af0ca82 Implement Abomonation for remaining types 2017-08-14 14:32:02 +02:00
Eduard Bopp 7c3a05f668 Implement Abomonation for dynamic matrices 2017-08-14 12:33:14 +02:00
Eduard Bopp 65fa4cf740 Implement Abomonation for static matrices 2017-08-14 12:07:06 +02:00
Eduard Bopp 7a62b68c38 Merge pull request #251 from Ralith/unnested-serialization
Remove gratuitous indirection in serialization impls
2017-07-26 19:40:57 +02:00
Sébastien Crozet f86752e44a De-ambiguat AsRef/AsMut/Into implementations.
Addresses comments of #225.
2017-07-22 09:57:21 +02:00
Eduard Bopp cfa3c6533f Merge pull request #242 from sebcrozet/into_iterator
Implement IntoIterator for &Matrix and &mut Matrix
2017-07-13 03:12:38 +02:00
Brendan Zabarauskas ba41a8ce5a Implement the sum and product traits for matrices
Closes #264
2017-07-02 01:27:16 +10:00
Sébastien Crozet b78dcb3155 Add methods to set a row or a column of the matrix. 2017-05-17 22:47:45 +02:00
Benjamin Saunders 0979896dbd Remove gratuitous indirection in serialization impls 2017-05-03 19:51:26 -07:00
Sébastien Crozet 35d2b6dc88 Add kronecker product.
Closes #248
2017-05-03 22:47:18 +02:00
Andreas Longva a52b079578 Relax invertibility test in try_inverse()
The previous implementation of try_inverse() used an approximate
check of the determinant against 0 for small matrices to
determine if the matrix was invertible. This is not a reliable test,
and may fail for perfectly invertible matrices. This change
simply makes the test criterion an exact comparison instead.
2017-04-28 19:11:33 +02:00