Commit message (Collapse) | Author | Age | ||
---|---|---|---|---|
... | ||||
* | PR 567: makes all dense solvers inherit SoverBase (LU,Cholesky,QR,SVD). | 2019-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() | |||
* | Add conjugateIf<bool> members to DesneBase, TriangularView, SelfadjointView, ↵ | 2019-01-17 | ||
| | | | | and make PartialPivLU use it. | |||
* | Remove Eigen2ToEigen3 migration page (obsolete since 3.3) | 2019-01-16 | ||
| | ||||
* | bug #1617: add unit tests for empty triangular solve. | 2019-01-16 | ||
| | ||||
* | bug #1646: disable aliasing detection for empty and 1x1 expression | 2019-01-16 | ||
| | ||||
* | Make Transform::rotation() an alias to Transform::linear() in the case of an ↵ | 2019-01-15 | ||
| | | | | Isometry | |||
* | Enable visitor on empty matrices (the visitor is left unchanged), and ↵ | 2019-01-15 | ||
| | | | | protect min/maxCoeff(Index*,Index*) on empty matrices by an assertion (+ doc & unit tests) | |||
* | bug #1592: makes partial min/max reductions trigger an assertion on inputs ↵ | 2019-01-15 | ||
| | | | | with a zero reduction length (+doc and tests) | |||
* | Fix detection of vector-at-time: use Rows/Cols instead of MaxRow/MaxCols. | 2019-01-15 | ||
| | | | | This fix VectorXd(n).middleCol(0,0).outerSize() which was equal to 1. | |||
* | fix always true warning with gcc 4.7 | 2019-01-15 | ||
| | ||||
* | cleanup | 2019-01-15 | ||
| | ||||
* | Merged eigen/eigen into default | 2019-01-14 | ||
|\ | ||||
| * | AVX512 (r)sqrt(double) was mistakenly disabled with clang and others | 2019-01-14 | ||
| | | ||||
| * | Initialize isometric transforms like affine transforms. | 2019-01-11 | ||
| | | | | | | | | | | | | The isometric transform, like the affine transform, has an implicit last row of [0, 0, 0, 1]. This was not being properly initialized, as verified by a new test function. | |||
| * | Fix StorageIndex FIXME in dense LU solvers | 2019-01-13 | ||
| | | ||||
* | | Add support for inverse hyperbolic functions. | 2019-01-11 | ||
|/ | | | | Fix cost of division. | |||
* | Rename pones -> ptrue. Use _CMP_TRUE_UQ where appropriate. | 2019-01-09 | ||
|\ | ||||
* | | Collapsed revision | 2019-01-09 | ||
| | | | | | | | | | | | | | | | | | | * Collapsed revision * Add packet up "pones". Write pnot(a) as pxor(pones(a), a). * Collapsed revision * Simplify a bit. * Undo useless diffs. * Fix typo. | |||
| * | Add packet up "pones". Write pnot(a) as pxor(pones(a), a). | 2019-01-09 | ||
|/ | ||||
* | Merged eigen/eigen into default | 2019-01-09 | ||
|\ | ||||
| * | bug #1652: implements a much more accurate version of vectorized sin/cos. ↵ | 2019-01-09 | ||
| | | | | | | | | | | | | | | This new version achieve same speed for SSE/AVX, and is slightly faster with FMA. Guarantees are as follows: - no FMA: 1ULP up to 3pi, 2ULP up to sin(25966) and cos(18838), fallback to std::sin/cos for larger inputs - FMA: 1ULP up to sin(117435.992) and cos(71476.0625), fallback to std::sin/cos for larger inputs | |||
* | | Add support for pcmp_eq and pnot, including for complex types. | 2019-01-07 | ||
|/ | ||||
* | Fix unit test | 2018-12-27 | ||
| | ||||
* | Implement a faster fix for sin/cos of large entries that also correctly ↵ | 2018-12-23 | ||
| | | | | handle INF input. | |||
* | Make sure that psin/pcos return number in [-1,1] for large inputs (though ↵ | 2018-12-23 | ||
| | | | | sin/cos on large entries is quite useless because it's inaccurate) | |||
* | Fix plog(+INF): it returned ~87 instead of +INF | 2018-12-23 | ||
| | ||||
* | Add regression test for bug #1174 | 2018-12-12 | ||
| | ||||
* | bug #1557: fix RealSchur and EigenSolver for matrices with only zeros on the ↵ | 2018-12-12 | ||
| | | | | diagonal. | |||
* | Simplify handling of tests that must fail to compile. | 2018-12-12 | ||
| | | | | Each test is now a normal ctest target, and build properties (compiler+flags) are preserved (instead of starting a new build-dir from scratch). | |||
* | bug #1641: fix testing of pandnot and fix pandnot for complex on SSE/AVX/AVX512 | 2018-12-08 | ||
| | ||||
* | Fix noise in sparse_basic_3 (numerical cancellation) | 2018-12-08 | ||
| | ||||
* | Fix noise in lu unit test | 2018-12-08 | ||
| | ||||
* | fix test regarding AVX512 vectorization of complexes. | 2018-12-06 | ||
| | ||||
* | Implement AVX512 vectorization of std::complex<float/double> | 2018-12-06 | ||
| | ||||
* | bug #785: Make Cholesky decomposition work for empty matrices | 2018-12-03 | ||
| | ||||
* | Several improvements regarding packet-bitwise operations: | 2018-11-30 | ||
| | | | | | | - add unit tests - optimize their AVX512f implementation - add missing implementations (half, Packet4f, ...) | |||
* | bug #1630: fix linspaced when requesting smaller packet size than default one. | 2018-11-28 | ||
| | ||||
* | Extend unit test to recursively check half-packet types and non packet types | 2018-11-26 | ||
| | ||||
* | merge | 2018-11-23 | ||
|\ | ||||
* | | check two ctors | 2018-11-23 | ||
| | | ||||
* | | Fix double = bool ! | 2018-11-23 | ||
| | | ||||
| * | Add default constructor to Bar to make test compile again with clang-3.8 | 2018-11-23 | ||
|/ | ||||
* | Move regression test to right unit test file | 2018-11-21 | ||
| | ||||
* | Workaround weird MSVC bug | 2018-11-21 | ||
| | ||||
* | Add explicit regression test for bug #1622 | 2018-11-16 | ||
| | ||||
* | PR 544: Set requestedAlignment correctly for SliceVectorizedTraversals | 2018-11-13 | ||
| | | | | | | | | | | | | | | | | | | | | | | | Commit aa110e681b8b2237757a652ba47da49e1fbd2cd6 optimised the multiplication of small dyanmically sized matrices by restricting the packet size to a maximum of 4, increasing the chances that SIMD instructions are used in the computation. However, it introduced a mismatch between the packet size and the requestedAlignment. This mismatch can lead to crashes when the destination is not aligned. This patch fixes the issue by ensuring that the AssignmentTraits are correctly computed when using a restricted packet size. * * * Bind LinearPacketType to MaxPacketSize This commit applies any packet size limit specified when instantiating copy_using_evaluator_traits to the LinearPacketType, providing that the size of the destination is not known at compile time. * * * Add unit test for restricted packet assignment A new unit test is added to check that multiplication of small dynamically sized matrices works correctly when the packet size is restricted to 4 and the destination is unaligned. | |||
* | bug #1619: fix mixing of const and non-const generic iterators | 2018-11-09 | ||
| | ||||
* | bug #1619: make const and non-const iterators compatible | 2018-11-09 | ||
| | ||||
* | Fix max-size in indexed-view | 2018-11-08 | ||
| | ||||
* | add unit tests for bug #1619 | 2018-11-01 | ||
| |