aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen
Commit message (Collapse)AuthorAge
* trmm is now working in all storage order configurationsGravatar Gael Guennebaud2009-07-27
|
* some cleaningGravatar Gael Guennebaud2009-07-26
|
* finalize trsm: works in all situations, and it is now used by solve() and ↵Gravatar Gael Guennebaud2009-07-26
| | | | solveInPlace()
* ok, now trsm works very well for upper triangular matricesGravatar Gael Guennebaud2009-07-26
| | | | | | TODO: link it with the meta triangular_solve_selector and handle the case where the rhs is row major by copying it to a col-major temporary + handle right solving: X = B * M^-1
* The new trsm is working very very well (read very fast) forGravatar Gael Guennebaud2009-07-25
| | | | | lower triangular matrix and row or col major lhs. TODO: handle upper triangular and row major rhs cases
* add WIP trsmGravatar Gael Guennebaud2009-07-24
|
* some cleaningGravatar Gael Guennebaud2009-07-24
|
* add a simplified version of the sybb kernel built on top of gebpGravatar Gael Guennebaud2009-07-24
|
* split and add unit tests for symm and syrk,Gravatar Gael Guennebaud2009-07-23
| | | | the .rank*update() functions now returns a reference to *this
* oops,, update SYRK so that the rhs can be non-square²Gravatar Gael Guennebaud2009-07-23
|
* Implement efficient sefladjoint product (aka SYRK) : C += alpha * U U^TGravatar Gael Guennebaud2009-07-23
| | | | | It is currently available via SelfAdjointView::rankKupdate. TODO: allows to write SelfAdjointView += u * u.adjoint()
* improve SYMV it is now faster and ready for useGravatar Gael Guennebaud2009-07-23
|
* formatingGravatar Gael Guennebaud2009-07-23
|
* addd matrix * self adjoint high level APIGravatar Gael Guennebaud2009-07-23
|
* bugfix in SYMMGravatar Gael Guennebaud2009-07-22
|
* implement high level API for SYMM and fix a couple of bugs related to complexGravatar Gael Guennebaud2009-07-22
|
* * GEMM enhencement: no need to pre-transpose the rhsGravatar Gael Guennebaud2009-07-22
| | | | | | | => faster a * b.transpose() product => this also fix a bug in a so far untested situation * SYMM is now ready for use => still have to write the high level stuff to convert natural expressions into a call to SYMM
* more refactoring in the level3 productsGravatar Gael Guennebaud2009-07-22
|
* * refactoring of the matrix product into multiple small kernelsGravatar Gael Guennebaud2009-07-21
| | | | | * started an efficient selfadjoint matrix * general matrix product based on the generic kernels ( => need a very little LOC)
* * various fixes related to sub diagonals and band matrixGravatar Gael Guennebaud2009-07-21
| | | | * allows 0 sized objects in Block/Map
* * bugfixes in Product, and test/product_selfadjointGravatar Gael Guennebaud2009-07-16
| | | | * speed up in the extraction of the matrix Q in Tridiagonalization
* synch with main devel branchGravatar Gael Guennebaud2009-07-15
|\
* | add a TridiagonalMatrix wrapper arround BandMatrix, and extend this latterGravatar Gael Guennebaud2009-07-15
| |
* | add BandMatrix::col()Gravatar Gael Guennebaud2009-07-15
| |
* | change the implementation of BandMatrix to follow the BLAS/LAPACK storage schemeGravatar Gael Guennebaud2009-07-15
| |
| * fix issue #25 : the problem was that we assumed Dynamic was a multiple of a ↵Gravatar Gael Guennebaud2009-07-15
| | | | | | | | | | | | packet size (also disable the test of blueNorm)
* | started an implementation of BandMatrix: at least the read/write accessGravatar Gael Guennebaud2009-07-14
| | | | | | | | to the main/sub/super diagonals seems to work well.
* | synch with main devel branchGravatar Gael Guennebaud2009-07-14
|\ \
| | * fix typo in blue normGravatar Gael Guennebaud2009-07-14
| |/
* | some cleaning/renaming is Triangular/SelfadjointViewGravatar Gael Guennebaud2009-07-14
| |
| * add a blueNorm() function implementing the Blues's stable normGravatar Gael Guennebaud2009-07-13
| | | | | | | | | | algorithm. it is currently provided for experimentation purpose only.
| * one more fix of the previous commit (forgot to update ei_must_nest_by_value)Gravatar Gael Guennebaud2009-07-13
| |
| * fix typo in previous commitGravatar Gael Guennebaud2009-07-13
| |
| * add a SparseNestByValue expression and fix issue in sparse adjoint evaluationGravatar Gael Guennebaud2009-07-13
| |
* | add triangular * vector productGravatar Gael Guennebaud2009-07-13
| |
* | Add an efficient rank2 update function (like the level2 blas xSYR2 routine).Gravatar Gael Guennebaud2009-07-11
| | | | | | | | Note that it is already used in Tridiagonalization.
| * more sun studio fixesGravatar Gael Guennebaud2009-07-10
| |
| * Set of fixes and workaround to make sun studio more happy.Gravatar Gael Guennebaud2009-07-10
| | | | | | | | Still remains the problem of alignment and vectorization.
* | add a meta unroller for the triangular solver (only for vectors as rhs)Gravatar Gael Guennebaud2009-07-10
| |
* | finally directly calling the low-level products is fasterGravatar Gael Guennebaud2009-07-10
| |
| * mergeGravatar Gael Guennebaud2009-07-10
| |\
| * | slight change in the comparison to -1Gravatar Gael Guennebaud2009-07-10
| | |
* | | commit woking versions of triangular solvers naturallyGravatar Gael Guennebaud2009-07-09
| | | | | | | | | | | | | | | | | | handling conjuagted expression. still have to bench whether it is faster (runtime and compile time) to directly call the cache friendly functions, whence all the commented piece of code...
* | | started to simplify the triangular solversGravatar Gael Guennebaud2009-07-09
| | |
* | | ok now all the complex mat-mat and mat-vec products involving conjugate,Gravatar Gael Guennebaud2009-07-08
| | | | | | | | | | | | | | | adjoint, -, and scalar multiple seems to be well handled. It only remains the simpler case: C = alpha*(A*B) ... for the next commit
* | | conjugate expressions are now properly caught by ProductGravatar Gael Guennebaud2009-07-07
| | | | | | | | | | | | | | | => significant speedup in expr. like a.adjoint() * b, for complex scalar type (~ x3)
* | | started to catch scalar multiple and conjugate xpr in ProductGravatar Gael Guennebaud2009-07-07
| | |
* | | * change the nesting order of adjoint_return_type toGravatar Gael Guennebaud2009-07-07
| | | | | | | | | | | | | | | | | | 1 - make it easier to catch conjugate expressions 2 - make sure there is no unecessary copy (we had NestByValue<Derived> which seems to be very bad) * update eigensolver wrt recent changes
* | | * take advantage of new possibilies in LLT (mat -= product)Gravatar Gael Guennebaud2009-07-07
| | | | | | | | | | | | | | | * fix Block::operator+= product which was not optimized * fix some compilation issues
* | | * extended the cache friendly products to support C = alpha * A * M and C += ↵Gravatar Gael Guennebaud2009-07-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | alpha * A * B * this allows to optimize xpr like C -= lazy_product, still have to catch "scalar_product_of_lazy_product" * started to support conjugate in cache friendly products (very useful to evaluate A * B.adjoint() without evaluating B.adjoint() into a temporary * compilation fix