Re: [eigen] SimplicialCholesky - subclass or patch? |

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]

*To*: eigen@xxxxxxxxxxxxxxxxxxx*Subject*: Re: [eigen] SimplicialCholesky - subclass or patch?*From*: Gael Guennebaud <gael.guennebaud@xxxxxxxxx>*Date*: Tue, 28 Jun 2011 22:33:38 +0200*Dkim-signature*: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type:content-transfer-encoding; bh=4hv3Kwcbxn7id7xtpi7HV3+iuoxTK4iNfAwV6BA9ILE=; b=bxWy+od41SrLNEbFLDhLskx7uMq8+b9TlT/Ljw67TBqpGZdbI1C6/7vGn259/deVy2 zdcHEpFzwDRp5zL+72TlMQ28W/G5r9FOtdquWWt305j7WLYuVdGw73qxipKDpss+khme DjKFmTTFPiEhCQ2u2wb0xK8Rw1JNTzIvbPzdM=

Hi, providing access to the L factor is of course a welcome addition. On the other hand I'm not sure about logAbsDeterminant which seems to be quite specific. If we add it here, for consistency we should have it for all other decompositions... But I have a more powerful plan: add a diagonal view of a sparse matrix. It will be a dense expression on which you can perform any computation you like. For a triangular matrix, the diagonal entries can be addressed in constant time. Here is an example: det = llt.matrixL().diagonal().prod(); llt.matrixL().diagonal().array().abs().log().sum() etc. (this has yet to be implemented!) gael On Tue, Jun 28, 2011 at 8:00 PM, Douglas Bates <bates@xxxxxxxxxxxxx> wrote: > I realize that the Sparse module is not stable in Eigen 3.0.1 and the > SimplicialCholesky class is in the unsupported directory. > Nevertheless, these are exactly what I need for a central calculation > in my research. (If you want to know the details I include a draft of > a paper describing the particular calculations being done. You can > skip to sections 2.3, 2.4 and 2.6 for the relevant steps). > > Current versions of our code are based on SparseSuite with a rather > clunky interface from R. I would much prefer to use Eigen but, as > shown in the enclosed description, I need to access the triangular > matrix L from the LLt decomposition and I need a method like > logAbsDeterminant for the SimplicialCholesky classes. I can do this > by subclassing the SimplicialCholesky templated class and have done > so. A better long term solution would be to produce and submit > patches for SimplicialCholesky.h but before doing so I would like to > check that it would be worthwhile. If that code is not considered > viable in the long term then I will stick with subclassing rather than > modifying that class. Could someone from the core group indicate if > you would want to receive patches for that file? I can't guarantee > that I will get all the myriad details of the Traits right the first > time around but I am willing to learn. >

**References**:**[eigen] SimplicialCholesky - subclass or patch?***From:*Douglas Bates

**Messages sorted by:**[ date | thread ]- Prev by Date:
**Re: [eigen] SimplicialCholesky - subclass or patch?** - Next by Date:
**Re: [eigen] RcppEigen, providing bindings from R to Eigen through Rcpp, has been released** - Previous by thread:
**Re: [eigen] SimplicialCholesky - subclass or patch?** - Next by thread:
**[eigen] SOCIS2011**

Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |