;+ ;FUNCTION: vc_3d_new((dat,ENERGY=en,ERANGE=er,EBINS=ebins,ANGLE=an,ARANGE=ar,BINS=bins) ;INPUT: ; dat: structure, 2d data structure filled by get_eesa_surv, get_eesa_burst, etc. ;KEYWORDS ; ENERGY: fltarr(2), optional, min,max energy range for integration ; ERANGE: fltarr(2), optional, min,max energy bin numbers for integration ; EBINS: bytarr(na), optional, energy bins array for integration ; 0,1=exclude,include, ; na = dat.nenergy ; ANGLE: fltarr(2), optional, min,max pitch angle range for integration ; ARANGE: fltarr(2), optional, min,max angle bin numbers for integration ; BINS: bytarr(nb), optional, angle bins array for integration ; 0,1=exclude,include, ; nb = dat.ntheta ; BINS: bytarr(na,nb), optional, energy/angle bins array for integration ; 0,1=exclude,include ;PURPOSE: ; Returns the characteristic velocity, Vc, km/s ;NOTES: ; Function calls jo_3d_new.pro and n_3d_new.pro ; Function normally called by "get_2dt.pro" to generate ; time series data for "tplot.pro". ; ;CREATED BY: ; J.McFadden 09-06-18 ;LAST MODIFICATION: ; ;- function vc_3d_new,dat2,ENERGY=en,ERANGE=er,EBINS=ebins,ANGLE=an,ARANGE=ar,BINS=bins,_extra=_extra Vc = 0. if dat2.valid ne 1 then begin dprint, 'Invalid Data' return, Vc endif flux = jo_3d_new(dat2,ENERGY=en,ERANGE=er,EBINS=ebins,ANGLE=an,ARANGE=ar,BINS=bins,_extra=_extra) n_e = n_3d_new(dat2,ENERGY=en,ERANGE=er,EBINS=ebins,ANGLE=an,ARANGE=ar,BINS=bins,_extra=_extra) if (abs(n_e) gt 0.0001) then Vc = abs(flux/n_e)/1.e5 ; units are km/s return, Vc end