Commit message (Collapse) | Author | Age | ||
---|---|---|---|---|
... | ||||
* | | oops, i missed one : real last difficult nist test : Eckerle4 | Thomas Capricelli | 2009-08-14 | |
| | | ||||
* | | last 'hard' test from Nist : ratkowsky3 | Thomas Capricelli | 2009-08-14 | |
| | | ||||
* | | fix bad urls | Thomas Capricelli | 2009-08-14 | |
| | | ||||
* | | yet another (difficult) Nist test : Thurber | Thomas Capricelli | 2009-08-14 | |
| | | ||||
* | | tweak precision for Chwirut2 test | Thomas Capricelli | 2009-08-14 | |
| | | ||||
* | | add yet another easy Nist test : Chwirut2 | Thomas Capricelli | 2009-08-14 | |
| | | ||||
| * | oops bis, I forgot that SelfAdjointEigneSolver directly called the selector... | Gael Guennebaud | 2009-08-14 | |
| | | ||||
| * | oops forgot to remove the #include in Core | Gael Guennebaud | 2009-08-14 | |
| | | ||||
| * | 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 | |||
* | | cleaning : wa1 used in 'covar' needs not be the same as in lmder* and all. | Thomas Capricelli | 2009-08-13 | |
| | | | | | | | | it's just an old-fashioned way to re-use memory without allocation... | |||
| * | oops, don't set the precision to -1 !! | Benoit Jacob | 2009-08-13 | |
| | | ||||
| * | apply Koldo's workaround for MSVC bug | Benoit Jacob | 2009-08-13 | |
| | | ||||
| * | 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 | |||
| * | apply change discussed on the list : | Benoit Jacob | 2009-08-13 | |
| | | | | | | | | | | * new default precision "-1" means use the current stream precision * otherwise, save and restore the stream precision | |||
| * | 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 | |||
| * | merge | Benoit Jacob | 2009-08-12 | |
| |\ | ||||
| * | | 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. | |||
| | * | Add support for matrix exponential of floats and complex numbers. | Jitse Niesen | 2009-08-12 | |
| |/ | ||||
| * | add parentheses; hopefully this solves Koldos MSVC compilation issue... | Benoit Jacob | 2009-08-12 | |
| | | ||||
| * | 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. | |||
* | | BoxBOD : oops.. shame on me, i did a mistake in the derivative.... now we ↵ | Thomas Capricelli | 2009-08-12 | |
| | | | | | | | | | | | | | | need 16 iterations instead of 7693 ;-) the first test still fails though. | |||
* | | fix a bug in BoxBOD Nist test : we now get the actual value for 'start 2' | Thomas Capricelli | 2009-08-12 | |
| | | | | | | | | 'start 1' still fails though :/ | |||
* | | add another Nist test of 'hard' difficutly : Bennett5 | Thomas Capricelli | 2009-08-12 | |
| | | ||||
* | | add another Nist test of 'hard' difficutly : MGH09 | Thomas Capricelli | 2009-08-12 | |
| | | ||||
| * | add EIGEN_DEBUG_VAR | Benoit Jacob | 2009-08-11 | |
| | | ||||
* | | add another Nist test of medium difficutly : MGH17 | Thomas Capricelli | 2009-08-11 | |
| | | ||||
| * | overload operartor* with a ProductBase such that "scalar * (mat * mat)" is ↵ | Gael Guennebaud | 2009-08-11 | |
| | | | | | | | | | | | | optimized as one could naturally expect | |||
| * | fix issue #36 (missing return *this in Rotation2D | Gael Guennebaud | 2009-08-11 | |
| | | ||||
| * | remove #include Bidiagonalization, and add missing ";" | Gael Guennebaud | 2009-08-11 | |
| | | ||||
* | | wrapper for lmstr1 and lmstr + eigenization of calling tests | Thomas Capricelli | 2009-08-10 | |
| | | ||||
* | | wrapper for lmdif1 + eigenization of calling test | Thomas Capricelli | 2009-08-10 | |
| | | ||||
* | | wrapper for lmdif (+test call eigenization) | Thomas Capricelli | 2009-08-10 | |
| | | ||||
* | | wrapper for hybrj1 | Thomas Capricelli | 2009-08-10 | |
| | | ||||
* | | wrapper for hybrj | Thomas Capricelli | 2009-08-10 | |
| | | ||||
* | | add another (actuallY) difficult NIST test : BoxBOD. | Thomas Capricelli | 2009-08-10 | |
| | | | | | | | | | | | | | | The first try fails, the second one passes, but with a very bad accuracy (~4 digits only). anyway, my aim is to check we do not change cminpack while portint, so i keep this test. | |||
* | | add another 'difficult'-rated NIST test, which passes | Thomas Capricelli | 2009-08-10 | |
| | | ||||
* | | fix testNistHahn1 : i had swapped x[] and y[].... :/ | Thomas Capricelli | 2009-08-10 | |
| | | ||||
* | | a Nist test rated 'difficult', which passes. | Thomas Capricelli | 2009-08-10 | |
| | | ||||
* | | another nist test with difficulty 'leverage', it passes. | Thomas Capricelli | 2009-08-10 | |
| | | ||||
* | | another nist test with difficulty 'leverage', this one passes | Thomas Capricelli | 2009-08-10 | |
| | | ||||
* | | another nist test ('average' difficulty), which fails. It is disabled until | Thomas Capricelli | 2009-08-10 | |
| | | | | | | | | further notice. | |||
* | | add an easy test from the NIST set : | Thomas Capricelli | 2009-08-10 | |
| | | | | | | | | http://www.itl.nist.gov/div898/strd/nls/data/misra1a.shtml | |||
* | | hybrd : wrapper + eigenize test | Thomas Capricelli | 2009-08-10 | |
| | | ||||
| * | merge | Gael Guennebaud | 2009-08-09 | |
| |\ | ||||
| * | | make custom asm directive volatile | Gael Guennebaud | 2009-08-09 | |
| | | | ||||
| | * | LinearVectorization: If the destination isn't aligned, | Benoit Jacob | 2009-08-09 | |
| | | | | | | | | | | | | we have to do runtime checks and we don't unroll, so it's only good for large enough sizes | |||
| | * | now you can #define EIGEN_DEBUG_ASSIGN, and all the values in ↵ | Benoit Jacob | 2009-08-09 | |
| | | | | | | | | | | | | ei_assign_traits are printed | |||
| | * | disable the assembly for fast unaligned stores. indeed, there is a strange ↵ | Benoit Jacob | 2009-08-09 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug that is triggered by this code: #include<Eigen/Core> int main() { Eigen::Matrix4f m; m <<1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16; m.col(0).swap(m.col(1)); std::cout << m << std::endl; } when the fast unaligned stores are used, the column is copied instead of being swapped. | |||
| | * | don't depend on uninitialized value | Benoit Jacob | 2009-08-09 | |
| | | |