Franklin Delehelle (Vampire.local)
6468360edb
Compile with nightlies
2014-05-21 13:08:04 +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
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
3dc0e27fd2
fix typo
2014-05-12 21:54:18 +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
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
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
Sébastien Crozet
1edecbcee4
Automatically derive `TotalEq` whenever `Eq` is derived.
2014-03-28 21:40:30 +01:00
Sébastien Crozet
4435d2f7f4
Update to the last Rust.
...
Version of rustc: rustc 0.10-pre (b8601a3 2014-03-28 06:26:47 -0700)
2014-03-28 20:58:09 +01:00
Sébastien Crozet
1dade3bd24
Remove every `use std::vec::Vec`.
...
It is part of the Rust prelude now.
2014-03-22 08:14:15 +01:00
Sébastien Crozet
915d8c057e
Update to the last Rust.
...
Version of rustc: 0.10-pre (7b957a8 2014-03-21 08:21:51 -0700)
2014-03-21 21:57:58 +01:00
Sébastien Crozet
606ad947c9
Use Vec instead of ~[].
...
Version of rustc: 0.10-pre (fc7a112 2014-03-14 23:11:31 -0700)
2014-03-15 12:23:54 +01:00
Peter Nguyen
fc10742b5c
Change std::rand to rand in lower_triangular.rs
2014-03-13 19:35:01 -04:00
Peter Nguyen
7bc561c835
Update to latest rust.
...
`std::rand` was moved to it's own crate.
Version of rustc: rustc 0.10-pre (4d64441 2014-03-12 15:07:06 -0700)
2014-03-13 17:47:03 -04:00
Sébastien Crozet
13430866d4
Remove the DeepClone derivings.
...
Version of rustc: 0.10-pre (e959c87 2014-03-08 22:41:45 -0800)
2014-03-09 10:09:08 +01:00
Sébastien Crozet
57dfc14139
Update to the last Rust.
...
Version of rustc: 0.10-pre (4243cad 2014-02-24 22:17:02 -0800)
2014-02-25 09:41:41 +01:00
Sébastien Crozet
c834439009
Update to the last rust.
...
Version of rustc: 0.10-pre (a5342d5 2014-02-23 22:06:50 -0800)
2014-02-24 11:48:02 +01:00
Sébastien Crozet
ba32051fdf
Add deriving `Hash` and `Show`.
2014-02-23 08:44:21 +01:00
Sébastien Crozet
9fb67f8125
Add more comparison default methods to the `PartialOrd` trait.
...
This allows for some optimization.
2014-02-18 12:48:52 +01:00
Sébastien Crozet
becb77843e
Update to the last Rust.
...
Version of rustc: 0.10-pre (b0ce960 2014-02-17 22:16:51 -0800)
This replaces uses of the `Orderable` trait by a `PartialOrd` trait: the `min` and `max` methods
are replaced by `inf` and `sup` methods.
Vectors do not implement the `Ord` trait any more.
Fix #4
2014-02-18 12:13:40 +01:00
Eduard Bopp
513fb33e4a
Fix call to swap function due to upstream changes
...
Rust moved this function from std::util (which has been dissolved now) to std::mem.
2014-02-11 20:34:28 +01:00
Sébastien Crozet
85c67b5544
Activate the unused_results lint.
2014-01-31 15:26:25 +01:00
Sébastien Crozet
4c262bb91d
Remove useless parenthesis.
2014-01-23 01:22:23 +01:00
Sébastien Crozet
8de8c94b45
Update to the last Rust.
...
Version of rustc: 0.10-pre (d4640f9 2014-01-20 11:41:29 -0800)
This also removes the `PVec` type due to lack of use-case.
2014-01-20 23:41:22 +01:00
Sébastien Crozet
79008262cb
Doc: fix some typos.
2014-01-19 15:49:32 +01:00
Sébastien Crozet
197f7ff4d2
Update to the last Rust
...
Version of rustc: 0.10-pre (1da2962 2014-01-17 23:41:45 -0800)
Iterators were renamed.
2014-01-18 10:49:47 +01:00
Sébastien Crozet
87c0d5b769
Make the `struct` and `traits` modules private.
...
Now that the documentation of public export of private modules is inlined on the exporter's
documentation, there is non need to export anything but the `na` module.
2014-01-14 09:40:12 +01:00
Sébastien Crozet
f5b0b76d8d
Add the ApproxEq trait.
...
It is no longer part of std::num
2014-01-09 20:48:30 +01:00
Sébastien Crozet
31904cad6f
Add a `perspective3d` free function on the na:: module.
2014-01-01 14:44:51 +01:00
Jan Niklas Hasse
396d394ab9
Use new std::vec functions
2013-12-16 12:04:02 +01:00
Sébastien Crozet
f83ddde824
Update to the last Rust.
...
This renames lib.rs to nalgebra.rs so that the generated *.so has the right name.
2013-12-11 16:32:03 +01:00
Sébastien Crozet
1e71dc1d0a
Add unchecked access to vector components on the Indexable trait.
2013-12-01 20:17:18 +01:00
Sébastien Crozet
15d12e5322
Implement AbsoluteRotate for Identity.
2013-11-28 20:14:25 +01:00
Sébastien Crozet
930ff81f3b
Implement AbsoluteRotate for Identity.
2013-11-28 20:11:10 +01:00
Sébastien Crozet
b244975f93
Update to the last Rust.
2013-11-27 11:24:29 +01:00
Sébastien Crozet
9e7a623d99
Start implementation of quaternions.
2013-11-25 15:31:46 +01:00
Sébastien Crozet
4addd531cf
Add incomplete implementation of 4D rotation.
2013-11-22 09:46:48 +01:00
Sébastien Crozet
8423286911
Switch to column-major representation.
...
Matrices are now column-major.
This will be useful to interop with opengl and lapack.
2013-10-17 22:40:44 +02:00
Sébastien Crozet
90e40aaec0
Make most out-of-place methods static.
...
This is to make people prefer the functional style.
Things like `a.dot(b)` dont make sense per se (there is no reason for `a` to have a different
status than `b`). Using static methods avoid this.
In-place methods are left unchanged.
2013-10-16 21:44:33 +02:00
Sébastien Crozet
dcd1e7719b
Add methods to access a DVec<N> as a &[N].
2013-10-14 15:38:23 +02:00
Sébastien Crozet
bb5654d220
Remove free-functions alliasing structures constructors.
...
Those constructors are not idiomatic. Use e.g. `Vec3::new(0, 0, 0)` instead.
2013-10-14 11:22:38 +02:00