Re: [eigen] Feature request for array |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] Feature request for array
- From: Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
- Date: Fri, 8 Jan 2010 09:27:15 -0500
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type; bh=Wfp+eZqhdc+ErT6xwK2xJsbco7IrhZfLwidQHBhzmSc=; b=CbpzBzTNf7zITxIxv70RraVfiL6L5V2aTvzywZ8B8vyAxWAcEGPeH/MWwIUPcuwASc K4u+8oBnItXCwzezgxNlbeQM2Gx2GzaHxAw9Sg4TG2id64QRNhIZqGcLFQ5RaYGGCt0J HyPTf3cUSAHEG7vTdDldcd2ahXT1gmQW7tliY=
- 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; b=hUgFwPVj/f6ceC34SCpUfgWjmc27t+vtfkNPiLFStlDNwGb7bTYishL1TeoQlSVe1k Fytgnz8RGofBuAOpb4a/6xWej2Lgi37ttR6qlUy2JanBSbmQq7E1rDkzuERGhCjTohgd MVnQSYE4YvNuYiJnX6nYAdfTfTyzw+Pn8I6C4=
So, exactly as Rohit says, we have a segment() function for that:
A.segment(first,size) = B.segment(first,size) + C.segment(first,size);
so for 4..10 you would use segment(4,7).
http://eigen.tuxfamily.org/dox/classEigen_1_1MatrixBase.html#a4d9f2188195e410a09ea180032d6b9a1
Benoit
2010/1/8 Jinglei Hu <jingleihu@xxxxxxxxx>:
> Exactly, "slicing".
>
> Really cool to have such function. And if its performance can be comparable
> to Fortran, it would be very attracting.
>
> Jinglei
>
> Aron Ahmadia wrote:
>>
>> Dear Jinglei,
>>
>> I think so too, also, the word you are looking for is 'slicing'.
>> Stencil refers usually to the discretization of a differential
>> operator, which when performed on a finite difference/finite element
>> discretization, usually refers to a local slice of your array around
>> the evaluation point.
>>
>> HTH,
>> A
>>
>> On Fri, Jan 8, 2010 at 10:06 AM, Rohit Garg <rpg.314@xxxxxxxxx> wrote:
>>
>>>
>>> I think this can be done TODAY in eigen using segments.
>>>
>>> 2010/1/8 Jinglei Hu <jingleihu@xxxxxxxxx>:
>>>
>>>>
>>>> Hi,
>>>>
>>>> Eigen is really a nice piece of work. Thanks!
>>>>
>>>> In scientific computing, one and two (or even higher) dimensional arrays
>>>> are
>>>> widely used. It would be nice to have the following function:
>>>>
>>>> 1dArray A(10), B(10), C(10);
>>>> A(4:10) = B(4:10) + C(4:10);
>>>>
>>>> I do not know the professional term for this, maybe stencil? In fortran,
>>>> this function for array is built-in. Blitz++ provides such function for
>>>> array and claimed performance in par with fortran. How about
>>>> incorporating
>>>> this staff in Eigen?
>>>>
>>>> Cheers,
>>>> Jinglei
>>>>
>>>
>>> --
>>> Rohit Garg
>>>
>>> http://rpg-314.blogspot.com/
>>>
>>> Senior Undergraduate
>>> Department of Physics
>>> Indian Institute of Technology
>>> Bombay
>>>
>>>
>>>
>>>
>>
>>
>>
>>
>
>
>
>