Re: [eigen] How to squeeze in place a vector matrix |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] How to squeeze in place a vector matrix
- From: Bastien ROUCARIES <roucaries.bastien@xxxxxxxxx>
- Date: Wed, 25 Aug 2010 16:33:36 +0200
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=NACdoPpMz0NgIOM5L1jwGQIX5kSxlAR3S9QX3i2nSEI=; b=vu8X1gX/U0jbqldxVwYdCoQdcfqlhwipcvVw2Gt4Cq6BscPTI5KDAxLxV8o5UEBwIh 1lTTmnrkoYuS9SBKUAVY8ExDxQrp4Gg2uUwxknzgHbPwZdUQ7zuz00Ko3W4nYMGnIEH1 crUbAraL9Kxa6XzxfSot6XlSKrfQb7ey7qviQ=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=NG7kFyUfwOTk/hPh9iBqJqqSry06fcX+NVY1XtPMK734BhX7njQY0Z078h5rVYrZcT zpqOKZS7wcXt7PzCK9HZAjcGNiAIjrwe35ZfwGreSTXFz8k7Peb0J3h1AqV09+kbPcL/ Cm6v9t0E16IXFZemRJAb8VMhAGPi3tuOPp5xY=
On Wed, Aug 25, 2010 at 4:18 PM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx> wrote:
> 2010/8/25 Bastien ROUCARIES <roucaries.bastien@xxxxxxxxx>:
>> Hi,
>>
>> I want to squeeze some line and column of matrix in place, in order to
>> remove the null space.
>>
>> How can I do that?
>>
>> I have tryied block(i,j,k,l).eval() but i think it is suboptimal
>
> Ah, I see, trying to avoid aliasing issues.
>
> In fact, in assignments, we are always traversing matrices
> left-to-right and top-to-bottom.
>
> So you can remove the eval() if you are a little careful. For example,
> this works:
>
> matrix.block(i,j,k,l) = matrix.block(i+1,j,k,l); // squeeze row i
>
> Of course this is relying on undocumented behavior; but I really don't
> see why we'd ever change this.
Because it is really really useful removing null space on eigenvector
decomposition** ?
In fact I need to punch out a column/line pair, and it will be really
nice to have a function to punch out in place.
As you should know null space is evil* :)
Bastien
* from a physical point of view :) In fact I am working on the
solution of Ax=lambda B x, and null space does not carry physical
signification and the devil from a numerical point of view
** computing the resonnance of some physical system. Null space is
due overdetermined limit conidtion