pro mvn_sta_l2_tplot,all=all,units=units,apids=apids,test=test,gf_nor=gf_nor,scale=scale,dead_c0=dead_c0
cols=get_colors()
if not keyword_set(all) then begin
store_data,delete='mvn_STA_*'
store_data,delete='mvn_sta_*'
endif
common mvn_2a,mvn_2a_ind,mvn_2a_dat
common mvn_c0,mvn_c0_ind,mvn_c0_dat
common mvn_c2,mvn_c2_ind,mvn_c2_dat
common mvn_c4,mvn_c4_ind,mvn_c4_dat
common mvn_c6,mvn_c6_ind,mvn_c6_dat
common mvn_c8,mvn_c8_ind,mvn_c8_dat
common mvn_ca,mvn_ca_ind,mvn_ca_dat
common mvn_cc,mvn_cc_ind,mvn_cc_dat
common mvn_cd,mvn_cd_ind,mvn_cd_dat
common mvn_ce,mvn_ce_ind,mvn_ce_dat
common mvn_cf,mvn_cf_ind,mvn_cf_dat
common mvn_d0,mvn_d0_ind,mvn_d0_dat
common mvn_d1,mvn_d1_ind,mvn_d1_dat
common mvn_d2,mvn_d2_ind,mvn_d2_dat
common mvn_d3,mvn_d3_ind,mvn_d3_dat
common mvn_d4,mvn_d4_ind,mvn_d4_dat
common mvn_d6,mvn_d6_ind,mvn_d6_dat
common mvn_d7,mvn_d7_ind,mvn_d7_dat
common mvn_d8,mvn_d8_ind,mvn_d8_dat
common mvn_d9,mvn_d9_ind,mvn_d9_dat
common mvn_da,mvn_da_ind,mvn_da_dat
common mvn_db,mvn_db_ind,mvn_db_dat
if size(mvn_2a_dat,/type) eq 8 and keyword_set(test) then begin
for i=0,98 do begin
label = strtrim(strcompress(mvn_2a_dat.hkp_labels[i]),1)
name = 'mvn_sta_2a_'+ label
store_data,name,data={x:mvn_2a_dat.time,y:reform(mvn_2a_dat.hkp[*,i])}
options,name,ytitle=label
endfor
ylim,'mvn_sta_2a_Temp_Dig',0,60,0
ylim,'mvn_sta_2a_Imon_ADC5V',30,36,0
ylim,'mvn_sta_2a_+5V_D',4.9,5.2,0
ylim,'mvn_sta_2a_+3.3V_D',3.2,3.4,0
ylim,'mvn_sta_2a_+5V_A',4.9,5.2,0
ylim,'mvn_sta_2a_-5V_A',-5.3,-5.0,0
ylim,'mvn_sta_2a_+12V_A',11.9,12.3,0
ylim,'mvn_sta_2a_+28V',24,30,0
ylim,'mvn_sta_2a_Temp_FPGA',0,60,0
ylim,'mvn_sta_2a_Temp_LVPS',0,60,0
get_data,'mvn_sta_2a_Vmon_Swp',data=tmp
store_data,'mvn_sta_2a_Vmon_Swp_minus',data={x:tmp.x,y:-tmp.y}
ylim,'mvn_sta_2a_Vmon_Swp_minus',.1,10000.,1
ylim,'mvn_sta_2a_Vmon_Def1',.1,10000.,1
ylim,'mvn_sta_2a_Vmon_Def2',.1,10000.,1
ylim,'mvn_sta_2a_R3Rate',-1,12,0
ylim,'mvn_sta_2a_LUTADR*',-1,20,0
options,'mvn_sta_2a*',datagap=100.
endif
if size(mvn_c0_dat,/type) eq 8 then begin
npts = n_elements(mvn_c0_dat.time)
mode = mvn_c0_dat.mode
rate = mvn_c0_dat.rate
iswp = mvn_c0_dat.swp_ind
ieff = mvn_c0_dat.eff_ind
iatt = mvn_c0_dat.att_ind
mlut = mvn_c0_dat.mlut_ind
nenergy = mvn_c0_dat.nenergy
nmass = mvn_c0_dat.nmass
time = (mvn_c0_dat.time + mvn_c0_dat.end_time)/2.
data = mvn_c0_dat.data
energy = reform(mvn_c0_dat.energy[iswp,*,0])
mass = total(mvn_c0_dat.mass_arr[iswp,*,*],2)/nenergy
eflux = mvn_c0_dat.eflux
bkg = mvn_c0_dat.bkg
dead = mvn_c0_dat.dead
gf = reform(mvn_c0_dat.gf[iswp,*,0]*((iatt eq 0)#replicate(1.,nenergy)) +$
mvn_c0_dat.gf[iswp,*,1]*((iatt eq 1)#replicate(1.,nenergy)) +$
mvn_c0_dat.gf[iswp,*,2]*((iatt eq 2)#replicate(1.,nenergy)) +$
mvn_c0_dat.gf[iswp,*,3]*((iatt eq 3)#replicate(1.,nenergy)), npts*nenergy)#replicate(1.,nmass)
gf = mvn_c0_dat.geom_factor*reform(gf,npts,nenergy,nmass)
eff = mvn_c0_dat.eff[ieff,*,*]
dt = mvn_c0_dat.integ_t#replicate(1.,nenergy*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/(eflux>.01))) gt 0. then print,'Error in CDF c0 eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_c0_P1A_E',data={x:time,y:total(data,3),v:energy}
store_data,'mvn_sta_c0_P1A_H_E',data={x:time,y:reform( (data[*,*,1]-0.006*data[*,*,0]/(1.-(data[*,*,0]/1200.<.9))) >0.),v:energy}
store_data,'mvn_sta_c0_P1A_M',data={x:time,y:total(data,2),v:mass}
store_data,'mvn_sta_c0_E',data={x:time,y:total(eflux,3),v:energy}
store_data,'mvn_sta_c0_H_E',data={x:time,y:reform((eflux[*,*,1]-0.006*eflux[*,*,0]/(1.-(data[*,*,0]/1200.<.9))) >0.),v:energy}
store_data,'mvn_sta_c0_M',data={x:time,y:total(eflux,2),v:mass}
store_data,'mvn_sta_c0_tot',data={x:time,y:total(total(data,3),2)}
store_data,'mvn_sta_c0_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_c0_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_c0_rate',data={x:time,y:rate}
ylim,'mvn_sta_c0_tot',0,0,1
ylim,'mvn_sta_c0_P1A_E',.4,40000.,1
ylim,'mvn_sta_c0_P1A_H_E',.4,40000.,1
ylim,'mvn_sta_c0_P1A_M',.5,100,1
ylim,'mvn_sta_c0_E',.4,40000.,1
ylim,'mvn_sta_c0_H_E',.4,40000.,1
ylim,'mvn_sta_c0_M',.5,100,1
ylim,'mvn_sta_c0_att',-1,5,0
zlim,'mvn_sta_c0_P1A_E',1,1.e4,1
zlim,'mvn_sta_c0_P1A_H_E',1,1.e4,1
zlim,'mvn_sta_c0_P1A_M',1,1.e4,1
zlim,'mvn_sta_c0_E',1.e3,1.e9,1
zlim,'mvn_sta_c0_H_E',1.e3,1.e9,1
zlim,'mvn_sta_c0_M',1.e3,1.e9,1
options,'mvn_sta_c0*',datagap=7.
options,'mvn_sta_c0_P1A_E','spec',1
options,'mvn_sta_c0_P1A_H_E','spec',1
options,'mvn_sta_c0_P1A_M','spec',1
options,'mvn_sta_c0_E','spec',1
options,'mvn_sta_c0_H_E','spec',1
options,'mvn_sta_c0_M','spec',1
options,'mvn_sta_c0_P1A_E',ytitle='sta!CP1A-c0!C!CEnergy!CeV'
options,'mvn_sta_c0_P1A_H_E',ytitle='sta!CP1A-c0!CM>12amu!CEnergy!CeV'
options,'mvn_sta_c0_P1A_M',ytitle='sta!CP1A-c0!C!CMass!Camu'
options,'mvn_sta_c0_E',ytitle='sta!Cc0!C!CEnergy!CeV'
options,'mvn_sta_c0_H_E',ytitle='sta!Cc0!CM>12amu!CEnergy!CeV'
options,'mvn_sta_c0_M',ytitle='sta!Cc0!C!CMass!Camu'
options,'mvn_sta_c0_tot',ytitle='sta!Cc0!C!CCounts'
options,'mvn_sta_c0_att',ytitle='sta!Cc0!C!CAttenuator'
options,'mvn_sta_c0_E',ztitle='eflux'
options,'mvn_sta_c0_H_E',ztitle='eflux'
options,'mvn_sta_c0_M',ztitle='eflux'
endif
if size(mvn_c2_dat,/type) eq 8 then begin
npts = n_elements(mvn_c2_dat.time)
mode = mvn_c2_dat.mode
rate = mvn_c2_dat.rate
iswp = mvn_c2_dat.swp_ind
ieff = mvn_c2_dat.eff_ind
iatt = mvn_c2_dat.att_ind
mlut = mvn_c2_dat.mlut_ind
nenergy = mvn_c2_dat.nenergy
nmass = mvn_c2_dat.nmass
time = (mvn_c2_dat.time + mvn_c2_dat.end_time)/2.
data = mvn_c2_dat.data
energy = reform(mvn_c2_dat.energy[iswp,*,0])
mass = total(mvn_c2_dat.mass_arr[iswp,*,*],2)/nenergy
eflux = mvn_c2_dat.eflux
bkg = mvn_c2_dat.bkg
dead = mvn_c2_dat.dead
gf = reform(mvn_c2_dat.gf[iswp,*,0]*((iatt eq 0)#replicate(1.,nenergy)) +$
mvn_c2_dat.gf[iswp,*,1]*((iatt eq 1)#replicate(1.,nenergy)) +$
mvn_c2_dat.gf[iswp,*,2]*((iatt eq 2)#replicate(1.,nenergy)) +$
mvn_c2_dat.gf[iswp,*,3]*((iatt eq 3)#replicate(1.,nenergy)), npts*nenergy)#replicate(1.,nmass)
gf = mvn_c2_dat.geom_factor*reform(gf,npts,nenergy,nmass)
eff = mvn_c2_dat.eff[ieff,*,*]
dt = mvn_c2_dat.integ_t#replicate(1.,nenergy*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/(eflux>.01))) gt 0. then print,'Error in CDF c2 eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_c2_P1D_E',data={x:time,y:total(data,3),v:energy}
store_data,'mvn_sta_c2_P1D_M',data={x:time,y:total(data,2),v:mass}
store_data,'mvn_sta_c2_E',data={x:time,y:total(eflux,3),v:energy}
store_data,'mvn_sta_c2_M',data={x:time,y:total(eflux,2),v:mass}
store_data,'mvn_sta_c2_tot',data={x:time,y:total(total(data,3),2)}
store_data,'mvn_sta_c2_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_c2_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_c2_rate',data={x:time,y:rate}
ylim,'mvn_sta_c2_tot',0,0,1
ylim,'mvn_sta_c2_P1D_E',.4,40000.,1
ylim,'mvn_sta_c2_P1D_M',.5,100.,1
ylim,'mvn_sta_c2_E',.4,40000.,1
ylim,'mvn_sta_c2_M',.5,100.,1
ylim,'mvn_sta_c2_att',-1,5,0
zlim,'mvn_sta_c2_P1D_E',1,1.e4,1
zlim,'mvn_sta_c2_P1D_M',1,1.e4,1
zlim,'mvn_sta_c2_E',1.e3,1.e9,1
zlim,'mvn_sta_c2_M',1.e3,1.e9,1
datagap=7.
options,'mvn_sta_c2_P1D_E',datagap=datagap
options,'mvn_sta_c2_P1D_M',datagap=datagap
options,'mvn_sta_c2_E',datagap=datagap
options,'mvn_sta_c2_M',datagap=datagap
options,'mvn_sta_c2_tot',datagap=datagap
options,'mvn_sta_c2_att',datagap=datagap
options,'mvn_sta_c2_P1D_E','spec',1
options,'mvn_sta_c2_P1D_M','spec',1
options,'mvn_sta_c2_E','spec',1
options,'mvn_sta_c2_M','spec',1
options,'mvn_sta_c2_P1D_E',ytitle='sta!CP1D-c2!C!CEnergy!CeV'
options,'mvn_sta_c2_P1D_M',ytitle='sta!CP1D-c2!C!CMass!Camu'
options,'mvn_sta_c2_E',ytitle='sta!Cc2!C!CEnergy!CeV'
options,'mvn_sta_c2_M',ytitle='sta!Cc2!C!CMass!Camu'
options,'mvn_sta_c2_tot',ytitle='sta!Cc2!C!CCounts'
options,'mvn_sta_c2_att',ytitle='sta!Cc2!C!CAttenuator'
options,'mvn_sta_c2_E',ztitle='eflux'
options,'mvn_sta_c2_M',ztitle='eflux'
endif
if size(mvn_c4_dat,/type) eq 8 then begin
npts = n_elements(mvn_c4_dat.time)
mode = mvn_c4_dat.mode
rate = mvn_c4_dat.rate
iswp = mvn_c4_dat.swp_ind
ieff = mvn_c4_dat.eff_ind
iatt = mvn_c4_dat.att_ind
mlut = mvn_c4_dat.mlut_ind
nenergy = mvn_c4_dat.nenergy
nmass = mvn_c4_dat.nmass
time = (mvn_c4_dat.time + mvn_c4_dat.end_time)/2.
data = mvn_c4_dat.data
energy = reform(mvn_c4_dat.energy[iswp,*,0])
mass = total(mvn_c4_dat.mass_arr[iswp,*,*],2)/nenergy
eflux = mvn_c4_dat.eflux
bkg = mvn_c4_dat.bkg
dead = mvn_c4_dat.dead
gf = reform(mvn_c4_dat.gf[iswp,*,0]*((iatt eq 0)#replicate(1.,nenergy)) +$
mvn_c4_dat.gf[iswp,*,1]*((iatt eq 1)#replicate(1.,nenergy)) +$
mvn_c4_dat.gf[iswp,*,2]*((iatt eq 2)#replicate(1.,nenergy)) +$
mvn_c4_dat.gf[iswp,*,3]*((iatt eq 3)#replicate(1.,nenergy)), npts*nenergy)#replicate(1.,nmass)
gf = mvn_c4_dat.geom_factor*reform(gf,npts,nenergy,nmass)
eff = mvn_c4_dat.eff[ieff,*,*]
dt = mvn_c4_dat.integ_t#replicate(1.,nenergy*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/(eflux>.01))) gt 0. then print,'Error in CDF c4 eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_c4_P1D_E',data={x:time,y:total(data,3),v:energy}
store_data,'mvn_sta_c4_P1D_M',data={x:time,y:total(data,2),v:mass}
store_data,'mvn_sta_c4_E',data={x:time,y:total(eflux,3),v:energy}
store_data,'mvn_sta_c4_M',data={x:time,y:total(eflux,2),v:mass}
store_data,'mvn_sta_c4_tot',data={x:time,y:total(total(data,3),2)}
store_data,'mvn_sta_c4_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_c4_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_c4_rate',data={x:time,y:rate}
ylim,'mvn_sta_c4_tot',0,0,1
ylim,'mvn_sta_c4_P1D_E',.4,40000.,1
ylim,'mvn_sta_c4_P1D_M',.5,100.,1
ylim,'mvn_sta_c4_E',.4,40000.,1
ylim,'mvn_sta_c4_M',.5,100.,1
ylim,'mvn_sta_c4_att',-1,5,0
zlim,'mvn_sta_c4_P1D_E',1,1.e4,1
zlim,'mvn_sta_c4_P1D_M',1,1.e4,1
zlim,'mvn_sta_c4_E',1.e3,1.e9,1
zlim,'mvn_sta_c4_M',1.e3,1.e9,1
datagap=7.
options,'mvn_sta_c4_P1D_E',datagap=datagap
options,'mvn_sta_c4_P1D_M',datagap=datagap
options,'mvn_sta_c4_E',datagap=datagap
options,'mvn_sta_c4_M',datagap=datagap
options,'mvn_sta_c4_tot',datagap=datagap
options,'mvn_sta_c4_att',datagap=datagap
options,'mvn_sta_c4_P1D_E','spec',1
options,'mvn_sta_c4_P1D_M','spec',1
options,'mvn_sta_c4_E','spec',1
options,'mvn_sta_c4_M','spec',1
options,'mvn_sta_c4_P1D_E',ytitle='sta!CP1D-c4!C!CEnergy!CeV'
options,'mvn_sta_c4_P1D_M',ytitle='sta!CP1D-c4!C!CMass!Camu'
options,'mvn_sta_c4_E',ytitle='sta!Cc4!C!CEnergy!CeV'
options,'mvn_sta_c4_M',ytitle='sta!Cc4!C!CMass!Camu'
options,'mvn_sta_c4_tot',ytitle='sta!Cc4!C!CCounts'
options,'mvn_sta_c4_att',ytitle='sta!Cc4!C!CAttenuator'
options,'mvn_sta_c4_E',ztitle='eflux'
options,'mvn_sta_c4_M',ztitle='eflux'
endif
if size(mvn_c6_dat,/type) eq 8 then begin
npts = n_elements(mvn_c6_dat.time)
mode = mvn_c6_dat.mode
rate = mvn_c6_dat.rate
iswp = mvn_c6_dat.swp_ind
ieff = mvn_c6_dat.eff_ind
iatt = mvn_c6_dat.att_ind
mlut = mvn_c6_dat.mlut_ind
nenergy = mvn_c6_dat.nenergy
nmass = mvn_c6_dat.nmass
time = (mvn_c6_dat.time + mvn_c6_dat.end_time)/2.
data = mvn_c6_dat.data
energy = reform(mvn_c6_dat.energy[iswp,*,0])
mass = total(mvn_c6_dat.mass_arr[iswp,*,*],2)/nenergy
eflux = mvn_c6_dat.eflux
bkg = mvn_c6_dat.bkg
dead = mvn_c6_dat.dead
gf = reform(mvn_c6_dat.gf[iswp,*,0]*((iatt eq 0)#replicate(1.,nenergy)) +$
mvn_c6_dat.gf[iswp,*,1]*((iatt eq 1)#replicate(1.,nenergy)) +$
mvn_c6_dat.gf[iswp,*,2]*((iatt eq 2)#replicate(1.,nenergy)) +$
mvn_c6_dat.gf[iswp,*,3]*((iatt eq 3)#replicate(1.,nenergy)), npts*nenergy)#replicate(1.,nmass)
gf = mvn_c6_dat.geom_factor*reform(gf,npts,nenergy,nmass)
eff = mvn_c6_dat.eff[ieff,*,*]
dt = mvn_c6_dat.integ_t#replicate(1.,nenergy*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/(eflux>.01))) gt 0. then print,'Error in CDF c6 eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
if keyword_set(test) then begin
store_data,'mvn_sta_c6_gf30_att',data={x:time,y:reform(mvn_c6_dat.gf[iswp,30,*])}
ylim,'mvn_sta_c6_gf30_att',.01,20,1
options,'mvn_sta_c6_gf30_att',colors=[cols.blue,cols.green,cols.red,cols.black]
store_data,'mvn_sta_c6_gf30',data={x:time,y:reform(gf[*,30,1])/mvn_c6_dat.geom_factor}
ylim,'mvn_sta_c6_gf30',.01,20,1
store_data,'mvn_sta_c6_iswp',data={x:time,y:iswp}
store_data,'mvn_sta_c6_iatt',data={x:time,y:[[iatt eq 0],[iatt eq 1],[iatt eq 2],[iatt eq 3]]}
options,'mvn_sta_c6_iatt',colors=[cols.blue,cols.green,cols.red,cols.black]
ylim,'mvn_sta_c6_iatt',-1,2,0
endif
store_data,'mvn_sta_c6_P1D_E',data={x:time,y:total(data,3),v:energy}
store_data,'mvn_sta_c6_P1D_M',data={x:time,y:total(data,2),v:mass}
store_data,'mvn_sta_c6_E',data={x:time,y:total(eflux,3),v:energy}
store_data,'mvn_sta_c6_M',data={x:time,y:total(eflux,2),v:mass}
store_data,'mvn_sta_c6_tot',data={x:time,y:total(total(data,3),2)}
store_data,'mvn_sta_c6_att',data={x:time,y:iatt}
store_data,'mvn_sta_c6_mode',data={x:time,y:mode}
store_data,'mvn_sta_c6_rate',data={x:time,y:rate}
ylim,'mvn_sta_c6_tot',0,0,1
ylim,'mvn_sta_c6_P1D_E',.4,40000.,1
ylim,'mvn_sta_c6_P1D_M',.5,100.,1
ylim,'mvn_sta_c6_E',.4,40000.,1
ylim,'mvn_sta_c6_M',.5,100.,1
ylim,'mvn_sta_c6_att',-1,5,0
ylim,'mvn_sta_c6_mode',-1,7,0
ylim,'mvn_sta_c6_rate',-1,7,0
zlim,'mvn_sta_c6_P1D_E',1,1.e4,1
zlim,'mvn_sta_c6_P1D_M',1,1.e4,1
zlim,'mvn_sta_c6_E',1.e3,1.e9,1
zlim,'mvn_sta_c6_M',1.e3,1.e9,1
datagap=7.
options,'mvn_sta_c6_P1D_E',datagap=datagap
options,'mvn_sta_c6_P1D_M',datagap=datagap
options,'mvn_sta_c6_E',datagap=datagap
options,'mvn_sta_c6_M',datagap=datagap
options,'mvn_sta_c6_tot',datagap=datagap
options,'mvn_sta_c6_att',datagap=datagap
options,'mvn_sta_c6_P1D_E','spec',1
options,'mvn_sta_c6_P1D_M','spec',1
options,'mvn_sta_c6_E','spec',1
options,'mvn_sta_c6_M','spec',1
options,'mvn_sta_c6_P1D_E',ytitle='sta!CP1D-c6!C!CEnergy!CeV'
options,'mvn_sta_c6_P1D_M',ytitle='sta!CP1D-c6!C!CMass!Camu'
options,'mvn_sta_c6_E',ytitle='sta!Cc6!C!CEnergy!CeV'
options,'mvn_sta_c6_M',ytitle='sta!Cc6!C!CMass!Camu'
options,'mvn_sta_c6_tot',ytitle='sta!Cc6!C!CCounts'
options,'mvn_sta_c6_att',ytitle='sta!Cc6!C!CAttenuator'
options,'mvn_sta_c6_E',ztitle='eflux'
options,'mvn_sta_c6_M',ztitle='eflux'
endif
if size(mvn_c8_dat,/type) eq 8 then begin
npts = n_elements(mvn_c8_dat.time)
mode = mvn_c8_dat.mode
rate = mvn_c8_dat.rate
iswp = mvn_c8_dat.swp_ind
ieff = mvn_c8_dat.eff_ind
iatt = mvn_c8_dat.att_ind
mlut = mvn_c8_dat.mlut_ind
nenergy = mvn_c8_dat.nenergy
ndef = mvn_c8_dat.ndef
time = (mvn_c8_dat.time + mvn_c8_dat.end_time)/2.
data = mvn_c8_dat.data
energy = reform(mvn_c8_dat.energy[iswp,*,0])
theta = reform(mvn_c8_dat.theta[iswp,nenergy-1,*])
eflux = mvn_c8_dat.eflux
bkg = mvn_c8_dat.bkg
dead = mvn_c8_dat.dead
gf = reform(mvn_c8_dat.gf[iswp,*,*,0]*((iatt eq 0)#replicate(1.,nenergy*ndef)) +$
mvn_c8_dat.gf[iswp,*,*,1]*((iatt eq 1)#replicate(1.,nenergy*ndef)) +$
mvn_c8_dat.gf[iswp,*,*,2]*((iatt eq 2)#replicate(1.,nenergy*ndef)) +$
mvn_c8_dat.gf[iswp,*,*,3]*((iatt eq 3)#replicate(1.,nenergy*ndef)), npts,nenergy,ndef)
gf = mvn_c8_dat.geom_factor*gf
eff = mvn_c8_dat.eff[ieff,*,*]
dt = mvn_c8_dat.integ_t#replicate(1.,nenergy*ndef)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/(eflux>.01))) gt 0. then print,'Error in CDF c8 eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_c8_P2_E',data={x:time,y:total(data,3),v:energy}
store_data,'mvn_sta_c8_P2_D',data={x:time,y:total(data,2),v:theta}
store_data,'mvn_sta_c8_E',data={x:time,y:total(eflux,3)/ndef,v:energy}
store_data,'mvn_sta_c8_D',data={x:time,y:total(eflux,2)/nenergy,v:theta}
store_data,'mvn_sta_c8_tot',data={x:time,y:total(total(data,3),2)}
store_data,'mvn_sta_c8_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_c8_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_c8_rate',data={x:time,y:rate}
ylim,'mvn_sta_c8_tot',0,0,1
ylim,'mvn_sta_c8_P2_E',.4,40000.,1
ylim,'mvn_sta_c8_P2_D',-50,50,0
ylim,'mvn_sta_c8_E',.4,40000.,1
ylim,'mvn_sta_c8_D',-50,50,0
ylim,'mvn_sta_c8_att',-1,5,0
zlim,'mvn_sta_c8_P2_E',1,1.e4,1
zlim,'mvn_sta_c8_P2_D',1,1.e4,1
zlim,'mvn_sta_c8_E',1.e3,1.e9,1
zlim,'mvn_sta_c8_D',1.e3,1.e9,1
datagap=7.
options,'mvn_sta_c8_P2_E',datagap=datagap
options,'mvn_sta_c8_P2_D',datagap=datagap
options,'mvn_sta_c8_E',datagap=datagap
options,'mvn_sta_c8_D',datagap=datagap
options,'mvn_sta_c8_tot',datagap=datagap
options,'mvn_sta_c8_P2_E','spec',1
options,'mvn_sta_c8_P2_D','spec',1
options,'mvn_sta_c8_E','spec',1
options,'mvn_sta_c8_D','spec',1
options,'mvn_sta_c8_P2_E',ytitle='sta!CP2-c8!C!CEnergy!CeV'
options,'mvn_sta_c8_P2_D',ytitle='sta!CP2-c8!C!CTheta!Cdeg'
options,'mvn_sta_c8_E',ytitle='sta!Cc8!C!CEnergy!CeV'
options,'mvn_sta_c8_D',ytitle='sta!Cc8!C!CTheta!Cdeg'
options,'mvn_sta_c8_tot',ytitle='sta!Cc8!C!CCounts'
options,'mvn_sta_c8_att',ytitle='sta!Cc8!C!CAttenuator'
options,'mvn_sta_c8_E',ztitle='eflux'
options,'mvn_sta_c8_D',ztitle='eflux'
endif
if size(mvn_ca_dat,/type) eq 8 then begin
npts = n_elements(mvn_ca_dat.time)
mode = mvn_ca_dat.mode
rate = mvn_ca_dat.rate
iswp = mvn_ca_dat.swp_ind
ieff = mvn_ca_dat.eff_ind
iatt = mvn_ca_dat.att_ind
nenergy = mvn_ca_dat.nenergy
nbins = mvn_ca_dat.nbins
ndef = mvn_ca_dat.ndef
nanode = mvn_ca_dat.nanode
time = (mvn_ca_dat.time + mvn_ca_dat.end_time)/2.
data = mvn_ca_dat.data
energy = reform(mvn_ca_dat.energy[iswp,*,0])
theta = total(reform(mvn_ca_dat.theta[iswp,nenergy-1,*],npts,ndef,nanode),3)/nanode
phi = total(reform(mvn_ca_dat.phi[iswp,nenergy-1,*],npts,ndef,nanode),2)/ndef
eflux = mvn_ca_dat.eflux
bkg = mvn_ca_dat.bkg
dead = mvn_ca_dat.dead
gf = reform(mvn_ca_dat.gf[iswp,*,*,0]*((iatt eq 0)#replicate(1.,nenergy*nbins)) +$
mvn_ca_dat.gf[iswp,*,*,1]*((iatt eq 1)#replicate(1.,nenergy*nbins)) +$
mvn_ca_dat.gf[iswp,*,*,2]*((iatt eq 2)#replicate(1.,nenergy*nbins)) +$
mvn_ca_dat.gf[iswp,*,*,3]*((iatt eq 3)#replicate(1.,nenergy*nbins)), npts*nenergy*nbins)
gf = mvn_ca_dat.geom_factor*reform(gf,npts,nenergy,nbins)
eff = mvn_ca_dat.eff[ieff,*,*]
dt = mvn_ca_dat.integ_t#replicate(1.,nenergy*nbins)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/(eflux>.01))) gt 0. then print,'Error in CDF ca eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_ca_P3_E',data={x:time,y:total(data,3),v:energy}
store_data,'mvn_sta_ca_P3_D',data={x:time,y:total(total(reform(data,npts,nenergy,ndef,nanode),4),2),v:theta}
store_data,'mvn_sta_ca_P3_A',data={x:time,y:total(total(reform(data,npts,nenergy,ndef,nanode),3),2),v:phi}
store_data,'mvn_sta_ca_tot',data={x:time,y:total(total(data,3),2)}
store_data,'mvn_sta_ca_E',data={x:time,y:total(eflux,3)/nbins,v:energy}
store_data,'mvn_sta_ca_D',data={x:time,y:total(total(reform(eflux,npts,nenergy,ndef,nanode),4),2)/nenergy/nanode,v:theta}
store_data,'mvn_sta_ca_A',data={x:time,y:total(total(reform(eflux,npts,nenergy,ndef,nanode),3),2)/nenergy/ndef,v:phi}
if keyword_set(test) then store_data,'mvn_sta_ca_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_ca_rate',data={x:time,y:rate}
ylim,'mvn_sta_ca_P3_E',.4,40000.,1
ylim,'mvn_sta_ca_P3_D',-50,50,0
ylim,'mvn_sta_ca_P3_A',-180,200.,0
ylim,'mvn_sta_ca_tot',0,0,1
ylim,'mvn_sta_ca_E',.4,40000.,1
ylim,'mvn_sta_ca_D',-50,50,0
ylim,'mvn_sta_ca_A',-180,200.,0
zlim,'mvn_sta_ca_P3_E',1,1.e4,1
zlim,'mvn_sta_ca_P3_D',1,1.e4,1
zlim,'mvn_sta_ca_P3_A',1,1.e4,1
zlim,'mvn_sta_ca_E',1.e3,1.e9,1
zlim,'mvn_sta_ca_D',1.e3,1.e9,1
zlim,'mvn_sta_ca_A',1.e3,1.e9,1
datagap=600.
options,'mvn_sta_ca_P3_E',datagap=datagap
options,'mvn_sta_ca_P3_D',datagap=datagap
options,'mvn_sta_ca_P3_A',datagap=datagap
options,'mvn_sta_ca_tot',datagap=datagap
options,'mvn_sta_ca_E',datagap=datagap
options,'mvn_sta_ca_D',datagap=datagap
options,'mvn_sta_ca_A',datagap=datagap
options,'mvn_sta_ca_P3_E','spec',1
options,'mvn_sta_ca_P3_D','spec',1
options,'mvn_sta_ca_P3_A','spec',1
options,'mvn_sta_ca_E','spec',1
options,'mvn_sta_ca_D','spec',1
options,'mvn_sta_ca_A','spec',1
options,'mvn_sta_ca_P3_E',ytitle='sta!CP3-ca!C!CEnergy!CeV'
options,'mvn_sta_ca_P3_D',ytitle='sta!CP3-ca!C!CTheta!Cdeg'
options,'mvn_sta_ca_P3_A',ytitle='sta!CP3-ca!C!CPhi!Cdeg'
options,'mvn_sta_ca_tot',ytitle='sta!Cca!C!CCounts'
options,'mvn_sta_ca_E',ytitle='sta!Cca!C!CEnergy!CeV'
options,'mvn_sta_ca_D',ytitle='sta!Cca!C!CTheta!Cdeg'
options,'mvn_sta_ca_A',ytitle='sta!Cca!C!CPhi!Cdeg'
options,'mvn_sta_ca_E',ztitle='eflux'
options,'mvn_sta_ca_D',ztitle='eflux'
options,'mvn_sta_ca_A',ztitle='eflux'
endif
if size(mvn_cc_dat,/type) eq 8 then begin
npts = n_elements(mvn_cc_dat.time)
mode = mvn_cc_dat.mode
rate = mvn_cc_dat.rate
iswp = mvn_cc_dat.swp_ind
ieff = mvn_cc_dat.eff_ind
iatt = mvn_cc_dat.att_ind
mlut = mvn_cc_dat.mlut_ind
nenergy = mvn_cc_dat.nenergy
nbins = mvn_cc_dat.nbins
ndef = mvn_cc_dat.ndef
nanode = mvn_cc_dat.nanode
nmass = mvn_cc_dat.nmass
time = (mvn_cc_dat.time + mvn_cc_dat.end_time)/2.
data = mvn_cc_dat.data
energy = reform(mvn_cc_dat.energy[iswp,*,0,0])
mass = reform(total(mvn_cc_dat.mass_arr[iswp,*,0,*],2)/nenergy)
theta = total(reform(mvn_cc_dat.theta[iswp,nenergy-1,*,0],npts,ndef,nanode),3)/nanode
phi = total(reform(mvn_cc_dat.phi[iswp,nenergy-1,*,0],npts,ndef,nanode),2)/ndef
eflux = mvn_cc_dat.eflux
bkg = mvn_cc_dat.bkg
dead = mvn_cc_dat.dead
gf = reform(mvn_cc_dat.gf[iswp,*,*,0]*((iatt eq 0)#replicate(1.,nenergy*nbins)) +$
mvn_cc_dat.gf[iswp,*,*,1]*((iatt eq 1)#replicate(1.,nenergy*nbins)) +$
mvn_cc_dat.gf[iswp,*,*,2]*((iatt eq 2)#replicate(1.,nenergy*nbins)) +$
mvn_cc_dat.gf[iswp,*,*,3]*((iatt eq 3)#replicate(1.,nenergy*nbins)), npts*nenergy*nbins)$
#replicate(1.,nmass)
gf = mvn_cc_dat.geom_factor*reform(gf,npts,nenergy,nbins,nmass)
eff = mvn_cc_dat.eff[ieff,*,*,*]
dt = mvn_cc_dat.integ_t#replicate(1.,nenergy*nbins*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/(eflux>.01))) gt 0. then print,'Error in CDF cc eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_cc_P4B_E',data={x:time,y:total(total(data,4),3),v:energy}
store_data,'mvn_sta_cc_P4B_D',data={x:time,y:total(total(data,4),2),v:theta}
store_data,'mvn_sta_cc_P4B_M',data={x:time,y:total(total(data,3),2),v:mass}
store_data,'mvn_sta_cc_E',data={x:time,y:total(total(eflux,4),3)/nbins,v:energy}
store_data,'mvn_sta_cc_D',data={x:time,y:total(total(eflux,4),2)/nenergy,v:theta}
store_data,'mvn_sta_cc_M',data={x:time,y:total(total(eflux,3),2)/nenergy/nbins,v:mass}
store_data,'mvn_sta_cc_tot',data={x:time,y:total(total(total(data,4),3),2)}
store_data,'mvn_sta_cc_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_cc_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_cc_rate',data={x:time,y:rate}
ylim,'mvn_sta_cc_tot',0,0,1
ylim,'mvn_sta_cc_P4B_E',.4,40000.,1
ylim,'mvn_sta_cc_P4B_D',-50,50,0
ylim,'mvn_sta_cc_P4B_M',.5,100,1
ylim,'mvn_sta_cc_E',.4,40000.,1
ylim,'mvn_sta_cc_D',-50,50,0
ylim,'mvn_sta_cc_M',.5,100,1
ylim,'mvn_sta_cc_att',-1,5,0
zlim,'mvn_sta_cc_P4B_E',10,1.e5,1
zlim,'mvn_sta_cc_P4B_D',10,1.e5,1
zlim,'mvn_sta_cc_P4B_M',10,1.e5,1
zlim,'mvn_sta_cc_E',1.e3,1.e9,1
zlim,'mvn_sta_cc_D',1.e3,1.e9,1
zlim,'mvn_sta_cc_M',1.e3,1.e9,1
datagap=600.
options,'mvn_sta_cc_P4B_E',datagap=datagap
options,'mvn_sta_cc_P4B_D',datagap=datagap
options,'mvn_sta_cc_P4B_M',datagap=datagap
options,'mvn_sta_cc_E',datagap=datagap
options,'mvn_sta_cc_D',datagap=datagap
options,'mvn_sta_cc_M',datagap=datagap
options,'mvn_sta_cc_tot',datagap=datagap
options,'mvn_sta_cc_P4B_E','spec',1
options,'mvn_sta_cc_P4B_D','spec',1
options,'mvn_sta_cc_P4B_M','spec',1
options,'mvn_sta_cc_E','spec',1
options,'mvn_sta_cc_D','spec',1
options,'mvn_sta_cc_M','spec',1
options,'mvn_sta_cc_P4B_E',ytitle='sta!CP4B-cc!C!CEnergy!CeV'
options,'mvn_sta_cc_P4B_D',ytitle='sta!CP4B-cc!C!CTheta!Cdeg'
options,'mvn_sta_cc_P4B_M',ytitle='sta!CP4B-cc!C!CMass!Camu'
options,'mvn_sta_cc_E',ytitle='sta!Ccc!C!CEnergy!CeV'
options,'mvn_sta_cc_D',ytitle='sta!Ccc!C!CTheta!Cdeg'
options,'mvn_sta_cc_M',ytitle='sta!Ccc!C!CMass!Camu'
options,'mvn_sta_cc_tot',ytitle='sta!Ccc!C!CCounts'
options,'mvn_sta_cc_att',ytitle='sta!Ccc!C!CAttenuator'
options,'mvn_sta_cc_E',ztitle='eflux'
options,'mvn_sta_cc_D',ztitle='eflux'
options,'mvn_sta_cc_M',ztitle='eflux'
endif
if size(mvn_cd_dat,/type) eq 8 then begin
npts = n_elements(mvn_cd_dat.time)
mode = mvn_cd_dat.mode
rate = mvn_cd_dat.rate
iswp = mvn_cd_dat.swp_ind
ieff = mvn_cd_dat.eff_ind
iatt = mvn_cd_dat.att_ind
mlut = mvn_cd_dat.mlut_ind
nenergy = mvn_cd_dat.nenergy
nbins = mvn_cd_dat.nbins
ndef = mvn_cd_dat.ndef
nanode = mvn_cd_dat.nanode
nmass = mvn_cd_dat.nmass
time = (mvn_cd_dat.time + mvn_cd_dat.end_time)/2.
data = mvn_cd_dat.data
energy = reform(mvn_cd_dat.energy[iswp,*,0,0])
mass = reform(total(mvn_cd_dat.mass_arr[iswp,*,0,*],2)/nenergy)
theta = total(reform(mvn_cd_dat.theta[iswp,nenergy-1,*,0],npts,ndef,nanode),3)/nanode
phi = total(reform(mvn_cd_dat.phi[iswp,nenergy-1,*,0],npts,ndef,nanode),2)/ndef
eflux = mvn_cd_dat.eflux
bkg = mvn_cd_dat.bkg
dead = mvn_cd_dat.dead
gf = reform(mvn_cd_dat.gf[iswp,*,*,0]*((iatt eq 0)#replicate(1.,nenergy*nbins)) +$
mvn_cd_dat.gf[iswp,*,*,1]*((iatt eq 1)#replicate(1.,nenergy*nbins)) +$
mvn_cd_dat.gf[iswp,*,*,2]*((iatt eq 2)#replicate(1.,nenergy*nbins)) +$
mvn_cd_dat.gf[iswp,*,*,3]*((iatt eq 3)#replicate(1.,nenergy*nbins)), npts*nenergy*nbins)$
#replicate(1.,nmass)
gf = mvn_cd_dat.geom_factor*reform(gf,npts,nenergy,nbins,nmass)
eff = mvn_cd_dat.eff[ieff,*,*,*]
dt = mvn_cd_dat.integ_t#replicate(1.,nenergy*nbins*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/(eflux>.01))) gt 0. then print,'Error in CDF cd eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_cd_P4B_E',data={x:time,y:total(total(data,4),3),v:energy}
store_data,'mvn_sta_cd_P4B_D',data={x:time,y:total(total(data,4),2),v:theta}
store_data,'mvn_sta_cd_P4B_M',data={x:time,y:total(total(data,3),2),v:mass}
store_data,'mvn_sta_cd_E',data={x:time,y:total(total(eflux,4),3)/nbins,v:energy}
store_data,'mvn_sta_cd_D',data={x:time,y:total(total(eflux,4),2)/nenergy,v:theta}
store_data,'mvn_sta_cd_M',data={x:time,y:total(total(eflux,3),2)/nenergy/nbins,v:mass}
store_data,'mvn_sta_cd_tot',data={x:time,y:total(total(total(data,4),3),2)}
store_data,'mvn_sta_cd_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_cd_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_cd_rate',data={x:time,y:rate}
ylim,'mvn_sta_cd_tot',0,0,1
ylim,'mvn_sta_cd_P4B_E',.4,40000.,1
ylim,'mvn_sta_cd_P4B_D',-50,50,0
ylim,'mvn_sta_cd_P4B_M',.5,100,1
ylim,'mvn_sta_cd_E',.4,40000.,1
ylim,'mvn_sta_cd_D',-50,50,0
ylim,'mvn_sta_cd_M',.5,100,1
ylim,'mvn_sta_cd_att',-1,5,0
zlim,'mvn_sta_cd_P4B_E',10,1.e5,1
zlim,'mvn_sta_cd_P4B_D',10,1.e5,1
zlim,'mvn_sta_cd_P4B_M',10,1.e5,1
zlim,'mvn_sta_cd_E',1.e3,1.e9,1
zlim,'mvn_sta_cd_D',1.e3,1.e9,1
zlim,'mvn_sta_cd_M',1.e3,1.e9,1
datagap=600.
options,'mvn_sta_cd_P4B_E',datagap=datagap
options,'mvn_sta_cd_P4B_D',datagap=datagap
options,'mvn_sta_cd_P4B_M',datagap=datagap
options,'mvn_sta_cd_E',datagap=datagap
options,'mvn_sta_cd_D',datagap=datagap
options,'mvn_sta_cd_M',datagap=datagap
options,'mvn_sta_cd_tot',datagap=datagap
options,'mvn_sta_cd_P4B_E','spec',1
options,'mvn_sta_cd_P4B_D','spec',1
options,'mvn_sta_cd_P4B_M','spec',1
options,'mvn_sta_cd_E','spec',1
options,'mvn_sta_cd_D','spec',1
options,'mvn_sta_cd_M','spec',1
options,'mvn_sta_cd_P4B_E',ytitle='sta!CP4B-cd!C!CEnergy!CeV'
options,'mvn_sta_cd_P4B_D',ytitle='sta!CP4B-cd!C!CTheta!Cdeg'
options,'mvn_sta_cd_P4B_M',ytitle='sta!CP4B-cd!C!CMass!Camu'
options,'mvn_sta_cd_E',ytitle='sta!Ccd!C!CEnergy!CeV'
options,'mvn_sta_cd_D',ytitle='sta!Ccd!C!CTheta!Cdeg'
options,'mvn_sta_cd_M',ytitle='sta!Ccd!C!CMass!Camu'
options,'mvn_sta_cd_tot',ytitle='sta!Ccd!C!CCounts'
options,'mvn_sta_cd_att',ytitle='sta!Ccd!C!CAttenuator'
options,'mvn_sta_cd_E',ztitle='eflux'
options,'mvn_sta_cd_D',ztitle='eflux'
options,'mvn_sta_cd_M',ztitle='eflux'
endif
if size(mvn_ce_dat,/type) eq 8 then begin
npts = n_elements(mvn_ce_dat.time)
mode = mvn_ce_dat.mode
rate = mvn_ce_dat.rate
iswp = mvn_ce_dat.swp_ind
ieff = mvn_ce_dat.eff_ind
iatt = mvn_ce_dat.att_ind
mlut = mvn_ce_dat.mlut_ind
nenergy = mvn_ce_dat.nenergy
nbins = mvn_ce_dat.nbins
ndef = mvn_ce_dat.ndef
nanode = mvn_ce_dat.nanode
nmass = mvn_ce_dat.nmass
time = (mvn_ce_dat.time + mvn_ce_dat.end_time)/2.
data = mvn_ce_dat.data
energy = reform(mvn_ce_dat.energy[iswp,*,0,0])
mass = reform(total(mvn_ce_dat.mass_arr[iswp,*,0,*],2)/nenergy)
theta = total(reform(mvn_ce_dat.theta[iswp,nenergy-1,*,0],npts,ndef,nanode),3)/nanode
phi = total(reform(mvn_ce_dat.phi[iswp,nenergy-1,*,0],npts,ndef,nanode),2)/ndef
eflux = mvn_ce_dat.eflux
bkg = mvn_ce_dat.bkg
dead = mvn_ce_dat.dead
gf = reform(mvn_ce_dat.gf[iswp,*,*,0]*((iatt eq 0)#replicate(1.,nenergy*nbins)) +$
mvn_ce_dat.gf[iswp,*,*,1]*((iatt eq 1)#replicate(1.,nenergy*nbins)) +$
mvn_ce_dat.gf[iswp,*,*,2]*((iatt eq 2)#replicate(1.,nenergy*nbins)) +$
mvn_ce_dat.gf[iswp,*,*,3]*((iatt eq 3)#replicate(1.,nenergy*nbins)), npts*nenergy*nbins)$
#replicate(1.,nmass)
gf = mvn_ce_dat.geom_factor*reform(gf,npts,nenergy,nbins,nmass)
eff = mvn_ce_dat.eff[ieff,*,*,*]
dt = mvn_ce_dat.integ_t#replicate(1.,nenergy*nbins*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/eflux)) gt 0. then print,'Error in CDF ce eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_ce_P4B_E',data={x:time,y:total(total(data,4),3),v:energy}
store_data,'mvn_sta_ce_P4B_D',data={x:time,y:total(total(total(reform(data,npts,nenergy,ndef,nanode,nmass),5),4),2),v:theta}
store_data,'mvn_sta_ce_P4B_A',data={x:time,y:total(total(total(reform(data,npts,nenergy,ndef,nanode,nmass),5),3),2),v:phi}
store_data,'mvn_sta_ce_P4B_M',data={x:time,y:total(total(data,3),2),v:mass}
store_data,'mvn_sta_ce_E',data={x:time,y:total(total(eflux,4),3)/nbins,v:energy}
store_data,'mvn_sta_ce_D',data={x:time,y:total(total(total(reform(eflux,npts,nenergy,ndef,nanode,nmass),5),4),2),v:theta}
store_data,'mvn_sta_ce_A',data={x:time,y:total(total(total(reform(eflux,npts,nenergy,ndef,nanode,nmass),5),3),2),v:phi}
store_data,'mvn_sta_ce_M',data={x:time,y:total(total(eflux,3),2),v:mass}
store_data,'mvn_sta_ce_tot',data={x:time,y:total(total(total(data,4),3),2)}
store_data,'mvn_sta_ce_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_ce_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_ce_rate',data={x:time,y:rate}
ylim,'mvn_sta_ce_tot',0,0,1
ylim,'mvn_sta_ce_P4B_E',.4,40000.,1
ylim,'mvn_sta_ce_P4B_D',-50,50,0
ylim,'mvn_sta_ce_P4B_A',-180,200.,0
ylim,'mvn_sta_ce_P4B_M',.5,100,1
ylim,'mvn_sta_ce_E',.4,40000.,1
ylim,'mvn_sta_ce_D',-50,50,0
ylim,'mvn_sta_ce_A',-180,200.,0
ylim,'mvn_sta_ce_M',.5,100,1
ylim,'mvn_sta_ce_att',-1,5,0
zlim,'mvn_sta_ce_P4B_E',10,1.e5,1
zlim,'mvn_sta_ce_P4B_D',10,1.e5,1
zlim,'mvn_sta_ce_P4B_A',10,1.e5,1
zlim,'mvn_sta_ce_P4B_M',10,1.e5,1
zlim,'mvn_sta_ce_E',1.e3,1.e9,1
zlim,'mvn_sta_ce_D',1.e3,1.e9,1
zlim,'mvn_sta_ce_A',1.e3,1.e9,1
zlim,'mvn_sta_ce_M',1.e3,1.e9,1
datagap=600.
options,'mvn_sta_ce_P4B_E',datagap=datagap
options,'mvn_sta_ce_P4B_D',datagap=datagap
options,'mvn_sta_ce_P4B_A',datagap=datagap
options,'mvn_sta_ce_P4B_M',datagap=datagap
options,'mvn_sta_ce_E',datagap=datagap
options,'mvn_sta_ce_D',datagap=datagap
options,'mvn_sta_ce_A',datagap=datagap
options,'mvn_sta_ce_M',datagap=datagap
options,'mvn_sta_ce_tot',datagap=datagap
options,'mvn_sta_ce_P4B_E','spec',1
options,'mvn_sta_ce_P4B_D','spec',1
options,'mvn_sta_ce_P4B_A','spec',1
options,'mvn_sta_ce_P4B_M','spec',1
options,'mvn_sta_ce_E','spec',1
options,'mvn_sta_ce_D','spec',1
options,'mvn_sta_ce_A','spec',1
options,'mvn_sta_ce_M','spec',1
options,'mvn_sta_ce_P4B_E',ytitle='sta!CP4B-ce!C!CEnergy!CeV'
options,'mvn_sta_ce_P4B_D',ytitle='sta!CP4B-ce!C!CTheta!Cdeg'
options,'mvn_sta_ce_P4B_A',ytitle='sta!CP4B-ce!C!CPhi!Cdeg'
options,'mvn_sta_ce_P4B_M',ytitle='sta!CP4B-ce!C!CMass!Camu'
options,'mvn_sta_ce_E',ytitle='sta!Cce!C!CEnergy!CeV'
options,'mvn_sta_ce_D',ytitle='sta!Cce!C!CTheta!Cdeg'
options,'mvn_sta_ce_A',ytitle='sta!Cce!C!CPhi!Cdeg'
options,'mvn_sta_ce_M',ytitle='sta!Cce!C!CMass!Camu'
options,'mvn_sta_ce_tot',ytitle='sta!Cce!C!CCounts'
options,'mvn_sta_ce_att',ytitle='sta!Cce!C!CAttenuator'
options,'mvn_sta_ce_E',ztitle='eflux'
options,'mvn_sta_ce_D',ztitle='eflux'
options,'mvn_sta_ce_A',ztitle='eflux'
options,'mvn_sta_ce_M',ztitle='eflux'
endif
if size(mvn_cf_dat,/type) eq 8 then begin
npts = n_elements(mvn_cf_dat.time)
mode = mvn_cf_dat.mode
rate = mvn_cf_dat.rate
iswp = mvn_cf_dat.swp_ind
ieff = mvn_cf_dat.eff_ind
iatt = mvn_cf_dat.att_ind
mlut = mvn_cf_dat.mlut_ind
nenergy = mvn_cf_dat.nenergy
nbins = mvn_cf_dat.nbins
ndef = mvn_cf_dat.ndef
nanode = mvn_cf_dat.nanode
nmass = mvn_cf_dat.nmass
time = (mvn_cf_dat.time + mvn_cf_dat.end_time)/2.
data = mvn_cf_dat.data
energy = reform(mvn_cf_dat.energy[iswp,*,0,0])
mass = reform(total(mvn_cf_dat.mass_arr[iswp,*,0,*],2)/nenergy)
theta = total(reform(mvn_cf_dat.theta[iswp,nenergy-1,*,0],npts,ndef,nanode),3)/nanode
phi = total(reform(mvn_cf_dat.phi[iswp,nenergy-1,*,0],npts,ndef,nanode),2)/ndef
eflux = mvn_cf_dat.eflux
bkg = mvn_cf_dat.bkg
dead = mvn_cf_dat.dead
gf = reform(mvn_cf_dat.gf[iswp,*,*,0]*((iatt eq 0)#replicate(1.,nenergy*nbins)) +$
mvn_cf_dat.gf[iswp,*,*,1]*((iatt eq 1)#replicate(1.,nenergy*nbins)) +$
mvn_cf_dat.gf[iswp,*,*,2]*((iatt eq 2)#replicate(1.,nenergy*nbins)) +$
mvn_cf_dat.gf[iswp,*,*,3]*((iatt eq 3)#replicate(1.,nenergy*nbins)), npts*nenergy*nbins)$
#replicate(1.,nmass)
gf = mvn_cf_dat.geom_factor*reform(gf,npts,nenergy,nbins,nmass)
eff = mvn_cf_dat.eff[ieff,*,*,*]
dt = mvn_cf_dat.integ_t#replicate(1.,nenergy*nbins*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/eflux)) gt 0. then print,'Error in CDF cf eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_cf_P4B_E',data={x:time,y:total(total(data,4),3),v:energy}
store_data,'mvn_sta_cf_P4B_D',data={x:time,y:total(total(total(reform(data,npts,nenergy,ndef,nanode,nmass),5),4),2),v:theta}
store_data,'mvn_sta_cf_P4B_A',data={x:time,y:total(total(total(reform(data,npts,nenergy,ndef,nanode,nmass),5),3),2),v:phi}
store_data,'mvn_sta_cf_P4B_M',data={x:time,y:total(total(data,3),2),v:mass}
store_data,'mvn_sta_cf_E',data={x:time,y:total(total(eflux,4),3)/nbins,v:energy}
store_data,'mvn_sta_cf_D',data={x:time,y:total(total(total(reform(eflux,npts,nenergy,ndef,nanode,nmass),5),4),2),v:theta}
store_data,'mvn_sta_cf_A',data={x:time,y:total(total(total(reform(eflux,npts,nenergy,ndef,nanode,nmass),5),3),2),v:phi}
store_data,'mvn_sta_cf_M',data={x:time,y:total(total(eflux,3),2),v:mass}
store_data,'mvn_sta_cf_tot',data={x:time,y:total(total(total(data,4),3),2)}
store_data,'mvn_sta_cf_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_cf_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_cf_rate',data={x:time,y:rate}
ylim,'mvn_sta_cf_tot',0,0,1
ylim,'mvn_sta_cf_P4B_E',.4,40000.,1
ylim,'mvn_sta_cf_P4B_D',-50,50,0
ylim,'mvn_sta_cf_P4B_A',-180,200.,0
ylim,'mvn_sta_cf_P4B_M',.5,100,1
ylim,'mvn_sta_cf_E',.4,40000.,1
ylim,'mvn_sta_cf_D',-50,50,0
ylim,'mvn_sta_cf_A',-180,200.,0
ylim,'mvn_sta_cf_M',.5,100,1
ylim,'mvn_sta_cf_att',-1,5,0
zlim,'mvn_sta_cf_P4B_E',10,1.e5,1
zlim,'mvn_sta_cf_P4B_D',10,1.e5,1
zlim,'mvn_sta_cf_P4B_A',10,1.e5,1
zlim,'mvn_sta_cf_P4B_M',10,1.e5,1
zlim,'mvn_sta_cf_E',1.e3,1.e9,1
zlim,'mvn_sta_cf_D',1.e3,1.e9,1
zlim,'mvn_sta_cf_A',1.e3,1.e9,1
zlim,'mvn_sta_cf_M',1.e3,1.e9,1
datagap=600.
options,'mvn_sta_cf_P4B_E',datagap=datagap
options,'mvn_sta_cf_P4B_D',datagap=datagap
options,'mvn_sta_cf_P4B_A',datagap=datagap
options,'mvn_sta_cf_P4B_M',datagap=datagap
options,'mvn_sta_cf_E',datagap=datagap
options,'mvn_sta_cf_D',datagap=datagap
options,'mvn_sta_cf_A',datagap=datagap
options,'mvn_sta_cf_M',datagap=datagap
options,'mvn_sta_cf_tot',datagap=datagap
options,'mvn_sta_cf_P4B_E','spec',1
options,'mvn_sta_cf_P4B_D','spec',1
options,'mvn_sta_cf_P4B_A','spec',1
options,'mvn_sta_cf_P4B_M','spec',1
options,'mvn_sta_cf_E','spec',1
options,'mvn_sta_cf_D','spec',1
options,'mvn_sta_cf_A','spec',1
options,'mvn_sta_cf_M','spec',1
options,'mvn_sta_cf_P4B_E',ytitle='sta!CP4B-cf!C!CEnergy!CeV'
options,'mvn_sta_cf_P4B_D',ytitle='sta!CP4B-cf!C!CTheta!Cdeg'
options,'mvn_sta_cf_P4B_A',ytitle='sta!CP4B-cf!C!CPhi!Cdeg'
options,'mvn_sta_cf_P4B_M',ytitle='sta!CP4B-cf!C!CMass!Camu'
options,'mvn_sta_cf_E',ytitle='sta!Ccf!C!CEnergy!CeV'
options,'mvn_sta_cf_D',ytitle='sta!Ccf!C!CTheta!Cdeg'
options,'mvn_sta_cf_A',ytitle='sta!Ccf!C!CPhi!Cdeg'
options,'mvn_sta_cf_M',ytitle='sta!Ccf!C!CMass!Camu'
options,'mvn_sta_cf_tot',ytitle='sta!Ccf!C!CCounts'
options,'mvn_sta_cf_att',ytitle='sta!Ccf!C!CAttenuator'
options,'mvn_sta_cf_E',ztitle='eflux'
options,'mvn_sta_cf_D',ztitle='eflux'
options,'mvn_sta_cf_A',ztitle='eflux'
options,'mvn_sta_cf_M',ztitle='eflux'
endif
if size(mvn_d0_dat,/type) eq 8 then begin
npts = n_elements(mvn_d0_dat.time)
mode = mvn_d0_dat.mode
rate = mvn_d0_dat.rate
iswp = mvn_d0_dat.swp_ind
ieff = mvn_d0_dat.eff_ind
iatt = mvn_d0_dat.att_ind
mlut = mvn_d0_dat.mlut_ind
nenergy = mvn_d0_dat.nenergy
nbins = mvn_d0_dat.nbins
ndef = mvn_d0_dat.ndef
nanode = mvn_d0_dat.nanode
nmass = mvn_d0_dat.nmass
time = (mvn_d0_dat.time + mvn_d0_dat.end_time)/2.
data = mvn_d0_dat.data
energy = reform(mvn_d0_dat.energy[iswp,*,0,0])
mass = reform(total(mvn_d0_dat.mass_arr[iswp,*,0,*],2)/nenergy)
theta = total(reform(mvn_d0_dat.theta[iswp,nenergy-1,*,0],npts,ndef,nanode),3)/nanode
phi = total(reform(mvn_d0_dat.phi[iswp,nenergy-1,*,0],npts,ndef,nanode),2)/ndef
eflux = mvn_d0_dat.eflux
bkg = mvn_d0_dat.bkg
dead = mvn_d0_dat.dead
gf = reform(mvn_d0_dat.gf[iswp,*,*,0]*((iatt eq 0)#replicate(1.,nenergy*nbins)) +$
mvn_d0_dat.gf[iswp,*,*,1]*((iatt eq 1)#replicate(1.,nenergy*nbins)) +$
mvn_d0_dat.gf[iswp,*,*,2]*((iatt eq 2)#replicate(1.,nenergy*nbins)) +$
mvn_d0_dat.gf[iswp,*,*,3]*((iatt eq 3)#replicate(1.,nenergy*nbins)), npts*nenergy*nbins)$
#replicate(1.,nmass)
gf = mvn_d0_dat.geom_factor*reform(gf,npts,nenergy,nbins,nmass)
eff = mvn_d0_dat.eff[ieff,*,*,*]
dt = mvn_d0_dat.integ_t#replicate(1.,nenergy*nbins*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/eflux)) gt 0. then print,'Error in CDF d0 eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_d0_P4C_E',data={x:time,y:total(total(data,4),3),v:energy}
store_data,'mvn_sta_d0_P4C_D',data={x:time,y:total(total(total(reform(data,npts,nenergy,ndef,nanode,nmass),5),4),2),v:theta}
store_data,'mvn_sta_d0_P4C_A',data={x:time,y:total(total(total(reform(data,npts,nenergy,ndef,nanode,nmass),5),3),2),v:phi}
store_data,'mvn_sta_d0_P4C_M',data={x:time,y:total(total(data,3),2),v:mass}
store_data,'mvn_sta_d0_E',data={x:time,y:total(total(eflux,4),3)/nbins,v:energy}
store_data,'mvn_sta_d0_D',data={x:time,y:total(total(total(reform(eflux,npts,nenergy,ndef,nanode,nmass),5),4),2),v:theta}
store_data,'mvn_sta_d0_A',data={x:time,y:total(total(total(reform(eflux,npts,nenergy,ndef,nanode,nmass),5),3),2),v:phi}
store_data,'mvn_sta_d0_M',data={x:time,y:total(total(eflux,3),2),v:mass}
store_data,'mvn_sta_d0_tot',data={x:time,y:total(total(total(data,4),3),2)}
store_data,'mvn_sta_d0_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_d0_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_d0_rate',data={x:time,y:rate}
ylim,'mvn_sta_d0_tot',0,0,1
ylim,'mvn_sta_d0_P4C_E',.4,40000.,1
ylim,'mvn_sta_d0_P4C_D',-50,50,0
ylim,'mvn_sta_d0_P4C_A',-180,200.,0
ylim,'mvn_sta_d0_P4C_M',.5,100,1
ylim,'mvn_sta_d0_E',.4,40000.,1
ylim,'mvn_sta_d0_D',-50,50,0
ylim,'mvn_sta_d0_A',-180,200.,0
ylim,'mvn_sta_d0_M',.5,100,1
ylim,'mvn_sta_d0_att',-1,5,0
zlim,'mvn_sta_d0_P4C_E',10,1.e5,1
zlim,'mvn_sta_d0_P4C_D',10,1.e5,1
zlim,'mvn_sta_d0_P4C_A',10,1.e5,1
zlim,'mvn_sta_d0_P4C_M',10,1.e5,1
zlim,'mvn_sta_d0_E',1.e3,1.e9,1
zlim,'mvn_sta_d0_D',1.e3,1.e9,1
zlim,'mvn_sta_d0_A',1.e3,1.e9,1
zlim,'mvn_sta_d0_M',1.e3,1.e9,1
datagap=600.
options,'mvn_sta_d0_P4C_E',datagap=datagap
options,'mvn_sta_d0_P4C_D',datagap=datagap
options,'mvn_sta_d0_P4C_A',datagap=datagap
options,'mvn_sta_d0_P4C_M',datagap=datagap
options,'mvn_sta_d0_E',datagap=datagap
options,'mvn_sta_d0_D',datagap=datagap
options,'mvn_sta_d0_A',datagap=datagap
options,'mvn_sta_d0_M',datagap=datagap
options,'mvn_sta_d0_tot',datagap=datagap
options,'mvn_sta_d0_P4C_E','spec',1
options,'mvn_sta_d0_P4C_D','spec',1
options,'mvn_sta_d0_P4C_A','spec',1
options,'mvn_sta_d0_P4C_M','spec',1
options,'mvn_sta_d0_E','spec',1
options,'mvn_sta_d0_D','spec',1
options,'mvn_sta_d0_A','spec',1
options,'mvn_sta_d0_M','spec',1
options,'mvn_sta_d0_P4C_E',ytitle='sta!CP4C-d0!C!CEnergy!CeV'
options,'mvn_sta_d0_P4C_D',ytitle='sta!CP4C-d0!C!CTheta!Cdeg'
options,'mvn_sta_d0_P4C_A',ytitle='sta!CP4C-d0!C!CPhi!Cdeg'
options,'mvn_sta_d0_P4C_M',ytitle='sta!CP4C-d0!C!CMass!Camu'
options,'mvn_sta_d0_E',ytitle='sta!Cd0!C!CEnergy!CeV'
options,'mvn_sta_d0_D',ytitle='sta!Cd0!C!CTheta!Cdeg'
options,'mvn_sta_d0_A',ytitle='sta!Cd0!C!CPhi!Cdeg'
options,'mvn_sta_d0_M',ytitle='sta!Cd0!C!CMass!Camu'
options,'mvn_sta_d0_tot',ytitle='sta!Cd0!C!CCounts'
options,'mvn_sta_d0_att',ytitle='sta!Cd0!C!CAttenuator'
options,'mvn_sta_d0_E',ztitle='eflux'
options,'mvn_sta_d0_D',ztitle='eflux'
options,'mvn_sta_d0_A',ztitle='eflux'
options,'mvn_sta_d0_M',ztitle='eflux'
endif
if size(mvn_d1_dat,/type) eq 8 then begin
npts = n_elements(mvn_d1_dat.time)
mode = mvn_d1_dat.mode
rate = mvn_d1_dat.rate
iswp = mvn_d1_dat.swp_ind
ieff = mvn_d1_dat.eff_ind
iatt = mvn_d1_dat.att_ind
mlut = mvn_d1_dat.mlut_ind
nenergy = mvn_d1_dat.nenergy
nbins = mvn_d1_dat.nbins
ndef = mvn_d1_dat.ndef
nanode = mvn_d1_dat.nanode
nmass = mvn_d1_dat.nmass
time = (mvn_d1_dat.time + mvn_d1_dat.end_time)/2.
data = mvn_d1_dat.data
energy = reform(mvn_d1_dat.energy[iswp,*,0,0])
mass = reform(total(mvn_d1_dat.mass_arr[iswp,*,0,*],2)/nenergy)
theta = total(reform(mvn_d1_dat.theta[iswp,nenergy-1,*,0],npts,ndef,nanode),3)/nanode
phi = total(reform(mvn_d1_dat.phi[iswp,nenergy-1,*,0],npts,ndef,nanode),2)/ndef
eflux = mvn_d1_dat.eflux
bkg = mvn_d1_dat.bkg
dead = mvn_d1_dat.dead
gf = reform(mvn_d1_dat.gf[iswp,*,*,0]*((iatt eq 0)#replicate(1.,nenergy*nbins)) +$
mvn_d1_dat.gf[iswp,*,*,1]*((iatt eq 1)#replicate(1.,nenergy*nbins)) +$
mvn_d1_dat.gf[iswp,*,*,2]*((iatt eq 2)#replicate(1.,nenergy*nbins)) +$
mvn_d1_dat.gf[iswp,*,*,3]*((iatt eq 3)#replicate(1.,nenergy*nbins)), npts*nenergy*nbins)$
#replicate(1.,nmass)
gf = mvn_d1_dat.geom_factor*reform(gf,npts,nenergy,nbins,nmass)
eff = mvn_d1_dat.eff[ieff,*,*,*]
dt = mvn_d1_dat.integ_t#replicate(1.,nenergy*nbins*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/eflux)) gt 0. then print,'Error in CDF d1 eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_d1_P4C_E',data={x:time,y:total(total(data,4),3),v:energy}
store_data,'mvn_sta_d1_P4C_D',data={x:time,y:total(total(total(reform(data,npts,nenergy,ndef,nanode,nmass),5),4),2),v:theta}
store_data,'mvn_sta_d1_P4C_A',data={x:time,y:total(total(total(reform(data,npts,nenergy,ndef,nanode,nmass),5),3),2),v:phi}
store_data,'mvn_sta_d1_P4C_M',data={x:time,y:total(total(data,3),2),v:mass}
store_data,'mvn_sta_d1_E',data={x:time,y:total(total(eflux,4),3)/nbins,v:energy}
store_data,'mvn_sta_d1_D',data={x:time,y:total(total(total(reform(eflux,npts,nenergy,ndef,nanode,nmass),5),4),2),v:theta}
store_data,'mvn_sta_d1_A',data={x:time,y:total(total(total(reform(eflux,npts,nenergy,ndef,nanode,nmass),5),3),2),v:phi}
store_data,'mvn_sta_d1_M',data={x:time,y:total(total(eflux,3),2),v:mass}
store_data,'mvn_sta_d1_tot',data={x:time,y:total(total(total(data,4),3),2)}
store_data,'mvn_sta_d1_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_d1_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_d1_rate',data={x:time,y:rate}
ylim,'mvn_sta_d1_tot',0,0,1
ylim,'mvn_sta_d1_P4C_E',.4,40000.,1
ylim,'mvn_sta_d1_P4C_D',-50,50,0
ylim,'mvn_sta_d1_P4C_A',-180,200.,0
ylim,'mvn_sta_d1_P4C_M',.5,100,1
ylim,'mvn_sta_d1_E',.4,40000.,1
ylim,'mvn_sta_d1_D',-50,50,0
ylim,'mvn_sta_d1_A',-180,200.,0
ylim,'mvn_sta_d1_M',.5,100,1
ylim,'mvn_sta_d1_att',-1,5,0
zlim,'mvn_sta_d1_P4C_E',10,1.e5,1
zlim,'mvn_sta_d1_P4C_D',10,1.e5,1
zlim,'mvn_sta_d1_P4C_A',10,1.e5,1
zlim,'mvn_sta_d1_P4C_M',10,1.e5,1
zlim,'mvn_sta_d1_E',1.e3,1.e9,1
zlim,'mvn_sta_d1_D',1.e3,1.e9,1
zlim,'mvn_sta_d1_A',1.e3,1.e9,1
zlim,'mvn_sta_d1_M',1.e3,1.e9,1
datagap=600.
options,'mvn_sta_d1_P4C_E',datagap=datagap
options,'mvn_sta_d1_P4C_D',datagap=datagap
options,'mvn_sta_d1_P4C_A',datagap=datagap
options,'mvn_sta_d1_P4C_M',datagap=datagap
options,'mvn_sta_d1_E',datagap=datagap
options,'mvn_sta_d1_D',datagap=datagap
options,'mvn_sta_d1_A',datagap=datagap
options,'mvn_sta_d1_M',datagap=datagap
options,'mvn_sta_d1_tot',datagap=datagap
options,'mvn_sta_d1_P4C_E','spec',1
options,'mvn_sta_d1_P4C_D','spec',1
options,'mvn_sta_d1_P4C_A','spec',1
options,'mvn_sta_d1_P4C_M','spec',1
options,'mvn_sta_d1_E','spec',1
options,'mvn_sta_d1_D','spec',1
options,'mvn_sta_d1_A','spec',1
options,'mvn_sta_d1_M','spec',1
options,'mvn_sta_d1_P4C_E',ytitle='sta!CP4C-d1!C!CEnergy!CeV'
options,'mvn_sta_d1_P4C_D',ytitle='sta!CP4C-d1!C!CTheta!Cdeg'
options,'mvn_sta_d1_P4C_A',ytitle='sta!CP4C-d1!C!CPhi!Cdeg'
options,'mvn_sta_d1_P4C_M',ytitle='sta!CP4C-d1!C!CMass!Camu'
options,'mvn_sta_d1_E',ytitle='sta!Cd1!C!CEnergy!CeV'
options,'mvn_sta_d1_D',ytitle='sta!Cd1!C!CTheta!Cdeg'
options,'mvn_sta_d1_A',ytitle='sta!Cd1!C!CPhi!Cdeg'
options,'mvn_sta_d1_M',ytitle='sta!Cd1!C!CMass!Camu'
options,'mvn_sta_d1_tot',ytitle='sta!Cd1!C!CCounts'
options,'mvn_sta_d1_att',ytitle='sta!Cd1!C!CAttenuator'
options,'mvn_sta_d1_E',ztitle='eflux'
options,'mvn_sta_d1_D',ztitle='eflux'
options,'mvn_sta_d1_A',ztitle='eflux'
options,'mvn_sta_d1_M',ztitle='eflux'
endif
if size(mvn_d4_dat,/type) eq 8 then begin
npts = n_elements(mvn_d4_dat.time)
mode = mvn_d4_dat.mode
rate = mvn_d4_dat.rate
iswp = mvn_d4_dat.swp_ind
ieff = mvn_d4_dat.eff_ind
iatt = mvn_d4_dat.att_ind
mlut = mvn_d4_dat.mlut_ind
nenergy = mvn_d4_dat.nenergy
nbins = mvn_d4_dat.nbins
ndef = mvn_d4_dat.ndef
nanode = mvn_d4_dat.nanode
nmass = mvn_d4_dat.nmass
time = (mvn_d4_dat.time + mvn_d4_dat.end_time)/2.
data = mvn_d4_dat.data
mass = reform(total(mvn_d4_dat.mass_arr[iswp,*,0,*],2)/nenergy)
theta = total(reform(mvn_d4_dat.theta[iswp,nenergy-1,*,0],npts,ndef,nanode),3)/nanode
phi = total(reform(mvn_d4_dat.phi[iswp,nenergy-1,*,0],npts,ndef,nanode),2)/ndef
eflux = mvn_d4_dat.eflux
bkg = mvn_d4_dat.bkg
dead = mvn_d4_dat.dead
gf = reform(mvn_d4_dat.gf[iswp,*,*,0]*((iatt eq 0)#replicate(1.,nbins)) +$
mvn_d4_dat.gf[iswp,*,*,1]*((iatt eq 1)#replicate(1.,nbins)) +$
mvn_d4_dat.gf[iswp,*,*,2]*((iatt eq 2)#replicate(1.,nbins)) +$
mvn_d4_dat.gf[iswp,*,*,3]*((iatt eq 3)#replicate(1.,nbins)), npts*nbins)$
#replicate(1.,nmass)
gf = mvn_d4_dat.geom_factor*reform(gf,npts,nenergy,nbins,nmass)
eff = mvn_d4_dat.eff[ieff,*,*,*]
dt = mvn_d4_dat.integ_t#replicate(1.,nenergy*nbins*nmass)
eflux2 = (data-bkg)*dead/(gf*eff*dt)
eflux2 = float(eflux2)
if keyword_set(test) then if max(abs((eflux-eflux2)/eflux)) gt 0. then print,'Error in CDF d4 eflux ',max(abs((eflux-eflux2)/(eflux>.01)))
eflux = eflux2
store_data,'mvn_sta_d4_P4E_D',data={x:time,y:total(total(total(reform(data,npts,nenergy,ndef,nanode,nmass),5),4),2),v:theta}
store_data,'mvn_sta_d4_P4E_A',data={x:time,y:total(total(total(reform(data,npts,nenergy,ndef,nanode,nmass),5),3),2),v:phi}
store_data,'mvn_sta_d4_P4E_M',data={x:time,y:total(total(data,3),2),v:mass}
store_data,'mvn_sta_d4_D',data={x:time,y:total(total(total(reform(eflux,npts,nenergy,ndef,nanode,nmass),5),4),2)/nanode,v:theta}
store_data,'mvn_sta_d4_A',data={x:time,y:total(total(total(reform(eflux,npts,nenergy,ndef,nanode,nmass),5),3),2)/ndef,v:phi}
store_data,'mvn_sta_d4_H_A',data={x:time,y:total(total(reform(eflux[*,*,*,1],npts,nenergy,ndef,nanode),3),2)/ndef,v:phi}
store_data,'mvn_sta_d4_M',data={x:time,y:total(total(eflux,3),2),v:mass}
store_data,'mvn_sta_d4_tot',data={x:time,y:total(total(data,4),3)}
store_data,'mvn_sta_d4_att',data={x:time,y:iatt}
if keyword_set(test) then store_data,'mvn_sta_d4_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_d4_rate',data={x:time,y:rate}
ylim,'mvn_sta_d4_tot',0,0,1
ylim,'mvn_sta_d4_P4E_D',-50,50,0
ylim,'mvn_sta_d4_P4E_A',-180,200.,0
ylim,'mvn_sta_d4_P4E_M',.5,100,1
ylim,'mvn_sta_d4_D',-50,50,0
ylim,'mvn_sta_d4_A',-180,200.,0
ylim,'mvn_sta_d4_H_A',-180,200.,0
ylim,'mvn_sta_d4_M',.5,100,1
ylim,'mvn_sta_d4_att',-1,5,0
zlim,'mvn_sta_d4_P4E_D',10,1.e5,1
zlim,'mvn_sta_d4_P4E_A',10,1.e5,1
zlim,'mvn_sta_d4_P4E_M',10,1.e5,1
zlim,'mvn_sta_d4_D',1.e3,1.e9,1
zlim,'mvn_sta_d4_A',1.e3,1.e9,1
zlim,'mvn_sta_d4_H_A',1.e3,1.e9,1
zlim,'mvn_sta_d4_M',1.e3,1.e9,1
datagap=7.
options,'mvn_sta_d4_P4E_D',datagap=datagap
options,'mvn_sta_d4_P4E_A',datagap=datagap
options,'mvn_sta_d4_P4E_M',datagap=datagap
options,'mvn_sta_d4_D',datagap=datagap
options,'mvn_sta_d4_A',datagap=datagap
options,'mvn_sta_d4_H_A',datagap=datagap
options,'mvn_sta_d4_M',datagap=datagap
options,'mvn_sta_d4_tot',datagap=datagap
options,'mvn_sta_d4_P4E_D','spec',1
options,'mvn_sta_d4_P4E_A','spec',1
options,'mvn_sta_d4_P4E_M','spec',1
options,'mvn_sta_d4_D','spec',1
options,'mvn_sta_d4_A','spec',1
options,'mvn_sta_d4_H_A','spec',1
options,'mvn_sta_d4_M','spec',1
options,'mvn_sta_d4_P4E_D',ytitle='sta!CP4E-d4!C!CTheta!Cdeg'
options,'mvn_sta_d4_P4E_A',ytitle='sta!CP4E-d4!C!CPhi!Cdeg'
options,'mvn_sta_d4_P4E_M',ytitle='sta!CP4E-d4!C!CMass!Camu'
options,'mvn_sta_d4_D',ytitle='sta!Cd4!C!CTheta!Cdeg'
options,'mvn_sta_d4_A',ytitle='sta!Cd4!C!CPhi!Cdeg'
options,'mvn_sta_d4_H_A',ytitle='sta!Cd4!CM>12!CPhi!Cdeg'
options,'mvn_sta_d4_M',ytitle='sta!Cd4!C!CMass!Camu'
options,'mvn_sta_d4_tot',ytitle='sta!Cd4!C!CCounts'
options,'mvn_sta_d4_att',ytitle='sta!Cd4!C!CAttenuator'
options,'mvn_sta_d4_D',ztitle='eflux'
options,'mvn_sta_d4_A',ztitle='eflux'
options,'mvn_sta_d4_H_A',ztitle='eflux'
options,'mvn_sta_d4_M',ztitle='eflux'
endif
if size(mvn_d6_dat,/type) eq 8 and keyword_set(test) then begin
time = mvn_d6_dat.time
tdc_1 = mvn_d6_dat.tdc_1
tdc_2 = mvn_d6_dat.tdc_2
tdc_3 = mvn_d6_dat.tdc_3
tdc_4 = mvn_d6_dat.tdc_4
event_code = mvn_d6_dat.event_code
cyclestep = mvn_d6_dat.cyclestep
energy = mvn_d6_dat.energy
ev1 = (event_code and 1)
ev2 = (event_code and 2)
ev3 = (event_code and 4)/4*3
ev4 = (event_code and 8)/8*4
ev5 = (event_code and 16)/16*5
ev6 = (event_code and 32)/32*6
ev_cd = [[ev1],[ev2],[ev3],[ev4],[ev5],[ev6]]
store_data,'mvn_sta_d6_tdc1',data={x:time,y:tdc_1+1}
store_data,'mvn_sta_d6_tdc2',data={x:time,y:tdc_2+1}
store_data,'mvn_sta_d6_tdc3',data={x:time,y:tdc_3*(-2*ev1+1)}
store_data,'mvn_sta_d6_tdc4',data={x:time,y:tdc_4*(-ev2+1)}
store_data,'mvn_sta_d6_ev',data={x:time,y:ev_cd,v:[1,2,3,4,5,6]}
store_data,'mvn_sta_d6_cy',data={x:time,y:cyclestep}
store_data,'mvn_sta_d6_en',data={x:time,y:energy}
ylim,'mvn_sta_d6_tdc1',.5,1024,1
ylim,'mvn_sta_d6_tdc2',.5,1024,1
ylim,'mvn_sta_d6_tdc3',-530,530,0
ylim,'mvn_sta_d6_tdc4',-530,530,0
ylim,'mvn_sta_d6_ev',-1,7,0
ylim,'mvn_sta_d6_cy',-1,1024,0
ylim,'mvn_sta_d6_en',.1,30000.,1
options,'mvn_sta_d6_tdc1',psym=3
options,'mvn_sta_d6_tdc2',psym=3
options,'mvn_sta_d6_tdc3',psym=3
options,'mvn_sta_d6_tdc4',psym=3
options,'mvn_sta_d6_ev',psym=3
options,'mvn_sta_d6_cy',psym=3
options,'mvn_sta_d6_en',psym=3
endif
if size(mvn_d7_dat,/type) eq 8 and keyword_set(test) then begin
time = mvn_d7_dat.time
store_data,'mvn_sta_d7_data',data={x:time,y:1.*mvn_d7_dat.hkp_raw}
store_data,'mvn_sta_d7_data_cal',data={x:time,y:mvn_d7_dat.hkp_calib}
store_data,'mvn_sta_d7_data_mux',data={x:time,y:mvn_d7_dat.hkp_ind}
options,'mvn_sta_d7_data_cal',datagap=1.
options,'mvn_sta_d7_data_mux',datagap=1.
options,'mvn_sta_d7_data',datagap=1.
endif
if size(mvn_d8_dat,/type) eq 8 and keyword_set(test) then begin
time = (mvn_d8_dat.time + mvn_d8_dat.end_time)/2.
data = mvn_d8_dat.rates
store_data,'mvn_sta_d8_R1_tot',data={x:time,y:data[*,4]*4.}
store_data,'mvn_sta_d8_R1_hz',data={x:time,y:data[*,4]}
store_data,'mvn_sta_d8_R1_ABCD',data={x:time,y:data[*,0:3]}
store_data,'mvn_sta_d8_R1_RST',data={x:time,y:data[*,4]}
store_data,'mvn_sta_d8_R1_NoStart',data={x:time,y:data[*,5]}
store_data,'mvn_sta_d8_R1_Unqual',data={x:time,y:data[*,6]}
store_data,'mvn_sta_d8_R1_Qual',data={x:time,y:data[*,7]}
store_data,'mvn_sta_d8_R1_AnRej',data={x:time,y:data[*,8]}
store_data,'mvn_sta_d8_R1_MaRej',data={x:time,y:data[*,9]}
store_data,'mvn_sta_d8_R1_A&B',data={x:time,y:data[*,10]}
store_data,'mvn_sta_d8_R1_C&D',data={x:time,y:data[*,11]}
store_data,'mvn_sta_d8_R1_eff_start',data={x:time,y:data[*,7]/data[*,11]}
store_data,'mvn_sta_d8_R1_eff_stop',data={x:time,y:data[*,7]/data[*,10]}
store_data,'mvn_sta_d8_R1_eff',data={x:time,y:data[*,7]*data[*,7]/data[*,11]/data[*,10]}
store_data,'mvn_sta_d8_R1_eff_all',data=['mvn_sta_d8_R1_eff_start','mvn_sta_d8_R1_eff_stop','mvn_sta_d8_R1_eff']
ylim,'mvn_sta_d8*',100,1.e5,1
ylim,'mvn_sta_d8_R1_eff*',.01,1.1,1
options,'mvn_sta_d8*',datagap=7.
options,'mvn_sta_d8_R1_tot',ytitle='sta!Cd8!C!CCounts'
options,'mvn_sta_d8_R1_hz',ytitle='sta!Cd8!C!CRate!CHz'
options,'mvn_sta_d8_R1_ABCD',ytitle='sta!Cd8!C!CABCD!CHz'
options,'mvn_sta_d8_R1_RST',ytitle='sta!Cd8!C!CRst!CHz'
options,'mvn_sta_d8_R1_NoStart',ytitle='sta!Cd8!C!CNoStart!CHz'
options,'mvn_sta_d8_R1_Unqual',ytitle='sta!Cd8!C!CUnQual!CHz'
options,'mvn_sta_d8_R1_Qual',ytitle='sta!Cd8!C!CQual!CHz'
options,'mvn_sta_d8_R1_AnRej',ytitle='sta!Cd8!C!CAnRej!CHz'
options,'mvn_sta_d8_R1_MaRej',ytitle='sta!Cd8!C!CMaRej!CHz'
options,'mvn_sta_d8_R1_A&B',ytitle='sta!Cd8!C!CA&B!CHz'
options,'mvn_sta_d8_R1_C&D',ytitle='sta!Cd8!C!CC&D!CHz'
options,'mvn_sta_d8_R1_eff_start',ytitle='sta!Cd8!C!CEff!CStart'
options,'mvn_sta_d8_R1_eff_stop',ytitle='sta!Cd8!C!CEff!CStop'
options,'mvn_sta_d8_R1_eff',ytitle='sta!Cd8!C!CEff'
options,'mvn_sta_d8_R1_eff_all',ytitle='sta!Cd8!C!CEff'
options,'mvn_sta_d8_R1_ABCD','colors',[cols.blue,cols.green,cols.yellow,cols.red]
options,'mvn_sta_d8_R1_eff_start',colors=cols.green
options,'mvn_sta_d8_R1_eff_stop',colors=cols.red
endif
if size(mvn_d9_dat,/type) eq 8 and keyword_set(test) then begin
iswp = mvn_d9_dat.swp_ind
time = (mvn_d9_dat.time + mvn_d9_dat.end_time)/2.
delta_time = mvn_d9_dat.integ_t*64.
energy = reform(mvn_d9_dat.energy[iswp,*])
data = mvn_d9_dat.rates
npts = n_elements(time)
peak_start_eff=fltarr(npts)
peak_stop_eff=fltarr(npts)
peak_eff=fltarr(npts)
for jj=0,npts-1 do begin
dd = data[jj,4,*]/mvn_d9_dat.integ_t[jj]
ind = where(dd gt 10000.,count)
if count gt 0 then dd[ind]=0.
max_en = max(dd,ind1)
min_en = min(data[jj,4,*],ind2)
peak_start_eff[jj]=(data[jj,7,ind1])/(data[jj,11,ind1]-data[jj,11,ind2])
peak_stop_eff[jj]=(data[jj,7,ind1])/(data[jj,10,ind1]-data[jj,10,ind2])
peak_eff[jj]=(data[jj,7,ind1])^2/(data[jj,10,ind1]-data[jj,10,ind2])/(data[jj,11,ind1]-data[jj,11,ind2])
endfor
store_data,'mvn_sta_d9_R2',data={x:time,y:reform(data[*,4,*]),v:indgen(64)}
store_data,'mvn_sta_d9_R2_E',data={x:time,y:reform(data[*,4,*]),v:energy}
store_data,'mvn_sta_d9_R2_tot',data={x:time,y:total(reform(data[*,4,*]),2)/64*delta_time}
store_data,'mvn_sta_d9_R2_hz',data={x:time,y:total(reform(data[*,4,*]),2)/64}
store_data,'mvn_sta_d9_R2_ABCD',data={x:time,y:total(data[*,0:3,*],3)}
store_data,'mvn_sta_d9_R2_RST',data={x:time,y:total(data[*,4,*],3)}
store_data,'mvn_sta_d9_R2_NoStart',data={x:time,y:total(data[*,5,*],3)}
store_data,'mvn_sta_d9_R2_Unqual',data={x:time,y:total(data[*,6,*],3)}
store_data,'mvn_sta_d9_R2_Qual',data={x:time,y:total(data[*,7,*],3)}
store_data,'mvn_sta_d9_R2_AnRej',data={x:time,y:total(data[*,8,*],3)}
store_data,'mvn_sta_d9_R2_MaRej',data={x:time,y:total(data[*,9,*],3)}
store_data,'mvn_sta_d9_R2_A&B',data={x:time,y:total(data[*,10,*],3)}
store_data,'mvn_sta_d9_R2_C&D',data={x:time,y:total(data[*,11,*],3)}
store_data,'mvn_sta_d9_R2_eff_start',data={x:time,y:total(data[*,7,*],3)/total(data[*,11,*],3)}
store_data,'mvn_sta_d9_R2_eff_stop',data={x:time,y:total(data[*,7,*],3)/total(data[*,10,*],3)}
store_data,'mvn_sta_d9_R2_eff',data={x:time,y:total(data[*,7,*],3)^2/total(data[*,11,*],3)/total(data[*,10,*],3)}
store_data,'mvn_sta_d9_R2_eff_all',data=['mvn_sta_d9_R2_eff_start','mvn_sta_d9_R2_eff_stop','mvn_sta_d9_R2_eff']
store_data,'mvn_sta_d9_R2_eff_peak_start',data={x:time,y:peak_start_eff}
store_data,'mvn_sta_d9_R2_eff_peak_stop',data={x:time,y:peak_stop_eff}
store_data,'mvn_sta_d9_R2_eff_peak',data={x:time,y:peak_eff}
store_data,'mvn_sta_d9_R2_eff_peak_all',data=['mvn_sta_d9_R2_eff_peak_start','mvn_sta_d9_R2_eff_peak_stop','mvn_sta_d9_R2_eff_peak']
ylim,'mvn_sta_d9_R2*',100,1.e5,1
ylim,'mvn_sta_d9_R2_eff*',.1,1.0,1
ylim,'mvn_sta_d9_R2',-1,64,0
ylim,'mvn_sta_d9_R2_E',.5,30000.,1
ylim,'mvn_sta_d9_R2_tot',1.e4,1.e7,1
ylim,'mvn_sta_d9_R2_hz',1.e2,1.e5,1
zlim,'mvn_sta_d9_R2',100.,1.e5,1
zlim,'mvn_sta_d9_R2_E',100.,1.e5,1
options,'mvn_sta_d9_R2*',datagap=150.
options,'mvn_sta_d9_R2','spec',1
options,'mvn_sta_d9_R2_E','spec',1
options,'mvn_sta_d9_R2',ytitle='sta!Cd9!C!CEnergy!Cbin'
options,'mvn_sta_d9_R2_E',ytitle='sta!Cd9!C!CEnergy!CeV'
options,'mvn_sta_d9_R2_tot',ytitle='sta!Cd9!C!CCounts'
options,'mvn_sta_d9_R2_hz',ytitle='sta!Cd9!C!CRate!CHz'
options,'mvn_sta_d9_R2',ztitle='rate'
options,'mvn_sta_d9_R2_E',ztitle='rate'
options,'mvn_sta_d9_R2_ABCD',ytitle='sta!Cd9!C!CABCD!CHz'
options,'mvn_sta_d9_R2_RST',ytitle='sta!Cd9!C!CRst!CHz'
options,'mvn_sta_d9_R2_NoStart',ytitle='sta!Cd9!C!CNoStart!CHz'
options,'mvn_sta_d9_R2_Unqual',ytitle='sta!Cd9!C!CUnQual!CHz'
options,'mvn_sta_d9_R2_Qual',ytitle='sta!Cd9!C!CQual!CHz'
options,'mvn_sta_d9_R2_AnRej',ytitle='sta!Cd9!C!CAnRej!CHz'
options,'mvn_sta_d9_R2_MaRej',ytitle='sta!Cd9!C!CMaRej!CHz'
options,'mvn_sta_d9_R2_A&B',ytitle='sta!Cd9!C!CA&B!CHz'
options,'mvn_sta_d9_R2_C&D',ytitle='sta!Cd9!C!CC&D!CHz'
options,'mvn_sta_d9_R2_eff_start',ytitle='sta!Cd9!C!CEff!CStart'
options,'mvn_sta_d9_R2_eff_stop',ytitle='sta!Cd9!C!CEff!CStop'
options,'mvn_sta_d9_R2_eff',ytitle='sta!Cd9!C!CEff'
options,'mvn_sta_d9_R2_eff_all',ytitle='sta!Cd9!C!CEff'
options,'mvn_sta_d9_R2_eff_peak_start',ytitle='sta!Cd9!C!CPeak Eff!CStart'
options,'mvn_sta_d9_R2_eff_peak_stop',ytitle='sta!Cd9!C!CPeak Eff!CStop'
options,'mvn_sta_d9_R2_eff_peak',ytitle='sta!Cd9!C!CEff'
options,'mvn_sta_d9_R2_eff_peak_all',ytitle='sta!Cd9!C!CPeak Eff'
options,'mvn_sta_d9_R2_ABCD','colors',[cols.blue,cols.green,cols.yellow,cols.red]
options,'mvn_sta_d9_R2_eff_start',colors=cols.green
options,'mvn_sta_d9_R2_eff_stop',colors=cols.red
options,'mvn_sta_d9_R2_ABCD','colors',[cols.blue,cols.green,cols.yellow,cols.red]
options,'mvn_sta_d9_R2_eff_peak_start',colors=cols.green
options,'mvn_sta_d9_R2_eff_peak_stop',colors=cols.red
endif
if size(mvn_da_dat,/type) eq 8 and keyword_set(test) then begin
iswp = mvn_da_dat.swp_ind
time = (mvn_da_dat.time + mvn_da_dat.end_time)/2.
energy = reform(mvn_da_dat.energy[iswp,*])
data = mvn_da_dat.rates
store_data,'mvn_sta_da_R3',data={x:time,y:data,v:indgen(64)}
store_data,'mvn_sta_da_R3_E',data={x:time,y:data,v:energy}
store_data,'mvn_sta_da_R3_tot',data={x:time,y:total(data,2)/16}
store_data,'mvn_sta_da_R3_hz',data={x:time,y:total(data,2)/64}
ylim,'mvn_sta_da_R3',-1,64,0
ylim,'mvn_sta_da_R3_E',.5,30000.,1
ylim,'mvn_sta_da_R3_tot',100,1.e5,1
ylim,'mvn_sta_da_R3_hz',100,1.e5,1
zlim,'mvn_sta_da_R3',100.,1.e5,1
zlim,'mvn_sta_da_R3_E',100.,1.e5,1
options,'mvn_sta_da_*',datagap=7.
options,'mvn_sta_da_R3','spec',1
options,'mvn_sta_da_R3_E','spec',1
options,'mvn_sta_da_R3',ytitle='sta!Cda!C!CEnergy!Cbin'
options,'mvn_sta_da_R3_E',ytitle='sta!Cda!C!CEnergy!CeV'
options,'mvn_sta_da_R3_tot',ytitle='sta!Cda!C!CCounts'
options,'mvn_sta_da_R3_hz',ytitle='sta!Cda!C!CRate!CHz'
options,'mvn_sta_da_R3',ztitle='rate'
options,'mvn_sta_da_R3_E',ztitle='rate'
endif
if size(mvn_db_dat,/type) eq 8 then begin
npts = n_elements(mvn_db_dat.time)
mode = mvn_db_dat.mode
rate = mvn_db_dat.rate
iswp = mvn_db_dat.swp_ind
tof = mvn_db_dat.tof
time = (mvn_db_dat.time + mvn_db_dat.end_time)/2.
data = mvn_db_dat.data
energy = reform(mvn_db_dat.energy[iswp,*])
erange = [energy[63],energy[0]]
dt = mvn_db_dat.integ_t
store_data,'mvn_sta_db',data={x:time,y:data,v:indgen(1024)}
store_data,'mvn_sta_db_tof',data={x:time,y:data,v:tof}
store_data,'mvn_sta_db_tot',data={x:time,y:total(data,2)}
if keyword_set(test) then store_data,'mvn_sta_db_mode',data={x:time,y:mode}
if keyword_set(test) then store_data,'mvn_sta_db_rate',data={x:time,y:rate}
ylim,'mvn_sta_db_tot',.1,10000,1
ylim,'mvn_sta_db',.5,1000,1
ylim,'mvn_sta_db_tof',0,100,0
zlim,'mvn_sta_db',1.,1.e4,1
zlim,'mvn_sta_db_tof',1.,1.e4,1
datagap=150.
options,'mvn_sta_db',datagap=datagap
options,'mvn_sta_db_tof',datagap=datagap
options,'mvn_sta_db_tot',datagap=datagap
options,'mvn_sta_db','spec',1
options,'mvn_sta_db_tof','spec',1
options,'mvn_sta_db',ytitle='sta!Cdb!C!CTOF!Cbin'
options,'mvn_sta_db_tof',ytitle='sta!Cdb!C!CTOF!Cns'
options,'mvn_sta_db_tot',ytitle='sta!Cdb!C!CCounts'
options,'mvn_sta_db',ztitle='counts'
options,'mvn_sta_db_tof',ztitle='counts'
endif
options,'mvn_sta*',no_interp=1
ylim,'*mode',-1,5,0
ylim,'*rate',-1,7,0
tt1=0 & tt2=0 & tt3=0
get_data,'mvn_sta_ca_P3_A',data=t1
get_data,'mvn_sta_d4_P4E_A',data=t2
get_data,'mvn_sta_d2_P4D_A',data=t3
if size(/type,t1) eq 8 then tt1=1
if size(/type,t2) eq 8 then tt2=1
if size(/type,t3) eq 8 then tt3=1
if (tt1) then store_data,'mvn_sta_A',data=['mvn_sta_ca_P3_A']
if (tt2) then store_data,'mvn_sta_A',data=['mvn_sta_d4_P4E_A']
if (tt3) then store_data,'mvn_sta_A',data=['mvn_sta_d2_P4D_A']
if (tt1 and tt2) then store_data,'mvn_sta_A',data=['mvn_sta_ca_P3_A','mvn_sta_d4_P4E_A']
if (tt1 and tt3) then store_data,'mvn_sta_A',data=['mvn_sta_ca_P3_A','mvn_sta_d2_P4D_A']
if (tt2 and tt3) then store_data,'mvn_sta_A',data=['mvn_sta_d4_P4E_A','mvn_sta_d2_P4D_A']
if (tt1 and tt2 and tt3) then store_data,'mvn_sta_A',data=['mvn_sta_ca_P3_A','mvn_sta_d4_P4E_A','mvn_sta_d2_P4D_A']
ylim,'mvn_sta_A',-180,200,0
zlim,'mvn_sta_A',1,1.e4,1
options,'mvn_sta_A','spec',1
options,'mvn_sta_A',ytitle='sta!C!CAnode!Cphi'
tt1=0 & tt2=0
get_data,'mvn_sta_c8_P2_D',data=t1
get_data,'mvn_sta_d4_P4E_D',data=t2
if size(/type,t1) eq 8 then tt1=1
if size(/type,t2) eq 8 then tt2=1
if (tt1) then store_data,'mvn_sta_D',data=['mvn_sta_c8_P2_D']
if (tt2) then store_data,'mvn_sta_D',data=['mvn_sta_d4_P4E_D']
if (tt1 and tt2) then store_data,'mvn_sta_D',data=['mvn_sta_d4_P4E_D','mvn_sta_c8_P2_D']
ylim,'mvn_sta_D',-45,45,0
zlim,'mvn_sta_D',1,1.e4,1
options,'mvn_sta_D','spec',1
options,'mvn_sta_D',ytitle='sta!C!CDef!Ctheta'
tt1=0 & tt2=0 & tt3=0 & tt4=0
get_data,'mvn_sta_cc_P4A_E',data=t1
get_data,'mvn_sta_ce_P4B_E',data=t2
get_data,'mvn_sta_d0_P4C_E',data=t3
get_data,'mvn_sta_d2_P4D_E',data=t4
if size(/type,t1) eq 8 then tt1=1
if size(/type,t2) eq 8 then tt2=1
if size(/type,t3) eq 8 then tt3=1
if size(/type,t4) eq 8 then tt4=1
if tt1 or tt2 or tt3 or tt4 then begin
store_data,'mvn_sta_P4_E',data=['mvn_sta_cc_P4A_E','mvn_sta_ce_P4B_E','mvn_sta_d0_P4C_E','mvn_sta_d2_P4D_E']
ylim,'mvn_sta_P4_E',.4,40000.,1
zlim,'mvn_sta_P4_E',1,1.e5,1
options,'mvn_sta_P4_E',ytitle='sta!CP4 !CEnergy!CeV'
endif
tt1=0 & tt2=0 & tt3=0 & tt4=0
get_data,'mvn_sta_cc_P4A_M',data=t1
get_data,'mvn_sta_ce_P4B_M',data=t2
get_data,'mvn_sta_d0_P4C_M',data=t3
get_data,'mvn_sta_d2_P4D_M',data=t4
if size(/type,t1) eq 8 then tt1=1
if size(/type,t2) eq 8 then tt2=1
if size(/type,t3) eq 8 then tt3=1
if size(/type,t4) eq 8 then tt4=1
if tt1 or tt2 or tt3 or tt4 then begin
store_data,'mvn_sta_P4_M',data=['mvn_sta_cc_P4A_M','mvn_sta_ce_P4B_M','mvn_sta_d0_P4C_M','mvn_sta_d2_P4D_M']
ylim,'mvn_sta_P4_M',.5,100,1
zlim,'mvn_sta_P4_M',1,1.e5,1
options,'mvn_sta_P4_M',ytitle='sta!CP4 !CMass!Camu'
endif
tt1=0 & tt2=0 & tt3=0
get_data,'mvn_sta_cc_P4A_D',data=t1
get_data,'mvn_sta_ce_P4B_D',data=t2
get_data,'mvn_sta_d0_P4C_D',data=t3
if size(/type,t1) eq 8 then tt1=1
if size(/type,t2) eq 8 then tt2=1
if size(/type,t3) eq 8 then tt3=1
if tt1 or tt2 or tt3 then begin
store_data,'mvn_sta_P4_D',data=['mvn_sta_cc_P4A_D','mvn_sta_ce_P4B_D','mvn_sta_d0_P4C_D']
ylim,'mvn_sta_P4_D',-45,45,0
zlim,'mvn_sta_P4_D',1,1.e5,1
options,'mvn_sta_P4_D',ytitle='sta!CP4 !CDef!Ctheta'
endif
tt2=0 & tt3=0 & tt4=0
get_data,'mvn_sta_ce_P4B_A',data=t2
get_data,'mvn_sta_d0_P4C_A',data=t3
get_data,'mvn_sta_d2_P4D_A',data=t4
if size(/type,t2) eq 8 then tt2=1
if size(/type,t3) eq 8 then tt3=1
if size(/type,t4) eq 8 then tt4=1
if tt2 or tt3 or tt4 then begin
store_data,'mvn_sta_P4_A',data=['mvn_sta_ce_P4B_A','mvn_sta_d0_P4C_A','mvn_sta_d2_P4D_A']
ylim,'mvn_sta_P4_A',-180,200,0
zlim,'mvn_sta_P4_A',1,1.e5,1
options,'mvn_sta_P4_A',ytitle='sta!CP4 !CAnode!Cphi'
endif
tt1=0 & tt2=0 & tt3=0 & tt4=0
get_data,'mvn_sta_cd_P4A_E',data=t1
get_data,'mvn_sta_cf_P4B_E',data=t2
get_data,'mvn_sta_d1_P4C_E',data=t3
get_data,'mvn_sta_d3_P4D_E',data=t4
if size(/type,t1) eq 8 then tt1=1
if size(/type,t2) eq 8 then tt2=1
if size(/type,t3) eq 8 then tt3=1
if size(/type,t4) eq 8 then tt4=1
if tt1 or tt2 or tt3 or tt4 then begin
store_data,'mvn_sta_P4_arc_E',data=['mvn_sta_cd_P4A_E','mvn_sta_cf_P4B_E','mvn_sta_d1_P4C_E','mvn_sta_d3_P4D_E']
ylim,'mvn_sta_P4_arc_E',.4,40000.,1
ylim,'mvn_sta_P4_arc_E',1,1.e4,1
options,'mvn_sta_P4_arc_E',ytitle='sta!CP4 arc !CEnergy!CeV'
endif
tt1=0 & tt2=0 & tt3=0 & tt4=0
get_data,'mvn_sta_cd_P4A_M',data=t1
get_data,'mvn_sta_cf_P4B_M',data=t2
get_data,'mvn_sta_d1_P4C_M',data=t3
get_data,'mvn_sta_d3_P4D_M',data=t4
if size(/type,t1) eq 8 then tt1=1
if size(/type,t2) eq 8 then tt2=1
if size(/type,t3) eq 8 then tt3=1
if size(/type,t4) eq 8 then tt4=1
if tt1 or tt2 or tt3 or tt4 then begin
store_data,'mvn_sta_P4_arc_M',data=['mvn_sta_cd_P4A_M','mvn_sta_cf_P4B_M','mvn_sta_d1_P4C_M','mvn_sta_d3_P4D_M']
ylim,'mvn_sta_P4_arc_M',.5,100,1
zlim,'mvn_sta_P4_arc_M',1,1.e4,1
options,'mvn_sta_P4_arc_M',ytitle='sta!CP4 arc !CMass!Camu'
endif
tt1=0 & tt2=0 & tt3=0
get_data,'mvn_sta_cd_P4A_D',data=t1
get_data,'mvn_sta_cf_P4B_D',data=t2
get_data,'mvn_sta_d1_P4C_D',data=t3
if size(/type,t1) eq 8 then tt1=1
if size(/type,t2) eq 8 then tt2=1
if size(/type,t3) eq 8 then tt3=1
if tt1 or tt2 or tt3 then begin
store_data,'mvn_sta_P4_arc_D',data=['mvn_sta_cd_P4A_D','mvn_sta_cf_P4B_D','mvn_sta_d1_P4C_D']
ylim,'mvn_sta_P4_arc_D',-45,45,0
zlim,'mvn_sta_P4_arc_D',1,1.e5,1
options,'mvn_sta_P4_arc_D',ytitle='sta!CP4 arc!CDef!Ctheta'
endif
tt2=0 & tt3=0 & tt4=0
get_data,'mvn_sta_cf_P4B_A',data=t2
get_data,'mvn_sta_d1_P4C_A',data=t3
get_data,'mvn_sta_d3_P4D_A',data=t4
if size(/type,t2) eq 8 then tt2=1
if size(/type,t3) eq 8 then tt3=1
if size(/type,t4) eq 8 then tt4=1
if tt2 or tt3 or tt4 then begin
store_data,'mvn_sta_P4_arc_A',data=['mvn_sta_cf_P4B_A','mvn_sta_d1_P4C_A','mvn_sta_d3_P4D_A']
ylim,'mvn_sta_P4_arc_A',-180,200,0
options,'mvn_sta_P4_arc_A',ytitle='sta!CP4 arc !CAnode!Cphi'
endif
end