@@ -1,203 +1,203 | |||
|
1 | 1 | |
|
2 | 2 | import os, sys |
|
3 | 3 | import time |
|
4 | 4 | import datetime |
|
5 | 5 | |
|
6 | 6 | path = os.path.dirname(os.getcwd()) |
|
7 | 7 | path = os.path.dirname(path) |
|
8 | 8 | sys.path.insert(0, path) |
|
9 | 9 | |
|
10 | 10 | from schainpy.controller import Project |
|
11 | 11 | |
|
12 | 12 | def main(): |
|
13 | 13 | |
|
14 | 14 | |
|
15 | 15 | desc = "AMISR EEJ Experiment" |
|
16 | 16 | filename = "amisr_reader.xml" |
|
17 | 17 | xmin = '07' |
|
18 | 18 | xmax = '18' #-> el plot genera +1 en la hora, es decir aparece 18 como máximo |
|
19 | 19 | ymin = '0' |
|
20 | 20 | ymax = '300' |
|
21 | 21 | dbmin = '45' #'60'#'55' #'40' #noise esf eej |
|
22 | 22 | dbmax = '65' #'70' #'55' |
|
23 | 23 | showSPC = '1' #view plot Spectra |
|
24 | 24 | showRTI = '1' #view plot RTI |
|
25 | 25 | showNOISE = '1' #view plot NOISE |
|
26 | 26 | localtime='1' #para ajustar el horario en las gráficas '0' para dejar en utc |
|
27 | 27 | code = '1,-1,-1,-1,1,1,1,1,-1,-1,-1,1,-1,-1,-1,1,-1,-1,-1,1,-1,-1,1,-1,1,1,-1,1' |
|
28 | 28 | nCode = '1' |
|
29 | 29 | nBaud = '28' |
|
30 | 30 | nosamp = '1' # oversample for EEJ |
|
31 | 31 | today = time.strftime("%Y/%m/%d") |
|
32 | 32 | #startDate=today |
|
33 | 33 | #endDate=today |
|
34 | 34 | startDate='2021/07/11' |
|
35 | 35 | endDate='2021/07/11' |
|
36 | 36 | #inPath= '/home/soporte/dataAMISR_test/' |
|
37 | 37 | inPath= '/home/soporte/dataAMISR/' |
|
38 | 38 | inPath= '/media/soporte/UARS_4T_D02/AMISR_DATA/2021/' |
|
39 | 39 | #inPath = '/mnt/data_amisr' |
|
40 | 40 | outPath = '/home/soporte/Data/EEJ' |
|
41 | 41 | |
|
42 | 42 | ##....................................................................................... |
|
43 | 43 | ##....................................................................................... |
|
44 | 44 | |
|
45 | 45 | #l = startDate.split('/') #adding day of the year to outPath |
|
46 | 46 | l = startDate.split('/') |
|
47 | 47 | datelist = datetime.date(int(l[0]),int(l[1]),int(l[2])) |
|
48 | 48 | DOY = datelist.timetuple().tm_yday |
|
49 | 49 | outPath= outPath+"/EEJ"+l[0]+str(DOY) |
|
50 | 50 | if os.path.exists(outPath): |
|
51 | 51 | print("outPath", outPath) |
|
52 | 52 | else : |
|
53 | 53 | os.mkdir(outPath) |
|
54 | 54 | print("Creating...", outPath) |
|
55 | 55 | |
|
56 | 56 | ##....................................................................................... |
|
57 | 57 | ##....................................................................................... |
|
58 | 58 | controllerObj = Project() |
|
59 | 59 | controllerObj.setup(id = '11', name='eej_proc', description=desc) |
|
60 | 60 | ##....................................................................................... |
|
61 | 61 | ##....................................................................................... |
|
62 | 62 | readUnitConfObj = controllerObj.addReadUnit(datatype='AMISRReader', |
|
63 | 63 | path=inPath, |
|
64 | 64 | startDate=startDate,#startDate, #'2014/10/07', |
|
65 | 65 | endDate=endDate, #endDate '2014/10/07', |
|
66 | 66 | startTime='07:01:30',#'07:00:00', |
|
67 | 67 | endTime='19:00:00',#'15:00:00', |
|
68 | 68 | walk=1, |
|
69 | 69 | code = code, |
|
70 | 70 | nCode = nCode, |
|
71 | 71 | nBaud = nBaud, |
|
72 | 72 | timezone='lt', |
|
73 | 73 | online=0) |
|
74 | 74 | |
|
75 | 75 | |
|
76 | 76 | #AMISR Processing Unit |
|
77 | 77 | ##....................................................................................... |
|
78 | 78 | ##....................................................................................... |
|
79 | 79 | procUnitConfObj0 = controllerObj.addProcUnit(datatype='VoltageProc', inputId=readUnitConfObj.getId()) |
|
80 | 80 | opObj10 = procUnitConfObj0.addOperation(name='setAttribute') |
|
81 | 81 | opObj10.addParameter(name='frequency', value='445.09e6') |
|
82 | 82 | # opObj10 = procUnitConfObj0.addOperation(name='setRadarFrequency') |
|
83 | 83 | # opObj10.addParameter(name='frequency', value='445e6', format='float') |
|
84 | 84 | |
|
85 | 85 | |
|
86 | 86 | opObj01 = procUnitConfObj0.addOperation(name='Decoder', optype='other') |
|
87 | 87 | opObj01.addParameter(name='code', value=code, format='floatlist') |
|
88 | 88 | opObj01.addParameter(name='nCode', value=nCode, format='int') |
|
89 | 89 | opObj01.addParameter(name='nBaud', value=nBaud, format='int') |
|
90 | 90 | opObj01.addParameter(name='osamp', value=nosamp, format='int') |
|
91 | 91 | |
|
92 | 92 | |
|
93 | 93 | # opObj02 = procUnitConfObj0.addOperation(name='CohInt', optype='other') |
|
94 | 94 | # opObj02.addParameter(name='n', value='2', format='int') |
|
95 | 95 | |
|
96 | 96 | |
|
97 | 97 | |
|
98 | 98 | ##....................................................................................... |
|
99 | 99 | ##....................................................................................... |
|
100 | 100 | |
|
101 | 101 | procUnitConfObj1 = controllerObj.addProcUnit(datatype='SpectraProc', inputId=procUnitConfObj0.getId()) |
|
102 | 102 | procUnitConfObj1.addParameter(name='nFFTPoints', value='16', format='int') |
|
103 | 103 | |
|
104 | 104 | |
|
105 | 105 | opObj11 = procUnitConfObj1.addOperation(name='IncohInt', optype='other') |
|
106 | 106 | opObj11.addParameter(name='n', value='150', format='int') #300? |
|
107 | 107 | |
|
108 | 108 | ## Remove DC signal |
|
109 | 109 | opObj11 = procUnitConfObj1.addOperation(name='removeDC') |
|
110 | 110 | ##....................................................................................... |
|
111 | 111 | ##....................................................................................... |
|
112 | 112 | |
|
113 | 113 | # opObj13 = procUnitConfObj1.addOperation(name='getNoise' , optype ='self') |
|
114 | 114 | # opObj13.addParameter(name='minHei', value='100', format='float') |
|
115 | 115 | # opObj13.addParameter(name='maxHei', value='280', format='float') |
|
116 | 116 | |
|
117 | 117 | |
|
118 | 118 | # |
|
119 | 119 | opObj12 = procUnitConfObj1.addOperation(name='SpectraPlot', optype='external') |
|
120 | 120 | opObj12.addParameter(name='id', value='21', format='int') |
|
121 | 121 | opObj12.addParameter(name= 'xaxis', value='velocity') |
|
122 | 122 | opObj12.addParameter(name='ymax', value=ymax, format='int') |
|
123 | 123 | opObj12.addParameter(name='showprofile', value='1', format='int') |
|
124 | 124 | opObj12.addParameter(name='wintitle', value='AMISR Beam 0', format='str') |
|
125 | 125 | opObj12.addParameter(name='zmin', value=dbmin, format='int') |
|
126 | 126 | opObj12.addParameter(name='zmax', value=dbmax, format='int') |
|
127 | 127 | opObj12.addParameter(name='save', value=outPath+'/plots', format='str') |
|
128 | 128 | opObj12.addParameter(name='colormap', value='jet', format='str') |
|
129 | 129 | opObj12.addParameter(name='localtime', value=localtime,format='int') |
|
130 | 130 | opObj12.addParameter(name='show', value = showSPC, format='int') |
|
131 | 131 | |
|
132 | 132 | |
|
133 | 133 | ##Generate *.pdata from AMISR data |
|
134 | 134 | ##....................................................................................... |
|
135 | 135 | ##....................................................................................... |
|
136 | 136 | opObj13 = procUnitConfObj1.addOperation(name='SpectraWriter', optype='external') |
|
137 | 137 | opObj13.addParameter(name='path', value=outPath) |
|
138 | 138 | opObj13.addParameter(name='blocksPerFile', value='10', format='int') |
|
139 | 139 | |
|
140 | 140 | |
|
141 | 141 | opObj14 = procUnitConfObj1.addOperation(name='NoisePlot', optype='external') |
|
142 | 142 | opObj14.addParameter(name='id', value='3', format='int') |
|
143 | 143 | opObj14.addParameter(name='wintitle', value='title0', format='str') |
|
144 | 144 | opObj14.addParameter(name='showprofile', value='0', format='int') |
|
145 | 145 | opObj14.addParameter(name='tmin', value=xmin, format='int') |
|
146 | 146 | opObj14.addParameter(name='tmax', value=xmax, format='int') |
|
147 | 147 | opObj14.addParameter(name='ymin', value=dbmin, format='int') |
|
148 | 148 | opObj14.addParameter(name='ymax', value=dbmax, format='int') |
|
149 | 149 | opObj14.addParameter(name='save', value=outPath, format='str') |
|
150 | 150 | opObj14.addParameter(name='localtime', value=localtime,format='int') |
|
151 | 151 | opObj14.addParameter(name='show', value = showNOISE, format='int') |
|
152 | 152 | |
|
153 | 153 | # |
|
154 | 154 | opObj15 = procUnitConfObj1.addOperation(name='RTIPlot', optype='external') |
|
155 | 155 | opObj15.addParameter(name='id', value='2', format='int') |
|
156 | 156 | opObj15.addParameter(name='localtime', value=localtime,format='int') |
|
157 | 157 | opObj15.addParameter(name='wintitle', value='RTI', format='str') |
|
158 | 158 | opObj15.addParameter(name='tmin', value=xmin, format='int') |
|
159 | 159 | opObj15.addParameter(name='tmax', value=xmax, format='int') #max value =23 |
|
160 | 160 | opObj15.addParameter(name='ymin', value=ymin, format='int') |
|
161 | 161 | opObj15.addParameter(name='zmin', value=dbmin, format='int') |
|
162 | 162 | opObj15.addParameter(name='zmax', value=dbmax, format='int') |
|
163 | 163 | opObj15.addParameter(name='showprofile', value='0', format='int') |
|
164 | 164 | opObj15.addParameter(name='save', value=outPath+'/plots', format='str') |
|
165 | 165 | opObj15.addParameter(name='colormap', value='jet', format='str') |
|
166 | 166 | opObj15.addParameter(name='show', value = showRTI, format='int') |
|
167 | 167 | |
|
168 | 168 | |
|
169 | 169 | |
|
170 | 170 | ##....................................................................................... |
|
171 | 171 | ##....................................................................................... |
|
172 | 172 | |
|
173 | 173 | procUnitConfObj2 = controllerObj.addProcUnit(datatype='ParametersProc', inputId=procUnitConfObj1.getId()) |
|
174 | 174 | opObj16 = procUnitConfObj2.addOperation(name='SpectralMoments', optype='other') |
|
175 | 175 | |
|
176 | 176 | |
|
177 | 177 | #Using HDFWriter:::: |
|
178 | 178 | ##....................................................................................... |
|
179 | 179 | ##....................................................................................... |
|
180 | 180 | opObj17 = procUnitConfObj2.addOperation(name='HDFWriter', optype='external') |
|
181 | 181 | opObj17.addParameter(name='path', value=outPath) |
|
182 | 182 | opObj17.addParameter(name='blocksPerFile', value='10', format='int') |
|
183 | 183 | opObj17.addParameter(name='metadataList',value='type,inputUnit,heightList',format='list') |
|
184 | 184 | opObj17.addParameter(name='dataList',value='moments,data_SNR,utctime',format='list') |
|
185 | ||
|
185 | ||
|
186 | 186 | |
|
187 | 187 | |
|
188 | 188 | ##....................................................................................... |
|
189 | 189 | ##....................................................................................... |
|
190 |
#print("Escribiendo el archivo XML",controllerObj.writeXml( |
|
|
190 | #print("Escribiendo el archivo XML",controllerObj.writeXml(outPath +'/'+filename)) | |
|
191 | 191 | |
|
192 | 192 | controllerObj.start() |
|
193 | 193 | |
|
194 |
#print("Leyendo el archivo XML",controllerObj.readXml( |
|
|
194 | #print("Leyendo el archivo XML",controllerObj.readXml(outPath +'/'+filename)) | |
|
195 | 195 | |
|
196 | 196 | ##....................................................................................... |
|
197 | 197 | ##....................................................................................... |
|
198 | 198 | |
|
199 | 199 | if __name__ == '__main__': |
|
200 | 200 | import time |
|
201 | 201 | start_time = time.time() |
|
202 | 202 | main() |
|
203 | 203 | print("--- %s seconds ---" % (time.time() - start_time)) |
|
1 | NO CONTENT: file was removed |
General Comments 0
You need to be logged in to leave comments.
Login now