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

Home » Public Forums » archive » Fun with Int_tabulated.pro
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Fun with Int_tabulated.pro [message #68497] Fri, 30 October 2009 10:20 Go to previous message
wlandsman is currently offline  wlandsman
Messages: 743
Registered: June 2000
Senior Member
I ran into a couple of gotchas with int_tabulated.pro this
morning, It performs numerical integration for the simple case:

IDL> x = findgen(5)
IDL> y = x^2
IDL> print,int_tabulated(x,y)
21.3333

But if one has flipped both vectors (say while converting wavelength
to frequency), then -- even though a plot of the two vectors looks
exactly the same -- int_tabulated gives a different answer.

IDL> x = reverse(x) & y = reverse(y)
IDL> print,int_tabulated(x,y)
42.3619

A closer look at the int_tabulated documentation tells us that if X if
not monotonic increasing, then one needs to set the /SORT keyword.
So now we follow the documentation:

IDL> print,int_tabulated(x,y,/sort)
21.3333

and get the right answer again. But as the documentation also "sort"
of warns
you, setting the /SORT keyword reorders the input X and Y variables.
This is
probably not a problem unless one has modified the Y vector on the fly
by
some factor f

f = findgen(5) + 0.5
print,int_tabulated(x, y*f,/sort)

Upon output, the X vector has been sorted, but the Y vector has not,
since it
was passed as part of a temporary variable y*f. So one has lost
the one to
one correspondence between X and Y, screwing up all subsequent
processing.

--Wayne
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Previous Topic: Re: how to tell if run-time IDL app is already running?
Next Topic: Re: Using contour in postscripts produces a "stripe" effect? - solved

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

Current Time: Sat Oct 11 05:33:06 PDT 2025

Total time taken to generate the page: 0.47828 seconds