Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | add overloads of lazyAssign to detect common aliasing issue with | Gael Guennebaud | 2009-08-15 |
| | | | | transpose and adjoint | ||
* | As proposed on the list: | Gael Guennebaud | 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. | ||
* | oops forgot to remove the #include in Core | Gael Guennebaud | 2009-08-14 |
| | |||
* | 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 | ||
* | more product refactoring | Gael Guennebaud | 2009-08-06 |
| | |||
* | implement a ProductBase class and, as a proof of concept, update ↵ | Gael Guennebaud | 2009-08-04 |
| | | | | | | TriangularProduct and SelfAdjointMatrixProduct to take advantage of it => fewer LOC | ||
* | synch with main branch | Gael Guennebaud | 2009-07-28 |
|\ | |||
* | | trmm is now working in all storage order configurations | Gael Guennebaud | 2009-07-27 |
| | | |||
* | | The new trsm is working very very well (read very fast) for | Gael Guennebaud | 2009-07-25 |
| | | | | | | | | | | lower triangular matrix and row or col major lhs. TODO: handle upper triangular and row major rhs cases | ||
* | | Implement efficient sefladjoint product (aka SYRK) : C += alpha * U U^T | Gael Guennebaud | 2009-07-23 |
| | | | | | | | | | | It is currently available via SelfAdjointView::rankKupdate. TODO: allows to write SelfAdjointView += u * u.adjoint() | ||
* | | more refactoring in the level3 products | Gael Guennebaud | 2009-07-22 |
| | | |||
* | | * refactoring of the matrix product into multiple small kernels | Gael Guennebaud | 2009-07-21 |
| | | | | | | | | | | * started an efficient selfadjoint matrix * general matrix product based on the generic kernels ( => need a very little LOC) | ||
| * | re-implement stableNorm using a homemade blocky and | Gael Guennebaud | 2009-07-17 |
| | | | | | | | | vectorization friendly algorithm (slow if no vectorization) | ||
* | | started an implementation of BandMatrix: at least the read/write access | Gael Guennebaud | 2009-07-14 |
| | | | | | | | | to the main/sub/super diagonals seems to work well. | ||
* | | synch with main devel branch | Gael Guennebaud | 2009-07-14 |
|\| | |||
* | | some cleaning/renaming is Triangular/SelfadjointView | Gael Guennebaud | 2009-07-14 |
| | | |||
* | | add triangular * vector product | Gael Guennebaud | 2009-07-13 |
| | | |||
* | | Add an efficient rank2 update function (like the level2 blas xSYR2 routine). | Gael Guennebaud | 2009-07-11 |
| | | | | | | | | Note that it is already used in Tridiagonalization. | ||
| * | Set of fixes and workaround to make sun studio more happy. | Gael Guennebaud | 2009-07-10 |
| | | | | | | | | Still remains the problem of alignment and vectorization. | ||
* | | * bybye Part, welcome TriangularView and SelfAdjointView. | Gael Guennebaud | 2009-07-06 |
| | | | | | | | | | | | | | | | | * move solveTriangular*() to TriangularView::solve*() * move .llt() to SelfAdjointView * add a high level wrapper to the efficient selfadjoint * vector product * improve LLT so that we can specify which triangular part is meaningless => there are still many things to do (doc, cleaning, improve the matrix products, etc.) | ||
| * | add a VectorBlock expr as a specialization of Block | Gael Guennebaud | 2009-07-05 |
| | | |||
* | | new implementation of diagonal matrices and diagonal matrix expressions | Benoit Jacob | 2009-06-28 |
|/ | |||
* | merge | Benoit Jacob | 2009-05-22 |
|\ | |||
| * | remove sentence "Eigen itself is part of the KDE project." | Benoit Jacob | 2009-05-22 |
| | | | | | | | | it never made very precise sense. but now does it still make any? | ||
* | | * add a writable generic coeff wise expression (CwiseUnaryView) | Gael Guennebaud | 2009-05-20 |
|/ | | | | * add writable .real() and .imag() functions | ||
* | constant Diagonal ---> DiagonalBits | Benoit Jacob | 2009-05-10 |
| | | | | | | introduce ei_is_diagonal to check for it DiagonalCoeffs ---> Diagonal and allow Index to by Dynamic -> add MatrixBase::diagonal(int) with unittest and doc | ||
* | add copyright on two public headers that are not so trivial... | Benoit Jacob | 2009-05-06 |
| | |||
* | fix SSE2 detection on win64, reported by 'kajala' | Benoit Jacob | 2009-05-04 |
| | |||
* | let the user disable alignment altogether by #defining EIGEN_DONT_ALIGN. | Benoit Jacob | 2009-05-03 |
| | | | | | | | Until now, the user had to edit the source code to do that. Internally, add EIGEN_ALIGN that takes into account both EIGEN_DONT_ALIGN.and EIGEN_ARCH_WANTS_ALIGNMENT. From now on, only EIGEN_ALIGN should be used to test whether we want to align. | ||
* | add vectorization of sqrt for float | Gael Guennebaud | 2009-03-27 |
| | |||
* | add SSE2 versions of sin, cos, log, exp using code from Julien | Gael Guennebaud | 2009-03-25 |
| | | | | | | | | Pommier. They are for float only, and they return exactly the same result as the standard versions in about 90% of the cases. Otherwise the max error is below 1e-7. However, for very large values (>1e3) the accuracy of sin and cos slighlty decrease. They are about 3 or 4 times faster than 4 calls to their respective standard versions. So, is it ok to enable them by default in their respective functors ? | ||
* | remove bad #include of SelfadjointRank2Update.h | Gael Guennebaud | 2009-03-05 |
| | |||
* | big addons: | Gael Guennebaud | 2009-03-05 |
| | | | | | | | | | | | * add Homogeneous expression for vector and set of vectors (aka matrix) => the next step will be to overload operator* * add homogeneous normalization (again for vector and set of vectors) * add a Replicate expression (with uni-directional replication facilities) => for all of them I'll add examples once we agree on the API * fix gcc-4.4 warnings * rename reverse.cpp array_reverse.cpp | ||
* | add ReturnByValue pseudo expression for in-place evaluation with a | Gael Guennebaud | 2009-03-04 |
| | | | | return-by-value API style (will soon use it for the transform products) | ||
* | * split CacheFriendlyProduct into multiple smaller files | Gael Guennebaud | 2009-02-21 |
| | | | | | | * add an efficient selfadjoint * vector implementation (= blas symv) perf are inbetween MKL and GOTO => the interface is still missing (have to be rethougth) | ||
* | * exit Sum.h, exit Prod.h, welcome vectorization of redux() ! | Gael Guennebaud | 2009-02-12 |
| | | | | * add vectorization for minCoeff and maxCoeff | ||
* | * add ei_predux_mul internal function | Gael Guennebaud | 2009-02-10 |
| | | | | * apply Ricard Marxer's prod() patch with fixes for the vectorized path | ||
* | apply Ricard patch for Reverse with minor modifications | Gael Guennebaud | 2009-02-06 |
| | |||
* | #error if min or max is defined | Benoit Jacob | 2009-01-19 |
| | |||
* | fix potential compilation issue on MSVC + no vectorization | Benoit Jacob | 2009-01-10 |
| | |||
* | * Added aligned_allocator for using 16-byte aligned types with STL ↵ | Kenneth Frank Riddile | 2009-01-09 |
| | | | | containers. There is still a compile-time problem with STL containers that have a standard-conformant resize() method, but this should resolve the original user issue which was storing aligned objects in a std::map. | ||
* | Patch by Kenneth Riddile: disable MSVC warnings, reenable them outside | Benoit Jacob | 2008-12-18 |
| | | | | of Eigen, and add a MSVC-friendly path in StaticAssert. | ||
* | * throw bad_alloc if exceptions are enabled, after patch by Kenneth Riddile | Benoit Jacob | 2008-12-16 |
| | | | | * disable vectorization on MSVC 2005, as it doesn't have all the required intrinsics. require 2008. | ||
* | Finally work around enough of MSVC preprocessor dumbness so that it actually ↵ | Benoit Jacob | 2008-12-15 |
| | | | | detects SSE2 | ||
* | work around the braindead msvc preprocessor | Benoit Jacob | 2008-12-15 |
| | |||
* | Fix detection of SSE2 with MSVC. | Benoit Jacob | 2008-12-15 |
| | |||
* | Fix memory alignment (hence vectorization) on MSVC thanks to help from Armin ↵ | Benoit Jacob | 2008-12-15 |
| | | | | Berres. | ||
* | remove CoreDeclaration from the documentation | Gael Guennebaud | 2008-08-28 |
| | |||
* | * temporarily remove doxygen customization, we'll see if that fix api.kde.org | Gael Guennebaud | 2008-08-28 |
| | | | | | | but I no hope, that would be too simple ! * added Rotation2D typedefs * remove CoreDeclarations header file | ||
* | doc + quick bug fix in Matrix ctor | Gael Guennebaud | 2008-08-28 |
| |