pro mvn_swia_regid, tr = tr, bdata = bdata, pdata = pdata, regout
RM = 3397.
@tplot_com
common mvn_swia_data
if not keyword_set(bdata) then bdata = 'mvn_mag1_pl_ql_MAVEN_MSO'
if not keyword_set(pdata) then pdata = 'MAVEN_POS_(MARS-MSO)'
if not keyword_set(tr) then tr = tplot_vars.options.trange
get_data,pdata,data = pos
get_data,bdata,data = mag
w = where(swim.time_unix ge tr[0] and swim.time_unix le tr[1],nel)
time = swim[w].time_unix + 2.0
ux = interpol(pos.y[*,0],pos.x,time)
uy = interpol(pos.y[*,1],pos.x,time)
uz = interpol(pos.y[*,2],pos.x,time)
uyz = sqrt(uy^2 + uz^2)
alt = sqrt(ux^2+uy^2+uz^2)-RM
nmagint = floor(n_elements(mag.x)/128L)
mbx = fltarr(nmagint)
mby = fltarr(nmagint)
mbz = fltarr(nmagint)
mrx = fltarr(nmagint)
mry = fltarr(nmagint)
mrz = fltarr(nmagint)
mt = dblarr(nmagint)
for i = 0L,nmagint-1 do begin
mt(i) = mean(mag.x[i*128:i*128+127],/nan,/double)
mbx(i) = mean(mag.y[i*128:i*128+127,0],/nan)
mby(i) = mean(mag.y[i*128:i*128+127,1],/nan)
mbz(i) = mean(mag.y[i*128:i*128+127,2],/nan)
mrx(i) = stddev(mag.y[i*128:i*128+127,0],/nan)
mry(i) = stddev(mag.y[i*128:i*128+127,1],/nan)
mrz(i) = stddev(mag.y[i*128:i*128+127,2],/nan)
endfor
magx = interpol(mbx,mt,time)
magy = interpol(mby,mt,time)
magz = interpol(mbz,mt,time)
mag = sqrt(magx*magx+magy*magy+magz*magz)
magstd = interpol(sqrt(mrx*mrx+mry*mry+mrz*mrz),mt,time)
store_data,'magave',data = {x:time,y:[[magx],[magy],[magz]]}
store_data,'magstd',data = {x:time,y:magstd}
regid = fltarr(nel)
temp = total(swim[w].temperature,1)/3
vel = sqrt(total(swim[w].velocity*swim[w].velocity,1))
dens = swim[w].density
w = where(vel gt 200 and (temp/vel lt 0.05 and magstd/mag lt 0.15) and alt gt 500)
regid(w) = 1
w = where(vel gt 200 and (temp/vel gt 0.1 or magstd/mag gt 0.25) and alt gt 300)
regid(w) = 2
w = where((vel lt 100 or dens lt 0.1) and magstd/mag lt 0.1 and mag gt 10 and alt lt 500)
regid(w) = 3
w = where((vel lt 100 or dens lt 0.1) and magstd/mag lt 0.1 and mag gt 10 and alt lt 250 and (ux gt 0 or uyz gt RM))
regid(w) = 4
w = where(vel lt 200 and magstd/mag lt 0.1 and abs(magx/mag) gt 0.9 and ux lt 0 and alt gt 300)
regid(w) = 5
regout = {x:time,y:[[regid],[regid]],v:[0,1],spec:1}
store_data,'regid',data = regout,limits = {panel_size:0.1, no_interp:1}
end