Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | make SVD reuses applyJacobi | 2009-08-16 | |
| | |||
* | revert previous change in Quaternion::setFromTwoVectors | 2009-08-15 | |
| | |||
* | svd: sort in decreasing order, remove unused code | 2009-08-15 | |
| | |||
* | add overloads of lazyAssign to detect common aliasing issue with | 2009-08-15 | |
| | | | | transpose and adjoint | ||
* | fix and improve docs | 2009-08-15 | |
| | |||
* | As proposed on the list: | 2009-08-15 | |
| | | | | | | | | | - rename EvalBeforeAssignBit to MayAliasBit - make .lazy() remove the MayAliasBit only, and mark it as deprecated - add a NoAlias pseudo expression, and MatrixBase::noalias() function Todo: - we have to decide whether += and -= assume no aliasing by default ? - once we agree on the API: update the Sparse module and the unit tests respectively. | ||
* | bugfix in inner-product specialization, | 2009-08-15 | |
| | | | | | compilation fix in stable norm, optimize apply householder | ||
* | my previous fix was not very good | 2009-08-15 | |
| | |||
* | bugfix and compilation fix in ProductBase | 2009-08-15 | |
| | |||
* | fix setFromTwoVectors because of the change in sorting of the the singular ↵ | 2009-08-15 | |
| | | | | values | ||
* | fix a couple of warnings | 2009-08-15 | |
| | |||
* | add a "rot" benchmark in BTL | 2009-08-15 | |
| | |||
* | fix compilation of unit tests | 2009-08-15 | |
| | |||
* | only append the changeset to the version if we're in the default branch | 2009-08-14 | |
| | |||
* | new script that update from mercurial, make the doc, and upload the result | 2009-08-15 | |
| | | | | to tuxfamily.org | ||
* | new script to generate and upload the docs for a given branch | 2009-08-14 | |
| | | | | needs cleanup by a better shell scripter!! | ||
* | update snippet | 2009-08-14 | |
| | |||
* | fix warning | 2009-08-14 | |
| | |||
* | forgot to update this | 2009-08-14 | |
| | |||
* | as discussed on list: default to align cols, reorganize parameters ↵ | 2009-08-14 | |
| | | | | | | accordingly so that the default corresponds to 0 flag, and implement FullPrecision output (non-default). | ||
* | try to support 16 bit platforms... optimistic, but can't hurt | 2009-08-14 | |
| | |||
* | machine_epsilon -> epsilon as wrapper around numeric_traits | 2009-08-14 | |
| | |||
* | oops bis, I forgot that SelfAdjointEigneSolver directly called the selector... | 2009-08-14 | |
| | |||
* | oops forgot to remove the #include in Core | 2009-08-14 | |
| | |||
* | optimize "apply Jacobi" for small sizes, and move it to Jacobi.h | 2009-08-14 | |
| | |||
* | * remove EIGEN_DONT_INLINE that harm performance for small sizes | 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 | ||
* | oops, don't set the precision to -1 !! | 2009-08-13 | |
| | |||
* | apply Koldo's workaround for MSVC bug | 2009-08-13 | |
| | |||
* | add an optimized "apply in place a rotation in the plane", | 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 : | 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... | 2009-08-12 | |
| | | | | turns out it's not needed anymore and removing it seems to only increase the precision | ||
* | merge | 2009-08-12 | |
|\ | |||
* | | make jacobi SVD more robust after experimenting with very nasty matrices... | 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. | 2009-08-12 | |
|/ | |||
* | add parentheses; hopefully this solves Koldos MSVC compilation issue... | 2009-08-12 | |
| | |||
* | finally, the good approach was two-sided Jacobi. Indeed, it allows | 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 EIGEN_DEBUG_VAR | 2009-08-11 | |
| | |||
* | overload operartor* with a ProductBase such that "scalar * (mat * mat)" is ↵ | 2009-08-11 | |
| | | | | | | optimized as one could naturally expect | ||
* | fix issue #36 (missing return *this in Rotation2D | 2009-08-11 | |
| | |||
* | remove #include Bidiagonalization, and add missing ";" | 2009-08-11 | |
| | |||
* | merge | 2009-08-09 | |
|\ | |||
* | | make custom asm directive volatile | 2009-08-09 | |
| | | |||
| * | LinearVectorization: If the destination isn't aligned, | 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 ↵ | 2009-08-09 | |
| | | | | | | | | ei_assign_traits are printed | ||
| * | disable the assembly for fast unaligned stores. indeed, there is a strange ↵ | 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 | 2009-08-09 | |
| | | |||
| * | * add Jacobi transformations | 2009-08-09 | |
| | | | | | | | | | | * add Jacobi (Hestenes) SVD decomposition for square matrices * add function for trivial Householder | ||
* | | make LU::solve() not to crash when rank=0 | 2009-08-09 | |
| | | |||
| * | fix bug in sorting of singular values | 2009-08-09 | |
|/ | |||
* | add basic .hgignore file for most common generated/temporary files | 2009-08-08 | |
| |