Re: [eigen] Using Triangular Views

[ Thread Index | Date Index | More Archives ]

Well, by "on purpose" I really meant that the implementation is missing and we knew it. The reason is lack of time and tri*tri products are much less common than tri*general. For instance LAPACK only requires tri*general, and BLAS does not provide tri*tri.

Actually, tri*tri could be easily implemented for small matrices trough a naive dot-product based implementation, but this version would be very slow for not very small matrices.


On Tue, Aug 30, 2016 at 6:34 PM, Christoph Hertzberg <chtz@xxxxxxxxxxxxxxxxxxxxxxxx> wrote:
On 2016-08-30 15:03, Gael Guennebaud wrote:
The situation here is different because tri*tri never compiled (on
purpose), [...]

Ok, fair enough. At least not worth blocking 3.3
But I'm afraid I don't recall why tri*tri is forbidden on purpose. Isn't this one of the most obvious things one wants to do with triangular matrices?

I actually just found the following in FullPivLU::reconstructedMatrix():
  // FIXME the .toDenseMatrix() should not be needed...
  res = m_lu.leftCols(smalldim)
            .template triangularView<UnitLower>().toDenseMatrix()
      * m_lu.topRows(smalldim)
            .template triangularView<Upper>().toDe

I guess there are other cases for that.


 Dipl. Inf., Dipl. Math. Christoph Hertzberg

 Universität Bremen
 FB 3 - Mathematik und Informatik
 AG Robotik
 Robert-Hooke-Straße 1
 28359 Bremen, Germany

 Zentrale: +49 421 178 45-6611

 Besuchsadresse der Nebengeschäftsstelle:
 Robert-Hooke-Straße 5
 28359 Bremen, Germany

 Tel.:    +49 421 178 45-4021
 Empfang: +49 421 178 45-6600
 Fax:     +49 421 178 45-4150
 E-Mail:  chtz@xxxxxxxxxxxxxxxxxxxxxxxx

 Weitere Informationen:

Mail converted by MHonArc 2.6.19+