Professional Documents
Culture Documents
;================================================
=======
if keyword_set(ps) then begin
set_plot,'ps' & device, /color,bits_per_pixel=8,/landscape, xsize=24, xoffset=1
endif else begin
device, retain=2, decomposed=0
window,0,xsize=1200,ysize=800
endelse
;================================================
=======
;SYSTEM PARAMATERS
smpf = 100000.
time = double(findgen(100000,START=1))/100000.
vprp = 300000.
freq = findgen(100000,START=1)
main_folder = '/Users/ulat/IDLWorkspace/VPOTEKA/'
;================================================
=======
;MAIN
;LOCATION OF STATIONS
pos_gum = [144.7945,13.4780]
pos_mnl = [121.0444,14.6450]
pos_pal = [134.4658,7.3382]
dR_g2m =
map_2points(pos_gum[0],pos_gum[1],pos_mnl[0],pos_mnl[1],/meters)*1000 ;km
dT_g2m = ceil(dR_g2m/(vprp)*smpf)
dR_m2p =
map_2points(pos_mnl[0],pos_mnl[1],pos_pal[0],pos_pal[1],/meters)*1000 ;km
dT_m2p = ceil(dR_m2p/(vprp)*smpf)
dR_p2g =
map_2points(pos_pal[0],pos_pal[1],pos_gum[0],pos_gum[1],/meters)*1000 ;km
dT_p2g = ceil(dR_p2g/(vprp)*smpf)
;LOADING FILES
;TOA GRIDS ** DATABASE
toa_fname = 'toa_grids002deg.txt'
toa_fpath = main_folder + toa_fname
toalines_dats = read_table(toa_fpath)
print, toalines_dats[0,0]
toa_lns = toalines_dats[0,*]
toa_lts = toalines_dats[1,*]
toa_g2m = toalines_dats[2,*]
toa_m2p = toalines_dats[3,*]
toa_p2g = toalines_dats[4,*]
;10min sample
;FILE PARSING
;FOLDER FOR LOADING FILES
data_folder = '/Volumes/ULAT/V-POTEKA/'
date_str = '2018-07-26/'
file_str = 'event*.csv'
site_g = 'event_00064921'
site_m = 'event_00064919'
site_p = 'event_00064920'
;CHECKING FILES
stab_g = v000vlf_site_tab(1)
sname_g = v010vlf_site_name(1)
lfolder_g = data_folder + sname_g + '/'; + date_str
;SARABURI
stab_m = v000vlf_site_tab(2)
sname_m = v010vlf_site_name(2)
lfolder_m = data_folder + sname_m + '/'; + date_str
;PONTIANAK
stab_p = v000vlf_site_tab(3)
sname_p = v010vlf_site_name(3)
lfolder_p = data_folder + sname_p + '/'; + date_str
stop
gum_fpath = gum_flists[i_file]
hms_string = strmid(gum_fpath,54,12)
mnl_file = site_m + '_' + hms_string + '.csv'
mnl_fpath = lfolder_m + date_str + mnl_file
pal_file = site_p + '_' + hms_string + '.csv'
pal_fpath = lfolder_p + date_str + pal_file
;EXISTENCE OF FILES
chk_path_gum = file_test(gum_fpath)
chk_path_mnl = file_test(mnl_fpath)
chk_path_pal = file_test(pal_fpath)
print, hms_string
IF (chk_path_gum EQ 1 AND chk_path_mnl EQ 1 AND chk_path_pal EQ 1)
THEN BEGIN
print, 'There are 3 files.'
;MANILA
vlf_idx_mnl = v020vlf_open_file(mnl_fpath)
mnl_maxtime = abs(double(strmid(vlf_idx_mnl.field07,5,5)))/1000.
;millisecond
mnl_mintime = abs(double(strmid(vlf_idx_mnl.field09,5,5)))/1000.
;millisecond
dif_mnl = abs(mnl_mintime - mnl_maxtime)
mnl_time = mnl_maxtime[where(dif_mnl GE 0.2)]
;PALAU
vlf_idx_pal = v020vlf_open_file(pal_fpath)
pal_maxtime = abs(double(strmid(vlf_idx_pal.field07,5,5)))/1000. ;millisecond
pal_mintime = abs(double(strmid(vlf_idx_pal.field09,5,5)))/1000. ;millisecond
dif_pal = abs(pal_mintime - pal_maxtime)
pal_time = pal_maxtime[where(dif_pal GE 0.2)]
ntime_gum = n_elements(gum_time)
stop
;TARGET INDEX
tgt_idx_gum = gum_time[[i_pulse]]
dif_idx_g2m = abs(mnl_time-tgt_idx_gum)
tgt_idx_mnl = mnl_time[(where(dif_idx_g2m EQ min(dif_idx_g2m)))]
dif_idx_g2p = abs(pal_time-tgt_idx_gum)
tgt_idx_pal = pal_time[(where(dif_idx_g2p EQ min(dif_idx_g2p)))]
print, tgt_idx_gum
print, tgt_idx_mnl
print, tgt_idx_pal
;TOA LINES
idx_toa_g2m = where( abs(toa_g2m-di_g2m) LE 5 )
toa_lns_g2m = toa_lns[idx_toa_g2m]
toa_lts_g2m = toa_lts[idx_toa_g2m]
print, "GEOLOC"
hms_string2 = strmid(hms_string,0,15)
hh_string = strmid(hms_string,9,2)
mm_string = strmid(hms_string,11,2)
ss_string = strmid(hms_string,13,2)
;LIGHTNING TIMING
pos_lig = [loc_sfc_lon,loc_sfc_lat]
dR_l2g =
map_2points(pos_lig[0],pos_lig[1],pos_gum[0],pos_gum[1],/meters)*1000 ;km
;km
dT_l2g = ceil(dR_l2g/vprp*smpf)
dR_l2m =
map_2points(pos_lig[0],pos_lig[1],pos_mnl[0],pos_mnl[1],/meters)*1000 ;km
dT_l2m = ceil(dR_l2m/vprp*smpf)
dR_l2p =
map_2points(pos_lig[0],pos_lig[1],pos_pal[0],pos_pal[1],/meters)*1000 ;km
dT_l2p = ceil(dR_l2p/vprp*smpf)
lig_time = tgt_idx_gum[0]-(dT_l2g-1)
;STACK OF DATA
vlf_mat_v = dblarr(11,1)
vlf_sav_v = dblarr(11,1)
vlf_sav_v[0,0] = hh_string
vlf_sav_v[1,0] = mm_string
vlf_sav_v[2,0] = ss_string
vlf_sav_v[3,0] = tgt_idx_gum[0]
vlf_sav_v[4,0] = tgt_idx_mnl[0]
vlf_sav_v[5,0] = tgt_idx_pal[0]
vlf_sav_v[6,0] = tgt_idx_gum[0]-dT_l2g
vlf_sav_v[7,0] = tgt_idx_mnl[0]-dT_l2m
vlf_sav_v[8,0] = tgt_idx_pal[0]-dT_l2p
vlf_sav_v[9,0] = loc_sfc_lon
vlf_sav_v[10,0] = loc_sfc_lat
vlf_mat_v = [[vlf_mat_v],[vlf_sav_v]]
;PLOTTING GEOLOCATION
;================================================
=======
if keyword_set(ps) then begin
set_plot,'ps' & device, /color,bits_per_pixel=8,/landscape, xsize=24,
xoffset=1
endif else begin
device, retain=2, decomposed=0
window,0,xsize=1200,ysize=800
endelse
;================================================
=======
loadct,0 & !p.background=-1 & !p.color=0 & !p.font=-1 & !p.multi=[0,0,1] &
!x.style=1 & !y.style=1 & !p.charsize=1.5
;window, 0
loadct,0 & background=-1
map_set,/cylindrical, londel=10,latdel=10, limit = [-20,90,40,170];Latmin,
Lonmin, Latmax, Lonma
!p.charsize=0.
map_grid, latdel=1., latlab=10,londel=1.,lonlab=60,/label
map_continents,/continents,/hires
loadct,5
plots, toa_lns_g2m,toa_lts_g2m, color = 100
plots, toa_lns_m2p,toa_lts_m2p, color = 200
plots, toa_lns_p2g,toa_lts_p2g, color = 300
plots, pos_gum[0],pos_gum[1],psym=4,symsize=2,thick=2
plots, pos_mnl[0],pos_mnl[1],psym=4,symsize=2,thick=2
plots, pos_pal[0],pos_pal[1],psym=4,symsize=2,thick=2
plots, pos_lig[0],pos_lig[1],psym=7,symsize=2,thick=2, color=100
;================================================
=======
if keyword_set(ps) then begin
device, /close
set_plot,'win'
endif
;================================================
=======
ENDIF
ENDIF
ENDFOR
stop
ENDFOR
stop
window,1
loadct,0 & background=-1
map_set,/cylindrical, londel=10,latdel=10, limit = [-20,90,40,170];Latmin,
Lonmin, Latmax, Lonma
!p.charsize=0.
map_grid, latdel=1., latlab=10,londel=1.,lonlab=60,/label
map_continents,/continents,/hires
loadct, 5
A = FINDGEN(16) * (!PI*2/16.)
UserSym, cos(A), sin(A)
plots, vlf_mat_v[9,*],vlf_mat_v[10,*],psym=8,symsize=1, thick=6, color=100
END