Commit Graph

1463 Commits

Author SHA1 Message Date
Gael Guennebaud
00f4b46908 typo in sqrt(complex) 2009-09-03 11:50:06 +02:00
Gael Guennebaud
a54b99fa72 move eigen values related stuff of the QR module to a new EigenSolver module.
- perhaps we can find a better name ?
- note that the QR module still includes the EigenSolver module for compatibility
2009-09-03 11:39:44 +02:00
Gael Guennebaud
9515b00876 remove the \addexample tags 2009-09-03 11:22:42 +02:00
Gael Guennebaud
16c7b1daab add examples for makeJacobi and makeGivens 2009-09-03 11:17:16 +02:00
Gael Guennebaud
c893917d65 Fix serious bug discovered with gcc 4.2 2009-09-03 10:45:32 +02:00
Hauke Heibel
8d449bd80e Removed debug cout.
Disabled MSVC inconsistent DLL linkage.
2009-09-02 21:23:09 +02:00
Hauke Heibel
e6c9d6c528 Remove last lazyness warnings. 2009-09-02 20:59:57 +02:00
Hauke Heibel
2abd5eeffd Added support to overwrite the generator type.
Eigen'fied the new variables.
2009-09-02 20:57:41 +02:00
Benoit Jacob
7aa6fd3625 big reorganization in JacobiSVD:
- R-SVD preconditioning now done with meta selectors to avoid compiling useless code
- SVD options now honored, with options to hint "at least as many rows as cols" etc...
- fix compilation in bad cases (rectangular and fixed-size)
- the check for termination is now done on the fly, no more goto (should have done that earlier!)
2009-09-03 02:53:51 -04:00
Benoit Jacob
89557ac41d introduce EIGEN_SIZE_MIN
now we should check if some EIGEN_ENUM_MIN usage needs to be replaced by that... potential bug when using mixed-size matrice
2009-09-03 02:50:42 -04:00
Benoit Jacob
7d18c30641 finally the first version was the good one... 2009-09-03 01:25:40 -04:00
Gael Guennebaud
7586f7f706 fix #51 (bad use of std::complex::real) 2009-09-02 15:18:11 +02:00
Gael Guennebaud
b83654b5d0 * rename JacobiRotation => PlanarRotation
* move the makeJacobi and make_givens_* to PlanarRotation
* rename applyJacobi* => apply*
2009-09-02 15:04:10 +02:00
Gael Guennebaud
496ea63972 fix wrong assert 2009-09-02 14:08:33 +02:00
Gael Guennebaud
4a8258369a much simpler fix for Matrix::swap 2009-09-02 13:37:15 +02:00
Benoit Jacob
ec20d58317 * add serious unit test for swap
* fix my stupidity in Matrix::swap()
2009-09-02 16:56:48 -04:00
Benoit Jacob
cc375e2f79 merge 2009-09-02 06:37:41 -04:00
Benoit Jacob
e6b77bcc6b JacobiSVD: implement general R-SVD using full-pivoting QR, so we now support any rectangular matrix size by reducing to the smaller of the two dimensions (which is also an optimization) 2009-09-02 06:36:55 -04:00
Benoit Jacob
c16d65f015 fix compilation errors in swap (could not swap with anything else than the exact same Matrix type) 2009-09-02 06:35:01 -04:00
Hauke Heibel
59f5bce41c fix issue #49 2009-09-01 23:15:30 +02:00
Hauke Heibel
05ddd32849 added missing JacobiRotation's ... 2009-09-01 23:12:40 +02:00
Gael Guennebaud
5b8ffa4d46 clean a bit the previous commit which came from a patch queue,
and since it was my first try of the patch queue feature I did not
managed to apply it with a good commit message, so here you go:
* Add a ComplexSchur decomposition class built on top of HessenbergDecomposition
* Add a ComplexEigenSolver built on top of ComplexSchur
There are still a couple of FIXME but at least they work for any reasonable matrices,
still have to extend the unit tests to stress them with nasty matrices...
2009-09-01 16:35:23 +02:00
Gael Guennebaud
4d91229bdc [mq]: eigensolver 2009-09-01 16:20:56 +02:00
Gael Guennebaud
67ccc6b851 I've been too fast (again) 2009-09-01 13:44:21 +02:00
Gael Guennebaud
1e7a9ea70a fix issue #47: now m.noalias() = XXX properly resize m if needed 2009-09-01 13:35:44 +02:00
Gael Guennebaud
8392373d96 add a JacobiRotation class wrapping the cosine-sine pair with
some convenient features (transpose, adjoint, product)
2009-09-01 13:18:03 +02:00
Jitse Niesen
32f95ec267 Bug fix in MatrixExponential.h
Initialize matrices for intermediate results to correct dimension
2009-09-01 10:50:54 +01:00
Benoit Jacob
6e4e94ff32 * JacobiSVD:
- support complex numbers
 - big rewrite of the 2x2 kernel, much more robust
* Jacobi:
 - fix weirdness in initial design, e.g. applyJacobiOnTheRight actually did the inverse transformation
 - fully support complex numbers
 - fix logic to decide whether to vectorize
 - remove several clumsy methods

fix for complex numbers
2009-08-31 22:26:15 -04:00
Benoit Jacob
29c6b2452d simplifications 2009-08-31 22:09:44 -04:00
Benoit Jacob
5339db6164 add VERIFY_IS_UNITARY 2009-08-31 22:08:43 -04:00
Gael Guennebaud
a16599751f fix Matrix::stride for vectors, add a unit test for Block::stride
and make use of it where it was relevant
2009-08-31 17:39:56 +02:00
Hauke Heibel
ab6eb6a1a4 Adaptions from .lazy() towards .noalias().
Added missing casts.
2009-08-31 17:29:37 +02:00
Hauke Heibel
bc7aec0ef5 ifdef removed from MapBase and warning disabled 2009-08-31 17:24:38 +02:00
Gael Guennebaud
095809edda fix issue #45 and document the .data() and .stride() functions 2009-08-31 17:07:54 +02:00
Gael Guennebaud
27c9ecc50f fix copy/paste issue 2009-08-31 16:41:13 +02:00
Hauke Heibel
0a0a805569 Fixed a cast warning in scaleAndAddTo.
Fixed lazyness in umeyama.
Added a few missing casts.
2009-08-31 15:34:57 +02:00
Hauke Heibel
32a9aee286 Added MSVC guards to assignment operators. 2009-08-31 14:40:53 +02:00
Hauke Heibel
99bfab6dcf Removed redundant assignment operators. 2009-08-31 13:47:32 +02:00
Gael Guennebaud
9005eb0788 compilation fix in AmbiVector<int> 2009-08-31 09:32:46 +02:00
John Smith
aacada1662 Force release builds on Windows machines in the test suite.
Added an IGNORE_CVS flag to the test suite (allows submitting local and modified repositories).
Fixed the EI_OFLAG for MSVC.
2009-08-28 20:14:18 +02:00
John Smith
227f6cbce0 Fixed SSE related build warning on 64-bit windows systems. 2009-08-28 00:05:44 +02:00
Jitse Niesen
76fa46c6db Typos in tutorial 2009-08-26 18:53:56 +01:00
Gael Guennebaud
3705498721 add coeff(int,int), coeff(int) and value() functions to the inner product specialization 2009-08-26 00:24:22 +02:00
Thomas Capricelli
d0a5da95b1 fix installation for recently added files 2009-08-25 18:57:59 +02:00
Benoit Jacob
191d5275a7 modernize HouseholderQR too, uniformize all that stuff, update tests 2009-08-24 13:46:14 -04:00
Jitse Niesen
7e4bd70157 Fix comment which may cause latex to hang when generating docs 2009-08-24 18:01:18 +01:00
Gael Guennebaud
078a870a87 fix issue #43 2009-08-24 18:56:27 +02:00
Benoit Jacob
0eb142f559 bring the modern comfort also to ColPivotingHouseholderQR
+ some fixes in FullPivotingHouseholderQR
2009-08-24 11:11:41 -04:00
Benoit Jacob
3288e5157a finally, the correct way of dealing with zero matrices in solve() 2009-08-24 10:51:07 -04:00
Benoit Jacob
b8106e97b4 add logAbsDeterminant()
move log and exp functors from Array to Core
update documentation
2009-08-24 09:46:17 -04:00