Sébastien Crozet
314f0c0043
Add na::eigen_qr
that performs an eigendecomposition using the qr algorithm.
2014-08-16 15:34:34 +02:00
Sébastien Crozet
663f8b3ccb
Add a Diag
to build, get and set a matrix diagonal.
2014-08-16 13:22:53 +02:00
Sébastien Crozet
40c9915870
Add the types: DVec1, .., DVec6.
...
They are stack-allocated, dynamically sized vectors with a maximum size.
This is useful for slicing small matrices, without allocation.
2014-08-16 12:16:26 +02:00
Sébastien Crozet
7d6884c3df
Add a Det
trait to compute the determinant + implement it for Mat{1,2,3}
.
2014-08-11 19:54:13 +02:00
Sébastien Crozet
725f53d1e7
Add a clean
rule to the makefile.
2014-07-27 09:13:43 +02:00
Sébastien Crozet
2f0234e7ac
Avoid modulo on DMat::from_fn
.
2014-07-27 09:13:13 +02:00
Sébastien Crozet
335bdd8a01
Merge pull request #16 from nathanic/master
...
Fix coordinate calculation in DMat::from_fn().
2014-07-27 09:11:18 +02:00
Nathan Stien
ebe1ed1f16
Fix coordinate calculation in DMat::from_fn().
...
The builder function `f` was receiving incorrect coordinates, often
involving a uint underflow.
Added a test case to verify the new behavior.
2014-07-26 19:03:37 -05:00
Sébastien Crozet
97c2e71fd6
Remove crate_type
from Cargo.toml.
2014-07-22 19:58:26 +02:00
Sébastien Crozet
5b1388888b
Update the compilation section of the README.
2014-07-14 17:56:35 +02:00
Sébastien Crozet
65211aa89a
Cleanup the Makefile + update travis.yml.
2014-07-14 16:27:46 +02:00
Sébastien Crozet
11ee4e46b1
Make cargo build a rlib too.
2014-07-14 13:48:31 +02:00
Sébastien Crozet
2ff660dfe1
Add a ScalarMul
and a ScalarDiv
trait.
...
Those might be useful to overcome rust limitations wrt operator overloading.
2014-07-13 11:43:05 +02:00
Sébastien Crozet
5929640883
Fix travis.yml.
2014-07-12 09:34:38 +02:00
Sébastien Crozet
e3d1bf6f92
Update to the last rust-nightly.
...
Version of rustc: 0.11.0-nightly (5ad7286dc37839b7234ff51aab172e48935869d8 2014-07-12 00:31:46 +0000)
2014-07-12 09:30:49 +02:00
Sébastien Crozet
7b9a3f2bb9
Update to the last rust-nightly.
...
Version of rustc: 0.11.0-nightly (459f155f81291c46633e86a480628b50304ffb1c 2014-07-04 23:46:44 +0000).
2014-07-05 10:33:57 +02:00
Sébastien Crozet
997cd4f888
Add Cargo.toml.
2014-06-24 19:25:57 +02:00
Sébastien Crozet
ecbc159521
Update some links to point on nalgebra.org
.
2014-06-09 21:48:24 +02:00
Sébastien Crozet
efc2f46019
Update to the last rust-nightly.
...
Version of rustc: 0.11.0-pre-nightly (e55f64f 2014-06-09 01:11:58 -0700).
2014-06-09 21:03:36 +02:00
Sébastien Crozet
370bc66f7a
Merge pull request #15 from garrison/patch-1
...
Update README.md: extern mod -> extern crate.
2014-06-08 07:21:11 +02:00
Jim Garrison
bba2278b64
Update README.md: extern mod -> extern crate
2014-06-07 17:07:03 -07:00
Sébastien Crozet
5066d6b9de
Update to the last rust-nightly.
...
Version of rustc: 0.11.0-pre-nightly (918dbfe 2014-06-02 20:51:30 -0700).
2014-06-03 22:37:46 +02:00
Sébastien Crozet
f6c597f102
Update to the last rust-nightly.
...
Version of rustc: 0.11.0-pre-nightly (faa7ba7 2014-05-31 01:06:40 -0700).
Main changes:
* `cmp::Ord` -> `cmp::PartialOrd`
* `cmp::Eq` -> `cmp::PartialEq`
Note that `na::PartialOrd` is not the same as `cmp::PartialOrd`
(which lacks a lot of partial ordering operators).
2014-06-01 15:22:11 +02:00
Sébastien Crozet
fbe9cf7843
Merge pull request #14 from Shr1k3/master
...
Fixed issue #13
2014-05-30 20:44:41 +02:00
Leo Lahti
f8ad8aa02b
Fixed issue #13
2014-05-30 21:14:16 +00:00
Sébastien Crozet
40c5f5deb8
Rename matrix-scalar and vector-scalar operator-overloading-related traits to avoid name clashes.
2014-05-22 19:54:54 +02:00
Franklin Delehelle (Vampire.local)
6468360edb
Compile with nightlies
2014-05-21 13:08:04 +02:00
Sébastien Crozet
cfa18252bc
Merge pull request #9 from vbarrielle/genericQR
...
Generic QR factorization
2014-05-16 21:16:07 +02:00
Vincent Barrielle
987b91767a
update to the latest rust: FloatMath for math functions (sin/exp/...)
...
Also removed a bunch of duplicate trait usages
2014-05-16 21:04:35 +02:00
Vincent Barrielle
b3bc4c66f1
QR decomposition mentionned in README
2014-05-16 19:55:20 +02:00
Vincent Barrielle
f8ac86effc
update to latest rust
2014-05-13 08:29:56 +02:00
Vincent Barrielle
a1fdec3b52
Merge remote-tracking branch 'origin/master' into genericQR
2014-05-13 08:27:52 +02:00
Vincent Barrielle
73c6610048
new_identity and housholder matrix available under na::
2014-05-12 21:54:59 +02:00
Vincent Barrielle
3dc0e27fd2
fix typo
2014-05-12 21:54:18 +02:00
Sébastien Crozet
eb6370f78e
Merge pull request #8 from alexanderchr/master
...
std::cast::transmute -> std::mem::transmute
2014-05-12 19:52:46 +02:00
Vincent Barrielle
76a8bc3cf1
QR factorization for fixed size matrices.
...
The ColSlice implementation for fixed size matrices returns a DVec,
while this is probably not optimal performance-wise, the dynamic nature
of the result makes this necessary. Using a data type presenting the
ImmutableVector trait would solve this, but it looks like a non-trivial
change.
2014-05-12 14:06:25 +02:00
Alexander Christiansson
5d8727a17d
std::cast::transmute -> std::mem::transmute
2014-05-12 01:31:22 +02:00
Vincent Barrielle
dcf7b8ad01
generic implementation of QR decomposition
...
But static matrices can't use it yet, they need to implement the
Row/Col slicing traits.
2014-05-11 21:20:41 +02:00
Vincent Barrielle
6ad11edf9b
more generic QR: generalize the impl of the Indexable trait
...
This allows the implementation of householder reflection without relying
on knowledge of DVec. This required a new member in the Indexable trait:
the shape() function, which returns the maximum index available.
2014-05-11 20:05:08 +02:00
Sébastien Crozet
43a6c96d33
Merge pull request #6 from vbarrielle/master
...
Implementation of QR factorizarion
2014-05-10 18:45:09 +02:00
Vincent Barrielle
a213a3da93
fixing style issues
2014-05-10 12:48:25 +02:00
Sébastien Crozet
81b132d34e
Fix travis.yml.
...
See http://bettong.net/2014/05/09/how-to-test-rust-on-travis-ci/
2014-05-09 23:17:15 +02:00
Vincent Barrielle
d1a58f960c
Moving row/col slicing traits to a better place
2014-05-09 23:05:23 +02:00
Vincent Barrielle
5611307b4d
QR decomposition depends less on DMat internals
2014-05-09 22:14:37 +02:00
Vincent Barrielle
2fd880a62d
implemented QR factorization
...
this is a first sketch, the algorithm is not yet initialized and relies
on knowledge of DMat internals. A next step would be to implement this
algorithm in a more generic manner.
2014-05-09 18:59:26 +02:00
Sébastien Crozet
9badebf24c
Give access to the traits required for generalized operator overloading.
...
Those are `Vec3MulRhs`-like traits that allow the simulation of haskellish fundeps to allow multiple
overloads of builtin operators (* / + -).
They are all on the `na::overload` module.
2014-05-08 23:21:36 +02:00
Sébastien Crozet
7ef933aefb
Update to the last Rust.
...
Version of rustc: 0.11-pre (eea4909 2014-04-24 23:41:15 -0700)
Vector do not implement `Rand` anymore.
2014-04-25 20:28:29 +02:00
Sébastien Crozet
1eed234e08
Avoid name conflicts with the standard lib.
...
The `Vec` trait is renamed `AnyVec`.
The `Less`, `Greater`, `Equal` variants are renamed `PartialLess`, `PartialGreater`,
`PartialEqual`.
Those new names are not very good, so they might change in the future.
2014-04-13 10:37:39 +02:00
Sébastien Crozet
16aa5c8937
Make Iso* fields public again.
2014-04-03 20:52:52 +02:00
Sébastien Crozet
06e18d214a
Update to the last Rust.
...
Version of rustc: 0.10-pre (b8ef9fd 2014-03-31 15:51:33 -0700)
struct fields are now public by default.
2014-04-01 23:00:59 +02:00