Benoit Jacob
e1f61b40c8
oops, this had to be done here, not at the end.
2010-02-12 09:02:25 -05:00
Benoit Jacob
f369dc873e
Piotr's patch was missing many occurences of size_t. So,
...
using std::size_t;
This is the only way that we can ensure QCC support in the long term without having to think about it everytime.
2010-02-12 08:57:04 -05:00
Benoit Jacob
ed6eb5a625
bump
2010-02-11 21:39:41 -05:00
Benoit Jacob
9488a12125
work around brain dead ICC
2010-02-11 19:32:56 -05:00
Piotr Trojanek
7b44957c4b
std:: namespace fixup for more restricive compilers such as QNX's QCC
2010-02-10 22:27:35 +01:00
Benoit Jacob
a9eabed421
Patch by 'Wolf' from the issue tracker:
...
Fix bug #90 , missing type cast in LU, allow to use LU with MPFR.
2010-02-02 07:06:15 -05:00
Benoit Jacob
3e963ee69d
EIGEN_ENUM_MIN ---> EIGEN_SIZE_MIN
2010-01-26 20:37:57 -05:00
Benoit Jacob
6cc9dc17f2
In LU / Inverse, decouple the output type from the input type.
...
This has long been done in the default branch
2010-01-26 18:45:23 -05:00
Gael Guennebaud
7852a48a2f
fix matrix product with EIGEN_DEFAULT_TO_ROW_MAJOR
2010-01-25 21:56:01 +01:00
Benoit Jacob
d209120180
* Introduce EIGEN_DEFAULT_TO_ROW_MAJOR tests option
...
---> Now only product_large fails with EIGEN_DEFAULT_TO_ROW_MAJOR.
* Fix EIGEN_NO_ASSERTION_CHECKING tests option
* Fix a crash in Tridiagonalization on row-major matrices + SSE
* Fix inverse test (numeric stability noise)
* Extend map test (see previous fixes in MapBase)
* Fix vectorization_logic test for row-major
* Disable sparse tests with EIGEN_DEFAULT_TO_ROW_MAJOR
2010-01-25 14:00:02 -05:00
Benoit Jacob
72044ca925
fix a super nasty bug: on row-major expressions that are NOT vectors but that
...
do have LinearAccess, the MapBase::coeff(int) and MapBase::coeffRef(int)
methods were broken.
2010-01-21 23:33:20 -05:00
Benoit Jacob
c2b8ca7493
if EIGEN_DONT_ALIGN then don't try to vectorize (was giving a #error later on).
2010-01-21 22:32:16 -05:00
Benoit Jacob
5f73a8df20
bump
2010-01-10 11:30:10 -05:00
Benoit Jacob
ba6ed5fa5f
Fix CoeffReadCost in Part: it must account for the cost of the
...
conditional jump. This makes Part considered an "expensive" xpr
that must be evaluated in operations such as Product.
This fixes bug #80 .
2010-01-02 13:04:04 -05:00
Benoit Jacob
74207a31fa
backport the fix to bug #79 , and the unit test
2010-01-02 12:45:49 -05:00
Benoit Jacob
6fd9248c09
add Intel copyright info
2009-12-15 08:43:31 -05:00
Benoit Jacob
4262117f84
backport 4x4 inverse changes:
...
- use cofactors
- use Intel's SSE code in the float case
2009-12-15 08:16:48 -05:00
Gael Guennebaud
b581cb870c
fix #74 : sparse triangular solver for lower/row-major matrices
2009-12-14 10:20:35 +01:00
Gael Guennebaud
72fc81dd9d
backport quaternion slerp precision fix
2009-12-05 18:28:17 +01:00
Gael Guennebaud
f36650b00a
fix MSVC10 compilation issues
2009-12-02 19:34:37 +01:00
Benoit Jacob
8d31f58ea1
fix bug #70
...
Was trying to apply stupid invertibility check to top-left 2x2 corner.
2009-11-26 15:33:07 -05:00
Benoit Jacob
8f1ce52e76
bump
2009-11-25 08:46:42 -05:00
Benoit Jacob
522022ebfc
wow, restore Gael's changeset 5455d6fbe8d889f100b1526d046da16b375fc451
...
that I had accidentally undone in my changeset c64ca6870ea3f76b5ea5182bba1e62fd5a632f89
.
2009-11-25 08:31:25 -05:00
Benoit Jacob
fc7f39980c
backport improvement in 4x4 inverse precisio, and rigorous precision test
2009-11-23 10:27:10 -05:00
Gael Guennebaud
70af59c455
an attempt to fix compilation with recent MSVC
2009-11-23 10:29:40 +01:00
Benoit Jacob
f4dd399499
fix warnings
2009-11-16 14:15:47 -05:00
Benoit Jacob
153557527e
backport: init-by-zero option: resize with same size must be a NOP
2009-11-16 13:47:02 -05:00
Benoit Jacob
6aad7f80ff
avoid infinite loop, optimization not important, so a plain for loop is the safe way
2009-11-12 14:09:53 -05:00
Benoit Jacob
e3f6c3115a
backport the initialize-by-0 option
2009-11-12 12:53:24 -05:00
Benoit Jacob
a2c838ff8f
fix PowerPC platform detection
2009-11-11 10:52:00 -05:00
Hauke Heibel
808c4e9581
Fixed the packport of 62 - Packet4f/d/i does not exist in 2.0.
2009-11-05 10:49:49 +01:00
Hauke Heibel
65331c3884
backporting3979f6d8aad001174160774b49b747430a7686b5
...
: fixed bug #62
2009-11-04 17:49:34 +01:00
Benoit Jacob
e158cdd61d
fix Matrix::Map/MapAligned documentation, and rephrase the tutorial on Map
2009-10-31 14:45:50 -04:00
Benoit Jacob
c64ca6870e
this explicit keyword can't hurt
2009-10-31 11:49:20 -04:00
Benoit Jacob
6a90f6c5f0
* default MatrixBase ctor: make it protected, make it a static assert, only do the check when debugging eigen to avoid slowing down compilation for everybody (this check is paranoiac, it's very seldom useful)
...
* add private MatrixBase ctors to catch cases when the user tries to construct MatrixBase objects directly
2009-10-31 11:48:33 -04:00
Gael Guennebaud
22dd13fdb9
backporting fix of #65
2009-10-29 14:26:38 +01:00
Gael Guennebaud
5455d6fbe8
backporting fix of #65
2009-10-29 14:26:00 +01:00
Benoit Jacob
de693cf34a
remove extra ;
2009-10-28 10:04:13 -04:00
Benoit Jacob
21c4e0802d
fix potential warning
2009-10-28 09:45:09 -04:00
Benoit Jacob
241b9d34a7
Hey, I was insomniac too ;)
...
This restores much of the performance benefit of Euler's method, without compromising accuracy (tested on 1e+7 matrices). Namely, my benchmark now runs in 1.5 s instead of 2.2 s. The same in the default branch runs in 1.08 s instead of 1.9 s, so the default branch benefits even more!
2009-10-28 03:50:29 -04:00
Benoit Jacob
9e15a6da2e
Fix 4x4 matrix inversion. Applying Euler's trick is more tricky than what "high performance matrix inversion" websites would have you believe. Our 4x4 matrix inversion wasn't numerically stable, because in applying the Euler trick we didn't take the 2x2 block of biggest determinant. As a result, with float, we got relative errors above 1% every 1000 random matrices, and we got completely wrong results every 10000 matrices.
...
Note that this decreases the performance, but we're still significantly faster than the brutal cofactors approach.
2009-10-27 07:35:25 -04:00
Benoit Jacob
38bc82a6f7
bump
2009-10-24 16:35:46 -04:00
Benoit Jacob
6173eb67ff
really fix pkgconfig support and make install.
...
* mistake: was using the install dir instead of binary dir
* was also using INCLUDE_INSTALL_DIR before it was set, so on a first cmake run, the pkgconfig file was bad
2009-10-24 16:16:48 -04:00
Benoit Jacob
9f89431cea
install NewStdVector
2009-10-23 19:58:37 -04:00
Benoit Jacob
e1c96f3fe0
bump
2009-10-23 18:37:05 -04:00
Benoit Jacob
46f0fe3b4b
SVD:
...
* implement default ctor, users were relying on the compiler generater one and reported issues on the forum
* turns out that we crash on 1x1 matrices but work on Nx1. No interest in fixing that, so just guard by assert and unit test.
2009-10-23 18:05:55 -04:00
Benoit Jacob
21d081c6da
bump
2009-10-22 16:14:03 -04:00
Benoit Jacob
be8ae0d45f
* CMakeLists: only pass -Wextra if it's supported (it's not on gcc 3.3)
...
* MapBase: put static first (fix gcc 3.3 warning)
* StdVector: add missing newline at end
2009-10-22 15:20:02 -04:00
Hauke Heibel
fc8b54c142
Code cleanup.
2009-10-22 20:06:05 +02:00
Hauke Heibel
76d578fb99
This does fix #61 . See the comments in #61 for details.
2009-10-22 09:29:59 +02:00