Merge pull request #761 from dimforge/rapier

Update to the latest simba version.
This commit is contained in:
Sébastien Crozet 2020-08-25 21:15:00 +02:00 committed by GitHub
commit fe4e77cea2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 25 additions and 15 deletions

View File

@ -47,10 +47,10 @@ jobs:
- checkout - checkout
- run: - run:
name: test name: test
command: cargo test --all-features command: cargo test --features arbitrary --features serde-serialize --features abomonation-serialize --features sparse --features debug --features io --features compare --features libm
- run: - run:
name: test nalgebra-glm name: test nalgebra-glm
command: cargo test -p nalgebra-glm --all-features command: cargo test -p nalgebra-glm --features arbitrary --features serde-serialize --features abomonation-serialize --features sparse --features debug --features io --features compare --features libm
build-wasm: build-wasm:
executor: rust-executor executor: rust-executor
steps: steps:

View File

@ -24,13 +24,16 @@ default = [ "std" ]
std = [ "matrixmultiply", "rand/std", "rand_distr", "simba/std" ] std = [ "matrixmultiply", "rand/std", "rand_distr", "simba/std" ]
stdweb = [ "rand/stdweb" ] stdweb = [ "rand/stdweb" ]
arbitrary = [ "quickcheck" ] arbitrary = [ "quickcheck" ]
serde-serialize = [ "serde", "serde_derive", "num-complex/serde" ] serde-serialize = [ "serde", "num-complex/serde" ]
abomonation-serialize = [ "abomonation" ] abomonation-serialize = [ "abomonation" ]
sparse = [ ] sparse = [ ]
debug = [ "approx/num-complex", "rand/std" ] debug = [ "approx/num-complex", "rand/std" ]
alloc = [ ] alloc = [ ]
io = [ "pest", "pest_derive" ] io = [ "pest", "pest_derive" ]
compare = [ "matrixcompare-core" ] compare = [ "matrixcompare-core" ]
libm = [ "simba/libm" ]
libm-force = [ "simba/libm_force" ]
[dependencies] [dependencies]
typenum = "1.11" typenum = "1.11"
@ -40,12 +43,11 @@ num-traits = { version = "0.2", default-features = false }
num-complex = { version = "0.2", default-features = false } num-complex = { version = "0.2", default-features = false }
num-rational = { version = "0.2", default-features = false } num-rational = { version = "0.2", default-features = false }
approx = { version = "0.3", default-features = false } approx = { version = "0.3", default-features = false }
simba = { version = "0.1", default-features = false } simba = { version = "0.2", default-features = false }
alga = { version = "0.9", default-features = false, optional = true } alga = { version = "0.9", default-features = false, optional = true }
rand_distr = { version = "0.2", optional = true } rand_distr = { version = "0.2", optional = true }
matrixmultiply = { version = "0.2", optional = true } matrixmultiply = { version = "0.2", optional = true }
serde = { version = "1.0", optional = true } serde = { version = "1.0", features = [ "derive" ], optional = true }
serde_derive = { version = "1.0", optional = true }
abomonation = { version = "0.7", optional = true } abomonation = { version = "0.7", optional = true }
mint = { version = "0.5", optional = true } mint = { version = "0.5", optional = true }
quickcheck = { version = "0.9", optional = true } quickcheck = { version = "0.9", optional = true }
@ -76,6 +78,3 @@ path = "benches/lib.rs"
[profile.bench] [profile.bench]
lto = true lto = true
#[patch.crates-io]
#simba = { path = "../simba" }

View File

@ -24,5 +24,5 @@ abomonation-serialize = [ "nalgebra/abomonation-serialize" ]
[dependencies] [dependencies]
num-traits = { version = "0.2", default-features = false } num-traits = { version = "0.2", default-features = false }
approx = { version = "0.3", default-features = false } approx = { version = "0.3", default-features = false }
simba = { version = "0.1", default-features = false } simba = { version = "0.2", default-features = false }
nalgebra = { path = "..", version = "0.21", default-features = false } nalgebra = { path = "..", version = "0.21", default-features = false }

View File

@ -26,7 +26,7 @@ intel-mkl = ["lapack-src/intel-mkl"]
nalgebra = { version = "0.21", path = ".." } nalgebra = { version = "0.21", path = ".." }
num-traits = "0.2" num-traits = "0.2"
num-complex = { version = "0.2", default-features = false } num-complex = { version = "0.2", default-features = false }
simba = "0.1" simba = "0.2"
serde = { version = "1.0", optional = true } serde = { version = "1.0", optional = true }
serde_derive = { version = "1.0", optional = true } serde_derive = { version = "1.0", optional = true }
lapack = { version = "0.16", default-features = false } lapack = { version = "0.16", default-features = false }

View File

@ -1011,6 +1011,14 @@ where
N: Scalar + Zero + One, N: Scalar + Zero + One,
DefaultAllocator: Allocator<N, R>, DefaultAllocator: Allocator<N, R>,
{ {
/// The column vector with `val` as its i-th component.
#[inline]
pub fn ith(i: usize, val: N) -> Self {
let mut res = Self::zeros();
res[i] = val;
res
}
/// The column vector with a 1 as its first component, and zero elsewhere. /// The column vector with a 1 as its first component, and zero elsewhere.
#[inline] #[inline]
pub fn x() -> Self pub fn x() -> Self

View File

@ -90,11 +90,9 @@ an optimized set of tools for computer graphics and physics. Those features incl
#[cfg(feature = "arbitrary")] #[cfg(feature = "arbitrary")]
extern crate quickcheck; extern crate quickcheck;
#[cfg(feature = "serde")] #[cfg(feature = "serde-serialize")]
extern crate serde;
#[cfg(feature = "serde")]
#[macro_use] #[macro_use]
extern crate serde_derive; extern crate serde;
#[cfg(feature = "abomonation-serialize")] #[cfg(feature = "abomonation-serialize")]
extern crate abomonation; extern crate abomonation;

View File

@ -5,6 +5,10 @@ mod bidiagonal;
mod cholesky; mod cholesky;
mod convolution; mod convolution;
mod determinant; mod determinant;
// FIXME: this should not be needed. However, the exp uses
// explicit float operations on `f32` and `f64`. We need to
// get rid of these to allow exp to be used on a no-std context.
#[cfg(feature = "std")]
mod exp; mod exp;
mod full_piv_lu; mod full_piv_lu;
pub mod givens; pub mod givens;
@ -27,6 +31,7 @@ mod symmetric_tridiagonal;
pub use self::bidiagonal::*; pub use self::bidiagonal::*;
pub use self::cholesky::*; pub use self::cholesky::*;
pub use self::convolution::*; pub use self::convolution::*;
#[cfg(feature = "std")]
pub use self::exp::*; pub use self::exp::*;
pub use self::full_piv_lu::*; pub use self::full_piv_lu::*;
pub use self::hessenberg::*; pub use self::hessenberg::*;