Commit Graph

1955 Commits

Author SHA1 Message Date
Sébastien Crozet fe4e77cea2
Merge pull request #761 from dimforge/rapier
Update to the latest simba version.
2020-08-25 21:15:00 +02:00
Sébastien Crozet b96181f6c4 CI: don't eanble --all-features when running the tests.
This would enable the libm_force feature which results in less accurate results causing some tests to fail.
2020-08-25 21:04:37 +02:00
Sébastien Crozet a8f73cb7b2 Run cargo fmt. 2020-08-25 20:47:07 +02:00
Sébastien Crozet a6962dfadc Bump the simba dependency version. 2020-08-25 20:46:35 +02:00
Sébastien Crozet 46d1cf2231 Add a libm and libm-force feature to transitively enable the corresponding simba feature. 2020-08-25 20:46:35 +02:00
sebcrozet 7c69cbf326 Don't depend on serde_derive explicitly. 2020-08-25 20:46:04 +02:00
Sébastien Crozet 6300d34356 Add the ::ith constructor for vectors.
This initializes a vectors to zero except the i-th element set to a given value.
2020-08-25 20:46:04 +02:00
Sébastien Crozet d81a895a87 Switch license to Apache v2.0 + update sponsor link. 2020-08-19 19:48:16 +02:00
Michael Stevens 0a0799f76a Remove unnecessary Trait bound DimSub<Dynamic> in fn cholesky(self) 2020-08-03 18:20:26 +02:00
Frans Skarman 0f6c0e5233
Update version in docs header 2020-07-31 14:14:39 +02:00
Sébastien Crozet 2ab82befe4
Merge pull request #631 from Andlon/matrixcompare
Basic matrixcompare functionality
2020-07-17 01:10:04 -07:00
Andreas Longva d13b3de4e4 Use matrixcompare 0.1.3 for tests (fixes no-std test issues) 2020-07-17 09:54:30 +02:00
danielschlaugies f9f7169558
Add matrix exponential for complex matrices (#744)
Added matrix exponential for complex matrices.
2020-07-16 10:29:52 +02:00
CGMossa bc70258e5c
Why Option<_> (#746)
Add a comment about why `UnitQuaternion::rotation_between` returns an Option.
2020-07-16 09:27:06 +02:00
Sébastien Crozet f673979a2b
Merge pull request #745 from adamnemecek/wrt 2020-07-05 13:40:38 -07:00
Adam Nemecek 1cf7d12695 unrolled new_nonuniform_scaling_wrt_point 2020-07-05 13:29:08 -07:00
Adam Nemecek 6a1c4f84af cargo fmt 2020-07-02 10:31:30 -07:00
Adam Nemecek 4653f772bd added new_nonuniform_scaling_wrt_point to Matrix3 & Matrix4 2020-07-02 10:16:18 -07:00
Andreas Longva 217a2bf312 Add compare feature to tests run by Makefile 2020-06-29 19:07:44 +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
Sébastien Crozet 6cd0007354
Merge pull request #742 from jenanwise/remove-unused-rustfmt-toml 2020-06-23 11:47:44 -07:00
Jenan Wise 7a42513c1a Add empty rustfmt.toml.
Previous commit removed it entirely, but we should have an empty config
file instead to indicate that we use the base config.
2020-06-23 09:49:01 -07:00
Sébastien Crozet b1b18d17ee
Merge pull request #741 from jenanwise/dim-mismatch-verbose-errors
More verbose DMatrix dim asserts where possible.
2020-06-23 01:46:09 -07:00
Jenan Wise eca17586a6 Remove rustfmt.toml.
The CI rustfmt checker uses `stable` rust, not `nightly`, but the
config options in `rustfmt.toml` only work on nightly -- on stable,
there are ignored with warnings. This means that devs running stable
get a lot of warnings and devs running nightly will accidentally format
in a way that the CI checker forbids. (specifically, using
`where_single_line`). E.g.:

```
$ cargo +stable fmt -- --check
Warning: can't set `indent_style = Block`, unstable features are only available in nightly channel.
Warning: can't set `where_single_line = true`, unstable features are only available in nightly channel.
...etc

$ cargo +nightly fmt -- --check
-where
-    N: RealField,
-{
+where N: RealField {
...etc
```

Just removing the toml fixes this problem.
2020-06-22 19:22:33 -07: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
sebcrozet d5cbe56332 Merge branch 'dev'
# Conflicts:
#	src/linalg/cholesky.rs
2020-06-07 10:36:34 +02:00
sebcrozet 2198b0e6b4 Release v0.21.1 2020-06-07 10:29:10 +02:00
Sébastien Crozet a8f746f911
Merge pull request #736 from rustsim/cholesky_aosoa 2020-06-07 10:02:31 +02:00
sebcrozet 0be9a07f8b Use the #[rustfmt::skip] attribute instead of rustfmt_skip. 2020-06-07 09:30:21 +02:00
sebcrozet 2c2d1e4f07 Run cargo fmt. 2020-06-07 09:07:25 +02:00
Sébastien Crozet 3359e25435 Cholesky: add unchecked construction compatible with AoSoA SIMD. 2020-06-07 09:05:10 +02: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 b0ccf13c16
Merge pull request #726 from Hodapp87/typo 2020-04-21 21:12:23 +02:00
Chris Hodapp 7363caba17 Fix doc typo (v is right-singular vectors, not left) 2020-04-21 10:23:00 -04:00
Sébastien Crozet 3e73da38da
Merge pull request #725 from rustsim/fix-no-std 2020-04-21 10:46:04 +02:00
sebcrozet 6dc739b70b Remove unused allocator bound. 2020-04-21 10:37:14 +02:00
sebcrozet f4c0897764 Fix compilation of matrix exponential when targetting no-std. 2020-04-21 10:35:20 +02:00
Sébastien Crozet f30476eb2b
Merge pull request #724 from mxxo/alga-test 2020-04-21 10:03:40 +02:00
Max Orok a50e567fcd Fix alga cfg gate for some quickcheck tests. 2020-04-20 10:06:38 -04:00
Sébastien Crozet 66957980cc
Merge pull request #708 from fredrik-jansson-se/expm
Addition of matrix exponent for static size matrices.
2020-04-12 14:28:46 +02:00
Fredrik Jansson 583a8fb110 Removed unsafe immutable hack 2020-04-12 13:27:11 +02:00
Fredrik Jansson e914afe2af Added support for dynamic matrices 2020-04-12 11:59:06 +02:00
Fredrik Jansson 0a3ee99cdb Changed dimension name R to D
Changed N::from_x to crate::convert
2020-04-12 11:46:00 +02:00
Fredrik Jansson c7d9e415ce Converted tests to use relative_eq 2020-04-07 09:55:58 +02:00
Fredrik Jansson dbbf87a3dd Rebased against dev 2020-04-07 09:44:06 +02:00
Fredrik Jansson 4ec94408b5 Pub use of exp in the linalg module 2020-04-07 09:41:32 +02:00
Fredrik Jansson b3ef66fd14 Fixed bug in onenorm_matrix_power_norm 2020-04-07 09:41:32 +02:00
Fredrik Jansson e156561677 one_norm is not a public function 2020-04-07 09:41:32 +02:00
Fredrik Jansson 2696ffd7a1 Fixed bug by introducing one norm 2020-04-07 09:41:32 +02:00