aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/qr.cpp
Commit message (Collapse)AuthorAge
* PR 567: makes all dense solvers inherit SoverBase (LU,Cholesky,QR,SVD).Gravatar Patrick Peltzer2019-01-17
| | | | | | | | | | | | | This changeset also includes: * add HouseholderSequence::conjugateIf * define int as the StorageIndex type for all dense solvers * dedicated unit tests, including assertion checking * _check_solve_assertion(): this method can be implemented in derived solver classes to implement custom checks * CompleteOrthogonalDecompositions: add applyZOnTheLeftInPlace, fix scalar type in applyZAdjointOnTheLeftInPlace(), add missing assertions * Cholesky: add missing assertions * FullPivHouseholderQR: Corrected Scalar type in _solve_impl() * BDCSVD: Unambiguous return type for ternary operator * SVDBase: Corrected Scalar type in _solve_impl()
* Get rid of EIGEN_TEST_FUNC, unit tests must now be declared with ↵Gravatar Gael Guennebaud2018-07-17
| | | | | | | | | EIGEN_DECLARE_TEST(mytest) { /* code */ }. This provide several advantages: - more flexibility in designing unit tests - unit tests can be glued to speed up compilation - unit tests are compiled with same predefined macros, which is a requirement for zapcc
* Remove local Index typedef from unit-testsGravatar Gael Guennebaud2018-07-12
|
* bug #1493: Make representation of HouseholderSequence consistent and working ↵Gravatar Christoph Hertzberg2018-04-15
| | | | for complex numbers. Made corresponding unit test actually test that. Also simplify implementation of QR decompositions
* Enforce scalar types in calls to max/min (helps with expression template ↵Gravatar Gael Guennebaud2016-07-25
| | | | scalar types)
* reduce false negative in the qr unit testGravatar Gael Guennebaud2014-02-14
|
* Clean source code and unit tests with respect to -Wunused-local-typedefsGravatar Gael Guennebaud2013-04-10
|
* Fix bug #314:Gravatar Gael Guennebaud2012-11-06
| | | | | - remove most of the metaprogramming kung fu in MathFunctions.h (only keep functions that differs from the std) - remove the overloads for array expression that were in the std namespace
* Automatic relicensing to MPL2 using Keirs script. Manual fixup follows.Gravatar Benoit Jacob2012-07-13
|
* add the possibility to configure the maximal matrix size in the unit testsGravatar Gael Guennebaud2011-07-12
|
* Initial fixes for bug #85.Gravatar Hauke Heibel2010-10-25
| | | | | | | Renamed meta_{true|false} to {true|false}_type, meta_if to conditional, is_same_type to is_same, un{ref|pointer|const} to remove_{reference|pointer|const} and makeconst to add_const. Changed boolean type 'ret' member to 'value'. Changed 'ret' members refering to types to 'type'. Adapted all code occurences.
* bug #86 : use internal:: namespace instead of ei_ prefixGravatar Benoit Jacob2010-10-25
|
* email changeGravatar Gael Guennebaud2010-06-24
|
* Utilize Index in all unit tests.Gravatar Hauke Heibel2010-06-20
|
* Add blocking inside HouseholderQR based on code from Vincent Lejeune.Gravatar Gael Guennebaud2010-06-17
| | | | This is all internal stuff for now.
* - Added problem size constructor to decompositions that did not have one. It ↵Gravatar Adolfo Rodriguez Tsouroukdissian2010-04-21
| | | | | | | | | | | preallocates member data structures. - Updated unit tests to check above constructor. - In the compute() method of decompositions: Made temporary matrices/vectors class members to avoid heap allocations during compute() (when dynamic matrices are used, of course). These changes can speed up decomposition computation time when a solver instance is used to solve multiple same-sized problems. An added benefit is that the compute() method can now be invoked in contexts were heap allocations are forbidden, such as in real-time control loops. CAVEAT: Not all of the decompositions in the Eigenvalues module have a heap-allocation-free compute() method. A future patch may address this issue, but some required API changes need to be incorporated first.
* Add (failing) test for computing HouseholderQR of a 1x1 matrix.Gravatar Jitse Niesen2010-03-01
|
* * Fix a bug in HouseholderQR with mixed fixed/dynamic size: must use ↵Gravatar Benoit Jacob2010-01-11
| | | | | | | | | EIGEN_SIZE_MIN instead of EIGEN_ENUM_MIN, and there are many other occurences throughout Eigen! * HouseholderSequence: - add shift parameter - add essentialVector() method to start abstracting the direction - add unit test in householder.cpp
* Backed out changeset 58fb27cd566f4057cee914be4cfe4f87abe8dc04Gravatar Benoit Jacob2010-01-07
|
* undoGravatar Benoit Jacob2010-01-07
|
* * HouseholderSequence:Gravatar Benoit Jacob2009-12-02
| | | | | | | * 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
* port the qr module to ei_solve_xxx.Gravatar Benoit Jacob2009-11-08
|
* big huge changes, so i dont remember everything.Gravatar Benoit Jacob2009-10-28
| | | | | | | | | | * renaming, e.g. LU ---> FullPivLU * split tests framework: more robust, e.g. dont generate empty tests if a number is skipped * make all remaining tests use that splitting, as needed. * Fix 4x4 inversion (see stable branch) * Transform::inverse() and geo_transform test : adapt to new inverse() API, it was also trying to instantiate inverse() for 3x4 matrices. * CMakeLists: more robust regexp to parse the version number * misc fixes in unit tests
* also test that the matrix Q is unitaryGravatar Benoit Jacob2009-10-12
|
* Fix compilation of HouseholderQR and ColPivotingHouseholderQR for non-square ↵Gravatar Benoit Jacob2009-09-28
| | | | | | | fixed-size matrices. For Colpiv that was just changing MatrixQType to MatrixType in the instantiation of HouseholderSequence. For HouseholderQR I also re-ported the solve method from Colpiv as there were multiple issues.
* * add a HouseholderSequence class (not good enough yet for ↵Gravatar Gael Guennebaud2009-09-16
| | | | | | Triadiagonalization and HessenbergDecomposition) * rework a bit AnyMatrixBase, and mobe it to a separate file
* modernize HouseholderQR too, uniformize all that stuff, update testsGravatar Benoit Jacob2009-08-24
|
* change the make householder algorithm so that the remaining coefficientGravatar Gael Guennebaud2009-08-17
| | | | is real, and make Tridiagonalization use it
* make HouseholderQR uses the Householder moduleGravatar Gael Guennebaud2009-08-16
|
* * rename QR to HouseholderQR because really that impacts the API, not just ↵Gravatar Benoit Jacob2009-07-06
| | | | | | | | the impl. * rename qr() to householderQr(), for same reason. * clarify that it's non-pivoting, non-rank-revealing, so remove all the rank API, make solve() be void instead of bool, update the docs/test, etc. * fix warning in SVD
* mergeGravatar Benoit Jacob2009-05-22
|\
| * remove sentence "Eigen itself is part of the KDE project."Gravatar Benoit Jacob2009-05-22
| | | | | | | | it never made very precise sense. but now does it still make any?
* | QR and SVD decomposition interface unification.Gravatar Hauke Heibel2009-05-22
|/ | | | | | Added default ctor and public compute method as well as safe-guards against uninitialized usage. Added unit tests for the safe-guards.
* * introduced method createRandomMatrixOfRank (R = U*D*V where U,V unitary, D ↵Gravatar Hauke Heibel2009-05-17
| | | | | | | | r-by-c diag. with rank non-zero values) * switched lu/qr tests to be using createRandomMatrixOfRank * removed unused methods doSomeRankPreservingOperations * removed NOTE about doSomeRankPreservingOperations
* various minor updates of some unit testsGravatar Gael Guennebaud2009-05-11
|
* setup the unsupported directory structure.Gravatar Gael Guennebaud2009-02-04
| | | | | | | | The unsupported module documentation is automatically generated in: build/doc/unsupported/ with bidirectional cross references. I leave a class Foo in AdolcForward module to illustrate the cross-reference behavior. I will remove it in the next commit.
* QR: add isInjective(), isSurjective(),Gravatar Gael Guennebaud2009-01-28
| | | | | | mark isFullRank() deprecated, add solve() (mix of Keir's patch and LU::solve()) => there is big problem with complex which are not working
* forgot to include the update of the qr testGravatar Gael Guennebaud2009-01-20
|
* * Merge Extract and Part to the Part expression.Gravatar Gael Guennebaud2008-07-21
| | | | | | Renamed "MatrixBase::extract() const" to "MatrixBase::part() const" * Renamed static functions identity, zero, ones, random with an upper case first letter: Identity, Zero, Ones and Random.
* Added a Hessenberg decomposition class for both real and complex matrices.Gravatar Gael Guennebaud2008-06-08
| | | | | | | This is the first step towards a non-selfadjoint eigen solver. Notes: - We might consider merging Tridiagonalization and Hessenberg toghether ? - Or we could factorize some code into a Householder class (could also be shared with QR)
* * fix the QR module to use extract/part instead of the previous triangular stuffGravatar Gael Guennebaud2008-05-27
* added qr and eigensolver tests * fix a compilation warning in Matrix copy constructor