-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add the amsua_n19_qc_bc.yaml into templates (#206)
This PR is for commit the work have been done in [issue#180](#180) The ctest has been passed with this new yaml file.
- Loading branch information
Showing
2 changed files
with
380 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
375 changes: 375 additions & 0 deletions
375
rrfs-test/validated_yamls/templates/obtype_config/amsua_n19.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,375 @@ | ||
- obs space: | ||
name: amsua_n19 | ||
distribution: | ||
name: "@DISTRIBUTION@" | ||
obsdatain: | ||
engine: | ||
type: H5File | ||
obsfile: data/obs/amsua_n19_obs.2024052700.nc | ||
obsdataout: | ||
engine: | ||
type: H5File | ||
obsfile: amsua_n19_hofx.2024052700.nc4 | ||
simulated variables: [brightnessTemperature] | ||
observed variables: [brightnessTemperature] | ||
channels: &amsua_n19_channels 1-15 | ||
obs operator: | ||
name: CRTM | ||
Absorbers: [H2O,O3] | ||
SurfaceWindGeoVars: uv | ||
Clouds: [Water, Ice] | ||
Cloud_Fraction: 1.0 | ||
obs options: | ||
Sensor_ID: amsua_n19 | ||
EndianType: little_endian | ||
CoefficientPath: data/crtm/ | ||
IRVISlandCoeff: IGBP | ||
linear obs operator: | ||
Absorbers: [H2O, O3] | ||
obs localizations: | ||
- localization method: Horizontal Gaspari-Cohn | ||
lengthscale: 300e3 # orig | ||
obs bias: | ||
input file: data/obs/amsua_n19.satbias.nc4 | ||
output file: out_amsua_n19.satbias.nc4 | ||
variational bc: | ||
predictors: | ||
- name: constant | ||
- name: lapseRate | ||
order: 2 | ||
tlapse: &amsua_n19_tlapse data/obs/amsua_n19.tlapse.txt | ||
- name: lapseRate | ||
tlapse: *amsua_n19_tlapse | ||
- name: emissivityJacobian | ||
- name: sensorScanAngle | ||
order: 4 | ||
- name: sensorScanAngle | ||
order: 3 | ||
- name: sensorScanAngle | ||
order: 2 | ||
- name: sensorScanAngle | ||
covariance: | ||
minimal required obs number: 20 | ||
variance range: [1.0e-6, 10.0] | ||
step size: 1.0e-4 | ||
largest analysis variance: 10000.0 | ||
prior: | ||
input file: data/obs/amsua_n19.satbias_cov.nc4 | ||
inflation: | ||
ratio: 1.1 | ||
ratio for small dataset: 2.0 | ||
output file: out_amsua_n19.satbias_cov.nc4 | ||
obs filters: | ||
- filter: BlackList | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: *amsua_n19_channels | ||
action: | ||
name: assign error | ||
error function: | ||
name: ObsFunction/ObsErrorModelRamp | ||
channels: *amsua_n19_channels | ||
options: | ||
channels: *amsua_n19_channels | ||
xvar: | ||
name: ObsFunction/CLWRetSymmetricMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [ObsValue, HofX] | ||
x0: [ 0.050, 0.030, 0.030, 0.020, 0.000, | ||
0.100, 0.000, 0.000, 0.000, 0.000, | ||
0.000, 0.000, 0.000, 0.000, 0.030] | ||
x1: [ 0.600, 0.450, 0.400, 0.450, 1.000, | ||
1.500, 0.000, 0.000, 0.000, 0.000, | ||
0.000, 0.000, 0.000, 0.000, 0.200] | ||
err0: [ 2.500, 2.200, 2.000, 0.550, 0.300, | ||
0.230, 0.230, 0.250, 0.250, 0.350, | ||
0.400, 0.550, 0.800, 3.000, 3.500] | ||
err1: [20.000, 18.000, 12.000, 3.000, 0.500, | ||
0.300, 0.230, 0.250, 0.250, 0.350, | ||
0.400, 0.550, 0.800, 3.000, 18.000] | ||
# CLW Retrieval Check | ||
- filter: Bounds Check | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: 1-6, 15 | ||
test variables: | ||
- name: ObsFunction/CLWRetMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [ObsValue] | ||
maxvalue: 999.0 | ||
action: | ||
name: reject | ||
# CLW Retrieval Check | ||
- filter: Bounds Check | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: 1-6, 15 | ||
test variables: | ||
- name: ObsFunction/CLWRetMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [HofX] | ||
maxvalue: 999.0 | ||
action: | ||
name: reject | ||
# Hydrometeor Check (cloud/precipitation affected chanels) | ||
- filter: Bounds Check | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: *amsua_n19_channels | ||
test variables: | ||
- name: ObsFunction/HydrometeorCheckAMSUA | ||
channels: *amsua_n19_channels | ||
options: | ||
channels: *amsua_n19_channels | ||
obserr_clearsky: [ 2.500, 2.200, 2.000, 0.550, 0.300, | ||
0.230, 0.230, 0.250, 0.250, 0.350, | ||
0.400, 0.550, 0.800, 3.000, 3.500] | ||
clwret_function: | ||
name: ObsFunction/CLWRetMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [ObsValue] | ||
obserr_function: | ||
name: ObsFunction/ObsErrorModelRamp | ||
channels: *amsua_n19_channels | ||
options: | ||
channels: *amsua_n19_channels | ||
xvar: | ||
name: ObsFunction/CLWRetSymmetricMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [ObsValue, HofX] | ||
x0: [ 0.050, 0.030, 0.030, 0.020, 0.000, | ||
0.100, 0.000, 0.000, 0.000, 0.000, | ||
0.000, 0.000, 0.000, 0.000, 0.030] | ||
x1: [ 0.600, 0.450, 0.400, 0.450, 1.000, | ||
1.500, 0.000, 0.000, 0.000, 0.000, | ||
0.000, 0.000, 0.000, 0.000, 0.200] | ||
err0: [ 2.500, 2.200, 2.000, 0.550, 0.300, | ||
0.230, 0.230, 0.250, 0.250, 0.350, | ||
0.400, 0.550, 0.800, 3.000, 3.500] | ||
err1: [20.000, 18.000, 12.000, 3.000, 0.500, | ||
0.300, 0.230, 0.250, 0.250, 0.350, | ||
0.400, 0.550, 0.800, 3.000, 18.000] | ||
maxvalue: 0.0 | ||
action: | ||
name: reject | ||
# Topography check | ||
- filter: BlackList | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: *amsua_n19_channels | ||
action: | ||
name: inflate error | ||
inflation variable: | ||
name: ObsFunction/ObsErrorFactorTopoRad | ||
channels: *amsua_n19_channels | ||
options: | ||
sensor: amsua_n19 | ||
channels: *amsua_n19_channels | ||
# Transmittnace Top Check | ||
- filter: BlackList | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: *amsua_n19_channels | ||
action: | ||
name: inflate error | ||
inflation variable: | ||
name: ObsFunction/ObsErrorFactorTransmitTopRad | ||
channels: *amsua_n19_channels | ||
options: | ||
sensor: amsua_n19 | ||
channels: *amsua_n19_channels | ||
# Surface Jacobian check | ||
- filter: BlackList | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: *amsua_n19_channels | ||
action: | ||
name: inflate error | ||
inflation variable: | ||
name: ObsFunction/ObsErrorFactorSurfJacobianRad | ||
channels: *amsua_n19_channels | ||
options: | ||
sensor: amsua_n19 | ||
channels: *amsua_n19_channels | ||
obserr_demisf: [0.010, 0.020, 0.015, 0.020, 0.200] | ||
obserr_dtempf: [0.500, 2.000, 1.000, 2.000, 4.500] | ||
# Situation dependent Check | ||
- filter: BlackList | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: *amsua_n19_channels | ||
action: | ||
name: inflate error | ||
inflation variable: | ||
name: ObsFunction/ObsErrorFactorSituDependMW | ||
channels: *amsua_n19_channels | ||
options: | ||
sensor: amsua_n19 | ||
channels: *amsua_n19_channels | ||
clwobs_function: | ||
name: ObsFunction/CLWRetMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [ObsValue] | ||
clwbkg_function: | ||
name: ObsFunction/CLWRetMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [HofX] | ||
bias_application: HofX | ||
scatobs_function: | ||
name: ObsFunction/SCATRetMW | ||
options: | ||
scatret_ch238: 1 | ||
scatret_ch314: 2 | ||
scatret_ch890: 15 | ||
scatret_types: [ObsValue] | ||
bias_application: HofX | ||
clwmatchidx_function: | ||
name: ObsFunction/CLWMatchIndexMW | ||
channels: *amsua_n19_channels | ||
options: | ||
channels: *amsua_n19_channels | ||
clwobs_function: | ||
name: ObsFunction/CLWRetMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [ObsValue] | ||
clwbkg_function: | ||
name: ObsFunction/CLWRetMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [HofX] | ||
bias_application: HofX | ||
clwret_clearsky: [0.050, 0.030, 0.030, 0.020, 0.000, | ||
0.100, 0.000, 0.000, 0.000, 0.000, | ||
0.000, 0.000, 0.000, 0.000, 0.030] | ||
obserr_function: | ||
name: ObsFunction/ObsErrorModelRamp | ||
channels: *amsua_n19_channels | ||
options: | ||
channels: *amsua_n19_channels | ||
xvar: | ||
name: ObsFunction/CLWRetSymmetricMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [ObsValue, HofX] | ||
x0: [ 0.050, 0.030, 0.030, 0.020, 0.000, | ||
0.100, 0.000, 0.000, 0.000, 0.000, | ||
0.000, 0.000, 0.000, 0.000, 0.030] | ||
x1: [ 0.600, 0.450, 0.400, 0.450, 1.000, | ||
1.500, 0.000, 0.000, 0.000, 0.000, | ||
0.000, 0.000, 0.000, 0.000, 0.200] | ||
err0: [ 2.500, 2.200, 2.000, 0.550, 0.300, | ||
0.230, 0.230, 0.250, 0.250, 0.350, | ||
0.400, 0.550, 0.800, 3.000, 3.500] | ||
err1: [20.000, 18.000, 12.000, 3.000, 0.500, | ||
0.300, 0.230, 0.250, 0.250, 0.350, | ||
0.400, 0.550, 0.800, 3.000, 18.000] | ||
obserr_clearsky: [2.500, 2.200, 2.000, 0.550, 0.300, | ||
0.230, 0.230, 0.250, 0.250, 0.350, | ||
0.400, 0.550, 0.800, 3.000, 3.500] | ||
# Gross check | ||
- filter: Background Check | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: *amsua_n19_channels | ||
function absolute threshold: | ||
- name: ObsFunction/ObsErrorBoundMW | ||
channels: *amsua_n19_channels | ||
options: | ||
sensor: amsua_n19 | ||
channels: *amsua_n19_channels | ||
obserr_bound_latitude: | ||
name: ObsFunction/ObsErrorFactorLatRad | ||
options: | ||
latitude_parameters: [25.0, 0.25, 0.04, 3.0] | ||
obserr_bound_transmittop: | ||
name: ObsFunction/ObsErrorFactorTransmitTopRad | ||
channels: *amsua_n19_channels | ||
options: | ||
channels: *amsua_n19_channels | ||
obserr_bound_topo: | ||
name: ObsFunction/ObsErrorFactorTopoRad | ||
channels: *amsua_n19_channels | ||
options: | ||
channels: *amsua_n19_channels | ||
sensor: amsua_n19 | ||
obserr_function: | ||
name: ObsFunction/ObsErrorModelRamp | ||
channels: *amsua_n19_channels | ||
options: | ||
channels: *amsua_n19_channels | ||
xvar: | ||
name: ObsFunction/CLWRetSymmetricMW | ||
options: | ||
clwret_ch238: 1 | ||
clwret_ch314: 2 | ||
clwret_types: [ObsValue, HofX] | ||
bias_application: HofX | ||
x0: [ 0.050, 0.030, 0.030, 0.020, 0.000, | ||
0.100, 0.000, 0.000, 0.000, 0.000, | ||
0.000, 0.000, 0.000, 0.000, 0.030] | ||
x1: [ 0.600, 0.450, 0.400, 0.450, 1.000, | ||
1.500, 0.000, 0.000, 0.000, 0.000, | ||
0.000, 0.000, 0.000, 0.000, 0.200] | ||
err0: [ 2.500, 2.200, 2.000, 0.550, 0.300, | ||
0.230, 0.230, 0.250, 0.250, 0.350, | ||
0.400, 0.550, 0.800, 3.000, 3.500] | ||
err1: [20.000, 18.000, 12.000, 3.000, 0.500, | ||
0.300, 0.230, 0.250, 0.250, 0.350, | ||
0.400, 0.550, 0.800, 3.000, 18.000] | ||
obserr_bound_max: [4.5, 4.5, 4.5, 2.5, 2.0, | ||
2.0, 2.0, 2.0, 2.0, 2.0, | ||
2.5, 3.5, 4.5, 4.5, 4.5] | ||
action: | ||
name: reject | ||
# Inter-channel check | ||
- filter: Bounds Check | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: *amsua_n19_channels | ||
test variables: | ||
- name: ObsFunction/InterChannelConsistencyCheck | ||
channels: *amsua_n19_channels | ||
options: | ||
channels: *amsua_n19_channels | ||
sensor: amsua_n19 | ||
use_flag: [ 1, 1, 1, 1, 1, | ||
1, -1, -1, 1, 1, | ||
1, 1, 1, -1, 1 ] | ||
maxvalue: 1.0e-12 | ||
action: | ||
name: reject | ||
# Useflag check | ||
- filter: Bounds Check | ||
filter variables: | ||
- name: brightnessTemperature | ||
channels: *amsua_n19_channels | ||
test variables: | ||
- name: ObsFunction/ChannelUseflagCheckRad | ||
channels: *amsua_n19_channels | ||
options: | ||
sensor: amsua_n19 | ||
channels: *amsua_n19_channels | ||
use_flag: [ 1, 1, 1, 1, 1, | ||
1, -1, -1, 1, 1, | ||
1, 1, 1, -1, 1 ] | ||
minvalue: 1.0e-12 | ||
action: | ||
name: reject |