Thomas Capricelli
291fd4f8da
merge
2009-12-01 21:07:20 +01:00
Benoit Jacob
68117c267c
ColPivQR: now the unit tests even succeeds:
...
* with random matrices multiplied by 1e+8 (i.e. fixed wrong absolute fuzzy compare)
* with 10,000 repetitions (i.e. the fuzzy compare is really clever)
and when it occasionnally fails, less than once in 10,000 repeats, it is only on the exact rank computation.
2009-12-01 13:51:35 -05:00
Benoit Jacob
95d88e1327
Big reworking of ColPivQR and its unit test, which now passes even with thousands of repetitions and correctly tests matrices of all sizes. Several surprises along the way: for example, a major cause of trouble was the optimized "table of column squared norms" where the accumulation of imprecision was a serious issue; another surprise is that tests like "x!=0" before dividing by x really benefit from being replaced by fuzzy tests, as i hit real cases where i got wrong results in 1/epsilon.
2009-12-01 13:26:29 -05:00
Benoit Jacob
49c0986d86
minor cleanup
2009-12-01 13:22:14 -05:00
Hauke Heibel
d3250cb38f
That's it NestByValue and .nestByValue() are both gone!
2009-12-01 13:29:08 +01:00
Hauke Heibel
b08d5b2d2c
Even more NestByValue cleanup...
2009-12-01 13:16:51 +01:00
Hauke Heibel
2bf354da80
Much more NestByValue cleanup.
2009-12-01 11:51:22 +01:00
Hauke Heibel
3091be5134
Removed NestByValue dependency from Cholesky, Eigenvalues, LU and QR.
2009-12-01 10:22:54 +01:00
Hauke Heibel
7b3e205ebd
Removed NestByValue dependency from VectorwiseOp.
2009-12-01 09:56:40 +01:00
Hauke Heibel
88be826791
Removed NestByValue dependency from MatrixBase::select().
2009-12-01 09:49:15 +01:00
Hauke Heibel
82971a5dcd
Adapted the number of test runs.
2009-12-01 09:29:56 +01:00
Hauke Heibel
1fc5fdea25
Added missing typedef (will I ever learn it!?)
...
Removed unsupported directories that do not provide CMakeList.txt (CMake 2.8 warning).
The BenchTimer is now also working on Cygwin.
2009-12-01 09:20:05 +01:00
Hauke Heibel
052742e6f9
merge
2009-12-01 07:55:07 +01:00
Hauke Heibel
7af1ee0b6c
Added the profiling test to unsupported.
2009-12-01 07:53:09 +01:00
Gael Guennebaud
b2a5fb874f
add specialization ei_ref_selector for sparse matrix types
2009-12-01 06:21:29 +01:00
Thomas Capricelli
120882c4f1
fix another 'duplicated content in doxygen pages' bug : exclude *.orig
...
files
2009-11-30 19:42:00 +01:00
Hauke Heibel
e6c560aedf
Removed wrong typename.
2009-11-30 19:06:07 +01:00
Hauke Heibel
1c2e476fa7
Initial commit for a modified ei_nested logic.
2009-11-30 18:56:56 +01:00
Hauke Heibel
66534b782c
Some of our unit tests require mathematical constants and thus we rely on non-ansi code.
...
It seems as if the new standard removed pow(T,int).
M_PIL is only defined when _GNU_SOURCE is defined.
2009-11-30 16:54:04 +01:00
Thomas Capricelli
21ff296652
Adapted a mail from Mark about some design and add it as documentation for
...
the FFT module.
2009-11-30 16:21:21 +01:00
Thomas Capricelli
a255336e4f
fix doc
2009-11-28 02:42:05 +01:00
Benoit Jacob
4b1aca2288
precision ---> dummy_precision
2009-11-26 22:05:02 -05:00
Thomas Capricelli
c245054aa8
cleaning
2009-11-26 08:30:38 +01:00
Thomas Capricelli
f948df5a72
cleaning
2009-11-26 07:37:37 +01:00
Thomas Capricelli
db39f892a3
kill yet another un-needed parameter
2009-11-26 05:48:38 +01:00
Thomas Capricelli
905aecf803
make qrsolv use eigen types
2009-11-26 04:29:51 +01:00
Thomas Capricelli
e18caf7a01
clean qrsolv
2009-11-26 04:06:40 +01:00
Thomas Capricelli
e95f736402
reduce ei_qrsolv() signature, wa is actually a 'working array'
2009-11-26 03:26:41 +01:00
Benoit Jacob
5923bcb1b9
improve the scripts for building unit tests:
...
* support unsupported/
* use egrep instead of grep, properly escape special chars.
2009-11-25 21:26:37 -05:00
Thomas Capricelli
746c787a76
computes column norms outside of ei_qrfac()
2009-11-26 02:53:58 +01:00
Thomas Capricelli
9cbfdbad22
cleaning
2009-11-26 02:42:27 +01:00
Thomas Capricelli
f795681da0
export stableNorm(), blueNorm() and hypotNorm() to colwise() and rowwise()
...
+ rudimentary test
2009-11-26 02:28:13 +01:00
Thomas Capricelli
dca80b5f22
use typedef
2009-11-25 23:08:46 +01:00
Thomas Capricelli
a6380ae272
silent warnings
2009-11-25 23:08:39 +01:00
Benoit Jacob
40ce7589de
Added tag actual-start-from-scratch for changeset 1dabb45d94
2009-11-25 10:57:32 -05:00
Benoit Jacob
1e2bcba5e4
forward port slight changes in the 4x4 inverse test
2009-11-25 09:08:03 -05:00
Benoit Jacob
684d76eba3
add SSE4 support, start with integer multiplication
2009-11-24 15:12:43 -05:00
Benoit Jacob
abdb2a2bd5
fix assert and handle Unit shapes
2009-11-24 12:14:40 -05:00
Benoit Jacob
e6ea9e401c
improve precision test
2009-11-23 11:24:06 -05:00
Benoit Jacob
44d0d667cd
4x4 inverse:
...
* change block selection threshold from 1e-2 to 1e-1
* add rigorous precision test
2009-11-23 10:13:21 -05:00
Thomas Capricelli
06f11f3379
fix important typo
2009-11-21 02:00:47 +01:00
Gael Guennebaud
80ebeae48d
Add the concept of base class plugins, and started to write the ArrayBase class.
...
Sorry for this messy commit but I have to commit it...
2009-11-20 18:20:55 +01:00
Gael Guennebaud
4af1753b6f
* remove EnforceAlignedAccess option to Block, VectorBlock, Map and MapBase
...
because thanks to the previous commit this is not needed anymore
* add a more general ForceAlignedAccess expression which can be used for any expression.
It is already used by StableNorm.h.
2009-11-20 16:30:14 +01:00
Benoit Jacob
3c5e32f0da
improvements in FindEigen*.cmake, ported from changes in CMakeLists.txt:
...
- better regular expression
- grep the whole file, not expensive anyway, more robust
2009-11-20 10:17:59 -05:00
Gael Guennebaud
eb8f450071
Hey, finally the copyCoeff stuff is not only used to implement swap anymore :)
...
Add an internal pseudo expression allowing to optimize operators like +=, *= using
the copyCoeff stuff.
This allows to easily enforce aligned load for the destination matrix everywhere.
2009-11-20 15:39:38 +01:00
Jitse Niesen
34be9d4537
Replace toDense() by toDenseMatrix() in tests.
2009-11-20 12:22:46 +00:00
Jitse Niesen
b0baf43114
Eigen/CMakeLists.txt: remove parens from if.
...
Only CMake 2.6.3 and later recognize this syntax, and at the moment we
require 2.6.2. CMake uses the right precendence, per its man page, so the
parentheses are not necessary.
2009-11-20 11:26:26 +00:00
Benoit Jacob
6cbf662f14
* don't laugh, but these bugs took me forever to fix.
...
* expand unit tests to make sure to catch them: they nearly escaped the existing tests as these memory violations were highly dependent on the numbers of rows and cols.
2009-11-19 22:01:13 -05:00
Benoit Jacob
eac3232095
minor improvements in triangular stuff
2009-11-19 20:50:50 -05:00
Benoit Jacob
88b551e89b
* fix compilation of unit-tests (sorry, had tested only 1 channel)
...
* remove buggy (superfluous?) specialization in the meta-unroller
2009-11-19 19:20:19 -05:00