comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » derivative function in IDL similar as DIFF in matlab
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: derivative function in IDL similar as DIFF in matlab [message #86467 is a reply to message #86466] Tue, 12 November 2013 04:18 Go to previous messageGo to previous message
Jie Zhou is currently offline  Jie Zhou
Messages: 27
Registered: February 2014
Junior Member
On Tuesday, November 12, 2013 1:08:10 PM UTC+1, Matthew Argall wrote:
> On Tuesday, November 12, 2013 7:01:15 AM UTC-5, Matthew Argall wrote:
>
>> On Tuesday, November 12, 2013 5:08:11 AM UTC-5, Jie Zhou wrote:
>
>>
>
>>> Is there a derivative function in IDL similar as DIFF in matlab? I think the DERIV is different from DIFF.
>
>>
>
>>
>
>>
>
>> TS_DIFF(data, 1) would be equivalent.
>
>
>
> Actually, maybe not. TS_DIFF calculates the forward difference. I think you are looking for the backward difference.
>
>
>
> In that case, I tend to use
>
>
>
> result = data[1:*] - data[0:n_elements(data)-1]
>
>
>
> or
>
>
>
> result = shift(data, 1) - data
>
> result = result[0:n_elements(result)-1]

In fact what I tried to do is using diff function to calculate the n-th derivative of an 2-d matrix. for example, for a matrx:
A=
1 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0
0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 0 0 1

in matlab, the DIFF(A,2) gives:
1 -2 1 0 0 0 0 0 0 0
0 1 -2 1 0 0 0 0 0 0
0 0 1 -2 1 0 0 0 0 0
0 0 0 1 -2 1 0 0 0 0
0 0 0 0 1 -2 1 0 0 0
0 0 0 0 0 1 -2 1 0 0
0 0 0 0 0 0 1 -2 1 0
0 0 0 0 0 0 0 1 -2 1

Until now, I don't find a equivalent function in IDL.
Thanks to alx, I use
D=(shift(shift(A,0,1)-A,0,1)-(shift(A,0,1)-A))[*,2:*]
to finish the task.

jie
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: writing fixed-length string arrays to netcdf-4
Next Topic: negative array index in IDL8

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Fri Oct 10 02:00:45 PDT 2025

Total time taken to generate the page: 0.15996 seconds