Skip to content

Commit c8040ef

Browse files
committed
Fixes according to @zklaus review
1 parent 3234ee7 commit c8040ef

File tree

3 files changed

+45
-43
lines changed

3 files changed

+45
-43
lines changed

esmvalcore/_config/extra_facets/ipslcm-mappings.yml

Lines changed: 41 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
# ESMValTool to use key 'ipsl_varname' for building the filename,
77
# while for format 'Output' it specifies to use key 'group'
88
#
9-
# Specifying 'igcm_dir' here allows to avoid having to secifiy it in
9+
# Specifying 'igcm_dir' here allows to avoid having to specifiy it in
1010
# datasets definitions
1111
#
1212
# Key 'use_cdo' allows to choose whether CDO will be invoked for
@@ -15,15 +15,16 @@
1515
# not compliant with ESMValtool licence policy, the default
1616
# configuration is to avoid using it. You may use customized settings
1717
# by installing a modified version of this file as
18-
# ~/.esmvatlool/variable_details/native6-ipsl-cm6-*.yml
18+
# ~/.esmvatlool/variable_details/ipslcm-*.yml
19+
# see : https://docs.esmvaltool.org/projects/esmvalcore/en/latest/quickstart/configure.html#location-of-the-extra-facets-files)
1920
#
2021
# Key 'positive' allows to tell ESMValTool when the sign convention
2122
# for a variable is reversed between IPSL-CM6 and CMIP6. In that case,
2223
# just e.g. put 'positive: down' if the CMIP6 convention is 'positive: up'
2324
#
2425
# The main key below, 'IPSL-CM6', is the one to use as a value for
2526
# attribute 'dataset' in the 'datasets' entry of recipes; it matches
26-
# the module name 'ipsl.py' in 'cmor_fixes/ipsl*/ipsl.py'
27+
# the module name 'ipsl_cm6.py' in 'cmor_fixes/ipsl*/ipsl_cm6.py'
2728
#
2829
---
2930
# A series of shortcuts for repetitive settings
@@ -46,7 +47,9 @@ ShortCuts:
4647
IPSL-CM6:
4748
# ========================================================================================
4849
Amon:
49-
# ========================================================================================
50+
# ========================================================
51+
# ATM variables processed using their CMIP6 short_name
52+
# ========================================================
5053
# ATM 3D Variables
5154
ta: {ipsl_varname: ta, <<: *atm3dvars}
5255
ua: {ipsl_varname: ua, <<: *atm3dvars}
@@ -62,45 +65,16 @@ IPSL-CM6:
6265
ts: {ipsl_varname: tsol, <<: *atmvars}
6366
huss: {ipsl_varname: q2m, <<: *atmvars}
6467
uas: {ipsl_varname: u10m, <<: *atmvars}
65-
"vas": {ipsl_varname: v10m, <<: *atmvars}
68+
vas: {ipsl_varname: v10m, <<: *atmvars}
6669
sfcWind: {ipsl_varname: wind10m, <<: *atmvars}
6770
hurs: {ipsl_varname: rh2m, <<: *atmvars}
68-
69-
# ATM general variables
70-
precip: {ipsl_varname: precip, <<: *atmvars}
7171
prw: {ipsl_varname: prw, <<: *atmvars}
72-
slp: {ipsl_varname: slp, <<: *atmvars}
7372
t2m: {ipsl_varname: t2m, <<: *atmvars}
7473
q2m: {ipsl_varname: q2m, <<: *atmvars}
7574
u10m: {ipsl_varname: u10m, <<: *atmvars}
7675
v10m: {ipsl_varname: v10m, <<: *atmvars}
7776
wind10m: {ipsl_varname: wind10m, <<: *atmvars}
7877

79-
# -> Turbulent fluxes
80-
taux: {ipsl_varname: taux, <<: *atmvars}
81-
tauy: {ipsl_varname: tauy, <<: *atmvars}
82-
83-
# -> Radiative down at TOA
84-
SWdnTOA: {ipsl_varname: SWdnTOA, <<: *atmvars}
85-
86-
# -> Radiative down at TOA
87-
topl: {ipsl_varname: topl, <<: *atmvars}
88-
SWupTOA: {ipsl_varname: SWupTOA, <<: *atmvars}
89-
topl0: {ipsl_varname: topl0, <<: *atmvars}
90-
SWupTOAclr: {ipsl_varname: SWupTOAclr, <<: *atmvars}
91-
92-
# -> Radiative up at Surface
93-
LWupSFC: {ipsl_varname: LWupSFC, <<: *atmvars}
94-
SWupSFC: {ipsl_varname: SWupSFC, <<: *atmvars}
95-
SWupSFcclr: {ipsl_varname: SWupSFcclr, <<: *atmvars}
96-
LWupSFcclr: {ipsl_varname: LWupSFcclr, <<: *atmvars}
97-
98-
# -> Radiative down at Surface
99-
LWdnSFC: {ipsl_varname: LWdnSFC, <<: *atmvars}
100-
SWdnSFC: {ipsl_varname: SWdnSFC, <<: *atmvars}
101-
LWdnSFcclr: {ipsl_varname: LWdnSFcclr, <<: *atmvars}
102-
SWdnSFcclr: {ipsl_varname: SWdnSFcclr, <<: *atmvars}
103-
10478
# -> Turbulent fluxes
10579
hfls: {ipsl_varname: flat, <<: *atmvars, positive: down}
10680
hfss: {ipsl_varname: sens, <<: *atmvars, positive: down}
@@ -131,12 +105,44 @@ IPSL-CM6:
131105
rldscs: {ipsl_varname: LWdnSFcclr, <<: *atmvars}
132106
rsdscs: {ipsl_varname: SWdnSFcclr, <<: *atmvars}
133107

108+
# ========================================================
109+
# ATM variables processed using their own IPSL short_name
110+
# ========================================================
111+
# -> general variables
112+
precip: {ipsl_varname: precip, <<: *atmvars}
113+
slp: {ipsl_varname: slp, <<: *atmvars}
114+
115+
# -> Turbulent fluxes
116+
taux: {ipsl_varname: taux, <<: *atmvars}
117+
tauy: {ipsl_varname: tauy, <<: *atmvars}
118+
119+
# -> Radiative down at TOA
120+
SWdnTOA: {ipsl_varname: SWdnTOA, <<: *atmvars}
121+
122+
# -> Radiative up at TOA
123+
topl: {ipsl_varname: topl, <<: *atmvars}
124+
SWupTOA: {ipsl_varname: SWupTOA, <<: *atmvars}
125+
topl0: {ipsl_varname: topl0, <<: *atmvars}
126+
SWupTOAclr: {ipsl_varname: SWupTOAclr, <<: *atmvars}
127+
128+
# -> Radiative up at Surface
129+
LWupSFC: {ipsl_varname: LWupSFC, <<: *atmvars}
130+
SWupSFC: {ipsl_varname: SWupSFC, <<: *atmvars}
131+
SWupSFcclr: {ipsl_varname: SWupSFcclr, <<: *atmvars}
132+
LWupSFcclr: {ipsl_varname: LWupSFcclr, <<: *atmvars}
133+
134+
# -> Radiative down at Surface
135+
LWdnSFC: {ipsl_varname: LWdnSFC, <<: *atmvars}
136+
SWdnSFC: {ipsl_varname: SWdnSFC, <<: *atmvars}
137+
LWdnSFcclr: {ipsl_varname: LWdnSFcclr, <<: *atmvars}
138+
SWdnSFcclr: {ipsl_varname: SWdnSFcclr, <<: *atmvars}
139+
140+
134141
# ========================================================================================
135142
Lmon:
136143
# ========================================================================================
137144
# SRF -- Land surface - ORCHIDEE
138145

139-
# --> !!! This will not stay in the param file !!! --------------------
140146
fluxlat: {ipsl_varname: fluxlat, <<: *srfvars}
141147
fluxsens: {ipsl_varname: fluxsens, <<: *srfvars}
142148
albnir: {ipsl_varname: alb_nir, <<: *srfvars}

esmvalcore/cmor/_fixes/ipslcm/ipsl_cm6.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,16 @@ class AllVars(Fix):
1717
"""Fixes for all IPSLCM variables."""
1818

1919
def fix_file(self, filepath, output_dir):
20-
"""Select IPSLCM variable in filepath, by calling CDO, if relevant.
20+
"""Select IPSLCM variable in filepath.
2121
2222
This is done only if input file is a multi-variable one. This
2323
is diagnosed by searching in the input filepathame for the
2424
extra_facet value for key 'group'.
2525
2626
In such cases, it is worth to use an external tool for
2727
filtering, at least until Iris loads fast (which is not the case
28-
up to, and including, V3.0.2)
28+
up to, and including, V3.0.2), and CDO can be used, depending on
29+
extra_facets key `use_cdo`
2930
3031
However, we take care of ESMValTool policy re. dependencies licence
3132

esmvalcore/config-developer.yml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -195,12 +195,8 @@ native6:
195195
cmor_strict: false
196196
input_dir:
197197
default: 'Tier{tier}/{dataset}/{latestversion}/{frequency}/{short_name}'
198-
IPSL: '{root}/{account}/{model}/{status}/{exp}/{simulation}/{dir}/{freq}'
199198
input_file:
200199
default: '*.nc'
201-
IPSL:
202-
- '{simulation}_*_{ipsl_varname}.nc'
203-
- '{simulation}_*_{group}.nc'
204200
output_file: '{project}_{dataset}_{type}_{version}_{mip}_{short_name}'
205201
cmor_type: 'CMIP6'
206202
cmor_default_table_prefix: 'CMIP6_'
@@ -211,8 +207,7 @@ obs4mips:
211207
default: 'Tier{tier}/{dataset}'
212208
RCAST: '/'
213209
IPSL: '{realm}/{short_name}/{freq}/{grid}/{institute}/{dataset}/{latest_version}'
214-
input_file:
215-
default: '{short_name}_{dataset}_{level}_{version}_*.nc'
210+
input_file: '{short_name}_{dataset}_{level}_{version}_*.nc'
216211
output_file: '{project}_{dataset}_{level}_{version}_{short_name}'
217212
cmor_type: 'CMIP6'
218213
cmor_path: 'obs4mips'

0 commit comments

Comments
 (0)