Vertical interpolation and re-mapping (vertical_interpolation / std)

Yaml arguments

The following arguments are used to configure the plugin. pyCIF will return an exception at the initialization if mandatory arguments are not specified, or if any argument does not fit accepted values or type:

Mandatory arguments

method: (mandatory)

Method used for the interpolation
  • static-levels:

  • linear: a linear interpolation. Uses the coordinate specified in coord_out

  • closest: gets closest levels

accepted values:

  • static-levels: determines levels from pre-determined levels as specified in the argument file_statlev

  • linear: a linear interpolation. Uses the coordinate specified in coord_out

  • closest: gets closest levels

  • match-layer: finds the layer matching outputs.

  • layer-weighted: finds the layers matching outputs, and weights according to the thickness in each input layers

Optional arguments

parameter: (optional)

Parameter name on which the transform works on

accepted type: str

component: (optional)

Component name on which the transform works on

accepted type: str

orig_parameter_plg: (optional)

Plugin object on which the transform works on

accepted type: Plugin

orig_component_plg: (optional)

Corresponding component object on which the transform works on

accepted type: Plugin

successor: (optional)

Name of the successor transform

accepted type: str

precursor: (optional)

Name of the precursor transform

accepted type: str

coord_in: (optional): pres

Coordinates for inputs, pres, height

accepted type: str

file_statlev: (optional):

File with model levels in which stations are. The expected format is:

#STAT LAT     LON     LEV  alt(m)
ALT   82.45   -62.52  1        210
JFJ   46.548  7.987   10       3580
MHD   53.33   -9.9    1        8

The first line is ignored. The important informations are the first columns with the station ID (should be consistent with the station name in your monitor file, and the fourth column specifying the level in the model (in python index starting from 0)

accepted type: str

ignore_level: (optional): False

Don’t do any vertical interpolation for sparse data and just propagate levels from inputs and outputs

accepted type: bool

coord_out: (optional): pres

Coordinates for outputs

accepted type: str

psurf: (optional): 1013.25

Standard surfce pressure to use in computations with alpha/beta coordinate

accepted type: float

fill_nans: (optional): False

Use in combination with method = linear. Fill values outside the convex hull of inputs by using the closest valid (above or below) value

accepted type: bool

target_top: (optional): False

Interpolate to the top of a domain

accepted type: bool

sparse_in: (optional): False

Whether inputs are sparse data

accepted type: bool

sparse_out: (optional): False

Whether outputs are sparse data

accepted type: bool

Yaml template

Please find below a template for a Yaml configuration:

 1transform:
 2  plugin:
 3    name: vertical_interpolation
 4    version: std
 5    type: transform
 6
 7  # Mandatory arguments
 8  method: XXXXX  # static-levels|linear|closest|match-layer|layer-weighted
 9
10  # Optional arguments
11  parameter: XXXXX  # str
12  component: XXXXX  # str
13  orig_parameter_plg: XXXXX  # Plugin
14  orig_component_plg: XXXXX  # Plugin
15  successor: XXXXX  # str
16  precursor: XXXXX  # str
17  coord_in: XXXXX  # str
18  file_statlev: XXXXX  # str
19  ignore_level: XXXXX  # bool
20  coord_out: XXXXX  # str
21  psurf: XXXXX  # float
22  fill_nans: XXXXX  # bool
23  target_top: XXXXX  # bool
24  sparse_in: XXXXX  # bool
25  sparse_out: XXXXX  # bool