Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Fix dox for namespaces | Chen-Pang He | 2014-07-05 |
| | |||
* | Fix bug #314: move remaining math functions from internal to numext namespace | Gael Guennebaud | 2013-06-10 |
| | |||
* | bug #482: pass scalar arguments by const references. Still remains a few ↵ | Gael Guennebaud | 2013-02-25 |
| | | | | cases that might affect the ABI (see the bug entry) | ||
* | 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 | ||
* | do not apply plane rotation when it is exactly the identity | Gael Guennebaud | 2012-07-24 |
| | |||
* | 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 |
| | |||
* | workaround ICC compilation error with -strict-ansi | Gael Guennebaud | 2012-01-25 |
| | |||
* | clean a bit previous patch (ctor vs static_cast and a few bits) | Gael Guennebaud | 2011-05-23 |
| | |||
* | fix implicit scalar conversions (needed to support fancy scalar types, see ↵ | David H. Bailey | 2011-05-23 |
| | | | | bug #276) | ||
* | Initial fixes for bug #85. | Hauke Heibel | 2010-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_ prefix | Benoit Jacob | 2010-10-25 |
| | |||
* | rename PlanarRotation -> JacobiRotation | Benoit Jacob | 2010-10-19 |
| | |||
* | Jacobi improvements: | Benoit Jacob | 2010-10-12 |
| | | | | | | | | * add fixed-size vectorized path * add missing restrict keywords * use innerStride() * allow vectorization even if innerStride()>1, if PacketSize==1 (think of the case of rows of std::complex<double>) | ||
* | fix the Jacobi bug, expand unit test | Benoit Jacob | 2010-10-12 |
| | |||
* | port Jacobi to new ei_pset1/ei_pload API | Gael Guennebaud | 2010-07-19 |
| | |||
* | add support for vectorized conjugated products | Gael Guennebaud | 2010-07-06 |
| | |||
* | email change | Gael Guennebaud | 2010-06-24 |
| | |||
* | the Index types change. | Benoit Jacob | 2010-05-30 |
| | | | | As discussed on the list (too long to explain here). | ||
* | merge and add start/end to Eigen2Support | Gael Guennebaud | 2010-01-05 |
|\ | |||
| * | * Fix bug #79: ei_alignmentOffset was assuming that ptr is multiple of | Benoit Jacob | 2010-01-02 |
| | | | | | | | | | | | | | | sizeof(Scalar), and that assumption breaks with double on linux x86-32. * Rename ei_alignmentOffset to ei_first_aligned * Rewrite its documentation and part of its body * The variant taking a MatrixBase doesn't need a separate size argument. | ||
* | | add a DenseBase class for MAtrixBase and ArrayBase and more code factorisation | Gael Guennebaud | 2009-12-04 |
|/ | |||
* | Fix LaTeX error in doxygen comment. | Jitse Niesen | 2009-09-08 |
| | |||
* | bug fix in novel makeGivens for real | Gael Guennebaud | 2009-09-04 |
| | |||
* | implement the continuous generation algorithm of Givens rotations by ↵ | Gael Guennebaud | 2009-09-03 |
| | | | | Anderson (2000) | ||
* | add examples for makeJacobi and makeGivens | Gael Guennebaud | 2009-09-03 |
| | |||
* | fix #51 (bad use of std::complex::real) | Gael Guennebaud | 2009-09-02 |
| | |||
* | * rename JacobiRotation => PlanarRotation | Gael Guennebaud | 2009-09-02 |
| | | | | | * move the makeJacobi and make_givens_* to PlanarRotation * rename applyJacobi* => apply* | ||
* | add a JacobiRotation class wrapping the cosine-sine pair with | Gael Guennebaud | 2009-09-01 |
| | | | | some convenient features (transpose, adjoint, product) | ||
* | * JacobiSVD: | Benoit Jacob | 2009-08-31 |
| | | | | | | | | | | | | - support complex numbers - big rewrite of the 2x2 kernel, much more robust * Jacobi: - fix weirdness in initial design, e.g. applyJacobiOnTheRight actually did the inverse transformation - fully support complex numbers - fix logic to decide whether to vectorize - remove several clumsy methods fix for complex numbers | ||
* | Fix comment which may cause latex to hang when generating docs | Jitse Niesen | 2009-08-24 |
| | |||
* | fix issue #43 | Gael Guennebaud | 2009-08-24 |
| | |||
* | hm, forgot to conjugate the arguments in applyJacobiOnTheLeft | Gael Guennebaud | 2009-08-24 |
| | |||
* | fix apply Jacobi for complexes and add documentation for some *Jacobi* functions | Gael Guennebaud | 2009-08-23 |
| | |||
* | optimize "apply Jacobi" for small sizes, and move it to Jacobi.h | Gael Guennebaud | 2009-08-14 |
| | |||
* | * remove EIGEN_DONT_INLINE that harm performance for small sizes | Benoit Jacob | 2009-08-13 |
| | | | | | | | * normalize left Jacobi rotations to avoid having to swap rows * set precision to 2*machine_epsilon instead of machine_epsilon, we lose 1 bit of precision but gain between 10% and 100% speed, plus reduce the risk that some day we hit a bad matrix where it's impossible to approach machine precision | ||
* | add an optimized "apply in place a rotation in the plane", | Gael Guennebaud | 2009-08-13 |
| | | | | | and make Jacobi and SelfAdjointEigenSolver use it => ~ x1.75 speedup for JacobiSVD and x2 for SelfAdjointEigenSolver | ||
* | do without an empirical homemade formula that i wasn't comfortable about... | Benoit Jacob | 2009-08-12 |
| | | | | turns out it's not needed anymore and removing it seems to only increase the precision | ||
* | make jacobi SVD more robust after experimenting with very nasty matrices... | Benoit Jacob | 2009-08-12 |
| | | | | | | | it turns out to be better to repeat the jacobi steps on a given (p,q) pair until it is diagonal to machine precision, before going to the next (p,q) pair. it's also an optimization as experiments show that in a majority of cases this allows to find out that the (p,q) pair is already diagonal to machine precision. | ||
* | finally, the good approach was two-sided Jacobi. Indeed, it allows | Benoit Jacob | 2009-08-12 |
| | | | | | | | | | | to guarantee the precision of the output, which is very valuable. Here, we guarantee that the diagonal matrix returned by the SVD is actually diagonal, to machine precision. Performance isn't bad at all at 50% of the current householder SVD performance for a 200x200 matrix (no vectorization) and we have lots of room for improvement. | ||
* | * add Jacobi transformations | Benoit Jacob | 2009-08-09 |
* add Jacobi (Hestenes) SVD decomposition for square matrices * add function for trivial Householder |