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

Home » Public Forums » archive » Re: Calculate sensor response functions
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
Re: Calculate sensor response functions [message #69534] Fri, 22 January 2010 08:55
Paul Van Delst[1] is currently offline  Paul Van Delst[1]
Messages: 1157
Registered: April 2002
Senior Member
Christian Haselwimmer wrote:
> Paulv,
> thanks for your detailed response. I am aware of the Hyperion spectral
> response curves at the link you mentioned but for some irritating
> reason the zip files appear to be corrupt, which is why I am going
> down this route. I would ideally want to use the measured Hyperion
> SRFs but I haven't been able to find these on the web other than the
> from the link above.

Well, down the bottom of the page is an email link for the webpage principal contact. I'm
sure he/she would like to know their posted datafile is corrupted. (I can't uncompress it
either so it doesn't appear to be anything you or your system is doing).

> I have seen in a number of papers that the SRFs for Hyperion have been
> modelled using gaussian curves based upon central wavelength and FWHM;
> this is all I really want to do but do not have sufficient experience
> of IDL to implement this, hence my post.

If you still want to do that, then my first posted reply is of use. The equation to do
what you want is there.

cheers,

paulv

>
> cheers,
> Christian
>
>
>
>
> On 22 Jan, 15:56, Paul van Delst <Paul.vanDe...@noaa.gov> wrote:
>> Crikey. Alternatively you can google "Hyperion spectral response" and you'll find this page:
>>
>> http://www.eoc.csiro.au/hswww/oz_pi/specresp.htm
>>
>> that contains the spectral response data for Hyperion (and ALI).
>>
>> A much simpler approach.
>>
>> :o)
>>
>> cheers,
>>
>> paulv
>>
>>
>>
>> Paul van Delst wrote:
>>> Christian Haselwimmer wrote:
>>>> Hi,
>>>> I want to calculate sensor response functions (for E0-1 Hyperion)
>>>> based upon centre wavelength and bandwidth but am struggling to figure
>>>> out the best way to do this with IDL. I was wondering if anybody could
>>>> provide some advice or possibly existing code to do this.
>>> Well, sensor response functions are typically measured, not calculated, since the sensor
>>> response depends on a whole bunch of things (detector response, foreoptics transmission,
>>> the emissivities/reflectivities of the optical surfaces, etc.).
>>> Without the measured SRFs or those modeled by the instrument builder, a really simple
>>> approach is to use some sort of modified Gaussian curve:
>>> SRF = EXP( -a * |x - x0|^n )
>>> where a is a multiplier determined from the half power (HWHM) points,
>>> a = -1 * LN( 0.5 )
>>> ----------------
>>> n
>>> HWHM
>>> and x is the frequency in cm-1
>>> x0 is the central frequency in cm-1, and
>>> n is the exponent supplied by the user.
>>> Or, if you want a longer tail to your SRFs, you can use a modified Lorentzian shape:
>>> 1 HWHM
>>> SRF = ----- . -----------------------
>>> !PI ( x - x0 )^n + HWHM^n
>>> Or some combination of the two.
>>> But either way, the SRFs would be completely made up. Comparing calculations using made-up
>>> SRFs and actual instrument radiances will be biased because of that.
>>> Hyperion is a grating spectrometer, so you may be able to come up with a better instrument
>>> model based on the actual instrument specs, but you'd need to know a lot more info (I
>>> think). As an example, Lockheed-Martin provided the following SRF model for the EOS Aqua
>>> AIRS instrument (also a grating spectrometer, but ~3-15um) back in the 90's:
>>> SRF(x-x0) = exp( -a * (x-x0)^2 ) + $
>>> ( b * ( 1 - exp( -a * (x-x0)^2 ) ) * ( d + |x-x0| )^c )
>>> where a, b, c, and d are the SRF coefficients based on their analysis of the AIRS optical
>>> model.
>>> The above SRF model was great for testing, but we still needed the actual measured
>>> responses for modeling the instrument when it was launched.
>>> Maybe you should contact the NASA/GSFC and/or USGS instrument scientists to determine
>>> where that data is available?
>>> Anyway....
>>> cheers,
>>> paulv
>
Re: Calculate sensor response functions [message #69535 is a reply to message #69534] Fri, 22 January 2010 08:40 Go to previous message
Carsten Lechte is currently offline  Carsten Lechte
Messages: 124
Registered: August 2006
Senior Member
Christian Haselwimmer wrote:
> response curves at the link you mentioned but for some irritating
> reason the zip files appear to be corrupt, which is why I am going
> down this route.

Under linux/unix, you could try 'zip -FF RESPONSE.ZIP'. Of course, it
is your call if you trust the recovered data.


chl
Re: Calculate sensor response functions [message #69537 is a reply to message #69535] Fri, 22 January 2010 08:25 Go to previous message
Christian Haselwimmer is currently offline  Christian Haselwimmer
Messages: 3
Registered: February 2009
Junior Member
Paulv,
thanks for your detailed response. I am aware of the Hyperion spectral
response curves at the link you mentioned but for some irritating
reason the zip files appear to be corrupt, which is why I am going
down this route. I would ideally want to use the measured Hyperion
SRFs but I haven't been able to find these on the web other than the
from the link above.

I have seen in a number of papers that the SRFs for Hyperion have been
modelled using gaussian curves based upon central wavelength and FWHM;
this is all I really want to do but do not have sufficient experience
of IDL to implement this, hence my post.

cheers,
Christian




On 22 Jan, 15:56, Paul van Delst <Paul.vanDe...@noaa.gov> wrote:
> Crikey. Alternatively you can google "Hyperion spectral response" and you'll find this page:
>
> http://www.eoc.csiro.au/hswww/oz_pi/specresp.htm
>
> that contains the spectral response data for Hyperion (and ALI).
>
> A much simpler approach.
>
> :o)
>
> cheers,
>
> paulv
>
>
>
> Paul van Delst wrote:
>> Christian Haselwimmer wrote:
>>> Hi,
>>> I want to calculate sensor response functions (for E0-1 Hyperion)
>>> based upon centre wavelength and bandwidth but am struggling to figure
>>> out the best way to do this with IDL. I was wondering if anybody could
>>> provide some advice or possibly existing code to do this.
>
>> Well, sensor response functions are typically measured, not calculated, since the sensor
>> response depends on a whole bunch of things (detector response, foreoptics transmission,
>> the emissivities/reflectivities of the optical surfaces, etc.).
>
>> Without the measured SRFs or those modeled by the instrument builder, a really simple
>> approach is to use some sort of modified Gaussian curve:
>
>>   SRF = EXP( -a * |x - x0|^n )
>
>> where a is a multiplier determined from the half power (HWHM) points,
>
>>   a =  -1 * LN( 0.5 )
>>       ----------------
>>                n
>>            HWHM
>
>> and x  is the frequency in cm-1
>>     x0 is the central frequency in cm-1, and
>>     n  is the exponent supplied by the user.
>
>> Or, if you want a longer tail to your SRFs, you can use a modified Lorentzian shape:
>
>>           1              HWHM
>>   SRF = ----- . -----------------------
>>          !PI     ( x - x0 )^n + HWHM^n
>
>> Or some combination of the two.
>
>> But either way, the SRFs would be completely made up. Comparing calculations using made-up
>> SRFs and actual instrument radiances will be biased because of that.
>
>> Hyperion is a grating spectrometer, so you may be able to come up with a better instrument
>> model based on the actual instrument specs, but you'd need to know a lot more info (I
>> think). As an example, Lockheed-Martin provided the following SRF model for the EOS Aqua
>> AIRS instrument (also a grating spectrometer, but ~3-15um) back in the 90's:
>
>>    SRF(x-x0) = exp( -a * (x-x0)^2 ) + $
>>                ( b * ( 1 - exp( -a * (x-x0)^2 ) ) * ( d + |x-x0| )^c )
>
>> where a, b, c, and d are the SRF coefficients based on their analysis of the AIRS optical
>> model.
>
>> The above SRF model was great for testing, but we still needed the actual measured
>> responses for modeling the instrument when it was launched.
>
>> Maybe you should contact the NASA/GSFC and/or USGS instrument scientists to determine
>> where that data is available?
>
>> Anyway....
>
>> cheers,
>
>> paulv
Re: Calculate sensor response functions [message #69539 is a reply to message #69537] Fri, 22 January 2010 07:56 Go to previous message
Paul Van Delst[1] is currently offline  Paul Van Delst[1]
Messages: 1157
Registered: April 2002
Senior Member
Crikey. Alternatively you can google "Hyperion spectral response" and you'll find this page:

http://www.eoc.csiro.au/hswww/oz_pi/specresp.htm

that contains the spectral response data for Hyperion (and ALI).

A much simpler approach.

:o)

cheers,

paulv


Paul van Delst wrote:
> Christian Haselwimmer wrote:
>> Hi,
>> I want to calculate sensor response functions (for E0-1 Hyperion)
>> based upon centre wavelength and bandwidth but am struggling to figure
>> out the best way to do this with IDL. I was wondering if anybody could
>> provide some advice or possibly existing code to do this.
>
> Well, sensor response functions are typically measured, not calculated, since the sensor
> response depends on a whole bunch of things (detector response, foreoptics transmission,
> the emissivities/reflectivities of the optical surfaces, etc.).
>
> Without the measured SRFs or those modeled by the instrument builder, a really simple
> approach is to use some sort of modified Gaussian curve:
>
> SRF = EXP( -a * |x - x0|^n )
>
> where a is a multiplier determined from the half power (HWHM) points,
>
> a = -1 * LN( 0.5 )
> ----------------
> n
> HWHM
>
> and x is the frequency in cm-1
> x0 is the central frequency in cm-1, and
> n is the exponent supplied by the user.
>
> Or, if you want a longer tail to your SRFs, you can use a modified Lorentzian shape:
>
> 1 HWHM
> SRF = ----- . -----------------------
> !PI ( x - x0 )^n + HWHM^n
>
> Or some combination of the two.
>
> But either way, the SRFs would be completely made up. Comparing calculations using made-up
> SRFs and actual instrument radiances will be biased because of that.
>
> Hyperion is a grating spectrometer, so you may be able to come up with a better instrument
> model based on the actual instrument specs, but you'd need to know a lot more info (I
> think). As an example, Lockheed-Martin provided the following SRF model for the EOS Aqua
> AIRS instrument (also a grating spectrometer, but ~3-15um) back in the 90's:
>
> SRF(x-x0) = exp( -a * (x-x0)^2 ) + $
> ( b * ( 1 - exp( -a * (x-x0)^2 ) ) * ( d + |x-x0| )^c )
>
> where a, b, c, and d are the SRF coefficients based on their analysis of the AIRS optical
> model.
>
> The above SRF model was great for testing, but we still needed the actual measured
> responses for modeling the instrument when it was launched.
>
> Maybe you should contact the NASA/GSFC and/or USGS instrument scientists to determine
> where that data is available?
>
> Anyway....
>
> cheers,
>
> paulv
Re: Calculate sensor response functions [message #69540 is a reply to message #69539] Fri, 22 January 2010 07:51 Go to previous message
Paul Van Delst[1] is currently offline  Paul Van Delst[1]
Messages: 1157
Registered: April 2002
Senior Member
Christian Haselwimmer wrote:
> Hi,
> I want to calculate sensor response functions (for E0-1 Hyperion)
> based upon centre wavelength and bandwidth but am struggling to figure
> out the best way to do this with IDL. I was wondering if anybody could
> provide some advice or possibly existing code to do this.

Well, sensor response functions are typically measured, not calculated, since the sensor
response depends on a whole bunch of things (detector response, foreoptics transmission,
the emissivities/reflectivities of the optical surfaces, etc.).

Without the measured SRFs or those modeled by the instrument builder, a really simple
approach is to use some sort of modified Gaussian curve:

SRF = EXP( -a * |x - x0|^n )

where a is a multiplier determined from the half power (HWHM) points,

a = -1 * LN( 0.5 )
----------------
n
HWHM

and x is the frequency in cm-1
x0 is the central frequency in cm-1, and
n is the exponent supplied by the user.

Or, if you want a longer tail to your SRFs, you can use a modified Lorentzian shape:

1 HWHM
SRF = ----- . -----------------------
!PI ( x - x0 )^n + HWHM^n

Or some combination of the two.

But either way, the SRFs would be completely made up. Comparing calculations using made-up
SRFs and actual instrument radiances will be biased because of that.

Hyperion is a grating spectrometer, so you may be able to come up with a better instrument
model based on the actual instrument specs, but you'd need to know a lot more info (I
think). As an example, Lockheed-Martin provided the following SRF model for the EOS Aqua
AIRS instrument (also a grating spectrometer, but ~3-15um) back in the 90's:

SRF(x-x0) = exp( -a * (x-x0)^2 ) + $
( b * ( 1 - exp( -a * (x-x0)^2 ) ) * ( d + |x-x0| )^c )

where a, b, c, and d are the SRF coefficients based on their analysis of the AIRS optical
model.

The above SRF model was great for testing, but we still needed the actual measured
responses for modeling the instrument when it was launched.

Maybe you should contact the NASA/GSFC and/or USGS instrument scientists to determine
where that data is available?

Anyway....

cheers,

paulv
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: Re: specifying argument using a variable
Next Topic: What could cause disappearing array?

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

Current Time: Wed Oct 08 17:40:24 PDT 2025

Total time taken to generate the page: 0.00647 seconds