Commit Graph

16 Commits

Author SHA1 Message Date
Benoit Jacob
1a94c28bfe and here is the fixed-size Block class 2007-12-05 07:39:26 +00:00
Benoit Jacob
04502cccd9 rename Block to DynBlock and rework API to make place for
upcoming fixed-size Block matrix. Also some cleanup.
2007-12-05 07:22:22 +00:00
Benoit Jacob
39f1776bde rename Object -> MatrixBase 2007-11-27 13:57:51 +00:00
Benoit Jacob
49c78643da add cast<newtype>() function to casts the scalars to another type. 2007-10-19 14:46:08 +00:00
Benoit Jacob
f355ef2df0 Merge WrapArray into FromArray. Less code. The downside is that we're using one more
const_cast. But I think that anyway trying to maintain const strictness in Eigen2 is not
worth the hassle.

Konstantin: so the code snippet I sent you won't work anymore, replace wrapArray with fromArray.

CCMAIL:konst.heil@stud.uni-heidelberg.de
2007-10-14 18:02:16 +00:00
Benoit Jacob
a94a8c68e8 add fromArray() and wrapArray().
For example, the following now works:

  double a1[3] = {1.0, 3.0, 2.0}, a2[3];
  Vector3d::wrapArray(a2) = 2 * Vector3d::fromArray(a1);
  cout << Vector3d::fromArray(a2) << endl; // output: 2,6,4
2007-10-14 14:45:31 +00:00
Benoit Jacob
6c8f159635 add zero() and identity() static methods, update unit-tests 2007-10-14 09:18:18 +00:00
Benoit Jacob
5f0af72abc mark more methods as const. also rename, Numeric.h->NumTraits.h 2007-10-13 20:53:30 +00:00
Benoit Jacob
e445f5085a implement the first _real_ unit-tests, testing the results for correctness instead
of just checking compilation.

Fix the many issues discovered by these unit-tests, by the way fixing a performance bug.
2007-10-13 16:56:24 +00:00
Benoit Jacob
31061557a5 add unary operator-(), computing the opposite. 2007-10-13 14:38:51 +00:00
Benoit Jacob
55e80e1599 split MatrixOps.h into 3 files; rename ScalarOps.h; remove useless #includes. 2007-10-13 14:31:27 +00:00
Benoit Jacob
61de15f361 Democracy 1 - 0 Dictatorship
After huge thread on eigen mailing list, it appears that i'm the
only one in favor of prefix Ei. Everybody else prefers namespace
Eigen like we did in Eigen 1. So, revert.

Also add a macro USING_EIGEN_DATA_TYPES that application programmers
can use to automatically do "using"on the Matrix class and its
matrix/vector typedefs:
using Eigen::Matrix;
using Eigen::Matrix2d;
using Eigen::Vector2d;
... (the list of typedefs is really long).

thanks to the suffixes, the Vector typedefs aren't really polluting.

CCMAIL:eigen@lists.tuxfamily.org

P.S. Danny, please skip this one :) I know you already reported the
namespace->prefix move, now that one would be too much noise :)
2007-10-11 20:14:01 +00:00
Benoit Jacob
06e1e0d83b fix dot product, add norm/norm2/normalized
add fuzzy compares for matrices/vectors
add random matrix/vector generation
2007-10-10 06:09:56 +00:00
Benoit Jacob
f0be175bdc add dot product, extend meta unrolling everywhere 2007-10-08 07:17:54 +00:00
Benoit Jacob
95b3316701 reorganize meta loop unrolling, add Trace (meta-unrolled), fix compilation issues in
the conjugation/adjunction stuff
2007-10-07 16:40:49 +00:00
Benoit Jacob
4fe78b8e10 reorganization of headers, part 2/2... 2007-10-07 15:59:09 +00:00