PRO STE224_TO_CDF, SCIDATA, DATESTRING, SCID ;+ ; Project : STEREO - IMPACT/STE ; ; Name : STE224_TO_CDF ; ; Purpose : Write STE-D (ApID 224) L1 data to CDF ; ; Category : STEREO, IMPACT, STE ; ; Explanation : ; ; Syntax : STE224_TO_CDF, SCIDATA, DATESTRING, SCID ; ; Examples : ; ; Inputs : SCIDATA - a structure including STE-D L1 science data ; DATESTRING - the date string for the filename ; SCID - the spacecraft ID ; ; Opt. Inputs : None. ; ; Outputs : None. ; ; Opt. Outputs: None. ; ; Keywords : None ; ; Calls : None ; ; Common : None ; ; Restrictions: ; ; Side effects: None. ; ; Prev. Hist. : None. ; ; History : Version 1 (preliminary), 20-Jul-2010, Peter Schroeder, ; UC-Berkeley. ; ; Contact : peters@ssl.berkeley.edu ;- ; if (SCID eq 'EA'XU) then begin SOURCE_FILE = 'ste222a.cdf' SCSTRING = 'STA' endif else begin SOURCE_FILE = 'ste222b.cdf' SCSTRING = 'STB' endelse filename = SCSTRING+'_L1_STE_'+DATESTRING+'_V01.cdf' SOURCE_FILE = concat_dir('$CORE_L1_CALIB_DATA', SOURCE_FILE) filematch = file_search(filename, count = filecount) if filecount eq 0 then file_copy, SOURCE_FILE, filename cdfid = cdf_open(filename) if filecount eq 0 then recstart = 0 else begin quiet=!quiet & !quiet=1 cdf_control, cdfid, get_var_info=info, variable='Epoch' !quiet=quiet recstart = info.maxrec+1 endelse utcsec = utc2sec(SCIDATA.TIME) + (double(SCIDATA.STESpecInterval))/2d utcpkttim = sec2utc(utcsec) utc = anytim2utc(utcpkttim,/external) cdf_epoch, pktepoch, utc.year, utc.month, utc.day, utc.hour, utc.minute, $ utc.second, utc.millisecond,/compute_epoch fullspectrum = fltarr(32,8) fullspectrum[*,4:7] = scidata.STEspectra[*,0:3] cdf_varput, cdfid, 'Epoch', pktepoch, rec_start = recstart cdf_varput, cdfid, 'STE_spectra', transpose(fullspectrum), rec_start = recstart cdf_varput, cdfid, 'STE_energy', transpose(scidata.Energy), rec_start = recstart cdf_varput, cdfid, 'STE_mode', scidata.STEModeID, rec_start = recstart utcsec = utcsec + double(SCIDATA.STESpecInterval) recstart += 1 fullspectrum = fltarr(32,8) fullspectrum[*,4:7] = scidata.STEspectra[*,4:7] utcpkttim = sec2utc(utcsec) utc = anytim2utc(utcpkttim,/external) cdf_epoch, pktepoch, utc.year, utc.month, utc.day, utc.hour, utc.minute, $ utc.second, utc.millisecond,/compute_epoch cdf_varput, cdfid, 'Epoch', pktepoch, rec_start = recstart cdf_varput, cdfid, 'STE_spectra', transpose(fullspectrum), rec_start = recstart cdf_varput, cdfid, 'STE_energy', transpose(scidata.Energy), rec_start = recstart cdf_varput, cdfid, 'STE_mode', scidata.STEModeID, rec_start = recstart cdf_close, cdfid return end