nnmm
54f1c71742
Small docs improvements
2020-03-02 12:45:39 +01:00
sebcrozet
0cc1bac816
Bump dependencies.
2019-10-28 14:15:03 +01:00
Edoardo Morandi
d0d1172d4b
Rand 0.6 -> 0.7
...
* Bumped rand version to 0.7
* Added dependency to rand_distr
* Bumped quickcheck version to 0.9 (because of rand)
* Bumped rand_xorshift version to 0.2
2019-10-28 14:15:03 +01:00
Jake Shadle
4fa4a6b854
HTTPS All The Things ( #608 )
...
* Use https for all links where it is valid
* Fix random links to external sites
2019-08-27 22:05:28 +02:00
Las
3d97b21aea
Fix incorrect documentation from `s/Real/&Field`
2019-08-27 22:05:28 +02:00
Jack Wrenn
2e273ad6c5
prevent constructing `MatrixSliceMutMN` for which disjoint indices may alias the same linear index
...
Fixes #486 .
2019-08-27 22:05:28 +02:00
sebcrozet
b5b81a0ba9
Bump version numbers.
2019-03-31 15:25:54 +02:00
sebcrozet
7dbff7c389
Continue reexporting the deprecated alga::general::Real trait.
2019-03-31 12:26:20 +02:00
sebcrozet
56f961c4bc
Reexport Complex from num_complex.
2019-03-26 18:02:14 +01:00
sebcrozet
4ef4001836
Rename Real to RealField.
2019-03-25 11:21:41 +01:00
sebcrozet
5b28c39fa7
Rename Complex to ComplexField.
2019-03-25 11:19:36 +01:00
sebcrozet
3cbe60523a
2018 edition.
2019-03-23 14:33:47 +01:00
sebcrozet
921a05d523
Implement some BLAS opertaions involving adjoint.
2019-03-23 11:48:12 +01:00
sebcrozet
1001e8ee0f
Cleanup warnings and rename Schur -> RealSchur
2019-03-23 11:46:56 +01:00
sebcrozet
7c91f2eeb5
Use Complex instead of Real whenever possible on the base/ module.
2019-02-23 11:24:07 +01:00
sebcrozet
fac709b0c0
Release nalgebra v0.17 and nalgebra-glm v0.3.
2019-02-03 17:03:12 +01:00
sebcrozet
08f31837a8
Update to alga 0.8.
2019-02-03 15:52:15 +01:00
sebcrozet
fc24db8ff3
Merge branch 'master-public' into sparse
...
# Conflicts:
# Cargo.toml
# examples/matrix_construction.rs
# nalgebra-glm/src/constructors.rs
# nalgebra-glm/src/ext/matrix_clip_space.rs
# nalgebra-glm/src/ext/matrix_transform.rs
# nalgebra-glm/src/ext/mod.rs
# nalgebra-glm/src/ext/quaternion_common.rs
# nalgebra-glm/src/gtx/quaternion.rs
# nalgebra-glm/src/gtx/rotate_vector.rs
# nalgebra-glm/src/lib.rs
# nalgebra-glm/src/traits.rs
# nalgebra-lapack/src/cholesky.rs
# nalgebra-lapack/src/eigen.rs
# nalgebra-lapack/src/hessenberg.rs
# nalgebra-lapack/src/lu.rs
# nalgebra-lapack/src/qr.rs
# nalgebra-lapack/src/schur.rs
# nalgebra-lapack/src/svd.rs
# nalgebra-lapack/src/symmetric_eigen.rs
# rustfmt.toml
# src/base/array_storage.rs
# src/base/blas.rs
# src/base/cg.rs
# src/base/default_allocator.rs
# src/base/edition.rs
# src/base/iter.rs
# src/base/matrix.rs
# src/base/swizzle.rs
# src/base/vec_storage.rs
# src/geometry/mod.rs
# src/geometry/point_construction.rs
# src/geometry/quaternion.rs
# src/geometry/similarity.rs
# src/geometry/translation.rs
# src/geometry/unit_complex_construction.rs
# src/linalg/bidiagonal.rs
# src/linalg/cholesky.rs
# src/linalg/full_piv_lu.rs
# src/linalg/hessenberg.rs
# src/linalg/lu.rs
# src/linalg/permutation_sequence.rs
# src/linalg/qr.rs
# src/linalg/schur.rs
# src/linalg/svd.rs
# src/linalg/symmetric_eigen.rs
# src/linalg/symmetric_tridiagonal.rs
# tests/geometry/point.rs
# tests/geometry/quaternion.rs
# tests/lib.rs
# tests/linalg/eigen.rs
# tests/linalg/svd.rs
2019-02-03 12:53:41 +01:00
Jack Wrenn
8b8f127f8d
Deprecate `origin`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
daadac7647
Deprecate `try_normalize`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
8a5e062e7e
Deprecate `normalize`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
e89faca588
Deprecate `magnitude_squared`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
770489c664
Deprecate `magnitude`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
2bb7c011b1
Deprecate `norm_squared`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
e55c72fddc
Deprecate `norm`.
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
03f7c2d286
Deprecate `angle`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
52b8155c67
Deprecate `dot`
...
See #371 .
2018-12-16 12:58:51 +01:00
Jack Wrenn
aac29b70ea
Deprecate `abs`
...
See #371
2018-12-16 12:58:51 +01:00
sebcrozet
8341ec2f10
Run rustfmt.
2018-11-06 18:32:20 +01:00
sebcrozet
14ad10a7e0
Add rustfmt.toml and run it.
2018-10-27 15:00:18 +02:00
sebcrozet
9fa3e7a769
Implement CsMatrix: axpy_cs, transpose, Add and Mul.
2018-10-20 22:42:16 +02:00
Bruce Mitchener
47fe851173
Add favicons to docs.
2018-10-16 18:28:39 +02:00
Bruce Mitchener
3be727e76b
Capitalize 'Euclidean'.
2018-10-09 08:31:38 +02:00
Bruce Mitchener
a8ae62ea52
Improve cross-linking and cross-referencing in docs.
2018-09-27 06:00:32 +02:00
Bruce Mitchener
57fa7099aa
Call `base` that instead of `based`.
2018-09-27 05:49:18 +02:00
Bruce Mitchener
175c41ed3a
Typo fixes.
2018-09-24 21:15:07 +02:00
Jacob Kiesel
787d20cff4
Add magnitude synonym functions for ease of use
2018-09-21 18:28:44 +02:00
sebcrozet
24eb7880f3
Release v0.16.0.
2018-07-20 16:35:57 +02:00
sebcrozet
c2d597e744
Release v0.15.0.
2018-05-26 22:26:06 +02:00
sebcrozet
d759db682c
Make the alloc feature actually work.
2018-05-26 22:07:57 +02:00
sebcrozet
ca093fad29
Move core/* to base/* + add conditional compilation to dynamics matrices when no_std is enabled.
2018-05-26 22:07:57 +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
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
adbb7d989e
Add aliases for matrix slices.
2018-02-03 13:59:05 +01:00
Dzmitry Malyshau
7d96007bdb
Mint vector conversions
2017-10-09 20:22:24 +02:00
Eduard Bopp
3a1fb0ed88
Fix feature flagging for abomonation-serialize
...
The tests can now be run without the abomonation feature. Also fixes a
bug in the feature flagging for abomonation.
2017-09-18 20:10:32 +02:00
Sébastien Crozet
afef66227e
Merge branch 'master' into abomonation
2017-08-15 19:18:39 +02:00
Sébastien Crozet
3e349b80cf
Implement serde traits for all linalg structs.
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
3f70af97dd
Add the most common matrix decompositions.
2017-08-15 19:07:18 +02:00
Eduard Bopp
e09af0ca82
Implement Abomonation for remaining types
2017-08-14 14:32:02 +02:00
Eduard Bopp
65fa4cf740
Implement Abomonation for static matrices
2017-08-14 12:07:06 +02:00
Eduard Bopp
9e02b13f3e
Refer to other conversion method in documentation
...
This is motivated by #235 hoping to improve discoverability of this
feature.
2017-07-28 20:13:52 +02:00
George Burton
7b17fa58e8
update crate documentation to point to latest
2017-05-20 19:39:02 +01:00
Sébastien Crozet
cbbe1a2aee
Fix html_root_url.
2017-04-09 13:19:27 +02:00
Sébastien Crozet
42b48563be
Make serde optional behind the "serde-serialize" feature.
2017-02-15 22:04:34 +01:00
Sébastien Crozet
086e6e719f
Doc + slerp + conversions.
2017-02-12 18:17:09 +01:00
Sébastien Crozet
99b6181b1e
Complete library rewrite.
...
See comments on #207 for details.
2016-12-04 22:47:36 +01:00
Sébastien Crozet
d442b0479d
Prevent the README cargo example to be compiled as a test.
2016-08-29 21:22:09 +02:00
Sébastien Crozet
8f5b60421c
Add an example dependency entry to the README.
2016-08-29 21:16:15 +02:00
Sébastien Crozet
d29ff53329
Implement traits from the algebra crate.
2016-08-21 21:35:56 +02:00
Sébastien Crozet
d45c242a15
Add a `Unit` wrapper type, remove UnitQuaternion.
...
The `Unit` wrapper type ensures that elements of the underlying type has a unit norm.
For example, `Unit<Vector3>` designates an element of S².
In particular `UnitQuaternion<N>` is now a type alias for `Unit<Quaternion<N>>`.
2016-08-16 10:27:07 +02:00
Sébastien Crozet
7b4a57c224
Fix some clippy warning.
...
The following lints were disabled:
* wrong_self_convention
* needless_range_loop
* reverse_range_loop
* len_without_is_empty
* explicit_iter_loop
* many_single_char_names
* similar_names
* too_many_arguments
* float_cmp
* new_without_default
2016-08-11 23:08:21 +02:00
Sébastien Crozet
df872f407d
Replace "col" by "column".
...
Related to #176 .
2016-04-18 08:32:12 +02:00
Sébastien Crozet
e6156727f2
Use full names for everything.
...
Note that `sqdist` becomes `distance_squared` and `sqnorm` becomes `norm_squared`.
Fix #176 .
2016-04-17 17:26:58 +02:00
Jeroen Bollen
dea0ccc1fd
Made PntAsVec use associated types. ( #179 )
...
Fix #177
2016-04-17 09:23:37 +02:00
Sébastien Crozet
60c0f32e1c
Feature-gate the `VecN` structure.
...
`rustc` is has a hard time compiling it from time to time.
2016-03-24 19:44:08 +01:00
Sébastien Crozet
c1ec00cfe7
Complete the documentation.
2016-03-24 19:44:08 +01:00
Sébastien Crozet
88fb33cf44
Remove useless or incomplete structs: `Vec0`, `Pnt0`, `Iso4`, `Rot4`.
2016-03-24 19:43:50 +01:00
Sébastien Crozet
0c8b8bfcdb
Add similarity transformations Sim2 and Sim3 (uniform scale followed by a rotation followed by a translation).
2016-03-24 19:03:40 +01:00
Sébastien Crozet
f8f4924e47
Add vector perametrizable by their sizes.
2016-03-24 19:03:29 +01:00
Sébastien Crozet
581251d5b4
Implement dynamic matrix with a maximum size.
...
Those are named DMat1 to DMat6 and have the same relation with DMat as DVec1 to DVec6 are related
to DVec.
As a side effect, the method `to_vec` of DMat was renamed `into_vec` to be more in line with the std lib.
Addresses the second point of #100 .
2016-01-10 14:50:02 +01:00
Daniel
c4753aaf65
Implemented QR algorithm with initial transformation to Hessenberg form and Wilkinson shift for symmetric matrices
2015-09-22 15:17:03 +02:00
Sébastien Crozet
ca3c4e73c5
Fix warnings generated by the last rust-nightly.
2015-08-20 21:41:40 +02:00
Daniel
b197959e2b
Implemented Cholesky decomposition with tests
2015-08-07 14:44:25 +02:00
Sébastien Crozet
44df67bde2
Fix the README examples.
2015-06-06 14:28:34 +02:00
Sébastien Crozet
ea86890647
Add the `RotationTo` trait to compute the delta rotation between two elements.
...
Use `::angle_between` or `.angle_to` to compute the rotation angle between two vectors/rotation
matrices/unit quaternions.
Use `::rotation_between` or `.rotation_to` to compute the rotation matrix/unit quaternion to
transform a vector/rotation matrix/uniq quaternion to another.
Fix #130 .
2015-06-01 22:39:27 +02:00
Sébastien Crozet
ca87f9eb95
Rollup of minor beaking changes.
...
Use associated types for the `Outer` trait.
Add a `Repeat` trait for constructing a multidimensional value by repeating an element.
Split the `Diag` trait into `Diag` and `DiagMut`.
Implement `RustEncodable` for `Identity`.
2015-05-25 14:47:14 +02:00
Eduard Bopp
730dc40b01
Remove operator hacks
...
The LMul, RMul and Scalar* traits were only necessary due to language
limitations regarding trait bounds that are now gone. The Mat trait is now
expressed in terms of regular operator traits.
However, due to the removal of these traits this constitutes a breaking change.
2015-05-06 13:23:14 +02:00
Sébastien Crozet
36223991c1
Remove all deprecated functions/traits.
2015-04-18 14:58:38 +02:00
Sébastien Crozet
313ca1b8ae
Use the `Zero` and `One` traits from the `num` crate.
...
Remove our own definitions of those traits.
Also fixes test-related attributes to make them compile again.
2015-04-18 14:38:34 +02:00
Eduard Bopp
e453bfed47
Use Float trait from num crate
2015-04-04 17:53:25 +02:00
Anders Kaseorg
005aebc498
Remove #![feature(core)]
...
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-04-02 04:53:55 -04:00
Anders Kaseorg
1cb3314064
Add type annotation required by rustc 2015-03-31
...
Resolves this error, which is fallout from
https://github.com/rust-lang/rust/pull/23673 :
src/structs/dmat.rs:501:43: 501:74 error: type annotations required: cannot resolve `<f64 as core::ops::Div<_>>::Output == f64` [E0284]
src/structs/dmat.rs:501 let normalizer: N = Cast::from(1.0f64 / Cast::from(self.nrows));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2015-03-31 17:49:09 -04:00
Eduard Bopp
ef4a52d53b
Remove unused feature unboxed_closures
2015-03-29 13:45:33 +02:00
Eduard Bopp
de2351a441
Only use test feature in test configuration
2015-03-29 13:45:33 +02:00
Eduard Bopp
70b4def5cc
Stop using unstable std_misc feature
...
It was only used for `Float::{max_value, min_value}` in non-necessary places,
so for now this helps stabilization for Rust 1.0.
2015-03-29 13:45:33 +02:00
Eduard Bopp
df93ed2d1c
Replace quoted crate declarations
2015-03-29 13:00:09 +02:00
Sébastien Crozet
0988b837dc
Update to the last rust-nighly.
...
Version of rustc: rustc 1.0.0-nightly (123a754cb 2015-03-24).
2015-03-25 22:39:06 +01:00
Ben Foppa
8d28d7dbd6
FromIterator changes and phantom type annotations.
2015-02-20 18:02:27 -05:00
Eduard Bopp
f14f240aa7
Migrate random generation to use crates.io rand
...
The standard library random generation facilities have been deprecated in
favour of a new crate on crates.io.
2015-02-17 13:45:16 +01:00
Sébastien Crozet
316298f825
Merge pull request #87 from aepsil0n/workaround-ice
...
Workaround internal compiler error.
2015-02-04 22:21:51 +01:00
Eduard Bopp
27bfe381d9
Workaround internal compiler error
...
The associated type bound here was not parsed correctly. This is likely due to
the ICE described in rust-lang/rust#20413 .
2015-02-03 19:18:58 +01:00
Eduard Bopp
3107dd607b
Rename similar in-place and copy methods
...
Fixes #52 .
This renames pairs of methods like `normalize_cpy`, `normalize` to `normalize`
and `normalize_mut`. Note that the previous in-place operations had the same
name that now belongs to the copy operations. Therefore this is a breaking
change.
On a similar note, the `Quat::conjugate` method was also renamed to
`conjugate_mut` and a new copying method has taken its place. This appears to
be a similar issue (apart from the lack of the copy operation) and thus was
dealt with here, too.
2015-02-01 23:23:57 +01:00
Sébastien Crozet
39fd7c1ae7
Silence warnings and replace `Show` by `Debug`.
2015-02-01 16:15:55 +01:00
Brett Levin
8c205ea2d0
fix warning from unneeded old_orphan_check
2015-01-10 11:31:26 -08:00
Eduard Bopp
1103996b83
Implement Arbitrary for (almost) all types
...
Rot4 and Iso4 had to be left out, since Rot4 apparently lacks a working
constructor.
Thereby (almost) all types in nalgebra can now be used for quickcheck-style
testing.
"arbitrary" is now a conditionally compiled feature that contains these impls
adding a dependency on quickcheck.
2015-01-10 01:36:13 +01:00