@@ -3976,8 +3976,8 class WeatherRadar(Operation): | |||||
3976 | data_param[:,0,:] = dataOut.data_POW/(factor) |
|
3976 | data_param[:,0,:] = dataOut.data_POW/(factor) | |
3977 | data_param[:,1,:] = dataOut.data_DOP |
|
3977 | data_param[:,1,:] = dataOut.data_DOP | |
3978 | data_param[:,2,:] = dataOut.data_WIDTH |
|
3978 | data_param[:,2,:] = dataOut.data_WIDTH | |
3979 |
data_param[:,3,:] = dataOut.data_SNR |
|
3979 | data_param[:,3,:] = dataOut.data_SNR | |
3980 |
|
3980 | |||
3981 | return data_param |
|
3981 | return data_param | |
3982 |
|
3982 | |||
3983 | def getCoeficienteCorrelacionROhv_R(self,dataOut): |
|
3983 | def getCoeficienteCorrelacionROhv_R(self,dataOut): | |
@@ -4041,9 +4041,9 class WeatherRadar(Operation): | |||||
4041 | #print("Pr last10",10*numpy.log10(Pr[0,-20:])) |
|
4041 | #print("Pr last10",10*numpy.log10(Pr[0,-20:])) | |
4042 | #print("LCTE",10*numpy.log10(self.lambda_**4/( numpy.pi**5 * self.Km**2))) |
|
4042 | #print("LCTE",10*numpy.log10(self.lambda_**4/( numpy.pi**5 * self.Km**2))) | |
4043 | if self.Pt<0.3: |
|
4043 | if self.Pt<0.3: | |
4044 |
factor= |
|
4044 | factor=17 | |
4045 | else: |
|
4045 | else: | |
4046 | factor=0 |
|
4046 | factor=30 | |
4047 |
|
4047 | |||
4048 | dBZeh = 10*numpy.log10(Zeh) + factor |
|
4048 | dBZeh = 10*numpy.log10(Zeh) + factor | |
4049 | if type=='N': |
|
4049 | if type=='N': | |
@@ -4068,7 +4068,7 class WeatherRadar(Operation): | |||||
4068 | self.setup(dataOut= dataOut,variableList=variableList,Pt=Pt,Gt=Gt,Gr=Gr,Glna=Glna,lambda_=lambda_, aL=aL, |
|
4068 | self.setup(dataOut= dataOut,variableList=variableList,Pt=Pt,Gt=Gt,Gr=Gr,Glna=Glna,lambda_=lambda_, aL=aL, | |
4069 | tauW= tauW,thetaT=thetaT,thetaR=thetaR,Km =Km) |
|
4069 | tauW= tauW,thetaT=thetaT,thetaR=thetaR,Km =Km) | |
4070 | self.isConfig = True |
|
4070 | self.isConfig = True | |
4071 |
|
4071 | |||
4072 | dataOut.data_param = self.setMoments(dataOut) |
|
4072 | dataOut.data_param = self.setMoments(dataOut) | |
4073 |
|
4073 | |||
4074 | for i in range(len(self.variableList)): |
|
4074 | for i in range(len(self.variableList)): | |
@@ -4175,7 +4175,7 class PedestalInformation(Operation): | |||||
4175 | continue |
|
4175 | continue | |
4176 | sigma_ele = numpy.nanstd(ele[start:start+sample_max]) |
|
4176 | sigma_ele = numpy.nanstd(ele[start:start+sample_max]) | |
4177 | sigma_azi = numpy.nanstd(azi[start:start+sample_max]) |
|
4177 | sigma_azi = numpy.nanstd(azi[start:start+sample_max]) | |
4178 |
|
4178 | |||
4179 | if sigma_ele<.5 and sigma_azi<.5: |
|
4179 | if sigma_ele<.5 and sigma_azi<.5: | |
4180 | if sigma_ele<sigma_azi: |
|
4180 | if sigma_ele<sigma_azi: | |
4181 | flag_mode = 'PPI' |
|
4181 | flag_mode = 'PPI' | |
@@ -4213,7 +4213,7 class PedestalInformation(Operation): | |||||
4213 | mode = self.find_mode(index) |
|
4213 | mode = self.find_mode(index) | |
4214 | else: |
|
4214 | else: | |
4215 | mode = self.mode |
|
4215 | mode = self.mode | |
4216 |
|
4216 | |||
4217 | if mode is not None: |
|
4217 | if mode is not None: | |
4218 | return self.fp['Data']['azi_pos'][index], self.fp['Data']['ele_pos'][index], mode |
|
4218 | return self.fp['Data']['azi_pos'][index], self.fp['Data']['ele_pos'][index], mode | |
4219 | else: |
|
4219 | else: | |
@@ -4309,8 +4309,8 class Block360(Operation): | |||||
4309 | ''' |
|
4309 | ''' | |
4310 | Add a profile to he __buffer and increase in one the __profiel Index |
|
4310 | Add a profile to he __buffer and increase in one the __profiel Index | |
4311 | ''' |
|
4311 | ''' | |
4312 |
tmp= getattr(data, attr) |
|
4312 | tmp= getattr(data, attr) | |
4313 |
|
4313 | |||
4314 | self.__buffer.append(tmp) |
|
4314 | self.__buffer.append(tmp) | |
4315 | self.__buffer2.append(data.azimuth) |
|
4315 | self.__buffer2.append(data.azimuth) | |
4316 | self.__buffer3.append(data.elevation) |
|
4316 | self.__buffer3.append(data.elevation) | |
@@ -4326,8 +4326,8 class Block360(Operation): | |||||
4326 | ''' |
|
4326 | ''' | |
4327 | Return the PULSEPAIR and the profiles used in the operation |
|
4327 | Return the PULSEPAIR and the profiles used in the operation | |
4328 | Affected : self.__profileIndex |
|
4328 | Affected : self.__profileIndex | |
4329 |
''' |
|
4329 | ''' | |
4330 |
|
4330 | |||
4331 | data_360 = numpy.array(self.__buffer).transpose(1, 0, 2) |
|
4331 | data_360 = numpy.array(self.__buffer).transpose(1, 0, 2) | |
4332 | data_snr = numpy.array(self.__buffer4).transpose(1, 0, 2) |
|
4332 | data_snr = numpy.array(self.__buffer4).transpose(1, 0, 2) | |
4333 | data_p = numpy.array(self.__buffer2) |
|
4333 | data_p = numpy.array(self.__buffer2) | |
@@ -4427,7 +4427,7 class Block360(Operation): | |||||
4427 | dataOut.attr_data = attr_data |
|
4427 | dataOut.attr_data = attr_data | |
4428 | dataOut.runNextOp = runNextOp |
|
4428 | dataOut.runNextOp = runNextOp | |
4429 | dataOut.flagAskMode = False |
|
4429 | dataOut.flagAskMode = False | |
4430 |
|
4430 | |||
4431 | if dataOut.mode_op == 'PPI': |
|
4431 | if dataOut.mode_op == 'PPI': | |
4432 | dataOut.flagMode = 1 |
|
4432 | dataOut.flagMode = 1 | |
4433 | elif dataOut.mode_op == 'RHI': |
|
4433 | elif dataOut.mode_op == 'RHI': | |
@@ -4445,7 +4445,7 class Block360(Operation): | |||||
4445 | setattr(dataOut, attr_data, data_360 ) |
|
4445 | setattr(dataOut, attr_data, data_360 ) | |
4446 | dataOut.data_snr = data_snr |
|
4446 | dataOut.data_snr = data_snr | |
4447 | dataOut.data_azi = data_p + 26.2 |
|
4447 | dataOut.data_azi = data_p + 26.2 | |
4448 |
dataOut.data_azi[dataOut.data_azi>360] = dataOut.data_azi[dataOut.data_azi>360] - 360 |
|
4448 | dataOut.data_azi[dataOut.data_azi>360] = dataOut.data_azi[dataOut.data_azi>360] - 360 | |
4449 | dataOut.data_ele = data_e |
|
4449 | dataOut.data_ele = data_e | |
4450 | dataOut.utctime = avgdatatime |
|
4450 | dataOut.utctime = avgdatatime | |
4451 | dataOut.flagNoData = False |
|
4451 | dataOut.flagNoData = False | |
@@ -4525,15 +4525,14 class MergeProc(ProcessingUnit): | |||||
4525 |
|
4525 | |||
4526 | f = [getattr(data, attr_data) for data in data_inputs][0] |
|
4526 | f = [getattr(data, attr_data) for data in data_inputs][0] | |
4527 | g = [getattr(data, attr_data) for data in data_inputs][1] |
|
4527 | g = [getattr(data, attr_data) for data in data_inputs][1] | |
4528 |
data = numpy.concatenate((f,g),axis=2) |
|
4528 | data = numpy.concatenate((f,g),axis=2) | |
4529 | setattr(self.dataOut, attr_data, data) |
|
4529 | setattr(self.dataOut, attr_data, data) | |
4530 |
|
4530 | |||
4531 | # snr |
|
4531 | # snr | |
4532 | self.dataOut.data_snr = numpy.concatenate((data_inputs[0].data_snr, data_inputs[1].data_snr), axis=2) |
|
4532 | self.dataOut.data_snr = numpy.concatenate((data_inputs[0].data_snr, data_inputs[1].data_snr), axis=2) | |
4533 |
|
4533 | |||
4534 | # ranges |
|
4534 | # ranges | |
4535 | dh = self.dataOut.heightList[1]-self.dataOut.heightList[0] |
|
4535 | dh = self.dataOut.heightList[1]-self.dataOut.heightList[0] | |
4536 | heightList_2 = (self.dataOut.heightList[-1]+dh) + numpy.arange(g.shape[-1], dtype=numpy.float) * dh |
|
4536 | heightList_2 = (self.dataOut.heightList[-1]+dh) + numpy.arange(g.shape[-1], dtype=numpy.float) * dh | |
4537 |
|
4537 | |||
4538 | self.dataOut.heightList = numpy.concatenate((self.dataOut.heightList,heightList_2)) |
|
4538 | self.dataOut.heightList = numpy.concatenate((self.dataOut.heightList,heightList_2)) | |
4539 |
|
General Comments 0
You need to be logged in to leave comments.
Login now