Generating meteo from ECMWF#
This tutorial explains how to generate meteorology files from ECMWF data. For information on file formats and how to download the required data from ECMWF, see here.
The meteorology is generated using the diagmet transform, a modernized Python reimplementation of the old diagmet.F90 program.
METEO files can be generated using the YAML below:
pycif_data_root: &pycif_data_root /home/chimereges/PYCIF_TEST_DATA/CHIMERE
pycif_root: &pycif_root /home/users/aberchet/CIF/
verbose : 1
logfile: test_std
workdir: &workdir /home/chimereges/aberchet/test_ipison_strato3/
datei : 2011-03-22 00:00:00
datef : 2011-03-22 03:00:00
obsoperator:
plugin:
name: standard
version: std
autorestart: True
save_debug: True
init_inputs:
components:
meteo: []
model :
plugin:
name : CHIMERE
version : std
periods: 3H
direxec: !join [*pycif_root, /model_sources/chimereGES/]
nphour_ref : 6
ichemstep : 1
ideepconv: 0
nivout: 17
nlevemis: 7
chemistry :
dir_precomp : !join [*pycif_data_root, /chemical_schemes/]
schemeid : univ.melchior2
domain :
plugin:
name : CHIMERE
version : std
domid : ACADOK
repgrid : !join [*pycif_data_root, /domains/]
nlev: 17
p1: 997
pmax: 200
controlvect:
plugin:
name: standard
version: std
transform_pipe:
diagmet:
plugin:
name: diagmet
version: std
type: transform
file_landuse: /home/chimereges/PYCIF_TEST_DATA/CHIMERE/domains/LANDUSE/LANDUSE_ACADOK
file_landpar: /home/chimereges/PYCIF_TEST_DATA/CHIMERE/domains/LANDPAR
datavect:
plugin:
name: standard
version: std
components:
meteo:
plugin:
name: CHIMERE
version: std
type: meteo
file_freq: 3H
dir: /home/comdata1/Meteo/europe160/%Y/%m/
regrid:
method: mass-conservation
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
The YAML will generate meteorology files in ${WORKDIR}/obsoperator/fwd_0000/, organized in sub-folders by date.
Good practices#
If you are a new CIF user or are using raw files for the first time, follow these steps:
Prepare a YAML for generating the meteorology only (as shown above).
Run the system with this YAML.
Check the generated inputs, as explained in Checking the input files:.