##// END OF EJS Templates
AGOSTO UPDATE
avaldez -
r1325:d62c455f90f2 v3-devel-agosto
parent child
Show More
@@ -0,0 +1,34
1 import os,sys
2 import datetime
3 import time
4 from schainpy.controller import Project
5 #path = '/home/alex/Downloads/hdf5_testPP2'
6 path = '/home/alex/Downloads/hdf5_test'
7
8 figpath = path
9 desc = "Simulator Test"
10
11 controllerObj = Project()
12
13 controllerObj.setup(id='10',name='Test Simulator',description=desc)
14
15 readUnitConfObj = controllerObj.addReadUnit(datatype='ParameterReader',
16 path=path,
17 startDate="2020/01/01", #"2020/01/01",#today,
18 endDate= "2020/12/01", #"2020/12/30",#today,
19 startTime='00:00:00',
20 endTime='23:59:59',
21 delay=0,
22 #set=0,
23 online=0,
24 walk=1)
25
26 procUnitConfObjA = controllerObj.addProcUnit(datatype='ParametersProc',inputId=readUnitConfObj.getId())
27 opObj11 = procUnitConfObjA.addOperation(name='Block360')
28 opObj11.addParameter(name='n', value='100', format='int')
29 opObj11= procUnitConfObjA.addOperation(name='WeatherPlot',optype='other')
30 opObj11.addParameter(name='save', value=figpath)
31 opObj11.addParameter(name='save_period', value=1)
32 #opObj11 = procUnitConfObjA.addOperation(name='PowerPlot', optype='other')#PulsepairPowerPlot
33 #opObj11 = procUnitConfObjA.addOperation(name='PPSignalPlot', optype='other')
34 controllerObj.start()
@@ -0,0 +1,50
1 import os,sys
2 import datetime
3 import time
4 from schainpy.controller import Project
5 path = '/home/alex/Downloads/hdf5_testPP'
6 figpath = path
7 desc = "Simulator Test"
8
9 controllerObj = Project()
10
11 controllerObj.setup(id='10',name='Test Simulator',description=desc)
12
13 readUnitConfObj = controllerObj.addReadUnit(datatype='SimulatorReader',
14 frequency=9.345e9,
15 FixRCP_IPP= 60,
16 Tau_0 = 30,
17 AcqH0_0=0,
18 samples=330,
19 AcqDH_0=0.15,
20 FixRCP_TXA=0.15,
21 FixRCP_TXB=0.15,
22 Fdoppler=600.0,
23 Hdoppler=36,
24 Adoppler=300,#300
25 delay=0,
26 online=0,
27 walk=0,
28 profilesPerBlock=625,
29 dataBlocksPerFile=360)#,#nTotalReadFiles=2)
30
31 ### opObj11 = readUnitConfObj.addOperation(name='printInfo')
32
33 procUnitConfObjA = controllerObj.addProcUnit(datatype='VoltageProc', inputId=readUnitConfObj.getId())
34
35 opObj11 = procUnitConfObjA.addOperation(name='PulsePairVoltage', optype='other')
36 opObj11.addParameter(name='n', value='625', format='int')#10
37 opObj11.addParameter(name='removeDC', value=1, format='int')
38
39 procUnitConfObjB= controllerObj.addProcUnit(datatype='ParametersProc',inputId=procUnitConfObjA.getId())
40
41 opObj10 = procUnitConfObjB.addOperation(name="WeatherRadar")
42
43 opObj10 = procUnitConfObjB.addOperation(name='ParameterWriter')
44 opObj10.addParameter(name='path',value=figpath)
45 #opObj10.addParameter(name='mode',value=0)
46 opObj10.addParameter(name='blocksPerFile',value='100',format='int')
47 opObj10.addParameter(name='metadataList',value='utctimeInit,timeInterval',format='list')
48 opObj10.addParameter(name='dataList',value='dataPP_POW,dataPP_DOP,dataPP_SNR,dataPP_WIDTH,factor_Zeh,utctime')#,format='list'
49
50 controllerObj.start()
@@ -0,0 +1,25
1 import os,sys
2 import datetime
3 import time
4 from schainpy.controller import Project
5 path = '/home/alex/Downloads/hdf5_wr'
6 figpath = path
7 desc = "Simulator Test"
8
9 controllerObj = Project()
10
11 controllerObj.setup(id='10',name='Test Simulator',description=desc)
12
13
14 readUnitConfObj = controllerObj.addReadUnit(datatype='ParamReader',
15 path=path,
16 startDate="2020/01/01", #"2020/01/01",#today,
17 endDate= "2020/12/01", #"2020/12/30",#today,
18 startTime='00:00:00',
19 endTime='23:59:59',
20 delay=0,
21 #set=0,
22 online=0,
23 walk=1)
24
25 controllerObj.start()
@@ -0,0 +1,150
1 #!/usr/bin/env python
2 #LINUX
3 #bash: export WRADLIB_DATA=/path/to/wradlib-data
4 import os
5 import matplotlib.pyplot as pl
6 import wradlib as wrl
7 import numpy as np
8 pl.switch_backend("TKAgg")
9 #filename = wrl.util.get_wradlib_data_file('dx/raa00-dx_10908-0806021655-fbg---bin.gz')
10
11
12 validFilelist = []
13 path="/home/alex/Downloads/hdf5_wr/d2020204/"
14 ext=".hdf5"
15
16
17
18 ##path= '/home/alex/Downloads/2019-12-29/'
19 fileList= os.listdir(path)
20 for thisFile in fileList:
21 ##if (os.path.splitext(thisFile)[0][-4:] != 'dBuZ'):
22 ## continue
23 validFilelist.append(thisFile)
24 validFilelist.sort()
25 #---print ("Files",validFilelist)
26 #print (validFilelist)
27 i=0
28 for thisFile in validFilelist:
29 i=i+1
30 fpath = path+thisFile
31 print("fpath",fpath)
32 f = wrl.util.get_wradlib_data_file(fpath)
33 #print("f",f)
34 ####fcontent = wrl.io.read_rainbow(f)
35 fcontent = wrl.io.read_generic_hdf5(f)
36 #print(fcontent.keys())
37 #print (fcontent)
38 #print(sfcontent['volume']
39
40 #Get azimuth data
41 azi = fcontent['Pedestal/azimuth']['data']
42 ##print("azi0",azi['data'].shape)
43 ##print("azi",azi['data'])
44 '''
45 azi = fcontent['volume']['scan']['slice']['slicedata']['rayinfo']['data']
46 azidepth = float(fcontent['volume']['scan']['slice']['slicedata']['rayinfo']['@depth'])
47 azirange = float(fcontent['volume']['scan']['slice']['slicedata']['rayinfo']['@rays'])
48 azires = float(fcontent['volume']['scan']['slice']['anglestep'])
49 azi = (azi * azirange / 2**azidepth) * azires
50 '''
51 #---print("AZI",azi.shape)
52 #---print("AZI",type(azi))
53
54 ##print("azi_range",azi)
55 #print("azidepth",azidepth)
56 #print("azirange",azirange)
57 #print("azires",azires)
58 #print("azi azi",azi)
59
60 # Create range array
61 '''
62 stoprange = float(fcontent['volume']['scan']['slice']['stoprange'])
63 rangestep = float(fcontent['volume']['scan']['slice']['rangestep'])
64 '''
65 stoprange = float(33*1.5)
66 rangestep = float(0.15)
67 r = np.arange(0, stoprange, rangestep)
68 #---print("stoprange",stoprange)
69 #---print("rangestep",rangestep)
70 #---print("r",r.shape)
71 #---print("r",type(r))
72
73 # GET reflectivity data#print (fcontent)
74 #print(sfcontent['volume']
75 '''
76 data = fcontent['volume']['scan']['slice']['slicedata']['rawdata']['data']
77 datadepth = float(fcontent['volume']['scan']['slice']['slicedata']['rawdata']['@depth'])
78 datamin = float(fcontent['volume']['scan']['slice']['slicedata']['rawdata']['@min'])
79 datamax = float(fcontent['volume']['scan']['slice']['slicedata']['rawdata']['@max'])
80 data = datamin + data * (datamax - datamin) / 2 ** datadepth
81 '''
82 data = fcontent['Data/dataPP_POW/table00']['data']
83 data = 10*np.log10(data/(625**2))
84 #---print("DATA",data.shape)
85 #---print("DATA",type(data))
86
87 ##data =fcontent['Data/dataPP_POW/table00']['data']
88 ##print("data 1",data.shape)
89 ##data = 10*np.log10(fcontent['Data/dataPP_POW/table00']['data']/(625**2))
90 ##print("test data",data.shape)
91 #print("datadepth",datadepth)
92 #print("datamin",datamin)
93 #print("datamax",datamax)
94 #print("data",data)
95 if i==1:
96 azi2= azi
97 data2= data
98 #---print("azi2 shape I es 1",azi2.shape)
99 else:
100 if i==4:
101 #---print (azi[60:].shape)
102 azi2= np.concatenate((azi2,azi[40:]))
103 data2= np.concatenate((data2,data[40:,:]),axis=0)
104 else:
105 azi2= np.concatenate((azi2,azi))
106 data2= np.concatenate((data2,data),axis=0)
107
108 #---print("azi2 shape",azi2.shape)
109 #print(fcontent['volume']['sensorinfo'])
110 #print("ESPACIO")
111 #print(data)
112
113 #GET ANNOTATION data
114 '''
115 unit = fcontent['volume']['scan']['slice']['slicedata']['rawdata']['@type']
116 time = fcontent['volume']['scan']['slice']['slicedata']['@time']
117 date = fcontent['volume']['scan']['slice']['slicedata']['@date']
118 lon = fcontent['volume']['sensorinfo']['lon']
119 lat = fcontent['volume']['sensorinfo']['lat']
120 sensortype = fcontent['volume']['sensorinfo']['@type']
121 sensorname = fcontent['volume']['sensorinfo']['@name']
122 '''
123 #---print("AZI2",azi2.shape)
124 #---print("data2",data2.shape)
125
126 # PLOT DATA WITH ANNOTATION
127 fig = pl.figure(figsize=(8,8))
128 cgax, pm = wrl.vis.plot_ppi(data2, r=r, az=azi2, fig=fig, proj='cg')
129
130 #title = '{0} {1} {2} {3}\n{4}E {5}N'.format(sensortype, sensorname, date,time, lon, lat)
131 caax = cgax.parasites[0]
132 #t = pl.title(title, fontsize=12)
133 #t.set_y(1.1)
134 cbar = pl.gcf().colorbar(pm, pad=0.075)
135 caax.set_xlabel('x_range [km]')
136 caax.set_ylabel('y_range [km]')
137 pl.text(1.0, 1.05, 'azimuth', transform=caax.transAxes, va='bottom',
138 ha='right')
139 #cbar.set_label('reflectivity [' + unit + ']')
140 pl.show()
141
142 #print ("FIN")
143 #import time
144 #time.sleep(2)
145 #pl.close()
146 # stop here
147 #print(fcontent['data'])
148 #data, metadata = wrl.io.read_dx(filename)
149 #ax, pm = wrl.vis.plot_ppi(data) # simple diagnostic plot
150 #cbar = pl.colorbar(pm, shrink=0.75)
@@ -0,0 +1,160
1 #!/usr/bin/env python
2 #LINUX
3 #bash: export WRADLIB_DATA=/path/to/wradlib-data
4 import os,h5py
5 import matplotlib.pyplot as pl
6 import wradlib as wrl
7 import numpy as np
8 pl.switch_backend("TKAgg")
9 #filename = wrl.util.get_wradlib_data_file('dx/raa00-dx_10908-0806021655-fbg---bin.gz')
10
11
12 validFilelist = []
13 path="/home/alex/Downloads/hdf5_wr/d2020204/"
14 ext=".hdf5"
15
16
17
18 ##path= '/home/alex/Downloads/2019-12-29/'
19 fileList= os.listdir(path)
20 for thisFile in fileList:
21 ##if (os.path.splitext(thisFile)[0][-4:] != 'dBuZ'):
22 ## continue
23 validFilelist.append(thisFile)
24 validFilelist.sort()
25 #---print ("Files",validFilelist)
26 #print (validFilelist)
27 i=0
28 for thisFile in validFilelist:
29 i=i+1
30 fpath = path+thisFile
31 print("fpath",fpath)
32 fp = h5py.File(fpath,'r')
33 value='table00'
34 data = fp['Data']['dataPP_POW'].get('table00')[()]
35 azi = fp['Pedestal'].get('azimuth')[()]
36 fp.close()
37 data = 10*np.log10(data/(625**2))
38 print("azi",azi.shape)
39 print("azi",azi)
40
41 print("data",data.shape)
42 ###f = wrl.util.get_wradlib_data_file(fpath)
43 #print("f",f)
44 ####fcontent = wrl.io.read_rainbow(f)
45 ###fcontent = wrl.io.read_generic_hdf5(f)
46 #print(fcontent.keys())
47 #print (fcontent)
48 #print(sfcontent['volume']
49
50 #Get azimuth data
51 ############azi = fcontent['Pedestal/azimuth']['data']
52 ##print("azi0",azi['data'].shape)
53 ##print("azi",azi['data'])
54 '''
55 azi = fcontent['volume']['scan']['slice']['slicedata']['rayinfo']['data']
56 azidepth = float(fcontent['volume']['scan']['slice']['slicedata']['rayinfo']['@depth'])
57 azirange = float(fcontent['volume']['scan']['slice']['slicedata']['rayinfo']['@rays'])
58 azires = float(fcontent['volume']['scan']['slice']['anglestep'])
59 azi = (azi * azirange / 2**azidepth) * azires
60 '''
61 #---print("AZI",azi.shape)
62 #---print("AZI",type(azi))
63
64 ##print("azi_range",azi)
65 #print("azidepth",azidepth)
66 #print("azirange",azirange)
67 #print("azires",azires)
68 #print("azi azi",azi)
69
70 # Create range array
71 '''
72 stoprange = float(fcontent['volume']['scan']['slice']['stoprange'])
73 rangestep = float(fcontent['volume']['scan']['slice']['rangestep'])
74 '''
75 stoprange = float(33*1.5)
76 rangestep = float(0.15)
77 r = np.arange(0, stoprange, rangestep)
78 #---print("stoprange",stoprange)
79 #---print("rangestep",rangestep)
80 #---print("r",r.shape)
81 #---print("r",type(r))
82
83 # GET reflectivity data#print (fcontent)
84 #print(sfcontent['volume']
85 '''
86 data = fcontent['volume']['scan']['slice']['slicedata']['rawdata']['data']
87 datadepth = float(fcontent['volume']['scan']['slice']['slicedata']['rawdata']['@depth'])
88 datamin = float(fcontent['volume']['scan']['slice']['slicedata']['rawdata']['@min'])
89 datamax = float(fcontent['volume']['scan']['slice']['slicedata']['rawdata']['@max'])
90 data = datamin + data * (datamax - datamin) / 2 ** datadepth
91 '''
92 ########data = fcontent['Data/dataPP_POW/table00']['data']
93 ########data = 10*np.log10(data/(625**2))
94 #---print("DATA",data.shape)
95 #---print("DATA",type(data))
96
97 ##data =fcontent['Data/dataPP_POW/table00']['data']
98 ##print("data 1",data.shape)
99 ##data = 10*np.log10(fcontent['Data/dataPP_POW/table00']['data']/(625**2))
100 ##print("test data",data.shape)
101 #print("datadepth",datadepth)
102 #print("datamin",datamin)
103 #print("datamax",datamax)
104 #print("data",data)
105 if i==1:
106 azi2= azi
107 data2= data
108 #---print("azi2 shape I es 1",azi2.shape)
109 else:
110 if i==4:
111 #---print (azi[60:].shape)
112 azi2= np.concatenate((azi2,azi[40:]))
113 data2= np.concatenate((data2,data[40:,:]),axis=0)
114 else:
115 azi2= np.concatenate((azi2,azi))
116 data2= np.concatenate((data2,data),axis=0)
117
118 #---print("azi2 shape",azi2.shape)
119 #print(fcontent['volume']['sensorinfo'])
120 #print("ESPACIO")
121 #print(data)
122
123 #GET ANNOTATION data
124 '''
125 unit = fcontent['volume']['scan']['slice']['slicedata']['rawdata']['@type']
126 time = fcontent['volume']['scan']['slice']['slicedata']['@time']
127 date = fcontent['volume']['scan']['slice']['slicedata']['@date']
128 lon = fcontent['volume']['sensorinfo']['lon']
129 lat = fcontent['volume']['sensorinfo']['lat']
130 sensortype = fcontent['volume']['sensorinfo']['@type']
131 sensorname = fcontent['volume']['sensorinfo']['@name']
132 '''
133 #---print("AZI2",azi2.shape)
134 #---print("data2",data2.shape)
135
136 # PLOT DATA WITH ANNOTATION
137 fig = pl.figure(figsize=(8,8))
138 cgax, pm = wrl.vis.plot_ppi(data2, r=r, az=azi2, fig=fig, proj='cg')
139
140 #title = '{0} {1} {2} {3}\n{4}E {5}N'.format(sensortype, sensorname, date,time, lon, lat)
141 caax = cgax.parasites[0]
142 #t = pl.title(title, fontsize=12)
143 #t.set_y(1.1)
144 cbar = pl.gcf().colorbar(pm, pad=0.075)
145 caax.set_xlabel('x_range [km]')
146 caax.set_ylabel('y_range [km]')
147 pl.text(1.0, 1.05, 'azimuth', transform=caax.transAxes, va='bottom',
148 ha='right')
149 #cbar.set_label('reflectivity [' + unit + ']')
150 pl.show()
151
152 #print ("FIN")
153 #import time
154 #time.sleep(2)
155 #pl.close()
156 # stop here
157 #print(fcontent['data'])
158 #data, metadata = wrl.io.read_dx(filename)
159 #ax, pm = wrl.vis.plot_ppi(data) # simple diagnostic plot
160 #cbar = pl.colorbar(pm, shrink=0.75)
General Comments 0
You need to be logged in to leave comments. Login now