Re: [eigen] Inverse when the (dense) matrix has a known structure
• To: eigen@xxxxxxxxxxxxxxxxxxx
• Subject: Re: [eigen] Inverse when the (dense) matrix has a known structure
• From: Matthieu Brucher <matthieu.brucher@xxxxxxxxx>
• Date: Mon, 23 May 2016 22:35:33 +0100
• Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to; bh=OlJoSlVgEHXXg93ZwlT+R7SAzXYGDfr4bm77ucXuD9c=; b=HMwdon6lBGvQAeJGBNQpp3Fg2Q5n2vZ6SjW2VAsD8uJaKfGSFw7ZJ2v1wcgRCT29Av OpB8la1ib5YgyTr1SPrJbVM39uZM2zlPaRi12erwHkzJmsQYS2UnJyB0lWFu9SXn2FGu 5Vcs0ZXUEcCiZe8y0m5IT0KrWyaazZRNdPNjS043dE32ZjzQ/IOsyLr32Lwc/NS6PURB KMNFvPL2GY9kYzSYHH6SSfkLTQf5e9VxGqoD59LHsTKijhdQKfMHIIAKE4zow4BWcT/W DumL6sLnq0rmMGd66hMzn4Q8lr3ixYR4vBU84yv2T+JTXbOeZUl/n9d4V5TpO2jR0M0y NS6A==

Hi,

Yes, the zeros are always at the same position. For instance, for one of the 4D problem, the matrix is of the form:
X 0 X X
0 X X 0
X X X X
X 0 X X
Indeed, a CAS could help a little bit if Eigen doesn't do better with vectorisation?
The 6D problem may have less off diagonal elements, or small enough that they can be avoided (thus decoupling the computation, allowing to do one after the other instead of both at the same time).

There are other equations that lead to better matrices, but in this case, it is quite dense.

2016-05-22 14:45 GMT+01:00 Dan Čermák :
Hi,

depending on the degree of sparseness (and whether the non-zero elements are
always in the same positions) of your matrix, you could actually try to solve
the underlying equation system "by hand" (read as: use a computer algebra
system) and implement the resulting solution manually.

Hope that helps,

Dan

On Sunday, May 22, 2016 12:39:20 PM Matthieu Brucher wrote:
> Hi,
>
> I'm considering using Eigen for more advanced NR optimization than what I'm
> currently doing in audio real time processing (size 4x4).
> In this case, I know that the matrix has lots of zeros, something I'm not
> currently using to make my 4x4 inverse, but if I'm going for 8x8, it will
> be different.
> I've tried different ways of solving Ax=b, and it seems that computing the
> inverse is currently the best option. With more parameters, this may also
> change...
>
>
> Cheers,
>
> Matthieu

--
Information System Engineer, Ph.D.
Blog: http://blog.audio-tk.com/