Commit Graph

5520 Commits

Author SHA1 Message Date
Gael Guennebaud
18fbe7e7d4 Fix stableNorm() with respect to NaN and inf, and add respective unit tests. blueNorm() and hypotNorm() are broken wrt to NaN/inf 2014-09-02 14:49:23 +02:00
Gael Guennebaud
3eb5253ca1 Optimization: "matrix<complex> * real" did not call the special path and the real was converted to a complex. Add respective unit test to avoid future regression. 2014-09-02 14:41:14 +02:00
Gael Guennebaud
305aa1f9c5 Add examples for hnormalized and homogenous (fix bug #846) 2014-09-02 10:47:40 +02:00
Gael Guennebaud
eb39296028 Reafctoring in D&C SVD unsupported module: clean and merge the SVDBase class to Eigen/SVD, rm copy/pasted JacobiSVD.h file 2014-09-01 18:16:20 +02:00
Gael Guennebaud
b121eecf60 Fix regression is sparse-sparse product 2014-09-01 17:34:55 +02:00
Gael Guennebaud
0369db12af bug #871: fix compilation on ARM/Neon regarding __has_builtin usage 2014-09-01 10:52:58 +02:00
Gael Guennebaud
01f3ca3e8d Merged in georg_drenkhahn/eigen/georg_d/fix_warn_minmax (pull request PR-81)
Fix for warning on macro definitions of max() and min() in test.h
2014-08-29 14:34:00 +02:00
Gael Guennebaud
aec3d90ca6 Optimization in sparse-sparse matrix products for small ones 2014-08-29 14:19:03 +02:00
Gael Guennebaud
460662cbcc Fix SparseVector::coeffRef(i,j) and add missing SparseVector::insert*Unordered 2014-08-29 14:18:23 +02:00
Gael Guennebaud
1ed9e2d004 In sparse matrix product, enable sorted insertion when doing two transposition is defenitely not optimal. 2014-08-29 11:55:03 +02:00
Georg Drenkhahn
e49e84d979 Added missing STL include of <list> in main.h
Removed duplicated include of <sstream>
Added comments on the background of min/max macro definitions and STL header includes
2014-08-29 10:41:05 +02:00
Freddie Witherden
c3e4080474 Allow LevenbergMarquardt to work with non-standard types. 2014-08-27 15:24:51 +01:00
Georg Drenkhahn
0ba490cf80 Fixed CMakeLists.txt files to prevent CMake 3.0.0 warnings about deprecated LOCATION target property.
Small whitespace cleanup in CMakelLists.txt.
2014-08-22 12:13:07 +02:00
Gael Guennebaud
25a3e65a68 In SparseQR, calling factorize() without analyzePattern() was broken. 2014-08-26 23:32:32 +02:00
Gael Guennebaud
be3477e206 bug #857: workaround MSVC compilation issue. 2014-08-26 12:52:29 +02:00
Gael Guennebaud
2e50289ba3 bug #861: enable posix_memalign with PGI 2014-08-26 12:54:19 +02:00
Gael Guennebaud
b49ef99617 Do not apply the preconditioner before starting the iterations as this might destroy a very good initial guess. 2014-08-21 22:14:25 +02:00
Gael Guennebaud
9c0aa81fbf bug #854: fix numerical issue in SelfAdjointEigenSolver::computeDirect for 3x3 matrices. The tolerance to detect stable cross products was too optimistic.
Add respective unit tests.
2014-08-21 10:49:09 +02:00
Christoph Hertzberg
eeadc06e83 EIGEN_EXCEPTIONS was not defined in test/main.h, therefore all VERIFY_RAISES_ASSERT tests were not enabled 2014-08-20 16:39:25 +02:00
Christoph Hertzberg
4403800e11 Merged in vladimir_ch/eigen-1/vladimir_ch/fix-uninitialized-variable-warning-in-sp-1408513228472 (pull request PR-77)
Fix uninitialized variable warning in SparseQR
2014-08-20 11:12:18 +02:00
Christoph Hertzberg
9062f74d13 Merged in traversaro/eigen/traversaro/findeigen3cmake-add-reading-hints-of-eig-1407426517521 (pull request PR-76)
FindEigen3.cmake: Add reading hints of Eigen directory location from environment variables EIGEN3_ROOT and EIGEN3_ROOT_DIR .
2014-08-20 11:11:52 +02:00
Vladimir Chalupecky
6a3423da80 Fix uninitialized variable warning in SparseQR 2014-08-20 05:42:22 +00:00
Silvio Traversaro
50085d2c28 FindEigen3.cmake: Add reading hints of Eigen directory location from environment variables EIGEN3_ROOT and EIGEN3_ROOT_DIR . 2014-08-07 15:48:53 +00:00
Gael Guennebaud
e51da9c3a8 Memory allocated on the stack is freed at the function exit, so reduce iteration count to avoid stack overflow 2014-08-04 12:46:00 +02:00
Kolja Brix
953ec08089 Correct GMRES:
* Fix error in calculation of residual at restart.
* Use relative residual as stopping criterion.
* Improve documentation.
2014-08-02 18:39:15 +02:00
Gael Guennebaud
3e59163a24 Fix bug #850: workaround MSVC 2008 weird compilation bug 2014-08-02 02:47:30 +02:00
Benjamin Chrétien
c53f88297c Fix more typos in Ref.h (doc). 2014-08-01 15:43:47 +02:00
Benjamin Chrétien
6f58a41097 Fix typos in Ref.h (doc). 2014-08-01 15:35:45 +02:00
Benjamin Chrétien
db76193bc7 Fix typo in PermutationMatrix (doc). 2014-08-01 14:41:49 +02:00
Gael Guennebaud
d79516660c Make loadMarket use the sparse-matrix index type, thus enabling loading huge matrices. 2014-07-31 16:43:19 +02:00
Gael Guennebaud
ba694ce8cf add missing delete operator overloads 2014-07-30 09:32:35 +02:00
Jitse Niesen
5f3d542b8a Fix typo in MatrixExponential noticed by Markos. 2014-07-25 13:34:03 +01:00
Gael Guennebaud
a0a87410d0 Fix bug #61: gemm was broken since we changed the blocking order 2014-07-24 22:08:10 +02:00
Konstantinos Margaritis
2c625ec9ba Simplification of some Altivec constants, reuse existing constants and avoid loading from RAM esp in the case of p16uc_COMPLEX_TRANSPOSE* 2014-07-22 20:46:03 +00:00
Gael Guennebaud
d1e9f39a9a Ambiguous call fixes for clang. 2014-07-22 18:28:19 +02:00
Gael Guennebaud
7f15f27a9e Workaround ambiguous call of init1 with MSVC. 2014-07-22 17:01:34 +02:00
Gael Guennebaud
922694a2d1 Extend fixed-size ctor unit test and fix conversion warning. 2014-07-22 16:57:14 +02:00
Christoph Hertzberg
a8283e0ed2 Define EIGEN_TRY, EIGEN_CATCH, EIGEN_THROW as suggested by Moritz Klammer.
Make it possible to run unit-tests with exceptions disabled via EIGEN_TEST_NO_EXCEPTIONS flag.
Enhanced ctorleak unit-test
2014-07-22 13:16:44 +02:00
Moritz Klammler
529e6cb552 Applied changes suggested by Christoph Hertzberg to c'tor leak fix.
- Enclose exception handling in '#ifdef EIGEN_EXCEPTIONS'.
- Use an object counter to demonstrate the bug more readily.
2014-07-18 23:19:56 +02:00
Moritz Klammler
58687aa5e6 Avoid memory leak when constructor of user-defined type throws exception.
The added check `ctorleak.cpp` demonstrates how the leak can be reproduced.
The test appears to pass but it is leaking the storage of the (not created)
matrix.  I don't know how to make this test fail in the existing test suite but
you can run it through Valgrind (or another debugger) to verify the leak.

    $ ./check.sh ctorleak && valgrind --leak-check=full ./test/ctorleak

This patch fixes this leak by adding some try-catch-delete-rethrow blocks to
`Eigen/src/Core/util/Memory.h`.
2014-07-06 06:58:13 +02:00
Gael Guennebaud
339f14b8d1 bug #826: document caveats in 1x1 and 2x1 constructors. 2014-07-21 13:43:48 +02:00
Gael Guennebaud
d4cc1bdc7f Make the ordering method of SimplicialL[D]LT user configurable. 2014-07-20 14:22:58 +02:00
Gael Guennebaud
8e19027130 bug #826: fix 64 to 32 bits conversion warning when calling Matrix<int,1,1>(long) 2014-07-20 14:03:22 +02:00
Christoph Hertzberg
ef4a86d6b8 Fix trivial warnings in MPRealSupport 2014-07-18 16:39:58 +02:00
Christoph Hertzberg
68eafc10b1 Add note to EIGEN_DONT_PARALLELIZE into preprocessor documentation page (requested in IRC) 2014-07-18 15:42:12 +02:00
Christoph Hertzberg
1cb71a8782 bug #138: Make building of internal documentation configurable via cmake flag 2014-07-18 14:34:58 +02:00
Gael Guennebaud
ac1bb3e5b3 bug #770: fix out of bounds access 2014-07-18 14:22:33 +02:00
Gael Guennebaud
da62eb22e4 bug #843: fix jacobisvd for complexes and extend respective unit test to chack with random tricky matrices 2014-07-17 17:09:15 +02:00
Gael Guennebaud
77af4cc3c9 bug #397: add a warning for 64 to 32 bit integer conversion and fix many of these warning by splitting the index type used for storage and as size/coefficient indexes in PermutationMatrix and Transpositions. 2014-07-17 13:34:26 +02:00
Gael Guennebaud
5e72151ca5 bug #842: warn user about MPFR++ being under the GPL 2014-07-17 12:06:20 +02:00