@@ -1,146 +1,147 | |||||
1 | import os, sys |
|
1 | import os, sys | |
2 |
|
2 | |||
3 | path = os.path.split(os.getcwd())[0] |
|
3 | path = os.path.split(os.getcwd())[0] | |
4 | sys.path.append(path) |
|
4 | sys.path.append(path) | |
5 |
|
5 | |||
6 | from controller import * |
|
6 | from controller import * | |
7 |
|
7 | |||
8 | desc = "AMISR Experiment" |
|
8 | desc = "AMISR Experiment" | |
9 |
|
9 | |||
10 | filename = "amisr_reader.xml" |
|
10 | filename = "amisr_reader.xml" | |
11 |
|
11 | |||
12 | controllerObj = Project() |
|
12 | controllerObj = Project() | |
13 |
|
13 | |||
14 | controllerObj.setup(id = '191', name='test01', description=desc) |
|
14 | controllerObj.setup(id = '191', name='test01', description=desc) | |
15 |
|
15 | |||
16 |
|
16 | |||
17 | path = os.path.join(os.environ['HOME'],'Development/amisr/data') |
|
17 | path = os.path.join(os.environ['HOME'],'Development/amisr/data') | |
18 | path = '/home/soporte/Data/AMISR' |
|
18 | path = '/home/soporte/Data/AMISR' | |
19 | figpath = os.path.join(os.environ['HOME'],'Pictures/amisr') |
|
19 | figpath = os.path.join(os.environ['HOME'],'Pictures/amisr') | |
20 |
|
20 | |||
21 | pathFigure = '/home/soporte/workspace/Graficos/DBS/amisr/' |
|
21 | pathFigure = '/home/operaciones/Documents/AMISR_windprofiler/20141023' | |
22 |
xmin = ' |
|
22 | xmin = '8.0' | |
23 |
xmax = '1 |
|
23 | xmax = '12.0' | |
24 |
|
24 | |||
25 | readUnitConfObj = controllerObj.addReadUnit(datatype='AMISRReader', |
|
25 | readUnitConfObj = controllerObj.addReadUnit(datatype='AMISRReader', | |
26 | path=path, |
|
26 | path=path, | |
27 |
startDate='2014/10/2 |
|
27 | startDate='2014/10/23', | |
28 |
endDate='2014/10/2 |
|
28 | endDate='2014/10/23', | |
29 | startTime='00:00:00', |
|
29 | startTime='00:00:00', | |
30 | endTime='23:59:59', |
|
30 | endTime='23:59:59', | |
31 | walk=1, |
|
31 | walk=1, | |
32 | timezone='lt') |
|
32 | timezone='lt') | |
33 |
|
33 | |||
34 | #AMISR Processing Unit |
|
34 | #AMISR Processing Unit | |
35 | procUnitAMISRBeam0 = controllerObj.addProcUnit(datatype='AMISRProc', inputId=readUnitConfObj.getId()) |
|
35 | procUnitAMISRBeam0 = controllerObj.addProcUnit(datatype='AMISRProc', inputId=readUnitConfObj.getId()) | |
36 |
|
36 | |||
37 | opObj11 = procUnitAMISRBeam0.addOperation(name='PrintInfo', optype='other') |
|
37 | opObj11 = procUnitAMISRBeam0.addOperation(name='PrintInfo', optype='other') | |
38 |
|
38 | |||
39 | #Reshaper |
|
39 | #Reshaper | |
40 | opObj11 = procUnitAMISRBeam0.addOperation(name='ProfileToChannels', optype='other') |
|
40 | opObj11 = procUnitAMISRBeam0.addOperation(name='ProfileToChannels', optype='other') | |
41 |
|
41 | |||
42 |
|
42 | |||
43 | #Beam Selector |
|
43 | #Beam Selector | |
44 | #opObj11 = procUnitAMISRBeam0.addOperation(name='BeamSelector', optype='other') |
|
44 | #opObj11 = procUnitAMISRBeam0.addOperation(name='BeamSelector', optype='other') | |
45 | #opObj11.addParameter(name='beam', value='0', format='int') |
|
45 | #opObj11.addParameter(name='beam', value='0', format='int') | |
46 |
|
46 | |||
47 | #Voltage Processing Unit |
|
47 | #Voltage Processing Unit | |
48 | procUnitConfObjBeam0 = controllerObj.addProcUnit(datatype='VoltageProc', inputId=procUnitAMISRBeam0.getId()) |
|
48 | procUnitConfObjBeam0 = controllerObj.addProcUnit(datatype='VoltageProc', inputId=procUnitAMISRBeam0.getId()) | |
49 | opObj10 = procUnitConfObjBeam0.addOperation(name='setRadarFrequency') |
|
49 | opObj10 = procUnitConfObjBeam0.addOperation(name='setRadarFrequency') | |
50 | opObj10.addParameter(name='frequency', value='445e6', format='float') |
|
50 | opObj10.addParameter(name='frequency', value='445e6', format='float') | |
51 |
|
51 | |||
52 | opObj12 = procUnitConfObjBeam0.addOperation(name='selectHeights') |
|
52 | opObj12 = procUnitConfObjBeam0.addOperation(name='selectHeights') | |
53 | opObj12.addParameter(name='minHei', value='0', format='float') |
|
53 | opObj12.addParameter(name='minHei', value='0', format='float') | |
54 | opObj12.addParameter(name='maxHei', value='10', format='float') |
|
54 | opObj12.addParameter(name='maxHei', value='10', format='float') | |
55 | #Coherent Integration |
|
55 | #Coherent Integration | |
56 | opObj11 = procUnitConfObjBeam0.addOperation(name='CohInt', optype='other') |
|
56 | opObj11 = procUnitConfObjBeam0.addOperation(name='CohInt', optype='other') | |
57 | opObj11.addParameter(name='n', value='8', format='int') |
|
57 | opObj11.addParameter(name='n', value='8', format='int') | |
58 | #Spectra Unit Processing, getting spectras with nProfiles and nFFTPoints |
|
58 | #Spectra Unit Processing, getting spectras with nProfiles and nFFTPoints | |
59 | procUnitConfObjSpectraBeam0 = controllerObj.addProcUnit(datatype='SpectraProc', inputId=procUnitConfObjBeam0.getId()) |
|
59 | procUnitConfObjSpectraBeam0 = controllerObj.addProcUnit(datatype='SpectraProc', inputId=procUnitConfObjBeam0.getId()) | |
60 | procUnitConfObjSpectraBeam0.addParameter(name='nFFTPoints', value=32, format='int') |
|
60 | procUnitConfObjSpectraBeam0.addParameter(name='nFFTPoints', value=32, format='int') | |
61 | procUnitConfObjSpectraBeam0.addParameter(name='nProfiles', value=32, format='int') |
|
61 | procUnitConfObjSpectraBeam0.addParameter(name='nProfiles', value=32, format='int') | |
62 |
|
62 | |||
63 | opObj11 = procUnitConfObjSpectraBeam0.addOperation(name='IncohInt', optype='other') |
|
63 | opObj11 = procUnitConfObjSpectraBeam0.addOperation(name='IncohInt', optype='other') | |
64 | opObj11.addParameter(name='n', value='16', format='int') |
|
64 | opObj11.addParameter(name='n', value='16', format='int') | |
65 |
|
65 | |||
66 | #RemoveDc |
|
66 | #RemoveDc | |
67 | opObj11 = procUnitConfObjSpectraBeam0.addOperation(name='removeDC') |
|
67 | opObj11 = procUnitConfObjSpectraBeam0.addOperation(name='removeDC') | |
68 |
|
68 | |||
69 | #Noise Estimation |
|
69 | #Noise Estimation | |
70 | opObj11 = procUnitConfObjSpectraBeam0.addOperation(name='getNoise') |
|
70 | opObj11 = procUnitConfObjSpectraBeam0.addOperation(name='getNoise') | |
71 | opObj11.addParameter(name='minHei', value='5', format='float') |
|
71 | opObj11.addParameter(name='minHei', value='5', format='float') | |
72 | opObj11.addParameter(name='maxHei', value='20', format='float') |
|
72 | opObj11.addParameter(name='maxHei', value='20', format='float') | |
73 |
|
73 | |||
74 | #SpectraPlot |
|
74 | #SpectraPlot | |
75 | opObj11 = procUnitConfObjSpectraBeam0.addOperation(name='SpectraPlot', optype='other') |
|
75 | opObj11 = procUnitConfObjSpectraBeam0.addOperation(name='SpectraPlot', optype='other') | |
76 | opObj11.addParameter(name='id', value='100', format='int') |
|
76 | opObj11.addParameter(name='id', value='100', format='int') | |
77 | opObj11.addParameter(name='wintitle', value='AMISR Beam 0', format='str') |
|
77 | opObj11.addParameter(name='wintitle', value='AMISR Beam 0', format='str') | |
78 | opObj11.addParameter(name='zmin', value='30', format='int') |
|
78 | opObj11.addParameter(name='zmin', value='30', format='int') | |
79 | opObj11.addParameter(name='zmax', value='80', format='int') |
|
79 | opObj11.addParameter(name='zmax', value='80', format='int') | |
80 | opObj11.addParameter(name='save', value='1', format='bool') |
|
80 | opObj11.addParameter(name='save', value='1', format='bool') | |
81 | opObj11.addParameter(name='figpath', value = pathFigure, format='str') |
|
81 | opObj11.addParameter(name='figpath', value = pathFigure, format='str') | |
82 | #RTIPlot |
|
82 | #RTIPlot | |
83 | #title0 = 'RTI AMISR Beam 0' |
|
83 | #title0 = 'RTI AMISR Beam 0' | |
84 | opObj11 = procUnitConfObjSpectraBeam0.addOperation(name='RTIPlot', optype='other') |
|
84 | opObj11 = procUnitConfObjSpectraBeam0.addOperation(name='RTIPlot', optype='other') | |
85 | opObj11.addParameter(name='id', value='200', format='int') |
|
85 | opObj11.addParameter(name='id', value='200', format='int') | |
86 | # opObj11.addParameter(name='wintitle', value=title0, format='str') |
|
86 | # opObj11.addParameter(name='wintitle', value=title0, format='str') | |
87 | opObj11.addParameter(name='showprofile', value='0', format='int') |
|
87 | opObj11.addParameter(name='showprofile', value='0', format='int') | |
88 | #Setting RTI time using xmin,xmax |
|
|||
89 | opObj11.addParameter(name='xmin', value=xmin, format='float') |
|
88 | opObj11.addParameter(name='xmin', value=xmin, format='float') | |
90 | opObj11.addParameter(name='xmax', value=xmax, format='float') |
|
89 | opObj11.addParameter(name='xmax', value=xmax, format='float') | |
91 | # Setting dB range with zmin, zmax |
|
90 | opObj11.addParameter(name='zmin', value='30', format='int') | |
92 |
opObj11.addParameter(name='zm |
|
91 | opObj11.addParameter(name='zmax', value='80', format='int') | |
93 |
opObj |
|
92 | opObj23.addParameter(name='save', value='1', format='bool') | |
|
93 | opObj23.addParameter(name='figpath', value = pathFigure, format='str') | |||
|
94 | ||||
94 | # Save RTI |
|
95 | # Save RTI | |
95 | # figfile0 = 'amisr_rti_beam0.png' |
|
96 | # figfile0 = 'amisr_rti_beam0.png' | |
96 | # opObj11.addParameter(name='figpath', value=figpath, format='str') |
|
97 | # opObj11.addParameter(name='figpath', value=figpath, format='str') | |
97 | # opObj11.addParameter(name='figfile', value=figfile0, format='str') |
|
98 | # opObj11.addParameter(name='figfile', value=figfile0, format='str') | |
98 |
|
99 | |||
99 | #----------------------------------------------------------------------------------------------- |
|
100 | #----------------------------------------------------------------------------------------------- | |
100 | procUnitConfObj2 = controllerObj.addProcUnit(datatype='ParametersProc', inputId=procUnitConfObjSpectraBeam0 .getId()) |
|
101 | procUnitConfObj2 = controllerObj.addProcUnit(datatype='ParametersProc', inputId=procUnitConfObjSpectraBeam0 .getId()) | |
101 | opObj20 = procUnitConfObj2.addOperation(name='GetMoments') |
|
102 | opObj20 = procUnitConfObj2.addOperation(name='GetMoments') | |
102 |
|
103 | |||
103 | opObj21 = procUnitConfObj2.addOperation(name='MomentsPlot', optype='other') |
|
104 | opObj21 = procUnitConfObj2.addOperation(name='MomentsPlot', optype='other') | |
104 | opObj21.addParameter(name='id', value='3', format='int') |
|
105 | opObj21.addParameter(name='id', value='3', format='int') | |
105 | opObj21.addParameter(name='wintitle', value='Moments Plot', format='str') |
|
106 | opObj21.addParameter(name='wintitle', value='Moments Plot', format='str') | |
106 | opObj21.addParameter(name='save', value='1', format='bool') |
|
107 | opObj21.addParameter(name='save', value='1', format='bool') | |
107 | opObj21.addParameter(name='figpath', value=pathFigure, format='str') |
|
108 | opObj21.addParameter(name='figpath', value=pathFigure, format='str') | |
108 | opObj21.addParameter(name='zmin', value='30', format='int') |
|
109 | opObj21.addParameter(name='zmin', value='30', format='int') | |
109 | opObj21.addParameter(name='zmax', value='80', format='int') |
|
110 | opObj21.addParameter(name='zmax', value='80', format='int') | |
110 |
|
111 | |||
111 | opObj22 = procUnitConfObj2.addOperation(name='WindProfiler', optype='other') |
|
112 | opObj22 = procUnitConfObj2.addOperation(name='WindProfiler', optype='other') | |
112 | opObj22.addParameter(name='technique', value='DBS', format='str') |
|
113 | opObj22.addParameter(name='technique', value='DBS', format='str') | |
113 | opObj22.addParameter(name='correctAzimuth', value='51.06', format='float') |
|
114 | opObj22.addParameter(name='correctAzimuth', value='51.06', format='float') | |
114 | opObj22.addParameter(name='correctFactor', value='-1', format='float') |
|
115 | opObj22.addParameter(name='correctFactor', value='-1', format='float') | |
115 |
opObj22.addParameter(name='azimuth', value='0, |
|
116 | opObj22.addParameter(name='azimuth', value='0,-90,0,90,180', format='floatlist') | |
116 |
opObj22.addParameter(name='elevation', value='74.53,75. |
|
117 | opObj22.addParameter(name='elevation', value='74.53,75.90.0,75.60,75.60', format='floatlist') | |
117 | # opObj22.addParameter(name='horizontalOnly', value='1', format='bool') |
|
118 | # opObj22.addParameter(name='horizontalOnly', value='1', format='bool') | |
118 | # opObj22.addParameter(name='channelList', value='1,2', format='intlist') |
|
119 | # opObj22.addParameter(name='channelList', value='1,2', format='intlist') | |
119 |
|
120 | |||
120 | opObj23 = procUnitConfObj2.addOperation(name='WindProfilerPlot', optype='other') |
|
121 | opObj23 = procUnitConfObj2.addOperation(name='WindProfilerPlot', optype='other') | |
121 | opObj23.addParameter(name='id', value='4', format='int') |
|
122 | opObj23.addParameter(name='id', value='4', format='int') | |
122 | opObj23.addParameter(name='wintitle', value='Wind Profiler', format='str') |
|
123 | opObj23.addParameter(name='wintitle', value='Wind Profiler', format='str') | |
123 | opObj23.addParameter(name='save', value='1', format='bool') |
|
124 | opObj23.addParameter(name='save', value='1', format='bool') | |
124 | opObj23.addParameter(name='figpath', value = pathFigure, format='str') |
|
125 | opObj23.addParameter(name='figpath', value = pathFigure, format='str') | |
125 | opObj23.addParameter(name='zmin', value='-20', format='int') |
|
126 | opObj23.addParameter(name='zmin', value='-20', format='int') | |
126 | opObj23.addParameter(name='zmax', value='20', format='int') |
|
127 | opObj23.addParameter(name='zmax', value='20', format='int') | |
127 | opObj23.addParameter(name='zmin_ver', value='-100', format='float') |
|
128 | opObj23.addParameter(name='zmin_ver', value='-100', format='float') | |
128 | opObj23.addParameter(name='zmax_ver', value='100', format='float') |
|
129 | opObj23.addParameter(name='zmax_ver', value='100', format='float') | |
129 |
opObj23.addParameter(name='SNRmin', value='- |
|
130 | opObj23.addParameter(name='SNRmin', value='-20', format='int') | |
130 |
opObj23.addParameter(name='SNRmax', value=' |
|
131 | opObj23.addParameter(name='SNRmax', value='30', format='int') | |
131 | opObj23.addParameter(name='SNRthresh', value='0', format='float') |
|
132 | opObj23.addParameter(name='SNRthresh', value='-50', format='float') | |
132 | opObj23.addParameter(name='xmin', value=xmin, format='float') |
|
133 | opObj23.addParameter(name='xmin', value=xmin, format='float') | |
133 | opObj23.addParameter(name='xmax', value=xmax, format='float') |
|
134 | opObj23.addParameter(name='xmax', value=xmax, format='float') | |
134 |
|
135 | |||
135 | print "Escribiendo el archivo XML" |
|
136 | print "Escribiendo el archivo XML" | |
136 | controllerObj.writeXml(filename) |
|
137 | controllerObj.writeXml(filename) | |
137 | print "Leyendo el archivo XML" |
|
138 | print "Leyendo el archivo XML" | |
138 | controllerObj.readXml(filename) |
|
139 | controllerObj.readXml(filename) | |
139 |
|
140 | |||
140 | controllerObj.createObjects() |
|
141 | controllerObj.createObjects() | |
141 | controllerObj.connectObjects() |
|
142 | controllerObj.connectObjects() | |
142 | controllerObj.run() |
|
143 | controllerObj.run() | |
143 |
|
144 | |||
144 | #21 3 pm |
|
145 | #21 3 pm | |
145 |
|
146 | |||
146 |
|
147 |
General Comments 0
You need to be logged in to leave comments.
Login now