Commit Graph

1481 Commits

Author SHA1 Message Date
geo-ant
daade1cf5e add documentation 2023-01-14 12:08:10 +01:00
geo-ant
7ac536be07 cleanups and add tests 2023-01-14 12:08:10 +01:00
geo-ant
f850ed535e add tests and start cleanup 2023-01-14 12:07:56 +01:00
geo-ant
0fcd9dd702 revert some things and add poc for mut and immut iterators 2023-01-14 12:07:36 +01:00
Hennadii Chernyshchyk
f333bb4ba5
Update src/linalg/cholesky.rs
Co-authored-by: Sébastien Crozet <sebastien@crozet.re>
2023-01-14 13:03:09 +02:00
Sébastien Crozet
5ed215932c Slightly change comment wording. 2023-01-14 12:02:37 +01:00
Maxim Zhiburt
3d31f32251 update try_inverse doc comment 2023-01-14 12:00:52 +01:00
Sébastien Crozet
dc1b291ece Merge pull request #1179 from timethy/euler-angles-patch
Fix typo in `euler_angles()`, and cache cosine computation.
2023-01-14 11:48:22 +01:00
Hennadii Chernyshchyk
598cb4fa8d
Add ln_determinant to Cholesky 2023-01-13 13:14:55 +02:00
Sébastien Crozet
00f1f11ca5 Deny unused_qualifications 2023-01-13 10:28:22 +01:00
Sébastien Crozet
ed573d054c Fix tests 2023-01-13 10:10:53 +01:00
Sébastien Crozet
e24acba5f9 cargo fmt 2023-01-13 10:05:52 +01:00
Sébastien Crozet
e959f2eb9c Fix CheckBytes derives + drop Complex rkyv support for now 2023-01-13 09:58:41 +01:00
Sébastien Crozet
cce66c3abf Merge branch 'dev' into dev-zyanshep 2023-01-13 09:19:49 +01:00
Liam
b2da4609cf
Update isometry.rs
Fix formatting of documentation so that "A 3D isometry is composed of:" is on its own line.
2022-12-21 18:51:02 +11:00
Andreas Longva
55c3a9c764 Formatting 2022-11-14 16:43:47 +01:00
Andreas Longva
31e687bd76 Implement Matrix::{as_view, as_view_mut} methods 2022-11-14 16:43:05 +01:00
Andreas Longva
234d61faa2 Rename SliceRange to DimRange 2022-11-14 14:47:43 +01:00
Andreas Longva
0c402318ec Rename internal assert_slice_index -> assert_view_index 2022-11-14 14:42:23 +01:00
Andreas Longva
8867b365e3 Rename slice -> view in parameter names, comments etc. 2022-11-14 14:40:53 +01:00
Andreas Longva
34f4537376 Use view* instead of slice* methods in src/ 2022-11-14 14:14:42 +01:00
Andreas Longva
0319d236af Deprecate+rename methods for slicing 2022-11-14 14:02:36 +01:00
Andreas Longva
eb456f18bb Move slice deprecation macro to lib.rs
This way we can use it across the library, in changes that
will follow this commit.
2022-11-14 10:56:14 +01:00
Andreas Longva
a68d9b5ded Rename construction_slice.rs -> construction_view.rs 2022-11-14 09:42:59 +01:00
Andreas Longva
2ca4b3b02d Deprecate MatrixSliceMutN
There is no other type alias with this naming convention. I believe it
is a remnant from the past, when we had e.g. MatrixN type aliases. But
these no longer exist, therefore I believe this alias should also be
removed, instead of updated to "MatrixViewMutN".
2022-11-14 09:41:04 +01:00
Andreas Longva
f792b5f568 Deprecate MatrixSliceMutMN
In the past, MatrixSliceMut did not have the same defaults. However,
for a while now MatrixSliceMut has served the exact same purpose
(in fact their definitions are identical), so we should
deprecate MatrixSliceMutMN.
2022-11-14 09:40:48 +01:00
Andreas Longva
7d5097b0b2 Remove use of deprecated *Slice aliases in nalgebra 2022-11-14 09:33:08 +01:00
Andreas Longva
e245e1148a Deprecate slice type aliases 2022-11-14 09:26:45 +01:00
Andreas Longva
4234883d23 Add View type aliases 2022-11-11 17:36:50 +01:00
Andreas Longva
9a7e92e902 Rename matrix_slice.rs to matrix_view.rs 2022-11-11 17:29:55 +01:00
Andreas Longva
29bff32d2d Rename MatrixSlice(Mut) to MatrixView(Mut)
Additionally introduce deprecated type aliases with the old names to avoid
a breaking change.
2022-11-11 16:10:40 +01:00
Andreas Longva
c8dfb5e348 Rename SliceStorage(Mut) to ViewStorage(Mut)
Additionally, we add type aliases with the old names to maintain
backwards compatibility with deprecation warnings.
2022-11-11 15:46:06 +01:00
devil-ira
8601c655de Support conversion for glam 0.22 2022-11-05 00:33:38 +01:00
Allan Zhang
20dbfbd6f9 Use parenthesis for exclusive lower bound
Changes `]0, pi]` to `(0, pi]`.

Replaces PR #1173 and resolves Issue #1164.
2022-11-04 09:34:46 -04:00
_
c9fa7a35e7 Added try_cast() to Matrix 2022-10-27 19:56:38 +00:00
Peng Guanwen
2cbb27c6f8 Derive CheckBytes trait on Archive struct 2022-10-13 12:22:45 +00:00
Sébastien Crozet
1870080f94 Remove const for Point1::new when targetting cuda 2022-09-24 10:13:15 +02:00
Sébastien Crozet
1079f0c1c3 Add a non-const version of Point::new when the cuda feature is enabled 2022-09-24 09:50:58 +02:00
Patiga
3aca9af616 Link listed types in lib.rs to their docs
Helpful because lib.rs is the 'main page' for docs.rs
This allows for easy/direct access to the mentioned types
Currently you need to look up mentioned types via the search bar
2022-09-04 00:39:57 +02:00
zyansheep
525bc63de2 use patch for num-complex & refactor 2022-08-15 18:47:00 -04:00
Sébastien Crozet
d09d06858f
Merge pull request #1120 from Ralith/unit-vector-cast
Implement `cast` for `Unit<Vector<T, D, S>>`
2022-08-14 15:04:50 +02:00
Sébastien Crozet
0fcf2f61d2
Merge pull request #1112 from SolraBizna/point-construction-const-fn
Make "Point::new" a const fn
2022-08-14 15:03:09 +02:00
Patrick Owen
84c44984b1 Use #[inline] to improve opt-level 1 performance 2022-08-12 01:33:11 -04:00
Ritoban Roy-Chowdhury
d3b7acce4d update DefaultAllocator docs to say ArrayStorage instead of GenericArray 2022-08-08 17:48:10 -07:00
Sébastien Crozet
d5284a2a86 Remove unused extern crate. 2022-07-30 18:16:18 +02:00
Sébastien Crozet
89767ee9f3 Reduce code duplication for allocating a storage from a raw iterator. 2022-07-30 18:06:47 +02:00
Gianluca Oldani
59b01e955f Fixed formatting 2022-07-30 17:52:04 +02:00
Gianluca Oldani
8588ef8fb2 Sound implementation for from_row_iterator 2022-07-30 17:52:04 +02:00
Chammika Mannakkara
008511d96e from_row_iterator added 2022-07-30 17:52:04 +02:00
Sébastien Crozet
d0d88f1e82
Merge pull request #1113 from trueb2/user/trueb2/fix-unitcomplex-assertion
Fix UnitComplex cast doctest failure on macOS
2022-07-30 17:33:13 +02:00
Tim Taubner
0c2d9deac7 cargo fmt 2022-07-27 11:44:42 +02:00
Tim Taubner
7aadbcf21d From_rotation_matrix: Use the larger of eps.sqrt() or eps*eps as disturbance. Add tests for eps > 1.0 2022-07-27 11:31:43 +02:00
Sébastien Crozet
26e69863e1 Rotation from matrix: small code cleanups 2022-07-27 09:49:16 +02:00
Tim Taubner
d515e4f1be Perturbations to check for convergence into maximum. 2022-07-27 09:49:16 +02:00
Tim Taubner
f9aa2d76aa Start from random rotation in from_matrix to prevent issues when calling from_matrix on rotation matrices 2022-07-27 09:49:16 +02:00
devil-ira
238750fb30 Use From trait to convert glam types to arrays. 2022-07-23 23:55:40 +02:00
devil-ira
1e31e6ba69 Add feature convert-glam021. 2022-07-23 17:39:59 +02:00
zyansheep
71379c0748 cargo fmt 2022-07-13 23:05:44 -04:00
zyansheep
9a98b0cf24 various implementations 2022-07-13 23:02:17 -04:00
zyansheep
a725faaf6a fix matrix impl 2022-07-13 14:32:46 -04:00
zyansheep
7cc885e861 fix some rkyv impls 2022-07-11 22:36:52 -04:00
Benjamin Saunders
8aa10b819c Implement cast for Unit<Vector<T, D, S>>
Currently, `cast` is resolved via `Unit`'s `Deref` impl, which leads
to it confusingly stripping the `Unit` from `UnitVector`s. Add an
inherent impl which takes precedence, similar to the existing
specialization for `UnitQuaternion`.
2022-06-11 11:13:31 -07:00
Jacob Trueb
0cdf3ce452 Fix UnitComplex cast doctest failure on macOS 2022-05-25 17:51:19 -05:00
Solra Bizna
4d968da1ad
Make "Point::new" a const fn 2022-05-25 16:42:18 -06:00
Sébastien Crozet
e913beca88 Switch to derive macros for rkyv and bytecheck 2022-04-30 10:47:30 +02:00
zyansheep
24b97932e1 add bytecheck impls 2022-04-30 10:36:39 +02:00
zyansheep
1b6f2b83f7 add bytecheck for matrix 2022-04-30 10:36:39 +02:00
zyansheep
90f2603de4 upgrade rkyv to 0.7 2022-04-30 10:36:39 +02:00
Sébastien Crozet
c9bf6aa95f Fix warnings 2022-04-28 14:58:15 +02:00
Sébastien Crozet
adb3820305 glam: add conversion from Vec2/3/4 to UnitVector2/3/4 + remove ambigous conversions 2022-04-28 14:53:14 +02:00
Sébastien Crozet
96d4d98811
Merge pull request #1094 from jsmith628/complex-slerp-fix
fix for `UnitComplex::slerp()` #1093
2022-04-26 18:26:27 +02:00
Joshua Smith
b02e4ec2a9 fixed cargo fmt error 2022-03-26 17:32:12 -05:00
Sébastien Crozet
6a553f1ee2
Merge pull request #1098 from dimforge/explicit-const-dims
Simplify the type definitions of Const aliases, to help rust-analyzer
2022-03-24 10:00:36 +01:00
Sébastien Crozet
77cf2c935f
Merge pull request #1096 from sterlingjensen/cleanupdoc
Cleanup examples and doc links
2022-03-24 10:00:24 +01:00
sterlingjensen
44b700ecdf run cargo fmt 2022-03-23 22:08:20 -05:00
Sébastien Crozet
aa37f28dda Simplify the type definitions of Const aliases, to help rust-analyzer 2022-03-23 22:55:16 +01:00
sterlingjensen
724117e5ad Cleanup examples and doc links
Close example code fences and normalize containing head line in touched files.
Remove stale reference to `slice_assume_init` (commit 8c6ebf27), fix long dead internal links in deprecation notices.
2022-03-22 12:03:18 -05:00
Joshua Smith
27a349d282 fix for UnitComplex::slerp() #1093 2022-03-21 16:08:53 -05:00
Sébastien Crozet
d7117e228a Use cust_core instead of cust 2022-03-16 18:07:29 +01:00
YuhanLiin
1acd48f6f1 Address review comments 2022-03-09 21:04:43 -05:00
YuhanLiin
325618ba22 Fix SVD instability bug 2022-03-09 02:13:12 -05:00
Ben Kimock
698e130c3b Remove abomonation support
Abomonation has numerous soundness problems which have been
well-documented in its issue tracker for over 2 years. Some of them
could be fixed, but some are fundamental to its design. If a user wants
super-fast ser/de, they should use rkyv.
2022-02-05 17:15:08 -05:00
Sébastien Crozet
87a6f4965b Add support for conversion with glam 0.19 and 0.20 2022-01-09 13:43:45 +01:00
Sébastien Crozet
c0f8530d5e
Merge pull request #1055 from dimforge/fix-pow
Fix Matrix::pow and make it work with integer matrices
2021-12-31 09:57:56 +01:00
Sébastien Crozet
99ac8c4032
Merge pull request #1050 from metric-space/polar-decomposition-take-2
Take-2 of polar-decomposition
2021-12-31 09:57:08 +01:00
Sébastien Crozet
d806669cc7 Fix Matrix::pow and make it work only with positive exponents 2021-12-30 23:03:43 +01:00
Sébastien Crozet
cc10b67dd1 Add Matrix::try_polar that returns Option and make Matrix::polar not return Option 2021-12-30 22:15:04 +01:00
Sébastien Crozet
b62b65d1b6
Merge pull request #1048 from haibane-tenshi/relax-matrix-select-rows-cols
Relax T: Zero bound on Matrix::select_rows() and Matrix::select_columns()
2021-12-30 21:56:55 +01:00
Sébastien Crozet
a6007de409 Add "Triangular matrix extraction" bullet to Matrix documentation 2021-12-30 21:55:29 +01:00
Sébastien Crozet
2844c55de2
Merge pull request #1053 from rokonio/patch-1
Fix a typo in a comment
2021-12-30 21:46:47 +01:00
Rokonio
05320147b1
Fix a typo in a comment 2021-12-29 18:46:01 +01:00
metric-space
dbaefed8d1 Fix doc typos 2021-12-26 21:05:42 -05:00
metric-space
ac94fbe831 Add polar decomposition method to main matrix decomposition interface
Add one more test for decomposition of polar decomposition of rectangular matrix
2021-12-26 21:01:05 -05:00
Leon
20a86d6613
doc fix: QR -> LU 2021-12-22 19:10:55 +00:00
metric-space
6ac6e7f75e First compiling commit for take-2 of polar-decomposition:
Code inspired by this thread: https://github.com/dimforge/nalgebra/pull/656
Main person behind this is LucasCampos
2021-12-22 00:12:27 -05:00
haibane_tenshi
24bb7bef76 fix(Matrix): relax T: Zero bound on Matrix::select_rows() and Matrix::select_columns() 2021-12-16 18:50:15 +03:00
Sébastien Crozet
e0a1b1bc34 Fix the special-case for 3x3 Real SVD 2021-12-09 11:52:37 +01:00
Sébastien Crozet
9389cf2adc
Merge pull request #1034 from dimforge/specific_svd
Add dedicated implementations of SVD for 2x2 and 3x3 real matrices.
2021-12-01 13:55:10 +01:00
Sébastien Crozet
9297cc5754 Implement DeviceCopy for UnitComplex, UnitQuaternion, and Unit<Matrix> instead of using a blanket impl 2021-11-26 18:13:37 +01:00
Sébastien Crozet
49e9ceea30 Add dedicated implementations of SVD for 2x2 and 3x3 real matrices. 2021-11-26 17:45:42 +01:00