Commit Graph

1347 Commits

Author SHA1 Message Date
Gael Guennebaud
a4f6642518 fix issue #36 (missing return *this in Rotation2D 2009-08-11 15:11:47 +02:00
Gael Guennebaud
ea884e6f48 remove #include Bidiagonalization, and add missing ";" 2009-08-11 15:08:03 +02:00
Gael Guennebaud
35b4077a5d merge 2009-08-09 23:11:25 +02:00
Gael Guennebaud
ef55e7f4ce make custom asm directive volatile 2009-08-09 23:09:46 +02:00
Benoit Jacob
216ee335ac LinearVectorization: If the destination isn't aligned,
we have to do runtime checks and we don't unroll, so it's only good for large enough sizes
2009-08-09 22:19:12 +02:00
Benoit Jacob
1f1705868b now you can #define EIGEN_DEBUG_ASSIGN, and all the values in ei_assign_traits are printed 2009-08-09 21:35:13 +02:00
Benoit Jacob
527557672a disable the assembly for fast unaligned stores. indeed, there is a strange bug that is triggered by this code:
#include<Eigen/Core>

int main()
{
  Eigen::Matrix4f m;
  m <<1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16;
  m.col(0).swap(m.col(1));
  std::cout << m << std::endl;
}

when the fast unaligned stores are used, the column is copied instead of being swapped.
2009-08-09 20:49:55 +02:00
Benoit Jacob
8e08680119 don't depend on uninitialized value 2009-08-09 17:18:42 +02:00
Benoit Jacob
3ed83fa681 * add Jacobi transformations
* add Jacobi (Hestenes) SVD decomposition for square matrices
* add function for trivial Householder
2009-08-09 16:58:13 +02:00
Gael Guennebaud
fe813911f2 make LU::solve() not to crash when rank=0 2009-08-09 00:06:53 +02:00
Benoit Jacob
5f8d58f36a fix bug in sorting of singular values 2009-08-09 00:05:38 +02:00
Thomas Capricelli
b10637be50 add basic .hgignore file for most common generated/temporary files 2009-08-08 21:42:14 +02:00
Gael Guennebaud
f5e1c896c7 replace custom rank one update in LU by an expression 2009-08-08 00:01:43 +02:00
Gael Guennebaud
d1dc088ef0 * implement a second level of micro blocking (faster for small sizes)
* workaround GCC bad implementation of _mm_set1_p*
2009-08-07 11:09:34 +02:00
Gael Guennebaud
543a785756 Fix compilation in sparse module 2009-08-06 17:28:49 +02:00
Gael Guennebaud
2707a6b87c fix determinant in PartialLU 2009-08-06 17:28:31 +02:00
Gael Guennebaud
1d1e4884da oops, one more bug fix in homogeneous 2009-08-06 16:56:10 +02:00
Gael Guennebaud
9822493aaf fixes in determinant and homogeneous 2009-08-06 16:54:55 +02:00
Gael Guennebaud
3ac01b1400 compilation fix in EigenSolver,
bugfix in PartialLU
2009-08-06 16:41:54 +02:00
Gael Guennebaud
e82e30862a typo 2009-08-06 15:04:42 +02:00
Gael Guennebaud
03febf00a0 fix VS compilation issue in MapBase::operator+= and -= 2009-08-06 15:03:37 +02:00
Gael Guennebaud
2e46e9f2b4 shame on me 2009-08-06 14:57:38 +02:00
Gael Guennebaud
d34c5ef509 fix my bad fix of Hauke's fix ;) 2009-08-06 14:54:25 +02:00
Gael Guennebaud
1d4fea48b5 fix a couple of compilations issues 2009-08-06 14:10:02 +02:00
Hauke Heibel
c2861dd41a fixed inversion for AffineCompact matrices 2009-08-06 12:25:18 +02:00
Gael Guennebaud
56d00779db more product refactoring 2009-08-06 12:20:02 +02:00
Hauke Heibel
6b2ab13ac5 fix vs.net compilation issue 2009-08-06 11:40:25 +02:00
Hauke Heibel
8163757cf0 fix vs.net compilation issue 2009-08-06 11:27:25 +02:00
Gael Guennebaud
fa55cf5ce7 fix compilation and segfault issues 2009-08-06 11:19:36 +02:00
Gael Guennebaud
b9b17ea5a5 add the missing Affine Transform * set of column vectors products... 2009-08-06 11:02:03 +02:00
Benoit Jacob
0744638b6f remove remnant of MultiplierBase 2009-08-06 10:35:13 +02:00
Gael Guennebaud
84a7659bef implement the missing outer product,
and attempt to workaround a gcc internal error
2009-08-05 17:39:11 +02:00
Gael Guennebaud
88147e0a91 big refactoring in Product.h:
- all specialized products now inherits ProductBase
- the default product evaluated by Assign is still here,
  but it is currently enabled for small fixed sizes only
- => this significantly speed up compilation for large matrices
- I left the OuterProduct specialization empty as an exercise...
2009-08-05 15:23:35 +02:00
Benoit Jacob
014c581a5b fix assertions, improve docs.
we never assert on conditions that depend on the result of a computation!!
also the assertion that rank>0 amounts to matrix!=0 which we have to leave under the responsibility of the user.
2009-08-05 10:15:28 +02:00
Benoit Jacob
b183a4f879 merge 2009-08-04 17:47:27 +02:00
Gael Guennebaud
ab6302376c merge 2009-08-04 17:12:00 +02:00
Benoit Jacob
c20236ea75 remove the FORCE 2009-08-04 17:06:54 +02:00
Gael Guennebaud
7d607048a9 implement a ProductBase class and, as a proof of concept, update TriangularProduct
and SelfAdjointMatrixProduct to take advantage of it => fewer LOC
2009-08-04 16:54:17 +02:00
Gael Guennebaud
f3a6bc48c4 fix a couple of compilation issue due to the removal of MultiplierBase 2009-08-04 13:16:40 +02:00
Gael Guennebaud
2089a263f8 merge 2009-08-04 11:31:25 +02:00
Gael Guennebaud
c2a92e92a6 add ger and lu with partial pivoting in BTL 2009-08-04 11:30:33 +02:00
Gael Guennebaud
4bec101470 implement two levels of blocking in PartialLU => high speedup 2009-08-04 11:28:02 +02:00
Benoit Jacob
4436a4d68c use explicit Block/VectorBlock xprs to make sure that compile-time known sizes are used 2009-08-04 00:27:58 +02:00
Benoit Jacob
523cdedf58 make the dot product linear in the second variable, not the first variable 2009-08-03 17:20:45 +02:00
Gael Guennebaud
912da9fade merge with special_matrix branch 2009-08-03 16:17:32 +02:00
Gael Guennebaud
a8f943127c merge 2009-08-03 16:11:30 +02:00
Benoit Jacob
d10c710b15 add new Householder module 2009-08-03 16:06:57 +02:00
Gael Guennebaud
3cf5bb31f6 * Bye bye MultiplierBase, extend a bit AnyMatrixBase to allow =, +=, and -=
* This probably makes ReturnByValue needless
2009-08-03 16:05:15 +02:00
Benoit Jacob
66ee2044ce small fixes 2009-08-03 16:05:07 +02:00
Benoit Jacob
3cde9c0e35 apply Gael's idea for auto transpose in mixed fixed/dynamic case 2009-08-03 16:04:15 +02:00