DIAGMET meteorological processing for CHIMERE diagmet/std

DIAGMET meteorological processing for CHIMERE diagmet/std#

Description#

This transform replicates what was done in the historical diagmet.f90 script associated to CHIMERE. It processes variables from ECMWF grib files to produce variables required by CHIMERE.

Warning

At the moment, the yaml is not convenient to use. Every input parameter must be included. In the future, something equivalent to ecm_par.f90 should be implemented.

For the time being, please use the following yaml sample in your datavect paragraph:

meteo:
  plugin:
    name: CHIMERE
    version: std
    type: meteo
  file_freq: 3H
  dir: /home/comdata1/Meteo/europe160/%Y/%m/
  regrid:
    method: mass-conservation
  vertical_interpolation:
    method: weight
  parameters:
    winm:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: v
      file: uvtqc.160europe.%Y%m%d{di}00%H.grb2
    winz:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: u
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: uvtqc.160europe.%Y%m%d{di}00%H.grb2
    temp:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: t
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: uvtqc.160europe.%Y%m%d{di}00%H.grb2
    sphu:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: q
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: uvtqc.160europe.%Y%m%d{di}00%H.grb2
    clwc:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: clwc
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: uvtqc.160europe.%Y%m%d{di}00%H.grb2
    dpdu:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: p106.162
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: deepconv.160europe.%Y%m%d{di}00%H.grb2
      decumul: True
      unit_conversion:
        scale: 9.259259259259259e-05
    upfl:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: p104.162
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: deepconv.160europe.%Y%m%d{di}00%H.grb2
      decumul: True
      unit_conversion:
        scale: 9.259259259259259e-05
    dwfl:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: p105.162
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: deepconv.160europe.%Y%m%d{di}00%H.grb2
      decumul: True
      unit_conversion:
        scale: 9.259259259259259e-05
    dpdd:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: p107.162
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: deepconv.160europe.%Y%m%d{di}00%H.grb2
      decumul: True
      unit_conversion:
        scale: 9.259259259259259e-05
    psurf:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: sp
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
    hght:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: blh
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
    u10m:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: u10
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
    v10m:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: v10
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
    tem2:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: t2m
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
    sshf:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: sshf
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
      decumul: True
      unit_conversion:
        scale: -9.259259259259259e-05
    slhf:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: slhf
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
      decumul: True
      unit_conversion:
        scale: -9.259259259259259e-05
    lspc:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: lsp
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
      decumul: True
      unit_conversion:
        scale: 333.333
    copc:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: cp
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
      decumul: True
      unit_conversion:
        scale: 333.333
    clol:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: lcc
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
    clom:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: mcc
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True
    cloh:
      plugin:
        name: ECMWF
        version: grib2
        type: field
      varname: hcc
      dir: /home/comdata1/Meteo/europe160/%Y/%m/
      file: 2d.160europe.%Y%m%d{di}00%H.grb2
      surface: True

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#

file_landuse : str, mandatory

Path to the LANDUSE file (computed elsewhere)

file_landpar : str, mandatory

Path to the LANDPAR file

Optional arguments#

parameter : str, optional

Parameter name on which the transform works on

component : str, optional

Component name on which the transform works on

orig_parameter_plg : Plugin, optional

Plugin object on which the transform works on

orig_component_plg : Plugin, optional

Corresponding component object on which the transform works on

successor : str, optional

Name of the successor transform

precursor : str, optional

Name of the precursor transform

pblmin : float, optional, default 20

Minimum PBL height

uwinfac : bool, optional, default False

Use urban wind correction in the surface layer.

Warning

In the original diagmet, the values were inverted. One should use 1 to disable the function and 0 to activate it. Now, True means using it and False not using it.

uflxadd : bool, optional, default False

Use additional urban heat flux

upblmin : bool, optional, default False

Use urban correction for minimal urban PBL height

cice : bool, optional, default True

Use cloud ice water in addition to cloud liquid water

rain : bool, optional, default False

Use rain water in addition to cloud liquid water

clol : int, optional, default 0

Use low clouds: 0 = read, 1 = use liquid water, 2 = use relative humidity

clom : int, optional, default 0

Use medium clouds: 0 = read, 1 = use liquid water, 2 = use relative humidity

cloh : int, optional, default 0

Use high clouds: 0 = read, 1 = use liquid water, 2 = use relative humidity

usta : “read” or “recompute”, optional, default “recompute”

Read Ustar or recompute from Louis 1982

deep_convection : bool, optional, default True

Read deep convection (it False, put all DP fluxes at 0)

Requirements#

The current plugin requires the present plugins to run properly:

Requirement name

Requirement type

Explicit definition

Any valid

Default name

Default version

model

Model

False

False

CHIMERE

std

YAML template#

Please find below a template for a YAML configuration:

 1transform:
 2  plugin:
 3    name: diagmet
 4    version: std
 5    type: transform
 6
 7  # Mandatory arguments
 8  file_landuse: XXXXX  # str
 9  file_landpar: XXXXX  # str
10
11  # Optional arguments
12  parameter: XXXXX  # str
13  component: XXXXX  # str
14  orig_parameter_plg: XXXXX  # Plugin
15  orig_component_plg: XXXXX  # Plugin
16  successor: XXXXX  # str
17  precursor: XXXXX  # str
18  pblmin: XXXXX  # float
19  uwinfac: XXXXX  # bool
20  uflxadd: XXXXX  # bool
21  upblmin: XXXXX  # bool
22  cice: XXXXX  # bool
23  rain: XXXXX  # bool
24  clol: XXXXX  # int
25  clom: XXXXX  # int
26  cloh: XXXXX  # int
27  usta: XXXXX  # read|recompute
28  deep_convection: XXXXX  # bool