Skip to content

Commit c3e2c9e

Browse files
committed
Merge branch 'main' into probtest_santis
2 parents 9fb4f5c + 407c2ed commit c3e2c9e

File tree

5 files changed

+135
-192
lines changed

5 files changed

+135
-192
lines changed

docs/datasets/climate_model_data.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,8 @@
112112
```
113113

114114

115-
- Size: 204.34 TB :material-information-outline:{ title="last updated: 2025-09-14 01:47:57" }
116-
- Number of files: 689,452 :material-information-outline:{ title="last updated: 2025-09-14 01:47:57" }
115+
- Size: 205.14 TB :material-information-outline:{ title="last updated: 2025-10-05 01:48:08" }
116+
- Number of files: 697,720 :material-information-outline:{ title="last updated: 2025-10-05 01:48:08" }
117117
- Access: direct / rsync
118118
- Status: frozen (2019-03)
119119
- Variables:
@@ -197,8 +197,8 @@
197197
```
198198

199199

200-
- Size: 356.98 TB :material-information-outline:{ title="last updated: 2025-09-14 01:48:10" }
201-
- Number of files: 552,596 :material-information-outline:{ title="last updated: 2025-09-14 01:48:10" }
200+
- Size: 356.98 TB :material-information-outline:{ title="last updated: 2025-10-05 01:47:40" }
201+
- Number of files: 552,596 :material-information-outline:{ title="last updated: 2025-10-05 01:47:40" }
202202
- Access: direct / rsync
203203
- Status: monthly updated
204204
- Resolution: 0.44° and 0.11°
@@ -214,8 +214,8 @@
214214
/nfs/atmos/c2sm/cordex-reklies
215215
```
216216

217-
- Size: 22.41 TB :material-information-outline:{ title="last updated: 2025-09-14 01:46:18" }
218-
- Number of files: 94,936 :material-information-outline:{ title="last updated: 2025-09-14 01:46:18" }
217+
- Size: 22.41 TB :material-information-outline:{ title="last updated: 2025-10-05 01:46:09" }
218+
- Number of files: 94,936 :material-information-outline:{ title="last updated: 2025-10-05 01:46:09" }
219219
- Access: direct
220220
- Status: monthly updated
221221
- Resolution: 0.11°

docs/datasets/obs_reanalysis_data.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -169,8 +169,8 @@
169169
```
170170

171171

172-
- Size: 8.26 TB :material-information-outline:{ title="last updated: 2025-09-14 01:45:56" }
173-
- Number of files: 3,493 :material-information-outline:{ title="last updated: 2025-09-14 01:45:56" }
172+
- Size: 8.26 TB :material-information-outline:{ title="last updated: 2025-10-05 01:45:51" }
173+
- Number of files: 3,493 :material-information-outline:{ title="last updated: 2025-10-05 01:45:51" }
174174
- Access: direct
175175
- Status: updated
176176
- Time period: 1985-2020
@@ -215,8 +215,8 @@
215215
```
216216

217217

218-
- Size: 1.84 TB :material-information-outline:{ title="last updated: 2025-09-14 01:45:56" }
219-
- Number of files: 1,090 :material-information-outline:{ title="last updated: 2025-09-14 01:45:56" }
218+
- Size: 1.84 TB :material-information-outline:{ title="last updated: 2025-10-05 01:45:51" }
219+
- Number of files: 1,090 :material-information-outline:{ title="last updated: 2025-10-05 01:45:51" }
220220
- Access: direct
221221
- Status: updated
222222
- Time period: 1985-2020
@@ -272,8 +272,8 @@
272272
```
273273

274274

275-
- Size: 45.93 TB :material-information-outline:{ title="last updated: 2025-09-14 01:45:59" }
276-
- Number of files: 139,817 :material-information-outline:{ title="last updated: 2025-09-14 01:45:59" }
275+
- Size: 45.93 TB :material-information-outline:{ title="last updated: 2025-10-05 01:46:53" }
276+
- Number of files: 139,817 :material-information-outline:{ title="last updated: 2025-10-05 01:46:53" }
277277
- Access: direct
278278
- Status: updated
279279
- Time period: v1: 1940-2022, v2: 1980-2023, v3: 1940-present
@@ -320,8 +320,8 @@
320320
```
321321

322322

323-
- Size: 8.9 TB :material-information-outline:{ title="last updated: 2025-09-14 01:45:58" }
324-
- Number of files: 2,012 :material-information-outline:{ title="last updated: 2025-09-14 01:45:58" }
323+
- Size: 8.9 TB :material-information-outline:{ title="last updated: 2025-10-05 01:45:55" }
324+
- Number of files: 2,012 :material-information-outline:{ title="last updated: 2025-10-05 01:45:55" }
325325
- Access: direct
326326
- Status: updated
327327
- Time period: 1950-present

docs/models/icon/SUMMARY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@
33
* [Validate Custom Namelist](validate_custom_namelist.md)
44
* [Run Probtest on Säntis](probtest.md)
55
* [ICON-CLM](icon-clm.md)
6+
* [Input Data](input_data.md)
67
* [Known Bugs](known_bugs.md)

docs/models/icon/icon-clm.md

Lines changed: 1 addition & 178 deletions
Original file line numberDiff line numberDiff line change
@@ -154,189 +154,12 @@ ${SPICE_DIR}/venv/bin/python -c 'import xarray; import pandas; import numpy; imp
154154
```
155155
Now your Python environment for SPICE is ready to go! 🚀
156156

157-
### Option 1) Use Template from C2SM's EURO-CORDEX Run
157+
### Use Experiment Template from C2SM's EURO-CORDEX Run
158158

159159
The official ICON-CLM setups are part of the [spice-setups :material-open-in-new:](https://github.com/C2SM/spice-setups){:target="_blank"} repository.
160160
Please follow the instructions in the [README :material-open-in-new:](https://github.com/C2SM/spice-setups/blob/main/README.md){:target="_blank"} file.
161161

162162

163-
### Option 2) Manually Create ERA5-driven 12 km case
164-
165-
??? note "Show instructions for manual ERA5-driven case setup"
166-
167-
From the SPICE root directory, let's create an experiment folder and
168-
copy the `sp001` case in there. If you want a different name for your
169-
experiment, just modify the `EXP` variable.
170-
171-
!!! note
172-
The `sp001` is the standard `gcm2icon` test case defined in SPICE.
173-
It is run on the EURO-CORDEX domain at 44 km horizontal resolution
174-
and uses ERAInterim data as initial and boundary conditions.
175-
If you want to run this case, skip the next subsections and continue
176-
with [Install Python virtual environment](#install-python-virtual-environment).
177-
178-
```bash
179-
EXP=EVAL-EUR12-ERA5
180-
mkdir -p ${SPICE_DIR}/experiments
181-
cp -r ${SPICE_DIR}/chain/gcm2icon/sp001 ${SPICE_DIR}/experiments
182-
mv ${SPICE_DIR}/experiments/sp001 ${SPICE_DIR}/experiments/${EXP}
183-
```
184-
185-
Navigate to the directory where our new case is located:
186-
187-
```bash
188-
cd ${SPICE_DIR}/experiments/${EXP}
189-
```
190-
191-
##### Adjust boundary data to ERA5
192-
193-
Since the standard spice case `sp001` takes ERAInterim data as input,
194-
we need to replace this with ERA5.
195-
196-
```bash
197-
# Extract lines 17-23 from the source file
198-
source_lines=$(sed -n '17,23p' ${SPICE_DIR}/chain/boundary_data_options/era5/job_settings)
199-
200-
# Define job_settings_file
201-
job_settings_file=${SPICE_DIR}/experiments/${EXP}/job_settings
202-
203-
# Replace lines 165-173 in the target file with the extracted lines
204-
sed -i '165,173d' ${job_settings_file}
205-
line_num=165
206-
while IFS= read -r line; do
207-
sed -i "${line_num}i $line" ${job_settings_file}
208-
line_num=$((line_num + 1))
209-
done <<< "$source_lines"
210-
211-
# Replace DKRZ data folder with Alps one
212-
sed -i 's|/pool/data/CLMcom/CCLM/reanalyses|/capstor/store/cscs/c2sm/c2sme/reanalyses_dkrz|g' ${job_settings_file}
213-
```
214-
215-
We also need to replace the `prep` job. This is simply done by copying
216-
the corresponding file from the boundary data options to our working
217-
directory:
218-
219-
```bash
220-
cp -v ${SPICE_DIR}/chain/boundary_data_options/era5/prep.job.sh ${SPICE_DIR}/experiments/${EXP}/scripts
221-
```
222-
223-
##### Adapt `job_settings` file and fix ICON run script
224-
225-
Now, there are still some necessary adaptations to the `job_settings` file to be done,
226-
which includes changing paths, ICON executable, meta data and some other settings.
227-
228-
```bash
229-
# General settings
230-
sed -i "s|icon-nwp|icon-model|g" ${job_settings_file}
231-
sed -i "s|nco-5.1.9-7pd2hhq2wllvietf2rvclejzxgcjwosq|nco-5.1.9-yykwws3dmcypjzraijgzagmkb6ml2zzo|g" ${job_settings_file}
232-
sed -i "s|netcdf-c-4.9.2-azccejv4b3ba227zys3e7mkdo6fxxhlq|netcdf-c-4.9.2-5ijnfossknlii33dnqn7asnlmzst3444|g" ${job_settings_file}
233-
sed -i "s|netcdf-tools/2024:v1-rc1|netcdf-tools/2024:v1|g" ${job_settings_file}
234-
sed -i "s|EMAIL_ADDRESS= |[email protected] |g" ${job_settings_file}
235-
236-
# EURO-CORDEX 12 km
237-
sed -i "s|sp001|${EXP}|g" ${job_settings_file}
238-
sed -i "s|PFDIR=\${SPDIR}/chain/gcm2icon|PFDIR=\${SPDIR}/experiments|g" ${job_settings_file}
239-
sed -i "s|WORKDIR=\${SPDIR}/chain|WORKDIR=\${SPDIR}/experiments/work|g" ${job_settings_file}
240-
sed -i "s|SCRATCHDIR=\${SPDIR}/chain|SCRATCHDIR=\${SPDIR}/experiments/scratch|g" ${job_settings_file}
241-
sed -i "s|ARCHIVE_OUTDIR=\${SPDIR}/chain|ARCHIVE_OUTDIR=\${SPDIR}/experiments|g" ${job_settings_file}
242-
sed -i "s|1979-01-01|1940-01-01|g" ${job_settings_file}
243-
sed -i "s|1979-03-01|2024-01-01|g" ${job_settings_file}
244-
sed -i "s|europe044|europe011|g" ${job_settings_file}
245-
sed -i "s|0.44|0.11|g" ${job_settings_file}
246-
sed -i "s|TIME_ICON=00-00:30:00|TIME_ICON=00-01:00:00|g" ${job_settings_file}
247-
sed -i "s|TIME_ARCH=\"00-00:30:00\"|TIME_ARCH=\"00-01:30:00\"|g" ${job_settings_file}
248-
sed -i "s|ITYPE_TS=1|ITYPE_TS=2|g" ${job_settings_file}
249-
sed -i "s|ITYPE_COMPRESS_POST=0|ITYPE_COMPRESS_POST=1|g" ${job_settings_file}
250-
sed -i "s|ITYPE_COMPRESS_ARCH=0|ITYPE_COMPRESS_ARCH=1|g" ${job_settings_file}
251-
sed -i '/ZML_SOIL/c\ZML_SOIL="0.005,0.025,0.07,0.16,0.34,0.7,1.42,2.86,5.74,11.5" # soil level' ${job_settings_file}
252-
```
253-
254-
For better readability, the following replacements are done:
255-
256-
**General settings:**
257-
258-
| Original String | Replacement String | Description |
259-
|------------------------------------|-------------------------------------------------|----------------------------------------------|
260-
| `icon-nwp` | `icon-model` | Root directory of ICON model |
261-
| `nco-5.1.9-7pd2hhq2wllvietf2rvclejzxgcjwosq` | `nco-5.1.9-yykwws3dmcypjzraijgzagmkb6ml2zzo` | New nco path due to uenv |
262-
| `netcdf-c-4.9.2-azccejv4b3ba227zys3e7mkdo6fxxhlq` | `netcdf-c-4.9.2-5ijnfossknlii33dnqn7asnlmzst3444` | New netcdf path due to uenv |
263-
| `netcdf-tools/2024:v1-rc1` | `netcdf-tools/2024:v1` | New uenv on santis |
264-
| `EMAIL_ADDRESS= ` | `[email protected] ` | Add email address for notifications |
265-
266-
**EURO-CORDEX 12 km**:
267-
268-
| Original String | Replacement String | Description |
269-
|------------------------------------|-------------------------------------------------|----------------------------------------------|
270-
| `sp001` | `EVAL-EUR12-ERA5` | Name of the experiment |
271-
| `PFDIR=${SPDIR}/chain/gcm2icon` | `PFDIR=${SPDIR}/experiments` | Base directory of experiment |
272-
| `WORKDIR=${SPDIR}/chain` | `WORKDIR=${SPDIR}/experiments/work` | Working directory of experiment |
273-
| `SCRATCHDIR=${SPDIR}/chain` | `SCRATCHDIR=${SPDIR}/experiments/scratch` | Scratch directory of experiment |
274-
| `ARCHIVE_OUTDIR=${SPDIR}/chain` | `ARCHIVE_OUTDIR=${SPDIR}/experiments` | Archive directory of experiment |
275-
| `1979-01-01` | `1940-01-01` | Start date |
276-
| `1979-03-01` | `2024-01-01` | End date |
277-
| `europe044` | `europe011` | Folder names for ERA5 data |
278-
| `0.44` | `0.11` | netCDF metadata for 11 km run |
279-
| `TIME_ICON=00-00:30:00` | `TIME_ICON=00-01:00:00` | Increase walltime for icon job |
280-
| `TIME_ARCH="00-00:30:00"` | `TIME_ARCH="00-01:30:00"` | Increase walltime for arch job |
281-
| `ITYPE_TS=1` | `ITYPE_TS=2` | Yearly time series |
282-
| `ITYPE_COMPRESS_POST=0` | `ITYPE_COMPRESS_POST=1` | netCDF compression for post data |
283-
| `ITYPE_COMPRESS_ARCH=0` | `ITYPE_COMPRESS_ARCH=1` | netCDF compression for arch data |
284-
| `${ICONDIR}/run` | `bash ${ICONDIR}/run` | Explicitly call bash for the wrapper script |
285-
| `ZML_SOIL` | `ZML_SOIL=...` | New soil height values |
286-
287-
!!! tip
288-
There might be even more changes to the `job_settings` file, depending on your setup.
289-
For example, your CSCS project needs to be set for the `PROJECT_ACCOUNT` variable.
290-
Also, for production runs, all variables starting with `GA_` should be set accordingly,
291-
as they are important for the netCDF meta data.
292-
293-
Furthermore, additional data paths for transient aerosols, ozone and
294-
solar irradiation need to be set.
295-
296-
```bash
297-
sed -i '/^TARGET_GRID=/a \
298-
\
299-
# Additional directories for aerosol treatment\
300-
DATADIR_AERO=/capstor/store/cscs/c2sm/c2sme/ICON-CLM/rcm_new\
301-
\
302-
KINNE_DIR=${DATADIR_AERO}/europe011/interpolated_aeop_R13B05\
303-
VOLC_DIR=${DATADIR_AERO}/independent/volcanic_aeropt\
304-
SP_DIR=${DATADIR_AERO}/independent/MACv2_simple_plumes_merged\
305-
\
306-
# Additional directory for ozone treatment\
307-
OZONE_DIR=${DATADIR_AERO}/europe011/ozone_europe011\
308-
\
309-
# Additional directory for solar irradiation\
310-
SOLAR_DIR=${DATADIR_AERO}/independent/solar_radiation\n' ${job_settings_file}
311-
```
312-
313-
#### Changing the ICON namelist to match the official CLM configuration
314-
315-
The official setup can be copied from our `icon-clm_patch` repository, which should already
316-
be present in `${SPICE_DIR}/src`.
317-
This also includes a change for the ICON run script around the `srun` command.
318-
319-
```shell
320-
cp -v ${SPICE_DIR}/src/icon-clm_patch/icon.job.sh ${SPICE_DIR}/experiments/${EXP}/scripts
321-
cp -v ${SPICE_DIR}/src/icon-clm_patch/post.job.sh ${SPICE_DIR}/experiments/${EXP}/scripts
322-
```
323-
324-
#### Optional: Warm start run for official ICON-CLM EVAL run
325-
326-
Replace the ICON run script:
327-
328-
```bash
329-
cp -v ${SPICE_DIR}/src/icon-clm_patch/icon-warm.job.sh ${SPICE_DIR}/experiments/${EXP}/scripts/icon.job.sh
330-
```
331-
332-
It takes the restart file directory (1950/01):
333-
334-
```bash
335-
/capstor/store/cscs/c2sm/c2sme/ICON-CLM/multifile_restart_ATMO_19500101T000000Z.mfr
336-
```
337-
338-
Note that the `START_DATE` in the `job_settings` file needs to be adapted.
339-
340163
### Run the case
341164

342165
Navigate into your experiment folder and start the simulation chain with

docs/models/icon/input_data.md

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
# Input data
2+
3+
There are two types in input data sets available for ICON:
4+
5+
- General input data for use cases / production runs
6+
- Testing input data for CI
7+
8+
## Santis
9+
10+
On Säntis, all ICON input data is collected in the project `cws01`.
11+
12+
```shell
13+
/capstor/store/cscs/userlab/cws01/
14+
```
15+
16+
### Directory Tree
17+
18+
!!! warning "Work in Progress"
19+
20+
The directory tree below is a rough outline of the planned structure. It is subject
21+
to change and non-exhaustive. If you find data that is in the wrong place, or if you
22+
want to have your data added to the project, please contact
23+
[Michael Jähn :material-open-in-new:](https://c2sm.ethz.ch/the-center/people/person-detail.html?persid=286091){:target="_blank"}.
24+
25+
```
26+
/capstor/store/cscs/userlab/cws01/
27+
28+
├── ci/ # CI
29+
│ ├── testing-input-data/ # Input data for CI (git lfs repo)
30+
│ └── buildbot_data/ # Buildbot data
31+
│ ├── nwp/ # nwp test case data
32+
│ └── ref/ # Reference data (hashed)
33+
34+
├── input/ # All input data
35+
│ ├── icon/ # ICON-specific input
36+
│ │ ├── clm/ # ICON-CLM input
37+
│ │ │ ├── independent/ # Input independent of case/domain
38+
│ │ │ │ ├── aerosols/ # ICON-CLM aerosol input datasets
39+
│ │ │ │ ├── gcm/ # Global climate model boundary data
40+
│ │ │ │ └── rcm/ # Regional climate model boundary data
41+
│ │ │ │
42+
│ │ │ └── europe11/ # EURO-CORDEX 0.11° domain-specific input
43+
│ │ │ ├── aerosols/
44+
│ │ │ ├── gcm/
45+
│ │ │ └── rcm/
46+
│ │ │
47+
│ │ ├── global/ # ICON global model input
48+
│ │ │ ├── grids/ # ICON global grids at different resolutions
49+
│ │ │ │ ├── R02B04/
50+
│ │ │ │ │ ├── icon_grid_0013_R02B04_G.nc
51+
│ │ │ │ │ └── index.txt
52+
│ │ │ │ ├── R02B05/
53+
│ │ │ │ │ ├── icon_grid_0019_R02B05_G.nc
54+
│ │ │ │ │ ├── aerosol_kinne/ # Aerosol climatologies
55+
│ │ │ │ │ ├── external_parameter/ # Surface and land-sea mask data
56+
│ │ │ │ │ ├── initial_conditions/ # Initial state for atmosphere/ocean
57+
│ │ │ │ │ ├── ozone/ # Ozone datasets
58+
│ │ │ │ │ ├── ozone_old/ # Legacy ozone datasets
59+
│ │ │ │ │ └── sst_and_seaice/ # SST & sea-ice boundary conditions
60+
│ │ │ │ └── ... # Other grids (R02B06, R02B07, ...)
61+
│ │ │ │
62+
│ │ │ └── misc/ # Other ICON global input data
63+
│ │ │
64+
│ │ ├── public/ # Public data
65+
│ │ │ └── grids/ # Public grids from MPI-M and DWD
66+
│ │ │ ├── edzw/
67+
│ │ │ └── mpim/
68+
│ │ └── regional/ # ICON regional model input
69+
│ │
70+
│ └── misc/ # Non-ICON input (placeholder for future)
71+
72+
└── reference/ # Reference datasets
73+
├── observations/ # Ground-based or in-situ observations
74+
| └── eObs/ # E-OBS daily gridded meteorological data for Europe
75+
| ├── eObs28.0/
76+
| ├── eObs29.0/
77+
| ├── eObs30.0/
78+
| └── eObs31.0/
79+
├── reanalysis/ # Reanalysis datasets (e.g. ERA5)
80+
| ├── ERA5/
81+
| └── dkrz/ # Synced from DKRZ, ready-to-use for SPICE (CLM runs)
82+
| ├── ERA5/ # ERA5 (updated as soon as new data is available)
83+
| └── ERAInterim/ # ERAInterim (static)
84+
├── satellite/ # Satellite observations for validation
85+
└── model_comparisons/ # Reference data from other models
86+
```
87+
88+
89+
## Input data pools
90+
91+
=== "Santis"
92+
```shell
93+
/capstor/store/cscs/userlab/cws01/input/icon
94+
```
95+
=== "Balfrin"
96+
```shell
97+
/scratch/mch/jenkins/icon/pool/data/ICON
98+
```
99+
=== "Euler"
100+
```shell
101+
/cluster/work/climate/icon_input
102+
```
103+
104+
## Testing input data pool
105+
106+
The input data for standard ICON tests are stored in a [Git-lfs repository :material-open-in-new:](https://gitlab.dkrz.de/icon/testing-input-data){:target="_blank"}.
107+
108+
=== "Santis"
109+
```shell
110+
/capstor/store/cscs/userlab/cws01/ci/testing-input-data
111+
```
112+
=== "Balfrin"
113+
```shell
114+
/scratch/mch/icontest/testing-input-data
115+
```
116+
=== "Euler"
117+
```shell
118+
/cluster/work/climate/icon_testing_input
119+
```

0 commit comments

Comments
 (0)