Commit Graph

1736 Commits

Author SHA1 Message Date
Gael Guennebaud
469382407c * Make HouseholderSequence::evalTo works in place
* Clean a bit the Triadiagonalization making sure it the inplace
  function really works inplace ;), and that only the lower
   triangular part of the matrix is referenced.
* Remove the Tridiagonalization member object of SelfAdjointEigenSolver
  exploiting the in place capability of HouseholdeSequence.
* Update unit test to check SelfAdjointEigenSolver only consider
  the lower triangular part.
2010-06-10 16:39:46 +02:00
Gael Guennebaud
dad19c4173 compilation fix for gcc 4.2 2010-06-10 10:55:49 +02:00
Gael Guennebaud
f8683c409f generalized eigendecomposition doc 2010-06-10 09:44:52 +02:00
Gael Guennebaud
41e5625f96 clean general symm eigensolver 2010-06-10 09:34:49 +02:00
Hauke Heibel
3f388282ae Fixes geo_transformations_3 unit test. 2010-06-10 00:23:11 +02:00
Gael Guennebaud
8692ccc5fb Fix generalized symm eigensolver (I don't know why the eigenvectors were normalized) 2010-06-10 00:04:33 +02:00
Hauke Heibel
bcf738811e Added missing return statement. 2010-06-10 00:02:10 +02:00
Hauke Heibel
56e585efcc Fixed language issue. 2010-06-09 17:20:31 +02:00
Hauke Heibel
2b7b549e9e Fix #131. 2010-06-09 17:16:05 +02:00
Gael Guennebaud
e242ac9345 fix LDLT, now it really only uses a given triangular part! 2010-06-09 14:01:06 +02:00
Gael Guennebaud
50e43bc75a * add Transpositions to PermutationMatrix conversion
* make PartialPivLu uses the  Transpositions class
2010-06-08 22:23:11 +02:00
Trevor Irons
684656d41c added inline to setL1Cache functions to avoid shared object compile error 2010-06-08 10:56:50 -06:00
Hauke Heibel
fb3fcd0919 Disabled warning caused by declspec(align()). 2010-06-08 20:21:55 +02:00
Hauke Heibel
4c5778d29d Made the supression of unused variables portable.
EIGEN_UNUSED is not supported on non GCC systems.
2010-06-08 15:52:00 +02:00
Gael Guennebaud
f3a568c81d remove ei_ prefix of public global functions, and s/cpu/l1 2010-06-07 19:05:30 +02:00
Gael Guennebaud
727376b5f4 compilation fix (std::sqrt(int) does not exist) 2010-06-07 18:55:39 +02:00
Gael Guennebaud
88cd6885be Add a proof concept API to configure the blocking parameters at runtime.
After validation of the final API I'll update the other products to use it.
2010-06-07 16:35:25 +02:00
Gael Guennebaud
7726cc8a29 clean old stuff used to support precompilation inside a binary lib 2010-06-07 14:47:20 +02:00
Gael Guennebaud
bfeba41174 Add a Transpositions class to ease the representation and
manipulation of permutations as a sequence of transpositions.
Make LDLT use it.
2010-06-04 23:17:57 +02:00
Jitse Niesen
9178e2bd54 Add info() method which can be queried to check whether iteration converged. 2010-06-03 22:59:57 +01:00
Jitse Niesen
ed73a195e0 Refactor compute() by splitting off two smaller private methods. 2010-06-03 22:29:11 +01:00
Gael Guennebaud
e64460d5d0 LDLT: make it honors the Lower/Upper directive and make it works inplace 2010-06-03 22:22:14 +02:00
Gael Guennebaud
4159db979d make LDLT uses only the lower triangular part 2010-06-03 21:33:47 +02:00
Gael Guennebaud
d92de9574a fix sparse LDLT with complexes 2010-06-03 11:56:08 +02:00
Gael Guennebaud
8350ab9fb8 * remove ei_index, and let ei_traits propagate the index types
* add an Index type template parapeter to sparse objects
2010-06-03 08:41:11 +02:00
Jitse Niesen
38d8352b7b Add field m_maxIterations; break loop when this limit is exceeded. 2010-06-02 17:31:02 +01:00
Gael Guennebaud
9ff0d67156 fix typos (oops) 2010-06-02 17:56:35 +02:00
Gael Guennebaud
8710bd23e7 clean the ambiguity with insertBack and add a insertBackByOuterInner function 2010-06-02 13:32:13 +02:00
Gael Guennebaud
143e6ab9d0 improve aliasing detection for inverse and add unit test 2010-06-02 10:12:13 +02:00
Gael Guennebaud
4ebb80490a implicit conversion to scalar for inner product 2010-06-02 09:45:57 +02:00
Gael Guennebaud
314bfa1375 fix issue #128 : inner stride can also be 0 in which case it means 1... 2010-06-01 22:51:47 +02:00
Jitse Niesen
ab2b33e802 Add cast to aliasing check.
Otherwise, one of the geo tests fails to compile. Now there are some compiler
warnings about aliasing and type-punned pointers that I don't understand.
2010-06-01 17:45:58 +01:00
Jitse Niesen
e3e2380548 Make all compute() methods return a reference to *this. 2010-06-01 17:40:51 +01:00
Trevor Irons
4c6d182c42 Addressess small compile error with OpenMP 2010-06-01 07:09:40 -06:00
Benoit Jacob
e54faba198 merge the backing-out of the stupid RetByVal change, and implement a simple
aliasing check in inverse, that catches simple cases like x = x.inverse()
2010-06-01 09:17:50 -04:00
Benoit Jacob
3e95609cd4 Backed out changeset 641d968a9a 2010-06-01 09:01:39 -04:00
Benoit Jacob
641d968a9a * Make ReturnByValue have the EvalBeforeAssigningBit and explicitly
enforce this mechanism (otherwise ReturnByValue bypasses it).
 (use .noalias() to get the old behavior.)
* Remove a hack in Inverse, futile optimization for 2x2 expressions.
2010-05-30 13:43:08 -04:00
Anton Gladky
09a1b7f7e1 Fixes the problem, described here:
http://listengine.tuxfamily.org/lists.tuxfamily.org/eigen/2010/05/msg00154.html
2010-05-28 10:18:37 +02:00
Gael Guennebaud
39c568445c simplify a using statement 2010-06-01 13:59:21 +02:00
Gael Guennebaud
e2097c55f8 fix issue #125 - *norm() return RealScalar and not Scalar 2010-05-31 22:46:18 +02:00
Jitse Niesen
8dc947821b Allow user to compute only the eigenvalues and not the eigenvectors. 2010-05-31 18:17:47 +01:00
Jitse Niesen
609941380a Change skipU argument to computeU - this reverses the meaning.
See "skipXxx / computeXxx parameters in Eigenvalues module" on mailing list.
2010-05-31 16:48:41 +01:00
Jitse Niesen
c21390a611 Define non-const operator() in Reverse; enable test for this.
Introduction of DenseCoeffBase (revision bfdc1c4973
) meant that non-const
operator() is only defined if DirectAccess is set. This caused the line
"m.reverse()(1,0) = 4;" in MatrixBase_reverse.cpp to fail at compile-time.
Not sure this is correct solution; perhaps we should disallow this? Or make
Reverse DirectAccess with a negative stride - would that break something?
2010-05-31 14:42:04 +01:00
Jitse Niesen
db8631b66a Guard with assert against using decomposition objects uninitialized. 2010-05-30 21:49:35 +01:00
Benoit Jacob
6ce22a61b3 oops, remove extra 'typename' 2010-05-30 16:41:16 -04:00
Benoit Jacob
aaaade4b3d the Index types change.
As discussed on the list (too long to explain here).
2010-05-30 16:00:58 -04:00
Jens Mueller
48b8ace517 Fix SparseMatrix/SparseVector::sum()
SparseMatrix/SparseVector::sum() uses Map to compute the sum. But Map expects a
pointer.
2010-05-27 17:02:24 +02:00
Manoj Rajagopalan
a240f83216 Fix to ProductBase::evalTo() in order to get matrix multiplication working for numeric
types that don't have implicit conversion from int
2010-05-26 13:00:55 -04:00
Thomas Capricelli
4a2d6ece2e fix readcost for complex types 2010-05-26 02:33:28 +02:00
Jitse Niesen
e7dc772554 Respect MaxRowsAtCompileTime in HouseholderSequence::evalTo().
This fixes the failing test nomalloc_4.
Also remove a print inserted for debugging in schur_real test.
2010-05-25 12:40:42 +01:00