7291 Commits

Author SHA1 Message Date
Gael Guennebaud
24302ad5cd fix #76, MayLinearVectorize depends on MaxSizeAtCompileTime and not on MaxInnerSize 2009-12-23 13:19:28 +01:00
Gael Guennebaud
0b5853d917 fix the xpr analyzer for Transpose 2009-12-23 13:17:46 +01:00
Gael Guennebaud
c90ccd089a clean a bit Hessenberg and make sure the subdiagonal coeff is real even for 2x2 matrices 2009-12-23 12:30:05 +01:00
Gael Guennebaud
791bac25f2 fix #75, and add a basic unit test for Hessenberg
(it was indirectly tested by the eigenvalue decomposition)
2009-12-23 12:18:54 +01:00
Gael Guennebaud
d65c8cb60a fix #69 and extend unit tests or triangular solvers 2009-12-23 11:48:53 +01:00
Gael Guennebaud
fcc3be5dce a couple of fixes after thye merge 2009-12-23 09:07:01 +01:00
Gael Guennebaud
eaaba30cac merge with default branch 2009-12-22 22:51:08 +01:00
Gael Guennebaud
e182e9c616 extend the DenseStorageMatrix mechanism to all expressions 2009-12-22 17:37:11 +01:00
Benoit Jacob
4ec99bbc0c support gcc 4.5 2009-12-21 13:49:43 -05:00
Gael Guennebaud
02beaea2f8 add missing inclusion of LU/arch, thanks to J.B. Rouault 2009-12-19 13:49:00 +01:00
Gael Guennebaud
f8cb9a6230 oops, remove duplicated ctor 2009-12-19 13:45:14 +01:00
Gael Guennebaud
9d54783036 much better workaround for empty struct (the previous one caused GCC 4.3 to generate wrong code leading to segfaults) 2009-12-18 17:08:59 +01:00
Gael Guennebaud
af4d8c5cec a couple of fixes, now Array passes the linearstructure test 2009-12-17 19:28:54 +01:00
Gael Guennebaud
4b70b47998 clean a bit Matrix and fix static Map functions 2009-12-17 14:48:26 +01:00
Gael Guennebaud
5ca90e1b0c some cleaning in DenseStorageBase 2009-12-17 13:56:33 +01:00
Gael Guennebaud
ebb2878829 finally add a Array class with storage via the introduction of a DenseStorageBase
base class shared by both Matrix and Array
2009-12-17 13:37:00 +01:00
Gael Guennebaud
4e9c227bd5 partial LU optimization: noalias 2009-12-17 11:43:42 +01:00
Gael Guennebaud
30d47860dd more fixes 2009-12-17 10:43:46 +01:00
Gael Guennebaud
34c95029ca a couple of fixes and cleaning 2009-12-17 10:00:35 +01:00
Gael Guennebaud
9f79558839 a lot of cleaning and fixes 2009-12-16 19:18:40 +01:00
Gael Guennebaud
22a6ab1f4b add an eigen2support test and a few fixes 2009-12-16 17:37:21 +01:00
Benoit Jacob
5cb779e5e1 * introduce ei_alignmentOffset(MatrixBase&,Integer)
couldnt put it in Memory.h as it needs the definition of MatrixBase
* make Redux use it
2009-12-16 08:53:14 -05:00
Gael Guennebaud
e0aa29121f this really fix the previous warning 2009-12-16 13:06:47 +01:00
Gael Guennebaud
c35fcf3bbd fix warning by making ei_empty_struct::_ei_dummy_ private 2009-12-16 12:53:55 +01:00
Gael Guennebaud
bb59c22dc9 fix compilation when mixing types 2009-12-16 12:48:15 +01:00
Gael Guennebaud
6db6774c46 * fix aliasing checks when the lhs is also transposed. At the same time,
significantly simplify the code of these checks while extending them
  to catch much more expressions!
* move the enabling/disabling of vectorized sin/cos to the architecture traits
2009-12-16 11:41:16 +01:00
Gael Guennebaud
7a9988ebb6 fix spasre triangular solve for row major lower matrices 2009-12-14 10:25:21 +01:00
Gael Guennebaud
a314814a6e suppress unused variable warnings 2009-12-15 13:59:02 +01:00
Benoit Jacob
949f14e1e4 no, this wasn't equivalent to ei_pload at all, after all! 2009-12-15 07:43:05 -05:00
Benoit Jacob
805eb9cc8b Gael, who is a man of few words^Winstructions, is right, as usual. 2009-12-15 06:50:40 -05:00
Hauke Heibel
3ea1f97f69 Suppressed the warning for missing assignment generators (forgot that in the last submission).
Commented Quake3's fast inverser sqrt in SSE's MathFunction header.
2009-12-15 08:09:14 +01:00
Benoit Jacob
4948448939 *use scalar instructions, packet not needed here
*remove unused var warning
2009-12-14 23:13:54 -05:00
Benoit Jacob
d02eccf584 add SSE path for Matrix4f inverse, taken from Intel except that we do a kosher
division instead of RCPPS-followed-by-Newton-Raphson. The rationale for that is
that elsewhere in Eigen we dont allow ourselves this approximation (which throws
2 bits of mantissa), so there's no reason we should allow it here.
2009-12-14 22:47:14 -05:00
Benoit Jacob
d5f3b2dc94 change the Arch constants: const int ---> enum, more explicit names, and use
of a namespace instead of Prefix_Name.
2009-12-14 17:26:24 -05:00
Hauke Heibel
832045d363 Warning 4512 (assignment operators could not be generated) is now simply disabled.
All unimplemented assignment operators have been removed.
2009-12-14 10:32:43 +01:00
Hauke Heibel
4498864fc8 Fixed a bad type conversion. 2009-12-13 09:26:57 +01:00
Jitse Niesen
929521678d Correct type of ei_solve_retval<LLT,...>::operator= 2009-12-12 23:54:44 +00:00
Hauke Heibel
3dce51bd8e Removed more warnings. 2009-12-12 14:49:43 +01:00
Hauke Heibel
d088ee35f6 Added to possibility to compile unit tests at maximum warning level.
Silenced (amongst others) many conversion related warnings.
2009-12-12 11:39:07 +01:00
Gael Guennebaud
9facdaf7b9 some compilation fixes 2009-12-10 22:15:22 +01:00
Gael Guennebaud
7caf751fdd adapt select, replicate and reverse 2009-12-10 22:00:35 +01:00
Benoit Jacob
d2e44f2636 * 4x4 inverse: revert to cofactors method
* inverse tests: use createRandomMatrixOfRank, use more strict precision
* tests: createRandomMatrixOfRank: support 1x1 matrices
* determinant: nest the xpr
* Minor: add comment
2009-12-09 12:43:25 -05:00
Jitse Niesen
8bfa354ee3 Documentation clean up.
* remove non-existant reference to CwiseAll
* define \householder_module (used in HouseholderSequence.h)
* update I01_TopicLazyEvaluation.dox - Product is now called GeneralProduct
* remove reference to list of examples which was deleted ages ago
* rename PartialLU_solve.cpp snippet to PartialPivLU_solve.cpp
2009-12-08 15:12:27 +00:00
Gael Guennebaud
8e05f9cfa1 add a DenseBase class for MAtrixBase and ArrayBase and more code factorisation 2009-12-04 23:17:14 +01:00
Gael Guennebaud
c68c695b87 Fix poor Quaternion::slerp snapping 2009-12-04 15:01:17 +01:00
Gael Guennebaud
ea684af6b4 merge 2009-12-04 12:40:29 +01:00
Gael Guennebaud
7aad434160 fix compilation and clean a bit Map<Quaternion> 2009-12-04 12:26:56 +01:00
Gael Guennebaud
e12f5adbde fix MSVC10 compilation 2009-12-02 19:32:54 +01:00
Benoit Jacob
3e73f6036c * HouseholderSequence:
* be aware of number of actual householder vectors
    (optimization in non-full-rank case, no behavior change)
  * fix applyThisOnTheRight, it was using k instead of actual_k
* QR: rename matrixQ() to householderQ() where applicable
2009-12-02 11:11:09 -05:00
Mathieu Gautier
26ea7c9801 * remove empty destructors in Matrix.h and MatrixStorage.h 2009-12-02 11:09:56 +01:00