This page was created by the IDL library routine
mk_html_help2.
Last modified: Tue Apr 8 18:16:48 2025.
PROCEDURE:
elf_cal_epd
PURPOSE:
Calibrate EPD raw data (counts/sector) into calibrated products.
Supported product types are:
- 'raw': raw data from epd packets
- 'cps': counts per second [counts/s] in 16 ADC pulse-height channels
- 'nflux': differential-directional number flux [#/cm^2-s-str-MeV] in 16 energy channels
- 'eflux': differential-directional energy flux [MeV/cm^2-s-str-MeV] in 16 energy channels
KEYWORDS:
tplotname: name of tplot variable containing epd data. tvars include ela_pef, ela_pif,
ela_pes, ela_pis (and same for elb)
trange: time range of interest [starttime, endtime] with the format
['YYYY-MM-DD','YYYY-MM-DD'] or to specify more or less than a day
['YYYY-MM-DD/hh:mm:ss','YYYY-MM-DD/hh:mm:ss']
type: type of calibrated data cps, nflux, eflux
probe: name of probe 'a' or 'b'
nodownload: set this flag to force routine to use local files
deadtime_corr: set this flag to zero to not correct for deadtime, or to your preferred deadtime (default = 8.e-6 seconds)
AUTHOR:
2021-03-21 (VA) added capability for summed spins [normalizes cps etc. accordingly]
also vectorized dt (accumulation time) division, avoiding do-loops (faster)
2021-02-19 (VA) fixed: dt to median over spin (does not falter if it includes gaps)
overaccumulation now applied along with dt, prior to deadtime
dead time correction now applied on total cps in sector
revised maxcps to 1.25e5 +2% after review of all 2019 data
eliminated <0 val's from deadtime cor. (set=0 & then nearest-neighbor interpol.)
Version: xprmnt4_wIBO_collection
Initially written by Colin Wilkins (colinwilkins@ucla.edu)
(See projects/elfin/cal_data/elf_cal_epd.pro)
PROCEDURE:
elf_cal_fgm
PURPOSE:
Calibrate ELFIN FGM data
INPUT:
tvars: tplot variable names to be calibrated
KEYWORDS:
level: processing level
error: 1 indicates an error occurred, 0 indicates success
units: 'nT' or 'ADC' default is 'nT'
EXAMPLES:
elf> elf_cal_fgm, tvars, level='l1'
NOTES:
HISTORY:
- egrimes, fixed bug in calibration calculations reported by Andrei, 14 March 2019
$LastChangedBy: clrussell $
$LastChangedDate: 2018-12-06 11:58:25 -0700 (Mon, 06 Aug 2018) $
$LastChangedRevision: 25588 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/trunk/projects/elfin/elf_cal_fgm.pro $
(See projects/elfin/cal_data/elf_cal_fgm.pro)
PROCEDURE:
elf_cal_mrma
PURPOSE:
Calibrate ELFIN MRM ACB data
KEYWORDS:
tvars: tplot variable names to be calibrated
level: 'l1' or 'l2', default value is 'l1'
EXAMPLES:
elf> elf_cal_mrma, tvars
NOTES:
HISTORY:
$LastChangedBy: clrussell $
$LastChangedDate: 2018-12-06 11:58:25 -0700 (Mon, 06 Aug 2018) $
$LastChangedRevision: 25588 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/trunk/projects/elfin/elf_cal_mrma.pro $
(See projects/elfin/cal_data/elf_cal_mrma.pro)
PROCEDURE:
elf_cal_mrmi
PURPOSE:
Calibrate ELFIN MRM IDPU data
KEYWORDS:
tvars: tplot variable names to be calibrated
level: 'l1' or 'l2', default is 'l1'
EXAMPLES:
elf> elf_cal_mrmi, tvars
NOTES:
HISTORY:
$LastChangedBy: clrussell $
$LastChangedDate: 2018-12-06 11:58:25 -0700 (Mon, 06 Aug 2018) $
$LastChangedRevision: 25588 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/trunk/projects/elfin/elf_cal_mrmi.pro $
(See projects/elfin/cal_data/elf_cal_mrmi.pro)
NAME:
elf_convert_epd_mV2eng
PURPOSE:
This procedure converts epd engineering units to mV2end
INPUTS:
trange: time range of epd engineering data to be converted
Ex: ['2022-04-15','2022-04-16']
CALLING SEQUENCE:
elf_convert_epd_mV2eng, trange=trange
$LastChangedBy:
$LastChangedDate:
$LastChangedRevision:
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/trunk/projects/elfin/common/elf_convert_epd_mV2eng.pro $
(See projects/elfin/cal_data/elf_convert_epd_mv2eng.pro)
PROCEDURE:
elf_get_epd_calibration
PURPOSE:
returns epd calibration parameters
OUTPUT:
EPD calibration data structure
cal_params include: epd_gf
epd_overaccumulation_factors
epd_thresh_factors
epd_ch_efficiencies
epd_cal_ch_factors
epd_ebins
epd_ebins_logmean
epd_ebin_lbls
KEYWORDS:
trange: start/stop time frame ['mmmm-yy-dd/hh:mm:ss','mmmm-yy-dd/hh:mm:ss']
probe: elfin probe name, 'a' or 'b'
instrument: epd instrument name, 'epde' or 'epdi'
no_download: set this flag to turn off download and use local files only
EXAMPLES:
elf> cal_params = elf_get_epd_calibration(probe='a', instrument='epde', trange=tr)
NOTES:
There are still a few hard coded variables. There is also no calibration data for epdi
HISTORY:
$LastChangedBy: clrussell $
$LastChangedDate: 2018-12-06 11:58:25 -0700 (Mon, 06 Aug 2018) $
$LastChangedRevision: 25588 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/trunk/projects/elfin/elf_cal_mrmi.pro $
(See projects/elfin/cal_data/elf_get_epd_calibration.pro)
PROCEDURE:
elf_get_epd_calibration_log
PURPOSE:
This routine reads the epd calibration logs for ELFIN-A and ELFIN-B. The calibration logs
contain information from operations such as threshold and efficiency values. This routine
returns a structure with the following values
epd_cal_logs = {cal_date:time_double(this_data[0]), $
probe:probe, $
epd_thresh_factors:float(this_data[24:25]), $
epd_ch_efficiencies:float(this_data[108:123]), $
epd_ebins:float(this_data[74:89])}
KEYWORDS:
trange: time range of interest [starttime, endtime] with the format
['YYYY-MM-DD','YYYY-MM-DD'] or to specify more or less than a day
['YYYY-MM-DD/hh:mm:ss','YYYY-MM-DD/hh:mm:ss']
instrument: 'epde' or 'epdi'
probe: name of probe 'a' or 'b'
nodownload: set this flag to force routine to use local files
(See projects/elfin/cal_data/elf_get_epd_calibration_log.pro)
PROCEDURE:
elf_read_epd_calibration
PURPOSE:
returns epd calibration parameters
OUTPUT:
EPD calibration data structure
cal_params include: epd_gf
epd_overaccumulation_factors
epd_thresh_factors
epd_ch_efficiencies
epd_cal_ch_factors
epd_ebins
epd_ebins_logmean
epd_ebin_lbls
KEYWORDS:
probe: elfin probe name, 'a' or 'b'
instrument: epd instrument name, 'epde' or 'epdi'
no_download: if set this routine will look locally for calibration file
EXAMPLES:
elf> cal_params = elf_get_epd_calibration(probe='a', instrument='epde')
NOTES: This routine is obsolete and has been replaced by elf_read_epd_cal_data. Originally this
routine was written to read the initial calibration data. The calibration data has now been
split into 2 different files - one containing calibration data, the other containing operational
data.
HISTORY:
$LastChangedBy: clrussell $
$LastChangedDate: 2018-12-06 11:58:25 -0700 (Mon, 06 Aug 2018) $
$LastChangedRevision: 25588 $
$URL: svn+ssh://thmsvn@ambrosia.ssl.berkeley.edu/repos/spdsoft/trunk/projects/elfin/elf_cal_mrmi.pro $
(See projects/elfin/cal_data/elf_read_epd_calfile.pro)
PROCEDURE:
elf_read_epd_cal_data
PURPOSE:
This routine retrieves and reads the epd calibration data files for ELFIN-A and ELFIN-B.
The calibration files contain information needed to calibrate epd data. This routine
returns a structure with the following values
epd_cal_logs = {date:date, $
probe:probe, $
gf:gf, $
overaccumulation_factors:overaccumulation_factors, $
thresh_factors:thresh_factors, $
ch_efficiencies:ch_efficiencies, $
ebins:ebins}
The structure returned is based on the time stamp passed as a parameter.
KEYWORDS:
trange: time range of interest [starttime, endtime] with the format
['YYYY-MM-DD','YYYY-MM-DD'] or to specify more or less than a day
['YYYY-MM-DD/hh:mm:ss','YYYY-MM-DD/hh:mm:ss']
instrument: 'epde' or 'epdi'
probe: name of probe 'a' or 'b'
nodownload: set this flag to force routine to use local files
(See projects/elfin/cal_data/elf_read_epd_cal_data.pro)