Gael Guennebaud
4c8cd13b35
Add explicit ctor for diagonal to sparse conversion
2015-06-24 18:11:06 +02:00
Gael Guennebaud
23535ed31c
Add unit test for dense = SparseQR::matrixQ
2015-06-24 17:55:41 +02:00
Gael Guennebaud
62f21e2d11
Add support for sparse = diagonal
2015-06-24 17:55:00 +02:00
Gael Guennebaud
2a33075aeb
std::isnan is c++11 only
2015-06-24 10:29:17 +02:00
Gael Guennebaud
23da99492f
Add unit-test for Visual2013 ambiguous call to operator=
2015-06-24 10:27:02 +02:00
Benoit Steiner
6441befbb3
Added more checks to test the correctness of the pexp implementation
2015-06-23 19:12:46 -07:00
Gael Guennebaud
c3e398d138
Fix overflow when checking SVD accuracy
2015-06-23 15:05:20 +02:00
Gael Guennebaud
18c9d155f3
Fix the fact that float(int) != float(int(float(int)))
2015-06-23 14:33:00 +02:00
Gael Guennebaud
9fc1c92137
Fix isinf unit tests
2015-06-22 16:48:27 +02:00
Gael Guennebaud
b3b3dcad05
Reduce compiler memory consumption for SVD unit tests
2015-06-22 09:58:06 +02:00
Gael Guennebaud
e9edb085c0
Check number of temporaries when applying permutations
2015-06-19 16:39:24 +02:00
Gael Guennebaud
6318d53b41
Factorize VERIFY_EVALUATION_COUNT in unit tests
2015-06-19 16:38:26 +02:00
Gael Guennebaud
bb6acc561e
Workaround broken complex*real product on old clang versions
2015-06-17 16:11:58 +02:00
Gael Guennebaud
40f326ef2e
workaround clang's broken complex division
2015-06-17 15:33:09 +02:00
Gael Guennebaud
736a805883
Add unit test for bug #879
2015-06-16 22:11:41 +02:00
Gael Guennebaud
972a535288
Remove aligned-on-scalar assert and fallback to non vectorized path at runtime (first_aligned already had this runtime guard)
2015-06-14 15:04:07 +02:00
Gael Guennebaud
3946c981b1
Relax tolerance when testing LDLT on singular problems
2015-06-15 15:08:16 +02:00
Gael Guennebaud
2212e40e95
Extend VERIFY_IS_APPROX to report the magnitude of the relative difference in case of failure. This will ease identifying strongest failing tests
2015-06-15 15:03:19 +02:00
Gael Guennebaud
2f2a441a4d
Fix use of unitialized buffers.
2015-06-13 22:19:40 +02:00
Gael Guennebaud
d93ba137f2
Introduce EIGEN_PI, get rid of M_PI and acos(-1.0)
2015-06-10 17:12:10 +02:00
Gael Guennebaud
b0d5aaafcc
Rename free functions isFinite, isInf, isNaN to be compatible with c++11
2015-06-10 16:17:09 +02:00
Gael Guennebaud
25a98be948
bug #80 : merge with d_hood branch on adding more coefficient-wise unary array functors
2015-06-10 15:52:05 +02:00
Gael Guennebaud
192bce2795
bug #890 , add a more general routine to check that two dense object reference to the same data
2015-06-10 10:09:04 +02:00
Gael Guennebaud
e6832ce93d
Add regression test for bug #890
2015-06-10 09:32:10 +02:00
Gael Guennebaud
feaf76c001
bug #910 : add a StandardCompressedFormat option to Ref<SparseMatrix> to enforce standard compressed storage format.
...
If the input is not compressed, then this trigger a copy for a const Ref, and a runtime assert for non-const Ref.
2015-06-09 23:11:24 +02:00
Gael Guennebaud
f899aeb301
bug #650 : fix sparse * dense wrt noalias and compound assignment
2015-06-09 18:33:24 +02:00
Gael Guennebaud
f9350e70eb
fix unused variable warning
2015-06-09 15:17:21 +02:00
Gael Guennebaud
3a4299b245
bug #872 : remove usage of deprecated bind1st.
2015-06-09 10:52:04 +02:00
Gael Guennebaud
9aef0db992
Skip too large real-world problems for solvers that do not scale (e.g., SimplicialLLT without reordering)
2015-06-09 09:29:53 +02:00
Gael Guennebaud
9a2447b0c9
Fix shadow warnings triggered by clang
2015-06-09 09:11:12 +02:00
Gael Guennebaud
cd8b996f99
Extend unit test and documentation of SelfAdjointEigenSolver::computeDirect
2015-06-08 16:16:42 +02:00
Gael Guennebaud
8f031a3cee
bug #997 : add missing evaluators for m.lazyProduct(v.homogeneous())
2015-06-08 15:43:41 +02:00
Gael Guennebaud
e6c5723dcd
Add unit test for m.replicate(...)(index).
2015-06-08 15:42:15 +02:00
Gael Guennebaud
98a8d43457
Improve unit testing of real-word sparse problem (fix some shortcommings, use VERIFY, etc.)
2015-06-05 14:33:37 +02:00
Gael Guennebaud
b685660b22
Do go to full accuracy when testing BiCGSTAB.
2015-06-05 14:32:26 +02:00
Gael Guennebaud
a852001196
Add regression test for bugs #854 and #1014 , and check that the eigenvector matrix is unitary.
2015-05-12 18:45:39 +02:00
Gael Guennebaud
e66caf48e8
Make test matrices for eigensolver/selfadjoint even more tricky
2015-05-12 18:44:46 +02:00
Christoph Hertzberg
494fa991c3
bug #872 : Avoid deprecated binder1st/binder2nd usage by providing custom functors for comparison operators
2015-05-07 17:28:40 +02:00
Gael Guennebaud
c2107d30ce
Extend unit tests of sefladjoint-eigensolver
2015-05-07 15:54:07 +02:00
Christoph Hertzberg
da2baf685d
Regression test for bug #302
...
(transplanted from 80fd8fab87
)
Changed DenseIndex to Index
2015-04-26 21:05:33 +02:00
Gael Guennebaud
1681a665d9
Extend unit test of Map<,,Stride<>> with stack allocated buffers and less trivial operations.
2015-04-24 10:38:28 +02:00
Gael Guennebaud
834f66e9fc
Extend unit test of Map<> with stack allocated buffers and less trivial operations.
2015-04-24 10:10:19 +02:00
Deanna Hood
0250f4a9f2
Merged default into unary-array-cwise-functors
2015-04-20 14:01:35 -04:00
Gael Guennebaud
5a3c48e3c6
bug #942 : fix dangling references in evaluator of diagonal * sparse products.
2015-04-18 22:43:27 +02:00
Christoph Hertzberg
3be9f5c4d7
Constructing a Matrix/Array with implicit transpose could lead to memory leaks.
...
Also reduced code duplication for Matrix/Array constructors
2015-04-16 13:25:20 +02:00
Deanna Hood
085aa8e601
Don't use M_PI since it's only guaranteed to be defined in Eigen/Geometry
2015-04-08 13:59:18 -05:00
Gael Guennebaud
3105986e71
bug #875 : remove broken SparseMatrixBase::nonZeros and introduce a nonZerosEstimate() method to sparse evaluators for internal uses.
...
Factorize some code in SparseCompressedBase.
2015-04-01 22:27:34 +02:00
Gael Guennebaud
39dcd01b0a
bug #973 : enable alignment of multiples of half-packet size (e.g., Vector6d with AVX)
2015-04-01 13:55:09 +02:00
Gael Guennebaud
8481dc21ea
bug #986 : add support for coefficient-based product with 0 depth.
2015-04-01 13:15:23 +02:00
Gael Guennebaud
79b4e6acaf
Fix bug #987 : wrong alignement guess in diagonal product.
2015-03-31 23:35:12 +02:00
Gael Guennebaud
8313fb7df7
Add row/column-wise reverseInPlace feature.
2015-03-31 21:35:53 +02:00
Gael Guennebaud
dfb674a25e
Make reverseInPlace really work in-place.
2015-03-31 20:17:10 +02:00
Gael Guennebaud
20d030f207
Fix vectorization of swap for non trivial expressions
2015-03-31 20:16:02 +02:00
Gael Guennebaud
ae01c05e18
Fix computeProductBlockingSizes with m==0, and add respective unit test.
2015-03-31 15:19:57 +02:00
Christoph Hertzberg
3238ca6abc
Addendum to last patch: k is Index and not int
2015-03-31 00:42:14 +02:00
Christoph Hertzberg
1efae98fee
bug #985 : RealQZ failed when either matrix had zero rows or columns (report and patch by Ben Goodrich)
...
Also added a regression test
2015-03-30 23:56:20 +02:00
Christoph Hertzberg
266a84558f
Optionally build the documentation when building unit tests.
2015-03-27 16:36:59 +01:00
Gael Guennebaud
ad044008da
Fix transpose versus adjoint.
2015-03-27 12:07:14 +01:00
Gael Guennebaud
7e225b6fa4
Suppress some false negatives in SVD unit test
2015-03-27 10:55:53 +01:00
Gael Guennebaud
f42b105f73
Add the possibility to make VERIFY* checks to output a warning instead of abording.
2015-03-24 13:39:14 +01:00
Deanna Hood
83e5b7656b
Use M_PI instead of acos(-1) for pi
2015-03-22 06:04:31 +10:00
Gael Guennebaud
9ee62fdcd5
Fix random unit test for 32bits systems.
2015-03-19 21:39:37 +01:00
Gael Guennebaud
d7698c18b7
Split sparse_basic unit test
2015-03-19 15:11:05 +01:00
Gael Guennebaud
f329d0908a
Improve random number generation for integer and add unit test
2015-03-19 15:10:36 +01:00
Deanna Hood
41b717de25
More extensive unit tests for recent array-wise functors
2015-03-18 03:11:03 +10:00
Deanna Hood
8878e1c1de
Remove ambiguity with recent numext methods isNaN and isInf
2015-03-17 22:39:51 +10:00
Deanna Hood
1c78d6f2a6
Add boolean not operator (!) array support
2015-03-17 08:29:57 +10:00
Deanna Hood
85da0c2281
Remove test of now-missing floor, ceil, round complex implementations
2015-03-17 06:56:47 +10:00
Deanna Hood
e1d6e6c972
Make cube, inverse and abs2 free-functions
2015-03-17 06:25:24 +10:00
Deanna Hood
fef4e071d7
Rename isinf to isInf
2015-03-17 05:58:47 +10:00
Deanna Hood
46cf9cda32
Add isfinite array support as isFinite
2015-03-17 04:33:12 +10:00
Deanna Hood
fb68b149cb
Rename isnan to isNaN
2015-03-17 02:04:42 +10:00
Gael Guennebaud
1330f8bbd1
bug #973 , improve AVX support by enabling vectorization of Vector4i-like types, and enforcing alignement of Vector4f/Vector2d-like types to preserve compatibility with SSE and future Eigen versions that will vectorize them with AVX enabled.
2015-03-13 21:15:50 +01:00
Gael Guennebaud
2f6f8bf31c
Add missing coeff/coeffRef members to Block<sparse>, and extend unit tests.
2015-03-13 16:24:40 +01:00
Deanna Hood
f89fcefa79
Add hyperbolic trigonometric functions from std array support
2015-03-11 13:13:30 +10:00
Deanna Hood
a5e49976f5
Add log10 array support
2015-03-11 08:56:42 +10:00
Deanna Hood
19a71056ae
Allow calling of square(array) in addition to array.square()
2015-03-11 06:59:28 +10:00
Deanna Hood
31fdd67756
Additional unary coeff-wise functors (isnan, round, arg, e.g.)
2015-03-11 06:39:23 +10:00
Gael Guennebaud
9e885fb766
Add unit tests for CG and sparse-LLT for long int as storage-index
2015-03-09 14:33:15 +01:00
Gael Guennebaud
224a1fe4c6
bug #963 : make IncompleteLUT compatible with non-default storage index types.
2015-03-09 13:55:20 +01:00
Gael Guennebaud
cf9940e17b
Make sparse unit-test helpers aware of StorageIndex
2015-03-09 13:54:05 +01:00
Gael Guennebaud
14a5f135a3
bug #969 : workaround abiguous calls to Ref using enable_if.
2015-03-06 17:51:31 +01:00
Gael Guennebaud
d23fcc0672
bug #978 : add unit test for zero-sized products
2015-03-06 16:12:08 +01:00
Gael Guennebaud
4c8b95d5c5
Rename LSCG to LeastSquaresConjugateGradient
2015-03-05 10:16:32 +01:00
Gael Guennebaud
c43154bbc5
Check for no-reallocation in SparseMatrix::insert (bug #974 )
2015-03-04 10:16:46 +01:00
Gael Guennebaud
05274219a7
Add a CG-based solver for rectangular least-square problems (bug #975 ).
2015-03-04 09:34:27 +01:00
Gael Guennebaud
b10cd3afd2
Re-enbale detection of min/max parentheses protection, and re-enable mpreal_support unit test.
2015-02-27 22:38:00 +01:00
Christoph Hertzberg
052b6b40f1
Fix two trivial warnings
2015-02-22 12:40:51 +01:00
Christoph Hertzberg
6af6cf0c2e
I can reproduce any problems that justified this hack. However it makes builds fail in C++11 mode.
2015-02-21 19:43:56 +01:00
Gael Guennebaud
01b8440579
With C++11 Matrix<float> + Matrix<complex<float>> does not even compile
2015-02-20 09:32:49 +01:00
Gael Guennebaud
b192e29eae
In C++11 destructors do not throw by default (fix CommaInitializer unit test)
2015-02-20 09:28:34 +01:00
Gael Guennebaud
ece6b440f9
Fix a C++11 compilation issue in unit test
2015-02-19 23:31:08 +01:00
Gael Guennebaud
1b7e12847d
Fix some calls to result_of on binary functors as unary ones.
2015-02-19 23:30:41 +01:00
Gael Guennebaud
c7bb1e8ea8
Fix a regression when using OpenMP, and fix bug #714 : the number of threads might be lower than the number of requested ones
2015-02-18 15:19:23 +01:00
Gael Guennebaud
371d3bef36
Workaround dead store warnings in unit tests.
2015-02-18 11:30:44 +01:00
Christoph Hertzberg
24d65ac0b0
Removed redundant typedef which confused old gcc versions.
2015-02-18 01:03:32 +01:00
Gael Guennebaud
9f49f00feb
Extend sparse-determinant unitests
2015-02-16 19:09:48 +01:00
Gael Guennebaud
f0b1b1df9b
Fix SparseLU::signDeterminant() method, and add a SparseLU::determinant() method.
2015-02-16 19:09:22 +01:00
Gael Guennebaud
0f464d9d87
bug #897 : fix regression in BiCGSTAB(mat) ctor (an all other iterative solvers).
...
Add respective regression unit test.
2015-02-16 17:05:10 +01:00
Gael Guennebaud
aa6c516ec1
Fix many long to int conversion warnings:
...
- fix usage of Index (API) versus StorageIndex (when multiple indexes are stored)
- use StorageIndex(val) when the input has already been check
- use internal::convert_index<StorageIndex>(val) when val is potentially unsafe (directly comes from user input)
2015-02-16 13:19:05 +01:00