Re: [eigen] Fast method for computing Gramian Matrix |

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

*To*: eigen@xxxxxxxxxxxxxxxxxxx*Subject*: Re: [eigen] Fast method for computing Gramian Matrix*From*: Gael Guennebaud <gael.guennebaud@xxxxxxxxx>*Date*: Fri, 30 Mar 2012 00:55:28 +0200*Dkim-signature*: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type:content-transfer-encoding; bh=E6oAWvBwMInqD4a3mgJMBO/ji1klufjeEt+chDSB4w8=; b=WOtYDhcCt3EcbspVMuY+DGt7ksJkCJRWOoStIXZhyRw+YaKDBnuCZMihEe6uO8Wg0P bkc8ERIUEQYQLeshwfhvW/ALxh7Zl+0k9udMdCRqGNRdydGIPT3FIAC42cFyIoU2p4cT 3BmNVi5kR9MB1VBDYnikmYbE5JEi5WtzKiTtaqzKIe2ITPZz908t4pRMB1OxeRoIOkss bchv2tVWMBxJUSe5zHkTGl74VGImcf//gWDHYCJf3CT1BBzSd0FdNt5r75pYUe8yzbqw 0OR/KoJxJRPr/Ok6SMT3EQNSH8A14Vle8oRPwkiwKLIqgVPrF3VIz/b5qoxv+6Bt6zei r2QQ==

with a copy: C = B.selfadjointView<Upper>(); or in-place using triangularView as a writing mask: B.triangularView<StrictlyLower>() = B.adjoint(); cheers, gael On Fri, Mar 30, 2012 at 12:18 AM, Mark Borgerding <mark@xxxxxxxxxxxxxx> wrote: > On 03/29/2012 01:18 AM, Douglas Bates wrote: >> >> On Thu, Mar 29, 2012 at 3:50 AM, Mark Borgerding<mark@xxxxxxxxxxxxxx> >> wrote: >>> >>> (sorry for hitting send too soon) >>> >>> http://en.wikipedia.org/wiki/Gramian_matrix >>> >>> What is the fastest way to compute MM' when M is wide? >>> The diagonal elements are the norm-squared of the rows of M. The result >>> is >>> Hermitian. >>> >>> Is there an optimized method in Eigen or otherwise? >> >> I have used the rankUpdate method for a selfadjoint view to calculate >> this. I assume that it is an efficient way to calculate the result >> but I haven't done any timings. >> >> >> MatrixXcd MMt(M.rows(), M.rows(); >> MMt.setZero().selfadjointView<Eigen::Upper>().rankUpdate(M); >> > Thanks. That cut the time to about 80% of the full matrix product. > > Is there an elegant way to recover the full, square self-adjoint matrix from > a SelfAdjointView ? > I've been adding the SA view to its own adjoint and then subtracting the > original diagonal. > > >

**Follow-Ups**:**Re: [eigen] Fast method for computing Gramian Matrix***From:*Jim Bosch

**References**:**[eigen] Fast method for computing Gramian Matrix***From:*Mark Borgerding

**[eigen] Fast method for computing Gramian Matrix***From:*Mark Borgerding

**Re: [eigen] Fast method for computing Gramian Matrix***From:*Douglas Bates

**Re: [eigen] Fast method for computing Gramian Matrix***From:*Mark Borgerding

**Messages sorted by:**[ date | thread ]- Prev by Date:
**Re: [eigen] New server for CDash** - Next by Date:
**Re: [eigen] Fast method for computing Gramian Matrix** - Previous by thread:
**Re: [eigen] Fast method for computing Gramian Matrix** - Next by thread:
**Re: [eigen] Fast method for computing Gramian Matrix**

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