8 #ifndef UFO_FILTERS_CONVENTIONALPROFILEPROCESSINGPARAMETERS_H_
9 #define UFO_FILTERS_CONVENTIONALPROFILEPROCESSINGPARAMETERS_H_
15 #include "eckit/exception/Exceptions.h"
17 #include "oops/util/parameters/OptionalParameter.h"
18 #include "oops/util/parameters/Parameter.h"
19 #include "oops/util/parameters/Parameters.h"
44 oops::Parameter<std::vector<std::string>>
Checks {
"Checks", {},
this};
50 oops::Parameter<bool>
modellevels {
"ModelLevels",
false,
this};
58 oops::Parameter<float>
FS_MinP {
"FS_MinP", 0.0,
this};
62 {1000, 925, 850, 700, 500, 400, 300, 250, 200, 150, 100, 70, 50, 30, 20, 10, 7, 3, 2, 1},
144 oops::Parameter<std::vector<float>>
BigGaps{
"ICheck_BigGaps",
145 {500, 500, 500, 500, 100, 100, 100, 100,
146 50, 50, 50, 50, 10, 10, 10, 10, 10, 10, 10, 10},
this};
179 oops::Parameter<std::vector<std::string>>
HydDesc{
"HydDesc",
180 {
"Hyd: OK",
"Hyd: Z err",
"Hyd: T err",
181 "Hyd: T/Z err",
"Hyd: T/Z Bot",
182 "Hyd: T/Z Top",
"Hyd: Z upward",
"Hyd: ?????"},
192 {
"UICheck_TInterpIdenticalPTolSq", 0.0,
this};
203 {50000.0, 10000.0, 5000.0, 1000.0},
this};
208 {100000.0, 50000.0, 10000.0, 5000.0},
this};
273 {
"BkCheck_Psplit_latitude_tropics", 30.0,
this};
277 {
"BkCheck_Psplit_extratropics", 50000.0,
this};
284 {
"BkCheck_ErrorInflationBelowPsplit", 1.0,
this};
288 {
"BkCheck_ErrorInflationAbovePsplit", 1.0,
this};
296 {1000.0, 500.0, 100.0, 50.0, 10.0, 5.0, 1.0, 0.0},
302 {10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 10.0},
308 {0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01},
380 {
"AvgRH_InstrTThresholds",
381 {{37, -60.0}, {52, -60.0}, {60, -60.0}, {61, -60.0},
382 {62, -60.0}, {63, -60.0}, {66, -60.0}, {67, -60.0},
383 {71, -80.0}, {72, -80.0}, {73, -80.0}, {74, -80.0},
384 {78, -80.0}, {79, -80.0}, {80, -80.0}, {81, -80.0}
Options controlling the operation of the ConventionalProfileProcessing filter.
oops::Parameter< float > ICheck_BigGapInit
Initial 'big gap' for interpolation check (hPa)
oops::Parameter< float > AvgP_WinProGapFactor
oops::Parameter< bool > HCheck_CorrectZ
Correct zObs in the hydrostatic check?
oops::Parameter< float > RHCheck_PressDiffAdjThresh
Threshold for pressure difference between adjacent levels (Pa)
oops::Parameter< bool > PrintStationID
Print station ID.
oops::Parameter< float > RHCheck_PressInitThresh
Threshold for pressure when setting up arrays (Pa)
oops::Parameter< bool > BChecks_Skip
oops::Parameter< float > HCheck_ETolMaxPThresh
oops::Parameter< float > RHCheck_TminInit
Initial value of minimum temperature (K)
oops::Parameter< float > RHCheck_PressThresh
Threshold for pressure (Pa)
oops::Parameter< float > BkCheck_Psplit_extratropics
Pressure threshold above which extra representivity error occurs in extratropics (Pa).
oops::Parameter< float > HCheck_ETolMin
oops::Parameter< float > RHCheck_tdDiffThresh
Threshold for dew point temperature difference (K)
oops::Parameter< std::map< int, float > > AvgRH_InstrTThresholds
oops::Parameter< std::vector< float > > BkCheck_PlevelThresholds
oops::Parameter< float > BChecks_maxValidP
Maximum value of pressure (Pa)
oops::Parameter< float > ULCheck_PBThresh
Bottom pressure threshold for unstable layer/superadiabat check (Pa)
oops::Parameter< float > BkCheck_ErrVarMax_rh
Maximum error variance for RH.
oops::Parameter< float > HCheck_MinAbsEThreshLarger
oops::Parameter< float > TimeCheck_SondeLaunchWindRej
Threshold relative to surface pressure for rejecting levels (hPa)
oops::Parameter< float > HCheck_SurfacePThresh
Surface P threshold for hydrostatic check (Pa)
oops::Parameter< float > RHCheck_PressDiff0Thresh
Threshold for pressure difference relative to level 0 (Pa)
oops::Parameter< std::vector< float > > BkCheck_zBkgErrs
oops::Parameter< std::vector< float > > BigGaps
Big gaps (hPa) used in interpolation check.
oops::Parameter< float > Comparison_Tol
Tolerance for absolute difference comparisions.
oops::Parameter< float > AvgRH_PGEskip
oops::Parameter< float > RHCheck_TempThresh
Lower threshold for temperature in moisture check.
oops::Parameter< float > ICheck_TolRelax
T tolerance relaxation factor.
oops::Parameter< float > BkCheck_PdBad_rh
Prior probability of 'bad' observations for RH.
oops::Parameter< bool > compareWithOPS
Compare with OPS values?
DataHandlerParameters DHParameters
Parameters related to profile data handler.
oops::Parameter< float > ULCheck_MinP
Min P for unstable layer/superadiabat check (Pa)
oops::Parameter< float > HCheck_MinAbsEThreshT
oops::Parameter< float > HCheck_ETolMaxLarger
oops::Parameter< float > RHCheck_TminThresh
Upper threshold for Tmin in moisture check.
oops::Parameter< bool > AvgRH_Interp
Perform interpolation or averaging of relative humidity observations?
oops::Parameter< float > SCheck_tObstBkgThresh
Threshold used for |tObs - tBkg| in sign check (K)
oops::Parameter< float > SCheck_PrintLargeTThresh
P threshold over which to print large T differences (Pa)
oops::Parameter< std::vector< std::string > > HydDesc
Hydrostatic error descriptions.
oops::Parameter< std::vector< float > > UICheck_BigGapsPThresh
oops::Parameter< float > ULCheck_SuperadiabatTol
Tolerance for unstable layer/superadiabat check (K)
oops::Parameter< float > BkCheck_Psplit_latitude_tropics
oops::Parameter< float > BChecks_minValidP
Minimum value of pressure (Pa)
oops::Parameter< bool > flagBasicChecksFail
Set flags for failed basic checks?
oops::Parameter< float > AvgRH_AvgTThreshold
oops::Parameter< float > BkCheck_Psplit_tropics
Pressure threshold above which extra representivity error occurs in tropics (Pa).
oops::Parameter< float > AvgU_SondeDZFraction
oops::Parameter< float > AvgP_SondeGapFactor
oops::Parameter< float > HCheck_EThreshB
oops::Parameter< float > AvgT_SondeDZFraction
oops::Parameter< std::vector< std::string > > Checks
List of checks to perform.
oops::Parameter< float > AvgU_PGEskip
oops::Parameter< float > RHCheck_MinRHThresh
Threshold for minimum relative humidity (%)
oops::Parameter< float > HCheck_ESumNextThresh
oops::Parameter< float > BkCheck_ErrorInflationAbovePsplit
Error inflation factor above Psplit.
oops::Parameter< float > HCheck_ESumThresh
oops::Parameter< float > HCheck_ETolMult
oops::Parameter< float > HCheck_EThresh
oops::Parameter< float > BkCheck_PdBad_t
Prior probability of 'bad' observations for T.
oops::Parameter< float > RHCheck_SondeRHHiTol
Tolerance for high level check of relative humidity (%)
oops::Parameter< float > AvgT_PGEskip
oops::Parameter< float > ICheck_TInterpTol
Tolerance for interpolation check (K)
oops::Parameter< float > BkCheck_PdBad_uv
Prior probability of 'bad' observations for u and v.
oops::Parameter< float > ICheck_TolRelaxPThresh
Pressure threshold for T tolerance relaxation.
oops::Parameter< float > RHCheck_RHThresh
Threshold for relative humidity (%)
oops::Parameter< float > SCheck_ProfileSignTol
Tolerance used for sign check (K)
oops::Parameter< float > HCheck_ESumThreshLarger
oops::Parameter< float > UICheck_BigGapLowP
Big gap (Pa) used at lowest pressures in wind speed interpolation check.
ProbabilityOfGrossErrorParameters PGEParameters
Parameters related to PGE calculations.
oops::Parameter< float > HCheck_ETolMax
oops::Parameter< float > FS_MinP
Min P for finding standard levels (Pa)
oops::Parameter< float > HCheck_MinAbsEThresh
oops::Parameter< float > UICheck_TInterpIdenticalPTolSq
Squared tolerance for identical pressure in wind speed interpolation check (m^2 s^-2)
oops::Parameter< float > SPDTCheck_TThresh
Threshold used for same P/different T check (K)
oops::Parameter< std::vector< float > > BkCheck_zBadPGEs
oops::Parameter< bool > modellevels
Have the observation and model values been averaged onto model levels?
oops::Parameter< float > BkCheck_ErrorInflationBelowPsplit
Error inflation factor below Psplit.
oops::Parameter< float > AvgP_GapLogPDiffMin
oops::Parameter< float > HCheck_CorrMinThresh
oops::Parameter< float > HCheck_CorrThresh
oops::Parameter< float > UICheck_TInterpTolSq
Squared tolerance for wind speed interpolation check (m^2 s^-2)
oops::Parameter< std::vector< float > > StandardLevels
Standard Levels (hPa)
oops::Parameter< float > HCheck_CorrDiffThresh
oops::Parameter< float > SCheck_PstarThresh
Threshold used for Pstar difference in sign check (Pa)
oops::Parameter< std::vector< float > > UICheck_BigGaps
oops::Parameter< float > AvgRH_SondeDZFraction
oops::Parameter< bool > SCheck_CorrectT
Correct tObs in the sign check?
Options controlling the operation of the EntireSampleDataHandler and ProfileDataHandler classes.
Parameters shared by all filters having a default action (typically "reject").
Options controlling the operation of the calculations involving probability of gross error.