nathan.eckert
92a51662bf
Remove Allocator<usize, > from display
2021-07-08 14:18:22 +02:00
Rémi Lauzier
78da5209e9
Fix some clippy warnings
2021-07-03 23:43:45 -04:00
Violeta Hernández
281b140365
Fix most clippy warnings
2021-06-18 09:45:37 +02:00
Malte Tammena
38e9a5da33
Annotate get_mut
/slice
-like functions with #[must_use]
2021-06-07 17:15:36 +02:00
Malte Tammena
9fb963017f
Simplify default #[must_use]
annotation
2021-06-07 16:34:03 +02:00
Malte Tammena
39aa52d019
Add must_use annotations in src/**/*.rs
2021-06-06 14:46:36 +02:00
David Koloski
9fff10b1f0
Move rkyv impls into separate modules
2021-05-09 12:24:07 -04:00
David Koloski
38dd3345e0
Switch to distributive implementations
2021-05-09 12:24:03 -04:00
David Koloski
b48b104d57
Add rkyv implementations for a few types
2021-05-09 12:23:16 -04:00
Andreas Longva
922393b04f
Enable from_{}_storage only when std/alloc available
2021-05-07 09:09:10 +02:00
Andreas Longva
3a3bc55f66
Move from_{}_storage impl blocks to matrix.rs
2021-05-07 09:00:29 +02:00
Crozet Sébastien
95b021dbfb
Don't enable serde by default.
...
Don't enable `serde/std` by default.
Add a `serde-serialize-no-std` feature to enable serde without its default features.
2021-04-12 12:14:16 +02:00
Crozet Sébastien
ee1c0be2dd
Add a note about the PhantomData in Matrix.
2021-04-12 11:27:21 +02:00
Crozet Sébastien
bedf48dbc2
Mark small matrix/vector "new" constractors as const-fn.
2021-04-12 09:18:17 +02:00
Crozet Sébastien
24d546d3b6
Rename generic parameter N -> T
2021-04-11 13:57:54 +02:00
Crozet Sébastien
d17088398a
Replace generic-array with a regular array based on min-const-generics.
2021-04-11 13:53:45 +02:00
Crozet Sébastien
f2c49aecb0
Add "cast" methods to cast the type of the components of most nalgebra types.
2021-03-05 17:08:46 +01:00
Sébastien Crozet
21cc428480
Merge pull request #803 from aweinstock314/no_unsound_assume_init
...
Propagate `mem::MaybeUninit` through the return types of `Allocator::…
2021-02-25 15:46:49 +01:00
Crozet Sébastien
dc15261ec1
Move the bytemuck impls to GenericArray and add a transitive impl for matrices.
2021-02-25 14:10:34 +01:00
Avi Weinstock
ee32f7d4cf
Run cargo fmt
.
2021-02-25 13:42:23 +01:00
Avi Weinstock
cd12422d6f
Change zero_or_uninitialized_generic
to unimplemented_or_uninitialized_generic
, and use it instead of manually dispatching on feature=no_unsound_assume_init
in functions without N: Zero
.
2021-02-25 13:42:23 +01:00
Avi Weinstock
36a3ac814f
Propagate mem::MaybeUninit
through the return types of Allocator::allocate_uninitialized
and Matrix::new_uninitialized_generic
.
...
Most call sites still invoke UB through `assume_init`. Said call sites instead invoke `unimplemented!()` if the `no_unsound_assume_init` feature is enabled, to make it easier to gradually fix them.
Progress towards #556 .
2021-02-25 13:42:23 +01:00
iMplode nZ
c667b1f9c8
Added bytemuck implementations for static storages.
2021-02-10 20:12:24 -08:00
Philippe Renon
bbc6a28f7d
clippy: fix len_without_is_empty warnings
2020-11-19 12:24:26 +01:00
Philippe Renon
f1211b0d99
clippy: remove unused imports
2020-11-16 14:46:04 +01:00
Crozet Sébastien
e852df6124
Add sections for most Matrix methods.
2020-11-15 16:57:49 +01:00
Crozet Sébastien
9a4cf0b69f
Reorganize matrix construction macros.
2020-11-13 18:34:47 +01:00
Crozet Sébastien
45f2fc4f92
Move all matrix decomposition methods under a single impl.
2020-11-13 17:26:47 +01:00
Philippe Renon
6293d3375b
clippy: fix #redundant_field_names
2020-10-11 11:42:22 +02: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
Jenan Wise
85a64fb517
More verbose DMatrix dim asserts where possible.
...
Previously, most dimension mismatch asserts used raw `assert!` and did
not include the mismatching dimensions in the panic message. When using
dynamic matrices, this led to somewhat-opaque panics such as:
```rust
let m1 = DMatrix::<f32>::zeros(2, 3);
let m2 = DMatrix::<f32>::zeros(5, 10);
m1 + m2 // panic: Matrix addition/subtraction dimensions mismatch.
```
This patch adds dimension information in the panic messages wherever
doing so did not add additional bounds checks, mostly by simply changing
`assert!(a == b, ...)` cases to `assert_eq!`. After:
```rust
// panic: assertion failed: `(left == right)`
// left: `(2, 3)`,
// right: `(5, 10)`: Matrix addition/subtraction dimensions mismatch.
```
Note that the `gemv` and `ger` were not updated, as they are called from
within other functions on subset matricies -- e.g., `gemv` is called
from `gemm` which is called from `mul_to` . Including dimension
information in the `gemv` panic messages would be confusing to
`mul` / `mul_to` users, because it would include dimensions of the column
vectors that `gemm` passes to `gemv` rather than of the original `mul`
arguments. A fix would be to add bounds checks to `mul_to`, but that may
have performance and redundancy implications, so is left to another
patch.
2020-06-22 17:18:53 -07:00
Sébastien Crozet
423b4b27b0
Merge pull request #585 from fusion-engineering-forks/pr-default
2020-06-07 08:58:47 +02:00
Sébastien Crozet
b81aed767f
Merge pull request #713 from rustsim/soa_simd
...
Switch to Simba and make the base and geometry modules mostly SIMD AoSoA friendly.
2020-04-05 21:16:48 +02:00
sebcrozet
bbb3be512e
Run cargo fmt.
2020-04-05 18:49:48 +02:00
Chia-Sheng Chen
65bc037b5d
Supplement the document of fn as_ptr
2020-04-03 17:56:08 +08:00
Chia-Sheng Chen
b996a6f0ce
Supplement the document of fn vector_to_matrix_index
2020-04-03 17:39:49 +08:00
sebcrozet
f8cd26cfa9
Replace alga by simba.
2020-03-21 12:16:46 +01:00
Sébastien Crozet
002e735c76
Make blas, matrix, norm, and ops.rs compatible with SoA Simd.
2020-03-17 17:58:36 +01:00
Sébastien Crozet
a67c451ae5
Merge pull request #607 from cauthmann/dev
...
Add #[must_use] to all functions with a _mut variant (#598 )
2020-03-02 12:45:39 +01:00
S.Brandeis
08d990f276
Make shape check a one-liner in impl PartialEq for Matrix
2020-03-02 12:45:38 +01:00
S.Brandeis
d35ef06f44
Remove unnecessary PartialEq trait use in PartialEq impl for Matrix
2020-03-02 12:45:38 +01:00
S.Brandeis
403e63dc5e
Remove trailing whitespace
2020-03-02 12:45:38 +01:00
S.Brandeis
50ea55e877
Modify PartialEq for Matrix to allow comparison with all types of Matrix
2020-03-02 12:45:38 +01:00
S.Brandeis
2b8410e08b
Fix bug - PartialEq for Matrix no longer panics when shapes do not match
2020-03-02 12:45:38 +01:00
Sébastien Crozet
12fa938516
Merge pull request #686 from rustsim/fix_vector_slerp
...
Fix slerp for regular vectors.
2020-03-02 12:45:38 +01:00
sebcrozet
e911bfc7db
Fix doc-test for vector slerp.
2020-03-02 12:45:38 +01:00
sebcrozet
5f4a0c7b13
Fix slerp for regular vectors.
2020-03-02 12:45:38 +01:00
Avi Weinstock
774f4da3e2
Add Clone
to Scalar
, providing a default implementation of inlined_clone
. Change Scalar + Clone
bounds to just Scalar
.
2020-03-02 12:45:37 +01:00
Avi Weinstock
52aac8b975
Add inlined_clone to Scalar, and relax bounds from Scalar + Copy
to Scalar + Clone
nearly everywhere.
...
The various nalgebra-lapack FooScalars are still Copy because they make use of uninitialized memory.
nalgebgra-glm Number still uses Copy because upstream `approx` requires it.
2020-03-02 12:45:37 +01:00