general/missions/rbsp/efw/
rbsp_efw_cal_xspec.pro
NAME: rbsp_efw_cal_xspec PURPOSE: Calibrate RBSP cross-spectral data NOTES: meant to be called from rbsp_load_efw_xspec.pro The default is that xspec0 is SCMw x E12AC and xspec1 is V1AC x V2AC xspec3 is not used at this time A note on the various channels. From the LASP DFB document Fig 4, the spectral FFT of each channel (ex SCMw and E12AC) is sent directly into the Xspec processor. The "top" channel in this figure shows the calculation of the real and imaginary parts. FFT(SCMw) and FFT(E12AC) --> Xspec calc (eg SCMw x E12AC) --> bin averaging --> xspec compression The power is calculated via the "bottom" channel FFT(SCMw) --> FFT(SCMw)*FFT(SCMw)* --> bin averaging --> spec compression These values are "src1" and "src2" src1 and src2 refer to the individual sources that comprise the xspec. These are power spectral densities Data calibration (ex, starting with src1, described above) subtract offset src1_2 = (double(src1.y) - offset_chn1) Compensate for dynamic range compression src1_2 /= 16 (/8 for the real and imaginary parts) Divide the 0th bin by 4 (from weirdness doc) src1_2[*,0] /= 4. Compensate for using Hanning window src1_2 /= 0.375^2 Apply ADC conversion src1_2 *= adc_factor^2 Apply channel gain src1_2 *= gain[0]^2 Resulting data in V^2/Hz The coherence values are calculated as in Eqn 3.91 in "Engineering Applications of Correlation and Spectral Analysis" by Bendat and Piersol (vol 1 apparently) Coherence(f) = |Gxy(f)|^2 / Gxx(f)*Gyy(f) where |Gxy(f)|^2 = (Real^2 + Imaginary^2) Gxx(f) = src1_2 Gyy(f) = src2_2 SEE ALSO: HISTORY: Sept 2012: Created by Aaron W Breneman, University of Minnesota VERSION: $LastChangedBy: $ $LastChangedDate: $ $LastChangedRevision: $ $URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/ssl_general/trunk/missions/rbsp/efw/rbsp_efw_cal_fbk.pro $
Routines
File attributes
Modification date: | Thu Feb 13 16:43:26 2014 |
Lines: | 653 |