You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- "What are the files and directories after running a recipe?"
9
12
- "What happens when I run a recipe?"
10
13
objectives:
11
-
- "Run an ESMValTool recipe"
14
+
- "Run an ESMValTool recipe”
12
15
- "Understand the purpose of different settings in the recipe"
13
16
- "Inspect the output directories"
14
17
- "Examine the log information"
15
18
keypoints:
16
19
- "A recipe does not break by fiddling with it"
17
-
- "Log information is useful to How to interpret the first warnings/errors"
20
+
- "Log information is useful when interpreting the first warnings/errors"
18
21
- "The dataset section in the recipe relates to Understanding the directory structure of CMIP data on your server/disk and knowing how to use data from different experiments such as CMIP/ScenarioMIP."
19
22
---
20
23
21
24
This episode describes how ESMValTool recipes work, how to run a recipe and how to explore the recipe output. By the end of this episode, you should be able to run your first recipe, look at the recipe output, modify a recipe, explore and run some basic recipe debugging.
22
25
23
26
## Introduction to Recipes
24
27
25
-
Recipes are the instructions that you give to ESMValTool that tell it what you want to do. This includes four main section:
26
-
- datasets: what datasets you want to use
28
+
Recipes are the instructions that you give to ESMValTool that tell it what you want to do. This includes four main sections: datasets, preprocessors, diagnostics and description.
29
+
30
+
- datasets: what datasets you want to use, including
27
31
- the time range and time resolution,
28
32
- the MIP, ensemble member,
29
-
- the experiment (ie historical, ssp125 etc...)
30
-
- the grid type (CMIP6 only)
31
-
- This section can also be optional, as datasets can no preprocessing is needed.
33
+
- the experiment (i.e. historical, ssp125 etc...),
34
+
- and the grid type (CMIP6 only)
35
+
36
+
This section can also be optional, as datasets can no preprocessing is needed.
37
+
38
+
- preprocessors: general operations applied to a dataset before handling it in a diagnostic, listing
39
+
- which preprocessor modules to apply,
40
+
- the order to apply them,
41
+
- and the preprocessor arguments.
42
+
43
+
This section can also be optional, if no preprocessing is needed.
32
44
33
-
- proprocessors: one or preprocessors
34
-
- which preprocessor modules to apply
35
-
- the order to apply them
36
-
- and the preprocesor arguments.
37
-
- This section can also be optional, if no preprocessing is needed.
45
+
- diagnostics: all the information about the diagnostic, including
46
+
- list of variables to evaluate (with their respective configurations),
47
+
- the desired diagnostic script to use,
48
+
- and additional diagnostic script options or arguments, if needed.
38
49
39
-
- diagnostics: All the information about diagnostic
40
-
-
50
+
Also Include additional datasets beyond those included in the datasets section mentioned above, for instance variable specific observational data.
41
51
42
-
- description: a brief description of the recipe
43
-
- who wrote the recipe, and who maintains it
44
-
- which project is responsible for it
45
-
- which publications, reference are linked with the recipe
46
-
- Note that the authors, publications and references and named in the config-references.yml
52
+
- description: a brief description of the recipe, including
53
+
- who wrote the recipe and who maintains it,
54
+
- which project is responsible for it,
55
+
- and which publications, references are linked with the recipe.
56
+
57
+
Note that the authors, publications and references are to be named in the config-references.yml
47
58
48
59
This information
49
60
@@ -53,6 +64,7 @@ Once you’ve set up your conda environment and installed ESMValTool (See episod
53
64
~~~
54
65
esmvaltool -c configuration recipe
55
66
~~~
67
+
{: .source}
56
68
57
69
To try your hand with a basic recipe, please work through this episode.
58
70
@@ -70,8 +82,8 @@ Please copy and paste the following recipe into your ESMValTool working area wit
70
82
71
83
authors:
72
84
- demora_lee
73
-
- Ben
74
-
- Ranjini
85
+
- mueller_benjamin
86
+
- swaminathan_ranjini
75
87
76
88
maintainer:
77
89
- demora_lee
@@ -83,44 +95,35 @@ Please copy and paste the following recipe into your ESMValTool working area wit
> Now that you have run the esmvaltool command for the first time, please locate your output directory.
147
-
> Each time you run ESMValTool, it will produce a new output directory with the format:
153
+
> Each time you run ESMValTool, it will produce a new output directory with the following format:
148
154
> This directory should contain four folders:
149
155
> run work preproc plots
150
-
> If you’re missing the preproc directory, then your config-user.yml file has the value remove_preproc_dir set to true.
151
-
152
-
156
+
> If you’re missing the preproc directory, then your config-user.yml file has the value remove_preproc_dir set to true (this is used to save disk space). Please set this value to false and run the recipe again.
153
157
>
154
158
> Please locate and inspect the following files:
155
-
> You output plot(s).
159
+
> Your output plot(s).
156
160
> Your main output log file
157
161
> Your settings.yml file
158
162
> A metadata.yml file
@@ -161,29 +165,49 @@ Please copy and paste the following recipe into your ESMValTool working area wit
161
165
162
166
> ## Edit the recipe and run
163
167
> So far, the example recipe has used global volume-weighted ocean temperature. Please edit this recipe to investigate one of the following fields:
164
-
> Land surface temperature
165
-
> Atmospheric surface temperature
166
-
> Ocean surface temperature (tos)
167
-
> You will need to edit the dataset request, c
168
+
> - Land surface average temperature (tsland)
169
+
> - Atmospheric surface average temperature (tas)
170
+
> - Ocean surface average temperature (tos)
171
+
>
172
+
> You will need to edit:
173
+
> - the dataset:
174
+
> - mip, start_year, end_year
175
+
> - the preprocessor:
176
+
> - These fields are all 2D fields, but thetaga was a 0D field. This means that we need to take the average over the latitude and longitude dimensions. To do this, add the area_statistics to the preprocessor.
177
+
> - the diagnostic
178
+
> - change the short_name value (thetaoga) for another:
179
+
> - Land surface average temperature (tsland)
180
+
> - Atmospheric surface average temperature (tas)
181
+
> - Ocean surface average temperature (tos)
182
+
> ### Advanced:
183
+
> If you want to add a different field, please have a look here:
> Can you run the command “esmvaltool -h”. If no, then it’s possible that the conda environment isn’t activated. Please return to the installation section, epside [2] LINK.
192
+
>
173
193
> ### ESMValTool can’t locate the data
174
-
> User didn’t correctly edit user-config.yml
194
+
> The error message is “esmvalcore._recipe_checks.RecipeError: Missing data”
195
+
> Which computing machine are you using? Does your user-config.yml file reflect your machine's settings? Is the dataset’s name in the correct order?
175
196
>
176
-
> ### Esmvaltool not found
177
-
> User didn’t active or correctly install conda
178
197
>
179
198
> ### Diagnostic path problems
180
-
> explain ESMValTool’s methods to determine diagnostic path, and how it should appear in the recipe
199
+
> The directory path to your diagnostics code is set relative to the esmvaltool/diag_scripts subdirectory. Is the code placed in this subdirectory? Is it spelled correctly?
200
+
>
181
201
>
182
202
> ### FX files not found.
183
203
>
204
+
>
184
205
> ### The preprocessor works but the diagnostic fails:
185
-
> How to tell them appart and how to re-run a failed diagnostic (but not the preprocessor)
206
+
> If your preprocessor works fine but your diagnostic script fails, congratulations! A failed diagnostic means that you won’t need to re-run the preprocessor. In your “run/main_log.txt” run output, you should see a line that reads: “To re-run this diagnostic script, run:”, followed by a line with a command that will allow you to re-run your diagnostic script only. Append this line with the “-i” option after the python script you call to re-run your diagnostic.
207
+
>
186
208
>
187
209
> ### Your recipe’s name/project/reference isn’t recognised by ESMValTool.
210
+
> Error message is “ValueError: Tag 'NAME' does not exist in section 'authors' of path/esmvaltool/config-references.yml”
211
+
> Most likely, you added your own name to the recipe in the description section, but didn’t add it to the esmvaltool/config-references.yml file, where the names are linked to an email address, institute, and ORCID Identity.
0 commit comments