Variable transforms¶
Introduction¶
This section describes the various variable transforms (or conversions) available within UFO.
All variable transforms are performed using a unique filter
(Observation Filters) called Variable Transforms, as shown in
the example below:
window begin: 2018-04-14T21:00:00Z
window end: 2018-04-15T03:00:00Z
observations:
- obs space:
   name: test_relative_humidity1
   obsdatain:
      obsfile: Data/ioda/testinput_tier_1/sfc_obs_2018041500_metars_small.nc
   simulated variables: [specific_humidity, air_temperature, surface_pressure]
obs filters:
- filter: Variable Transforms
   Transform: ["RelativeHumidity"]
   Method: UKMO
   Formulation: Sonntag
- The Variable Transformsfilter has the following available yaml settings:
- Transform: name of the variable transform that need to be performed. (see Variable transforms). 
- Method: [Optional] Method used during the variable transformation. This usually refers to the different Met Center. (See individual Variable transforms for possible choices and definitions) 
- Formulation: [Optional] Name of a specific formulation used during the variable transformation. (See individual Variable transforms for possible choices and definitions) 
- UseValidDataOnly: [Optional | default = true] Should the variable transform be applied only to valid data? - Warning - If - UseValidDataOnly=true, the variable transform is not applied to observations that have a- QCflagequal to either- missingor- bounds.
 
The new variable derived by the filter is then stored in the observation space within the
DerivedObsValue group. Since variables in groups with the Derived prefix
“overshadow” variables from corresponding groups without that prefix (see
Derived Variables), these variables can normally be accessed as if they were in the
ObsValue group.
Warning
Each variable transform requires a specific set of variables (as specified in the documentation). If any compulsory variable is missing, the code will raise an exception and stop.