Handle missing wind data; ensure samples by height are included
This commit is contained in:
parent
1046b1c22d
commit
b8903a69f8
1 changed files with 15 additions and 2 deletions
|
@ -92,8 +92,15 @@ class BUFRSounding(Sounding):
|
|||
else:
|
||||
sample = sounding.sample_by_pressure(pressure)
|
||||
|
||||
sample.wind_speed = item.getNumber('wsMan')
|
||||
sample.wind_dir = item.getNumber('wdMan')
|
||||
if height != -9999.0:
|
||||
sample.height = height
|
||||
|
||||
wind_dir = item.getNumber('wsMan')
|
||||
wind_speed = item.getNumber('wdMan')
|
||||
|
||||
if wind_dir != -9999.0 and wind_speed != -9999.0:
|
||||
sample.wind_speed = wind_dir
|
||||
sample.wind_dir = wind_speed
|
||||
|
||||
if set(params) & BUFRSounding.BUFR_PARAMS_SIGT:
|
||||
pressure = item.getNumber('prSigT') / 100.0
|
||||
|
@ -111,10 +118,16 @@ class BUFRSounding(Sounding):
|
|||
else:
|
||||
sample = sounding.sample_by_pressure(pressure)
|
||||
|
||||
if height != -9999.0:
|
||||
sample.height = height
|
||||
|
||||
sample.wind_speed = item.getNumber('wsSigW')
|
||||
sample.wind_dir = item.getNumber('wdSigW')
|
||||
|
||||
for pressure in sorted(sounding.samples_by_pressure.keys(), reverse=True):
|
||||
sounding.samples.append(sounding.samples_by_pressure[pressure])
|
||||
|
||||
for height in sorted(sounding.samples_by_height.keys()):
|
||||
sounding.samples.append(sounding.samples_by_height[height])
|
||||
|
||||
return sounding
|
||||
|
|
Loading…
Add table
Reference in a new issue