Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modify BUFR converter and filter yamls for MetoOp Scatwind #731

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion parm/atm/obs/config/satwind_goes-16.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ obs space:
obsdataout:
engine:
type: H5File
obsfile: $(DATA)/diags/diag_satwind_abi_goes-16_{{ current_cycle | to_YMDH }}.nc4
obsfile: $(DATA)/diags/diag_satwind_abi_goes-16_{{ current_cycle | to_YMDH }}.nc
io pool:
max pool size: 1
simulated variables: [windEastward, windNorthward]
Expand Down
2 changes: 1 addition & 1 deletion parm/atm/obs/config/satwind_goes-17.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ obs space:
obsdataout:
engine:
type: H5File
obsfile: $(DATA)/diags/diag_satwind_abi_goes-17_{{ current_cycle | to_YMDH }}.nc4
obsfile: $(DATA)/diags/diag_satwind_abi_goes-17_{{ current_cycle | to_YMDH }}.nc
io pool:
max pool size: 1
simulated variables: [windEastward, windNorthward]
Expand Down
18 changes: 16 additions & 2 deletions parm/atm/obs/config/scatwind_metop-a.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ obs space:
obsdatain:
engine:
type: H5File
obsfile: $(DATA)/obs/$(OPREFIX)ascatw.ascat_metop-a.{{ current_cycle | to_YMDH }}.nc4
obsfile: $(DATA)/obs/$(OPREFIX)ascatw.ascat_metop-a.tm00.nc
obsdataout:
engine:
type: H5File
obsfile: $(DATA)/diags/diag_ascatw_ascat_metop-a_{{ current_cycle | to_YMDH }}.nc4
obsfile: $(DATA)/diags/diag_ascatw_ascat_metop-a_{{ current_cycle | to_YMDH }}.nc
io pool:
max pool size: 1
simulated variables: [windEastward, windNorthward]
Expand All @@ -23,6 +23,20 @@ obs operator:
hofx scaling field: SurfaceWindScalingHeight
hofx scaling field group: DerivedVariables

linear obs operator:
name: VertInterp
vertical coordinate: geopotential_height
observation vertical coordinate group: DerivedVariables
observation vertical coordinate: adjustedHeight
interpolation method: linear

obs pre filters:
- filter: Gaussian Thinning
horizontal_mesh: 75
use_reduced_horizontal_grid: true
round_horizontal_bin_count_to_nearest: true
partition_longitude_bins_using_mesh: true

obs prior filters:
# Apply variable changes needed for rescaled height coordinate
- filter: Variable Transforms
Expand Down
18 changes: 16 additions & 2 deletions parm/atm/obs/config/scatwind_metop-b.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ obs space:
obsdatain:
engine:
type: H5File
obsfile: $(DATA)/obs/$(OPREFIX)ascatw.ascat_metop-b.{{ current_cycle | to_YMDH }}.nc4
obsfile: $(DATA)/obs/$(OPREFIX)ascatw.ascat_metop-b.tm00.nc
obsdataout:
engine:
type: H5File
obsfile: $(DATA)/diags/diag_ascatw_ascat_metop-b_{{ current_cycle | to_YMDH }}.nc4
obsfile: $(DATA)/diags/diag_ascatw_ascat_metop-b_{{ current_cycle | to_YMDH }}.nc
io pool:
max pool size: 1
simulated variables: [windEastward, windNorthward]
Expand All @@ -23,6 +23,20 @@ obs operator:
hofx scaling field: SurfaceWindScalingHeight
hofx scaling field group: DerivedVariables

linear obs operator:
name: VertInterp
vertical coordinate: geopotential_height
observation vertical coordinate group: DerivedVariables
observation vertical coordinate: adjustedHeight
interpolation method: linear

obs pre filters:
- filter: Gaussian Thinning
horizontal_mesh: 75
use_reduced_horizontal_grid: true
round_horizontal_bin_count_to_nearest: true
partition_longitude_bins_using_mesh: true

obs prior filters:
# Apply variable changes needed for rescaled height coordinate
- filter: Variable Transforms
Expand Down
22 changes: 10 additions & 12 deletions ush/ioda/bufr2ioda/bufr2ioda_satwind_scat.py
Original file line number Diff line number Diff line change
Expand Up @@ -169,6 +169,9 @@ def bufr_to_ioda(config, logger):
logger.debug('Creating derived variables - observation height')
height = np.full_like(lat, 10.)

logger.debug('Creating derived variables - station elevation')
stnelv = np.full_like(lat, 0.)

end_time = time.time()
running_time = end_time - start_time
logger.debug(f'Processing time for creating derived variables : {running_time} seconds')
Expand Down Expand Up @@ -209,6 +212,7 @@ def bufr_to_ioda(config, logger):
timestamp2 = timestamp[mask]
pressure2 = pressure[mask]
height2 = height[mask]
stnelv2 = stnelv[mask]
obstype2 = obstype[mask]

# QC Info
Expand Down Expand Up @@ -299,6 +303,12 @@ def bufr_to_ioda(config, logger):
.write_attr('long_name', 'Height of Observation') \
.write_data(height2)

# Station Elevation
obsspace.create_var('MetaData/stationElevation', dtype=stnelv2.dtype, fillval=stnelv2.fill_value) \
.write_attr('units', 'm') \
.write_attr('long_name', 'Station Elevation') \
.write_data(stnelv2)

# ObsType based on sensor type
obsspace.create_var('ObsType/windEastward', dtype=obstype2.dtype, fillval=obstype2.fill_value) \
.write_attr('long_name', 'PrepBUFR Report Type') \
Expand All @@ -309,18 +319,6 @@ def bufr_to_ioda(config, logger):
.write_attr('long_name', 'PrepBUFR Report Type') \
.write_data(obstype2)

# Wind Speed
obsspace.create_var('ObsValue/windSpeed', dtype=wspd2.dtype, fillval=wspd2.fill_value) \
.write_attr('units', 'm s-1') \
.write_attr('long_name', 'Wind Speed at 10 Meters') \
.write_data(wspd2)

# Wind Direction
obsspace.create_var('ObsValue/windDirection', dtype=wdir2.dtype, fillval=wdir2.fill_value) \
.write_attr('units', 'degrees') \
.write_attr('long_name', 'Wind Direction at 10 Meters') \
.write_data(wdir2)

# U-Wind Component
obsspace.create_var('ObsValue/windEastward', dtype=uob2.dtype, fillval=uob2.fill_value) \
.write_attr('units', 'm s-1') \
Expand Down
Loading