diff --git a/modulefiles/GDAS/orion.lua b/modulefiles/GDAS/orion.lua index 8bff5b6c0..00ddecce0 100644 --- a/modulefiles/GDAS/orion.lua +++ b/modulefiles/GDAS/orion.lua @@ -6,7 +6,7 @@ local pkgName = myModuleName() local pkgVersion = myModuleVersion() local pkgNameVer = myModuleFullName() -prepend_path("MODULEPATH", '/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.5.0/envs/unified-env/install/modulefiles/Core') +prepend_path("MODULEPATH", '/work/noaa/epic/role-epic/spack-stack/orion/spack-stack-1.5.1/envs/unified-env/install/modulefiles/Core') prepend_path("MODULEPATH", '/work2/noaa/da/python/opt/modulefiles/stack') -- below two lines get us access to the spack-stack modules @@ -27,7 +27,7 @@ load("nco/5.0.6") load("parallelio/2.5.10") load("wget/1.14") load("boost/1.78") -load("bufr/12.0.0") +load("bufr/12.0.1") load("git-lfs/2.12.0") load("ecbuild/3.7.2") load("openjpeg/2.3.1") @@ -39,7 +39,7 @@ load("fftw/3.3.10") load("fckit/0.11.0") load("fiat/1.2.0") load("ectrans/1.2.0") -load("atlas/0.34.0") +load("atlas/0.35.0") load("sp/2.3.3") load("gsl-lite/0.37.0") load("libjpeg/2.1.0") diff --git a/parm/atm/obs/config/satwind_goes-16.yaml b/parm/atm/obs/config/satwind_goes-16.yaml index 33442b599..9e669e98d 100644 --- a/parm/atm/obs/config/satwind_goes-16.yaml +++ b/parm/atm/obs/config/satwind_goes-16.yaml @@ -17,6 +17,9 @@ obs operator: hofx scaling field: SurfaceWindScalingPressure hofx scaling field group: DerivedVariables +linear obs operator: + name: VertInterp + obs prior filters: # Apply variable changes needed for wind scaling # For wind observations with pressure provided @@ -181,7 +184,7 @@ obs post filters: - name: windEastward - name: windNorthward test variables: - - name: MetaData/sensorZenithAngle + - name: MetaData/satelliteZenithAngle maxvalue: 68. action: name: reject @@ -427,7 +430,6 @@ obs post filters: action: name: reject -obs post filters: # Reject GOES (247) when difference of wind direction is more than 50 degrees. # CLEARED: maxvalue is rejecting >, not >= as per a Perform Action, so threshold is unchanged - filter: Bounds Check diff --git a/parm/atm/obs/config/satwind_goes-17.yaml b/parm/atm/obs/config/satwind_goes-17.yaml index b413b969b..43f267cb8 100644 --- a/parm/atm/obs/config/satwind_goes-17.yaml +++ b/parm/atm/obs/config/satwind_goes-17.yaml @@ -17,6 +17,9 @@ obs operator: hofx scaling field: SurfaceWindScalingPressure hofx scaling field group: DerivedVariables +linear obs operator: + name: VertInterp + obs prior filters: # Apply variable changes needed for wind scaling # For wind observations with pressure provided @@ -181,7 +184,7 @@ obs post filters: - name: windEastward - name: windNorthward test variables: - - name: MetaData/sensorZenithAngle + - name: MetaData/satelliteZenithAngle maxvalue: 68. action: name: reject @@ -427,7 +430,6 @@ obs post filters: action: name: reject -obs post filters: # Reject GOES (247) when difference of wind direction is more than 50 degrees. # CLEARED: maxvalue is rejecting >, not >= as per a Perform Action, so threshold is unchanged - filter: Bounds Check diff --git a/parm/atm/obs/lists/gdas_prototype_3d.yaml b/parm/atm/obs/lists/gdas_prototype_3d.yaml index 18d64e54e..ca478da42 100644 --- a/parm/atm/obs/lists/gdas_prototype_3d.yaml +++ b/parm/atm/obs/lists/gdas_prototype_3d.yaml @@ -1,9 +1,9 @@ observers: -- !INC ${OBS_YAML_DIR}/amsua_n19.yaml -- !INC ${OBS_YAML_DIR}/sondes.yaml +##- !INC ${OBS_YAML_DIR}/amsua_n19.yaml +##- !INC ${OBS_YAML_DIR}/sondes_prepbufr.yaml ##- !INC ${OBS_YAML_DIR}/atms_n20.yaml ##- !INC ${OBS_YAML_DIR}/aircraft.yaml -##- !INC ${OBS_YAML_DIR}/satwind.yaml +- !INC ${OBS_YAML_DIR}/satwind_goes-16.yaml ##- !INC ${OBS_YAML_DIR}/omi_aura.yaml ##- !INC ${OBS_YAML_DIR}/ompsnp_npp.yaml ##- !INC ${OBS_YAML_DIR}/ompstc8_npp.yaml diff --git a/ush/ioda/bufr2ioda/bufr2ioda_satwind_amv_goes.py b/ush/ioda/bufr2ioda/bufr2ioda_satwind_amv_goes.py index 88f0d7a5b..84e7f2a5b 100755 --- a/ush/ioda/bufr2ioda/bufr2ioda_satwind_amv_goes.py +++ b/ush/ioda/bufr2ioda/bufr2ioda_satwind_amv_goes.py @@ -124,7 +124,7 @@ def bufr_to_ioda(config, logger): q.add('hour', '*/HOUR') q.add('minute', '*/MINU') q.add('second', '*/SECO') - q.add('sensorZenithAngle', '*/SAZA') + q.add('satelliteZenithAngle', '*/SAZA') q.add('sensorCentralFrequency', '*/SCCF') q.add('pressure', '*/PRLC[1]') @@ -173,7 +173,7 @@ def bufr_to_ioda(config, logger): second = r.get('second') lat = r.get('latitude') lon = r.get('longitude') - satzenang = r.get('sensorZenithAngle') + satzenang = r.get('satelliteZenithAngle') pressure = r.get('pressure', type='float') chanfreq = r.get('sensorCentralFrequency', type='float') @@ -356,11 +356,11 @@ def bufr_to_ioda(config, logger): .write_attr('long_name', 'Satellite Identifier') \ .write_data(satid2) - # Sensor Zenith Angle - obsspace.create_var('MetaData/sensorZenithAngle', dtype=satzenang2.dtype, fillval=satzenang2.fill_value) \ + # Satellite Zenith Angle + obsspace.create_var('MetaData/satelliteZenithAngle', dtype=satzenang2.dtype, fillval=satzenang2.fill_value) \ .write_attr('units', 'degree') \ .write_attr('valid_range', np.array([0, 90], dtype=np.float32)) \ - .write_attr('long_name', 'Sensor Zenith Angle') \ + .write_attr('long_name', 'Satellite Zenith Angle') \ .write_data(satzenang2) # Sensor Centrall Frequency @@ -429,16 +429,16 @@ def bufr_to_ioda(config, logger): .write_data(stnelev2) # 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') \ - .write_data(wspd2) +# obsspace.create_var('ObsValue/windSpeed', dtype=wspd2.dtype, fillval=wspd2.fill_value) \ +# .write_attr('units', 'm s-1') \ +# .write_attr('long_name', 'Wind Speed') \ +# .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') \ - .write_data(wdir2) +# obsspace.create_var('ObsValue/windDirection', dtype=wdir2.dtype, fillval=wdir2.fill_value) \ +# .write_attr('units', 'degrees') \ +# .write_attr('long_name', 'Wind Direction') \ +# .write_data(wdir2) # U-Wind Component obsspace.create_var('ObsValue/windEastward', dtype=uob2.dtype, fillval=wspd2.fill_value) \