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*: Jim Bosch <talljimbo@xxxxxxxxx>*Date*: Fri, 30 Mar 2012 17:20:26 -0400*Dkim-signature*: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=7DR98hYv+wsV5ng9y93VgdezYMsEshXwSwztcA7r1gc=; b=04hs1tMeq2HdVLBsCYGHqLNr+H431OG8auEMPQe5sqBDzJ1AVCPZFcJ5AIWl+omKRn LQWpHQ+gcxyi4UtB3LuF2i08XPJQbZ8ZTWtaIrWrS9AeRhiRxUi7N8l8/6oHqG/OizoU Q94//nyVPVOl/arzCPCMZv+KGhDkcq+C/eE1giTcOnxAGKA2EZdLGUmilisuxPo4N9VO bKekxryaIzq2mCKGgm9mOGUrw7vwV1ia2/uYFrxFxfp66BlkLqThX006jK5wd+zA5b8C u0lzb0McuVttLhfuJFImLJg2dnVjxsU47uyQ6vOUPufaPEBqoQpw6ZPAx35AYvs2zDsb rRpg==

Thanks! Jim On 03/29/2012 06:55 PM, Gael Guennebaud wrote:

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:*Gael Guennebaud

**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

**Re: [eigen] Fast method for computing Gramian Matrix***From:*Gael Guennebaud

**Messages sorted by:**[ date | thread ]- Prev by Date:
**Re: [eigen] Fast method for computing Gramian Matrix** - 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/ |