Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | MIsc. source and comment typos | luz.paz | 2018-03-11 |
| | | | | Found using `codespell` and `grep` from downstream FreeCAD | ||
* | bug #1403: more scalar conversions fixes in BDCSVD | Gael Guennebaud | 2017-06-09 |
| | |||
* | bug #1403: fix implicit scalar type conversion. | Gael Guennebaud | 2017-06-09 |
| | |||
* | Fix unwanted Real to Scalar to Real conversions in column-pivoting QR. | Gael Guennebaud | 2017-04-14 |
| | |||
* | Deleted extra: EIGEN_DEVICE_FUNC: the QR and Cholesky code isn't ready to ↵ | Benoit Steiner | 2017-02-28 |
| | | | | run on GPU yet. | ||
* | 1. Add explicit template to abs2 (resolves deduction for some arithmetic types) | Angelos Mantzaflaris | 2016-12-02 |
| | | | | | | 2. Avoid signed-unsigned conversion in comparison (warning in case Scalar is unsigned) (grafted from 4086187e49760d4bde72750dfa20ae9451263417 ) | ||
* | Fix compilation of qr.inverse() for column and full pivoting variants. | Gael Guennebaud | 2016-10-06 |
| | |||
* | bug #1266: remove CUDA guards on MatrixBase::<decomposition> definitions. ↵ | Gael Guennebaud | 2016-09-06 |
| | | | | (those used to break old nvcc versions that we propably don't care anymore) | ||
* | bug #1265: remove outdated notes | Gael Guennebaud | 2016-08-22 |
| | |||
* | Add documentation and exemples for inplace decomposition. | Gael Guennebaud | 2016-07-04 |
| | |||
* | bug #707: add inplace decomposition through Ref<> for Cholesky, LU and QR ↵ | Gael Guennebaud | 2016-07-04 |
| | | | | decompositions. | ||
* | Change the semantic of the last template parameter of Assignment from ↵ | Gael Guennebaud | 2016-07-04 |
| | | | | | | | "Scalar" to "SFINAE" only. The previous "Scalar" semantic was obsolete since we allow for different scalar types in the source and destination expressions. On can still specialize on scalar types through SFINAE and/or assignment functor. | ||
* | Relax mixing-type constraints for binary coefficient-wise operators: | Gael Guennebaud | 2016-06-06 |
| | | | | | | | | | | - Replace internal::scalar_product_traits<A,B> by Eigen::ScalarBinaryOpTraits<A,B,OP> - Remove the "functor_is_product_like" helper (was pretty ugly) - Currently, OP is not used, but it is available to the user for fine grained tuning - Currently, only the following operators have been generalized: *,/,+,-,=,*=,/=,+=,-= - TODO: generalize all other binray operators (comparisons,pow,etc.) - TODO: handle "scalar op array" operators (currently only * is handled) - TODO: move the handling of the "void" scalar type to ScalarBinaryOpTraits | ||
* | Nevermind. | Rasmus Munk Larsen | 2016-02-06 |
| | |||
* | Add my name to copyright notice in ColPivHouseholder.h, mostly for previous ↵ | Rasmus Munk Larsen | 2016-02-06 |
| | | | | work on stable norm downdate formula. | ||
* | Implement complete orthogonal decomposition in Eigen. | Rasmus Munk Larsen | 2016-02-06 |
| | |||
* | Fix bad line break. Don't repeat Kahan matrix test since it is deterministic. | Rasmus Munk Larsen | 2016-02-03 |
| | |||
* | Make the array of directly compute column norms a member to avoid allocation ↵ | Rasmus Munk Larsen | 2016-02-03 |
| | | | | in computeInPlace. | ||
* | Change Eigen's ColPivHouseholderQR to use the numerically stable norm ↵ | Rasmus Munk Larsen | 2016-01-28 |
| | | | | | | | | | | | | | | | | | | | | | | | | downdate formula from http://www.netlib.org/lapack/lawnspdf/lawn176.pdf, which has been used in LAPACK's xGEQPF and xGEQP3 since 2006. With the old formula, the code chooses the wrong pivots and fails to correctly determine rank on graded matrices. This change also adds additional checks for non-increasing diagonal in R11 to existing unit tests, and adds a new unit test with the Kahan matrix, which consistently fails for the original code. Benchmark timings on Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz. Code compiled with AVX & FMA. I just ran on square matrices of 3 difference sizes. Benchmark Time(ns) CPU(ns) Iterations ------------------------------------------------------- Before: BM_EigencolPivQR/64 53677 53627 12890 BM_EigencolPivQR/512 15265408 15250784 46 BM_EigencolPivQR/4k 15403556228 15388788368 2 After (non-vectorized version): Benchmark Time(ns) CPU(ns) Iterations Degradation -------------------------------------------------------------------- BM_EigencolPivQR/64 63736 63669 10844 18.5% BM_EigencolPivQR/512 16052546 16037381 43 5.1% BM_EigencolPivQR/4k 15149263620 15132025316 2 -2.0% Performance-wise there seems to be a ~18.5% degradation for small (64x64) matrices, probably due to the cost of more O(min(m,n)^2) sqrt operations that are not needed for the unstable formula. | ||
* | Fix numerous doxygen shortcomings, and workaround some clang -Wdocumentation ↵ | Gael Guennebaud | 2016-01-01 |
| | | | | warnings | ||
* | Generalize matrix ctor and compute() method of dense decomposition to 1) ↵ | Gael Guennebaud | 2015-09-07 |
| | | | | limit temporaries, 2) forward expressions to nested decompositions, 3) fix ambiguous ctor instanciation for square decomposition | ||
* | bug #949: add static assertion for incompatible scalar types in dense ↵ | Gael Guennebaud | 2015-03-13 |
| | | | | end-user decompositions. | ||
* | Merged in chtz/eigen-indexconversion (pull request PR-92) | Gael Guennebaud | 2015-02-16 |
|\ | | | | | | | | | | | | | | | | | | | | | | | bug #877, bug #572: Get rid of Index conversion warnings, summary of changes: - Introduce a global typedef Eigen::Index making Eigen::DenseIndex and AnyExpr<>::Index deprecated (default is std::ptrdiff_t). - Eigen::Index is used throughout the API to represent indices, offsets, and sizes. - Classes storing an array of indices uses the type StorageIndex to store them. This is a template parameter of the class. Default is int. - Methods that *explicitly* set or return an element of such an array take or return a StorageIndex type. In all other cases, the Index type is used. | ||
* | | bug #952: Missing \endcode made doxygen fail to build ColPivHouseholderQR | Christoph Hertzberg | 2015-02-15 |
| | | |||
| * | Index refactoring: StorageIndex must be used for storage only (and locally ↵ | Gael Guennebaud | 2015-02-13 |
| | | | | | | | | when it make sense). In all other cases use the global Index type. | ||
| * | Merge Index-refactoring branch with default, fix PastixSupport, remove some ↵ | Gael Guennebaud | 2015-02-13 |
| |\ | |/ |/| | | | useless typedefs | ||
* | | bug #941: fix accuracy issue in ColPivHouseholderQR, do not stop ↵ | Gael Guennebaud | 2015-01-30 |
| | | | | | | | | decomposition on a small pivot | ||
| * | bug #877, bug #572: Introduce a global Index typedef. Rename Sparse*::Index ↵ | Christoph Hertzberg | 2014-12-04 |
|/ | | | | to StorageIndex, make Dense*::StorageIndex an alias to DenseIndex. Overall this commit gets rid of all Index conversion warnings. | ||
* | Make constructors explicit if they could lead to unintended implicit conversion | Christoph Hertzberg | 2014-09-23 |
| | |||
* | Remove deprecated code not used by evaluators | Gael Guennebaud | 2014-09-18 |
| | |||
* | merge default and evaluator branches | Gael Guennebaud | 2014-03-12 |
|\ | |||
* | | Port QR module to Solve/Inverse | Gael Guennebaud | 2014-03-11 |
| | | |||
| * | Make pivoting HouseholderQR compatible with custom scalar types | Christoph Hertzberg | 2014-02-25 |
|/ | |||
* | merge with default branch | Gael Guennebaud | 2013-11-05 |
|\ | |||
* | | Add a rank method with threshold control to JacobiSVD, and make solve uses ↵ | Gael Guennebaud | 2013-11-01 |
| | | | | | | | | it to return the minimal norm solution for rank-deficient problems | ||
| * | Disable some shortcuts with nvcc | Gael Guennebaud | 2013-07-31 |
|/ | |||
* | Fix various scalar type conversion warnings. | Gael Guennebaud | 2013-07-12 |
| | |||
* | Fix HouseholderSequence::conjugate() and ::adjoint() and add respective unit ↵ | Gael Guennebaud | 2013-06-17 |
| | | | | tests. | ||
* | Fix bug #314: move remaining math functions from internal to numext namespace | Gael Guennebaud | 2013-06-10 |
| | |||
* | Fix bug #599: add missing documentation of some members in QR module. | Gael Guennebaud | 2013-06-10 |
| | |||
* | Add assertion on the input matrix size in factorizations relying on ↵ | Gael Guennebaud | 2013-02-26 |
| | | | | permutations of 32bits int | ||
* | Remove superfluous cast. | Gael Guennebaud | 2013-02-24 |
| | |||
* | Clarify the doc for column-pivoting QR | Desire NUENTSA | 2013-02-21 |
| | |||
* | Add matrixR() to get the triangular factor from the Householder QR | Desire NUENTSA | 2013-02-20 |
| | |||
* | Fix some implicit int64 to int conversion warnings. However, the real issue | Gael Guennebaud | 2013-02-14 |
| | | | | | | | is that PermutationMatrix mixes the type of the stored indices and the "Index" type used for the sizes, coeff indices, etc., which should be DenseIndex. (transplanted from 66cbfd4d39efbec240fe90b2dd77293e71f060e8 ) | ||
* | remove dummy code in ColPivHouseholderQR::solve | Gael Guennebaud | 2013-01-23 |
| | |||
* | Update SPQR module for Sparse LM | Desire NUENTSA | 2012-11-21 |
| | |||
* | Fix bug #314: | Gael Guennebaud | 2012-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. | Benoit Jacob | 2012-07-13 |
| | |||
* | Get rid of include directives inside namespace blocks (bug #339). | Jitse Niesen | 2012-04-15 |
| |