pro rbsp_efw_vxb_subtract_crib,probe,no_spice_load=no_spice_load,noplot=noplot,ql=ql,hires=hires,qa=qa
x = timerange()
date = strmid(time_string(x[0]),0,10)
rbsp_efw_init
rbspx = 'rbsp'+probe
suffix = ''
if ~keyword_set(no_spice_load) then rbsp_load_spice_kernels
rbsp_load_state,probe=probe,/no_spice_load,datatype=['spinper','spinphase','mat_dsc','Lvec']
rbsp_efw_position_velocity_crib,/no_spice_load,/noplot
if ~keyword_set(qa) then rbsp_load_efw_esvy_mgse,probe=probe,/no_spice_load
if keyword_set(qa) then rbsp_load_efw_esvy_mgse,probe=probe,/no_spice_load,/qa
if keyword_set(ql) then rbsp_load_emfisis,probe=probe,/quicklook
if keyword_set(hires) then rbsp_load_emfisis,probe=probe,coord='gse',cadence='hires',level='l3'
if ~keyword_set(hires) and ~keyword_set(ql) then rbsp_load_emfisis,probe=probe,coord='gse',cadence='4sec',level='l3'
if keyword_set(ql) then get_data,rbspx+'_emfisis_quicklook_Mag',data=dd2
if keyword_set(hires) then get_data,rbspx+'_emfisis_l3_hires_gse_Mag',data=dd2
if ~keyword_set(hires) and ~keyword_set(ql) then get_data,rbspx+'_emfisis_l3_4sec_gse_Mag',data=dd2
if ~is_struct(dd2) then begin
print,'******NO MAG DATA TO LOAD.....rbsp_efw_DCfield_removal_crib.pro*******'
return
endif
if ~keyword_set(ql) then begin
if keyword_set(hires) then get_data,rbspx+'_emfisis_l3_hires_gse_Mag',data=tmpp else $
get_data,rbspx+'_emfisis_l3_4sec_gse_Mag',data=tmpp
get_data,rbspx+'_spinaxis_direction_gse',data=wsc_GSE
wsc_GSE_tmp = [[interpol(wsc_GSE.y[*,0],wsc_GSE.x,tmpp.x)],$
[interpol(wsc_GSE.y[*,1],wsc_GSE.x,tmpp.x)],$
[interpol(wsc_GSE.y[*,2],wsc_GSE.x,tmpp.x)]]
if keyword_set(hires) then rbsp_gse2mgse,rbspx+'_emfisis_l3_hires_gse_Mag',reform(wsc_GSE_tmp),newname=rbspx+'_emfisis_l3_hires_mgse_Mag' else $
rbsp_gse2mgse,rbspx+'_emfisis_l3_4sec_gse_Mag',reform(wsc_GSE_tmp),newname=rbspx+'_emfisis_l3_4sec_mgse_Mag'
if keyword_set(hires) then copy_data,rbspx+'_emfisis_l3_hires_mgse_Mag',rbspx+'_mag_mgse' else $
copy_data,rbspx+'_emfisis_l3_4sec_mgse_Mag',rbspx+'_mag_mgse'
endif
if keyword_set(ql) then begin
data_att = {coord_sys:'uvw'}
dlim = {data_att:data_att}
store_data,rbspx +'_emfisis_quicklook_Mag',data=dd2,dlimits=dlim
rbsp_decimate,rbspx +'_emfisis_quicklook_Mag', upper = 2
rbsp_spinfit,rbspx +'_emfisis_quicklook_Mag', plane_dim = 0
rbsp_cotrans,rbspx +'_emfisis_quicklook_Mag_spinfit',rbspx+'_mag_mgse', /dsc2mgse
endif
if ~keyword_set(noplot) then begin
rbsp_load_eclipse_predict,probe,date
get_data,rbspx+'_umbra',data=eu
get_data,rbspx+'_penumbra',data=ep
endif
rbsp_corotation_efield,probe,date,/no_spice_load
dif_data,rbspx+'_state_vel_mgse',rbspx+'_state_vel_coro_mgse',newname='vel_total'
rbsp_vxb_subtract,'vel_total',rbspx+'_mag_mgse',rbspx+'_efw_esvy_mgse'
copy_data,'Esvy_mgse_vxb_removed',rbspx+'_efw_esvy_mgse_vxb_removed'
get_data,rbspx+'_efw_esvy_mgse_vxb_removed', data = d
d.y[*, 1] *= 1d
d.y[*, 2] *= 1d
store_data,rbspx+'_efw_esvy_mgse_vxb_removed', data = d
add_data,rbspx+'_efw_esvy_mgse_vxb_removed',rbspx+'_E_coro_mgse',newname=rbspx+'_efw_esvy_mgse_vxb_removed'
options,rbspx+'_efw_esvy_mgse_vxb_removed','colors',[2,4,6]
split_vec,rbspx+'_efw_esvy_mgse_vxb_removed'
split_vec,rbspx+'_efw_esvy_mgse'
options,rbspx+'_efw_esvy_mgse_vxb_removed_x','colors',4
options,rbspx+'_efw_esvy_mgse_vxb_removed_y','colors',1
options,rbspx+'_efw_esvy_mgse_vxb_removed_z','colors',2
options,rbspx+'_efw_esvy_mgse_vxb_removed_?','ysubtitle',''
options,rbspx+'_efw_esvy_mgse_vxb_removed','ysubtitle',''
options,rbspx+'_efw_esvy_mgse_vxb_removed_x','ytitle','Ex!CMGSE!CInertial Frame!C(E-V!Dsc!NxB)!C[mV/m]'
options,rbspx+'_efw_esvy_mgse_vxb_removed_y','ytitle','Ey!CMGSE!CInertial Frame!C(E-V!Dsc!NxB)!C[mV/m]'
options,rbspx+'_efw_esvy_mgse_vxb_removed_z','ytitle','Ez!CMGSE!CInertial Frame!C(E-V!Dsc!NxB)!C[mV/m]'
options,rbspx+'_efw_esvy_mgse_x','ytitle','Esvy!CX MGSE!C[mV/m]'
options,rbspx+'_efw_esvy_mgse_y','ytitle','Esvy!CY MGSE!C[mV/m]'
options,rbspx+'_efw_esvy_mgse_z','ytitle','Esvy!CZ MGSE!C[mV/m]'
options,rbspx+'_mag_mgse','ytitle','Bfield MGSE!C[nT]'
options,rbspx+'_mag_mgse','ysubtitle',''
options,rbspx+'_efw_esvy_mgse_*','ztitle','RBSP'+probe+'!CEFW'
options,rbspx + ['_efw_esvy_mgse_?',$
'_efw_esvy_mgse_vxb_removed_?'],'labflag',-1
options,rbspx+'_efw_esvy_mgse_vxb_removed_x','labels','X MGSE'
options,rbspx+'_efw_esvy_mgse_vxb_removed_y','labels','Y MGSE'
options,rbspx+'_efw_esvy_mgse_vxb_removed_z','labels','Z MGSE'
options,rbspx+'_efw_esvy_mgse_x','labels','X MGSE'
options,rbspx+'_efw_esvy_mgse_y','labels','Y MGSE'
options,rbspx+'_efw_esvy_mgse_z','labels','Z MGSE'
options,[rbspx+'_efw_esvy_mgse',rbspx+'_efw_esvy_mgse_?'],'ysubtitle',''
split_vec,rbspx+'_efw_esvy_mgse'
options,rbspx+'_efw_esvy_mgse','colors',[0,1,2]
ylim,rbspx+'_efw_esvy_mgse_?',-20,20
options,rbspx+'_efw_esvy_mgse_x','ytitle','Ex MGSE!C[mV/m]'
options,rbspx+'_efw_esvy_mgse_y','ytitle','Ey MGSE!C[mV/m]'
options,rbspx+'_efw_esvy_mgse_z','ytitle','Ez MGSE!C[mV/m]'
options,rbspx+'_efw_esvy_mgse_?','ztitle','32 S/s'
options,rbspx+'_efw_esvy_mgse_?','labels','32 S/s'
options,rbspx+'_efw_esvy_mgse','ysubtitle',''
options,rbspx+'_efw_esvy_mgse_?','ysubtitle',''
if ~keyword_set(noplot) then begin
tplot_options,'xmargin',[20.,15.]
tplot_options,'ymargin',[3,6]
tplot_options,'xticklen',0.08
tplot_options,'yticklen',0.02
tplot_options,'xthick',2
tplot_options,'ythick',2
tplot_options,'labflag',-1
ylim,[rbspx+'_efw_esvy_mgse_vxb_removed_?',$
rbspx+'_efw_esvy_mgse_?'],-300,300
tplot_options,'title','Esvy compared to!CEsvy with vxB removed'
tplot,[rbspx+'_efw_esvy_mgse_vxb_removed_y',$
rbspx+'_efw_esvy_mgse_vxb_removed_z',$
rbspx+'_efw_esvy_mgse_y',$
rbspx+'_efw_esvy_mgse_z']
if is_struct(eu) then timebar,eu.x,color=50
if is_struct(eu) then timebar,eu.x + eu.y,color=50
if is_struct(ep) then timebar,ep.x,color=80
if is_struct(ep) then timebar,ep.x + ep.y,color=80
ylim,[rbspx+'_efw_esvy_mgse_vxb_removed_y',$
rbspx+'_efw_esvy_mgse_vxb_removed_z',$
rbspx+'_efw_esvy_mgse_y',$
rbspx+'_efw_esvy_mgse_z'],-30,30
tplot_options,'title','Esvy compared to!CEsvy with vxB removed'
tplot,[rbspx+'_efw_esvy_mgse_vxb_removed_y',$
rbspx+'_efw_esvy_mgse_vxb_removed_z',$
rbspx+'_efw_esvy_mgse_y',$
rbspx+'_efw_esvy_mgse_z']
if is_struct(eu) then timebar,eu.x,color=50
if is_struct(eu) then timebar,eu.x + eu.y,color=50
if is_struct(ep) then timebar,ep.x,color=80
if is_struct(ep) then timebar,ep.x + ep.y,color=80
endif
end