climate-ref 0.6.5__py3-none-any.whl → 0.6.6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- climate_ref/cli/executions.py +18 -0
- climate_ref/dataset_registry/sample_data.txt +278 -107
- climate_ref/executor/__init__.py +8 -1
- climate_ref/executor/hpc.py +7 -1
- climate_ref/executor/result_handling.py +147 -63
- climate_ref/migrations/versions/2025-07-20T1521_94beace57a9c_cmip6_finalised.py +1 -1
- climate_ref/migrations/versions/2025-08-05T0327_a1b2c3d4e5f6_finalised_on_base_dataset.py +1 -1
- climate_ref/migrations/versions/2025-09-05T2019_8d28e5e0f9c3_add_indexes.py +108 -0
- climate_ref/models/base.py +3 -1
- climate_ref/models/dataset.py +8 -6
- climate_ref/models/execution.py +6 -5
- climate_ref/models/metric_value.py +2 -2
- climate_ref/testing.py +1 -1
- {climate_ref-0.6.5.dist-info → climate_ref-0.6.6.dist-info}/METADATA +2 -2
- {climate_ref-0.6.5.dist-info → climate_ref-0.6.6.dist-info}/RECORD +19 -18
- {climate_ref-0.6.5.dist-info → climate_ref-0.6.6.dist-info}/WHEEL +0 -0
- {climate_ref-0.6.5.dist-info → climate_ref-0.6.6.dist-info}/entry_points.txt +0 -0
- {climate_ref-0.6.5.dist-info → climate_ref-0.6.6.dist-info}/licenses/LICENCE +0 -0
- {climate_ref-0.6.5.dist-info → climate_ref-0.6.6.dist-info}/licenses/NOTICE +0 -0
climate_ref/cli/executions.py
CHANGED
|
@@ -209,3 +209,21 @@ def inspect(ctx: typer.Context, execution_id: int) -> None:
|
|
|
209
209
|
console.print(_datasets_panel(result))
|
|
210
210
|
console.print(_results_directory_panel(result_directory))
|
|
211
211
|
console.print(_log_panel(result_directory))
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
@app.command()
|
|
215
|
+
def flag_dirty(ctx: typer.Context, execution_id: int) -> None:
|
|
216
|
+
"""
|
|
217
|
+
Flag an execution group for recomputation
|
|
218
|
+
"""
|
|
219
|
+
session = ctx.obj.database.session
|
|
220
|
+
with session.begin():
|
|
221
|
+
execution_group = session.get(ExecutionGroup, execution_id)
|
|
222
|
+
|
|
223
|
+
if not execution_group:
|
|
224
|
+
logger.error(f"Execution not found: {execution_id}")
|
|
225
|
+
raise typer.Exit(code=1)
|
|
226
|
+
|
|
227
|
+
execution_group.dirty = True
|
|
228
|
+
|
|
229
|
+
console.print(_execution_panel(execution_group))
|
|
@@ -1,107 +1,278 @@
|
|
|
1
|
-
CMIP6/C4MIP/CSIRO/ACCESS-ESM1-5/esm-1pct-brch-1000PgC/r1i1p1f1/Amon/tas/gn/v20191206/tas_Amon_ACCESS-ESM1-5_esm-1pct-brch-1000PgC_r1i1p1f1_gn_016801-026812.nc
|
|
2
|
-
CMIP6/C4MIP/CSIRO/ACCESS-ESM1-5/esm-1pct-brch-1000PgC/r1i1p1f1/fx/areacella/gn/v20191206/areacella_fx_ACCESS-ESM1-5_esm-1pct-brch-1000PgC_r1i1p1f1_gn.nc
|
|
3
|
-
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/fco2antt/gn/v20190815/fco2antt_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_185001-186912.nc
|
|
4
|
-
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/fco2antt/gn/v20190815/fco2antt_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_187001-188912.nc
|
|
5
|
-
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/fco2antt/gn/v20190815/fco2antt_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_189001-190912.nc
|
|
6
|
-
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/fco2antt/gn/v20190815/fco2antt_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_191001-191412.nc
|
|
7
|
-
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_185001-186912.nc
|
|
8
|
-
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_187001-188912.nc
|
|
9
|
-
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_189001-190912.nc
|
|
10
|
-
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_191001-191412.nc
|
|
11
|
-
CMIP6/CMIP/
|
|
12
|
-
CMIP6/CMIP/
|
|
13
|
-
CMIP6/CMIP/
|
|
14
|
-
CMIP6/CMIP/
|
|
15
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
16
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
17
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/abrupt-4xCO2/r1i1p1f1/
|
|
18
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
19
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
20
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
21
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
22
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/
|
|
23
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/
|
|
24
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/
|
|
25
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/
|
|
26
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/
|
|
27
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/
|
|
28
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
29
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
30
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
31
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
32
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
33
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
34
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
35
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
36
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
37
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
38
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
39
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
40
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
41
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
42
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/
|
|
43
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/
|
|
44
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/
|
|
45
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/
|
|
46
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
47
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
48
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
49
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
50
|
-
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/
|
|
51
|
-
CMIP6/CMIP/
|
|
52
|
-
CMIP6/CMIP/
|
|
53
|
-
CMIP6/CMIP/
|
|
54
|
-
CMIP6/CMIP/
|
|
55
|
-
CMIP6/CMIP/
|
|
56
|
-
CMIP6/CMIP/
|
|
57
|
-
CMIP6/CMIP/
|
|
58
|
-
CMIP6/CMIP/
|
|
59
|
-
CMIP6/CMIP/
|
|
60
|
-
CMIP6/
|
|
61
|
-
CMIP6/
|
|
62
|
-
CMIP6/
|
|
63
|
-
CMIP6/
|
|
64
|
-
CMIP6/
|
|
65
|
-
CMIP6/
|
|
66
|
-
CMIP6/
|
|
67
|
-
CMIP6/
|
|
68
|
-
CMIP6/
|
|
69
|
-
CMIP6/
|
|
70
|
-
CMIP6/
|
|
71
|
-
CMIP6/
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
1
|
+
CMIP6/C4MIP/CSIRO/ACCESS-ESM1-5/esm-1pct-brch-1000PgC/r1i1p1f1/Amon/tas/gn/v20191206/tas_Amon_ACCESS-ESM1-5_esm-1pct-brch-1000PgC_r1i1p1f1_gn_016801-026812.nc 6a59724e1416a054fe434d3c3716a5b8e5a846988a233c2795f7ca3fcac90da6
|
|
2
|
+
CMIP6/C4MIP/CSIRO/ACCESS-ESM1-5/esm-1pct-brch-1000PgC/r1i1p1f1/fx/areacella/gn/v20191206/areacella_fx_ACCESS-ESM1-5_esm-1pct-brch-1000PgC_r1i1p1f1_gn.nc 9820406e03b6551757103dc7778956422fa9b4ddf79a4585dd3e3a176394830d
|
|
3
|
+
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/fco2antt/gn/v20190815/fco2antt_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_185001-186912.nc c774072768feb9246c7eedc408798ba20fa41b4b59ca1de99583985daa6365b3
|
|
4
|
+
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/fco2antt/gn/v20190815/fco2antt_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_187001-188912.nc 0b771a0b3c3d3ea76b9beeb68dbce9639e00b9eda5331207c69425dfefb3c27c
|
|
5
|
+
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/fco2antt/gn/v20190815/fco2antt_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_189001-190912.nc dd58861a45cb84c417abc101e4d5ce9ea9761386243a638ca17c80dbd9d4bc7e
|
|
6
|
+
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/fco2antt/gn/v20190815/fco2antt_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_191001-191412.nc 696d15f7d7d52e71e352bdbc392d84e8632baedf48bcb447e8332fc3c340f029
|
|
7
|
+
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_185001-186912.nc d341d13c607be0755c982b93a1af21f4454690a5bfbf229651744071e407d850
|
|
8
|
+
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_187001-188912.nc 141a4b1b394844042cee7a172acf3a3d0a03777ba2ba90a0a1e036d92c83c2d3
|
|
9
|
+
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_189001-190912.nc 63c83aafc0811c2e357e1dc415e326e116c79163695c508a8531ef166a8501cf
|
|
10
|
+
CMIP6/C4MIP/MPI-M/MPI-ESM1-2-LR/esm-1pctCO2/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-1pctCO2_r1i1p1f1_gn_191001-191412.nc edf02222dc1724ecf9c52e5a3a14064d16d8e575988e5048bbf04cc71fd3779e
|
|
11
|
+
CMIP6/CMIP/CCCma/CanESM5/historical/r1i1p1f1/Amon/tas/gn/v20190429/tas_Amon_CanESM5_historical_r1i1p1f1_gn_197901-201412.nc 94c0be409619619e6576c573371fa4cfa8e7319ce9de86122d737f764f864ca6
|
|
12
|
+
CMIP6/CMIP/CCCma/CanESM5/historical/r1i1p1f1/Ofx/areacello/gn/v20190429/areacello_Ofx_CanESM5_historical_r1i1p1f1_gn.nc e99ff6502a83e0c120e9bbc864b05d6f84768c209be5b52adee1c96a7614490e
|
|
13
|
+
CMIP6/CMIP/CCCma/CanESM5/historical/r1i1p1f1/SImon/siconc/gn/v20190429/siconc_SImon_CanESM5_historical_r1i1p1f1_gn_197901-201412.nc 3c22bdb604cb74503155701a91843c923f7a92d15c2152c20eab8f75c660fc78
|
|
14
|
+
CMIP6/CMIP/CCCma/CanESM5/historical/r1i1p1f1/fx/areacella/gn/v20190429/areacella_fx_CanESM5_historical_r1i1p1f1_gn.nc c52313bfce8b210fab051d6d33b456a5830102bd6298164e947b87938e55debf
|
|
15
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/1pctCO2/r1i1p1f1/Amon/tas/gn/v20191115/tas_Amon_ACCESS-ESM1-5_1pctCO2_r1i1p1f1_gn_010101-025012.nc 907f76a9a7ebcea88270253ba612eb88f5d6117e08f34aa26e21ae67fa452287
|
|
16
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/1pctCO2/r1i1p1f1/fx/areacella/gn/v20191115/areacella_fx_ACCESS-ESM1-5_1pctCO2_r1i1p1f1_gn.nc 9736c903e1ee9f6b57c90c67b2fe1467dcee514acb6bc4f42d70c2d20bd49c8d
|
|
17
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/abrupt-4xCO2/r1i1p1f1/Amon/rlut/gn/v20191115/rlut_Amon_ACCESS-ESM1-5_abrupt-4xCO2_r1i1p1f1_gn_010101-012512.nc eb8426a3dc7dfe72201fb8eb81306fe183b5bf2a5f60b12a016c7ca1cc512aa9
|
|
18
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/abrupt-4xCO2/r1i1p1f1/Amon/rsdt/gn/v20191115/rsdt_Amon_ACCESS-ESM1-5_abrupt-4xCO2_r1i1p1f1_gn_010101-012512.nc 84d20d00cfe79da4a36afc7b53335966bb81f5c82de7f6d8a595e82fab012ff4
|
|
19
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/abrupt-4xCO2/r1i1p1f1/Amon/rsut/gn/v20191115/rsut_Amon_ACCESS-ESM1-5_abrupt-4xCO2_r1i1p1f1_gn_010101-012512.nc ddcab059b65e2b636c0f0745081dfdf79a0a95fd8c07c06a71f4bac87151ed01
|
|
20
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/abrupt-4xCO2/r1i1p1f1/Amon/tas/gn/v20191115/tas_Amon_ACCESS-ESM1-5_abrupt-4xCO2_r1i1p1f1_gn_010101-012512.nc 01b3a29d9635b5949b5bc8d411b26e58f28176898c9c18cf2408ad25b04e475a
|
|
21
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/abrupt-4xCO2/r1i1p1f1/fx/areacella/gn/v20191115/areacella_fx_ACCESS-ESM1-5_abrupt-4xCO2_r1i1p1f1_gn.nc f97ff763f2aaf2da5ec162c42a02d6044ba20faae2d107a1e913e684c0358e00
|
|
22
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/hurs/gn/v20191115/hurs_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_201301-201412.nc cea9b3482165263e86dd90962b1b20b31057f91a487250b1030418378055a633
|
|
23
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/hus/gn/v20191115/hus_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_198001-201412.nc 5c245d3ea5c30eeca2f5f1a602283ac332d0b76a6cf288cd6353dcf2e9b6eaaa
|
|
24
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/pr/gn/v20191115/pr_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_185001-201412.nc ec2a749432b77764d95547b74938823f39199b0ee6e48623057c8e5b408e9295
|
|
25
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/psl/gn/v20191115/psl_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_198001-201412.nc 76d9214e669c54046d75cc6f2fd6ed66700046cef6bd40aa930b73fc26d9eafa
|
|
26
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/rlut/gn/v20191115/rlut_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_199601-201412.nc c1cff18f2de3a361b9d3bc9235389f48fbf2d041f6b70e6164c0220bbca3d4ee
|
|
27
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/rlutcs/gn/v20191115/rlutcs_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_199601-201412.nc de3d5d5d1bde41d1b0c5ee5cacce4e352229192e1b5a3aad48f5d317dff8acb2
|
|
28
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/rsdt/gn/v20191115/rsdt_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_200001-201412.nc 8b1feefdc9c3c22ff3794198d4c7bc5e8b6b7bd1c68ad7dee6965cd2f64d7561
|
|
29
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/rsut/gn/v20191115/rsut_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_199601-201412.nc 9e4da7cf758e04be29e3f6b2ba2d720e720d74dda1b785834ace02c1f5c7f82b
|
|
30
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/rsutcs/gn/v20191115/rsutcs_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_199601-201412.nc c05839ff202a023757122c5dc5951cd1d56fdbff27f3c2bad7b94d5788e4f4c5
|
|
31
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/tas/gn/v20191115/tas_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_185001-201412.nc 98350df354acbabdff5dcb03bafbc0e7312cb5c766941d371c42fd454b89842e
|
|
32
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/tasmax/gn/v20191115/tasmax_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_201301-201412.nc 7580552d5e3b1658ff97ba3fa33bd6172d8d963df76539c41461cc345aae9047
|
|
33
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/tauu/gn/v20191115/tauu_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_185001-201412.nc d72622c1811db2b522daa5f323acecf462cc46d7ba57f97fc2a1bf14475f1402
|
|
34
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/ts/gn/v20191115/ts_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_200001-201412.nc 36953facff0a7336470c3e310f24a0e2137b5c6e4b2d57dcff9fe7dcc19e9c33
|
|
35
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Amon/ua/gn/v20191115/ua_Amon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_198001-201412.nc 0a035d2eaee25586d741fb92ac61b603effb24d17be0e5564ab9f23a2b5396cf
|
|
36
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Emon/cSoil/gn/v20191115/cSoil_Emon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_200001-201412.nc d992e8be9160fb0af91baecde40d4ed9cef0fbff2dbaef0bd0df4a9c841f68a0
|
|
37
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Emon/vegFrac/gn/v20191115/vegFrac_Emon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_201301-201412.nc a006fec4f86f55bc60eb604b17fb46ff1f8805ca8d9b59723e8655eb9731108c
|
|
38
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Lmon/cVeg/gn/v20191115/cVeg_Lmon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_201301-201412.nc dac42aa2529fbc9951cb2ab82fd1525996a6720c75f04f2eefea5d210fc5e3ab
|
|
39
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Lmon/gpp/gn/v20191115/gpp_Lmon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_200001-201412.nc 650088139dfaeefb13c22e9f4664c073f62b898203ea5ebe4ee1d1f9a33cea8a
|
|
40
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Lmon/lai/gn/v20191115/lai_Lmon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_200001-201412.nc 4344addd138835f4b17141ee94bc2f655254a0fbf3eb40682c2e7993dd04cb29
|
|
41
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Lmon/mrro/gn/v20191115/mrro_Lmon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_200001-201412.nc 9b09ded26983b50744b13b8c2d2813c31a79bf475377c32fe325b2f653b992c4
|
|
42
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Lmon/mrsos/gn/v20191115/mrsos_Lmon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_200001-201412.nc e1f8e9d983622c5a0dfbf7870c16449bb576bf41e685fbbe7bf8a566e298f5d9
|
|
43
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Lmon/nbp/gn/v20191115/nbp_Lmon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_185001-201412.nc 9e1b3885544c5d8aa5f21a854b3dfdc11a32e6e3acf63b33bc331bd76d3e6992
|
|
44
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Lmon/treeFrac/gn/v20191115/treeFrac_Lmon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_201301-201412.nc 14b34644c775101b6ac5fa329d446178521e38cb47ad4022f4c971770398c251
|
|
45
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Ofx/areacello/gn/v20191115/areacello_Ofx_ACCESS-ESM1-5_historical_r1i1p1f1_gn.nc 6c81071e48fdbacb49207cbf09aa94eb3ede265ec95116aad3ff5af425a25b26
|
|
46
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Ofx/sftof/gn/v20191115/sftof_Ofx_ACCESS-ESM1-5_historical_r1i1p1f1_gn.nc 1bdac0745938a5b0cd474d39f4cdce8293fe923b680bcea88fb0dc4d47753684
|
|
47
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Omon/msftmz/gn/v20191115/msftmz_Omon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_200001-200912.nc 8701fb7ec96033fb2f85dfd91db4529a95234f14e05defb27fc664e6f1b1e635
|
|
48
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Omon/msftmz/gn/v20191115/msftmz_Omon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_201001-201412.nc e90376384addcc6fecb680ff9385c2f30728ce74a9784af5c43fc8241b97db58
|
|
49
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Omon/sos/gn/v20191115/sos_Omon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_200001-201412.nc 86346e7b8fc0b0d41a9a0bf504c48646e26614628adcc814e558922b846facde
|
|
50
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/Omon/tos/gn/v20191115/tos_Omon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_185001-201412.nc b0e020688297c13f17725b081f2ad46d9bab68e7dad7dbca69577fba7435473f
|
|
51
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/SImon/siconc/gn/v20200817/siconc_SImon_ACCESS-ESM1-5_historical_r1i1p1f1_gn_197901-201412.nc d62a0a84d634b7695c94d49c75efd4b69f56ee7fa1870dfda2d73d63f2b4b7cd
|
|
52
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/fx/areacella/gn/v20191115/areacella_fx_ACCESS-ESM1-5_historical_r1i1p1f1_gn.nc 97418f230390c28d897e31c1f0f15709677b08ad4ae52a5e88d32c3ddc22a9ca
|
|
53
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r1i1p1f1/fx/sftlf/gn/v20191115/sftlf_fx_ACCESS-ESM1-5_historical_r1i1p1f1_gn.nc 94f2e476201495bba6e83f367fe443485123123febf7495de848fbd03e8e1c8a
|
|
54
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r2i1p1f1/Amon/psl/gn/v20191128/psl_Amon_ACCESS-ESM1-5_historical_r2i1p1f1_gn_200001-201412.nc 3bef2395ec8f7322130e5fa7c994b88260302fd1b89c10f3bb906f7db6717c46
|
|
55
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r2i1p1f1/Amon/ts/gn/v20191128/ts_Amon_ACCESS-ESM1-5_historical_r2i1p1f1_gn_200001-201412.nc 1b9760fbca15a9923168e4e06a818c0430edec87c3e15664174287f52c3c90a9
|
|
56
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/historical/r2i1p1f1/fx/areacella/gn/v20191128/areacella_fx_ACCESS-ESM1-5_historical_r2i1p1f1_gn.nc c2bd1ccffb33c7abab07401783d6200495e19eb5430c527a0de3573d19e78cd5
|
|
57
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/piControl/r1i1p1f1/Amon/rlut/gn/v20210316/rlut_Amon_ACCESS-ESM1-5_piControl_r1i1p1f1_gn_010101-012512.nc 3c0a4d4b37d98f776e6752af27d430368221d3983398d6d5b49c6c2963d55f41
|
|
58
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/piControl/r1i1p1f1/Amon/rsdt/gn/v20210316/rsdt_Amon_ACCESS-ESM1-5_piControl_r1i1p1f1_gn_010101-012512.nc 5a1f9382d1bc88f34a456052542d153c3d552e8bcc4eb8413dc487a6d489c8f1
|
|
59
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/piControl/r1i1p1f1/Amon/rsut/gn/v20210316/rsut_Amon_ACCESS-ESM1-5_piControl_r1i1p1f1_gn_010101-012512.nc e5a13d9fee5d0b567fcf5bf805c1447336575321bf0232a1cfcc12427e0db0b1
|
|
60
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/piControl/r1i1p1f1/Amon/tas/gn/v20210316/tas_Amon_ACCESS-ESM1-5_piControl_r1i1p1f1_gn_010101-018012.nc d1c5473e392d9c0763ac4b6ca26029545babe2887024ae375901e92cc3f3dad2
|
|
61
|
+
CMIP6/CMIP/CSIRO/ACCESS-ESM1-5/piControl/r1i1p1f1/fx/areacella/gn/v20210316/areacella_fx_ACCESS-ESM1-5_piControl_r1i1p1f1_gn.nc 2d57eb11cf7e65f1da6a2697462cfb3cee6395ffe78cf43a78c304e0021730b6
|
|
62
|
+
CMIP6/CMIP/MOHC/HadGEM3-GC31-LL/historical/r1i1p1f3/Amon/tas/gn/v20190624/tas_Amon_HadGEM3-GC31-LL_historical_r1i1p1f3_gn_197901-201412.nc 7e1154a4eb33f96dfbe2cf1ac464d4ddd331af122fbd18e04a7af48c89d8272b
|
|
63
|
+
CMIP6/CMIP/MOHC/HadGEM3-GC31-LL/historical/r1i1p1f3/SImon/siconc/gn/v20200330/siconc_SImon_HadGEM3-GC31-LL_historical_r1i1p1f3_gn_197901-201412.nc 1fa8e99e61fc5241a3f96dfca6ef521ce71f54b28cfcfa6dc8fe810732eb861d
|
|
64
|
+
CMIP6/CMIP/MOHC/HadGEM3-GC31-LL/piControl/r1i1p1f1/Ofx/areacello/gn/v20190709/areacello_Ofx_HadGEM3-GC31-LL_piControl_r1i1p1f1_gn.nc b54c24a2009cf5bab4efe4b6f0c1387b4dd5eb14f3228789a3af0259af139167
|
|
65
|
+
CMIP6/CMIP/MOHC/HadGEM3-GC31-LL/piControl/r1i1p1f1/fx/areacella/gn/v20190709/areacella_fx_HadGEM3-GC31-LL_piControl_r1i1p1f1_gn.nc 69333d37a4900b29bd4826a1c5412f1b3b1a01050a9064cd4e0eebf3dcbc49a5
|
|
66
|
+
CMIP6/CMIP/MPI-M/MPI-ESM1-2-LR/esm-piControl/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-piControl_r1i1p1f1_gn_185001-186912.nc 8609da1c5de64c36ab8358452b11ff9e26e37db7a5f8f45d73011b04783b286b
|
|
67
|
+
CMIP6/CMIP/MPI-M/MPI-ESM1-2-LR/esm-piControl/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-piControl_r1i1p1f1_gn_187001-188912.nc 8a5963cb9a8894f8d7573b1d92197fc6e39366025727e8fd9200f12d496d61ce
|
|
68
|
+
CMIP6/CMIP/MPI-M/MPI-ESM1-2-LR/esm-piControl/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-piControl_r1i1p1f1_gn_189001-190912.nc 5ce6e74fb80748e34a567b2895f029131c5980a292c744fbbf555c2235afe77f
|
|
69
|
+
CMIP6/CMIP/MPI-M/MPI-ESM1-2-LR/esm-piControl/r1i1p1f1/Amon/tas/gn/v20190815/tas_Amon_MPI-ESM1-2-LR_esm-piControl_r1i1p1f1_gn_191001-191512.nc f4a83f01af6563a63f43e4497ba0ea6e90297fb076fbcc8d63ac0105e6450ab5
|
|
70
|
+
CMIP6/CMIP/MPI-M/MPI-ESM1-2-LR/esm-piControl/r1i1p1f1/fx/areacella/gn/v20190815/areacella_fx_MPI-ESM1-2-LR_esm-piControl_r1i1p1f1_gn.nc b67f7d92ee13d5f0fabc5397e8ba5743f11cb062fd2f761e42ae5ac8438e69a4
|
|
71
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Amon/cli/gn/v20190308/cli_Amon_CESM2_historical_r1i1p1f1_gn_200701-201412.nc 579cdab588f2bfdc501fb296af15b5ff578bc0b05c65a5ed15848cdf96f4c5bd
|
|
72
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Amon/clivi/gn/v20190308/clivi_Amon_CESM2_historical_r1i1p1f1_gn_200701-201412.nc 84cffb47d106ead933f174da8dd1fdff55c7672b28204b012adbb73eb0b59d8f
|
|
73
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Amon/clt/gn/v20190308/clt_Amon_CESM2_historical_r1i1p1f1_gn_200701-201412.nc ba35c7ce1b221626cbb6363648e2de10a4bb403e214d6933ce650ed895c3f29e
|
|
74
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Amon/clwvi/gn/v20190308/clwvi_Amon_CESM2_historical_r1i1p1f1_gn_200701-201412.nc bd15aff61ce2c9e2a17d1bc417a6ca0103ae3799d45f6a688d1ac1e994f85155
|
|
75
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Amon/pr/gn/v20190401/pr_Amon_CESM2_historical_r1i1p1f1_gn_200701-201412.nc b6aae96e7bc02b20dbba58c43f6976700e9147c7adb6f72c123cde99d250bc74
|
|
76
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Amon/rlut/gn/v20190308/rlut_Amon_CESM2_historical_r1i1p1f1_gn_200701-201412.nc af072cf5e065b18207f140045f1a260d03ea85763319e9cf41ace71394d55478
|
|
77
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Amon/rlutcs/gn/v20190308/rlutcs_Amon_CESM2_historical_r1i1p1f1_gn_200701-201412.nc 469b9fcab4d7fb09426f2c5c67f8acf50a0904c9d8c6ef857abe933fac31a211
|
|
78
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Amon/rsut/gn/v20190308/rsut_Amon_CESM2_historical_r1i1p1f1_gn_200701-201412.nc 634e496041968a53223bc7ca709bd891222925253ebf14ce2d6b19f3bbd039e0
|
|
79
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Amon/rsutcs/gn/v20190308/rsutcs_Amon_CESM2_historical_r1i1p1f1_gn_200701-201412.nc 9ec147f4c44acb8de4d06b25bc4a890a9090726ea75b2dc855d5b3aa96f174f0
|
|
80
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Amon/ta/gn/v20190308/ta_Amon_CESM2_historical_r1i1p1f1_gn_200701-201412.nc 08865486d7f8e2f086a957b002257b65e03a1b332540da484423bdce652af873
|
|
81
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/ImonAnt/snc/gn/v20190308/snc_ImonAnt_CESM2_historical_r1i1p1f1_gn_200001-201412.nc 3c933b6aaf471b170d6498fed4e01fa73e45169cb8e0790ed70051b69107482f
|
|
82
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/ImonGre/snc/gn/v20190308/snc_ImonGre_CESM2_historical_r1i1p1f1_gn_200001-201412.nc 6b6d84052cd6283663a60f416cc8e80cccfa0f4a2c963b5256ad208f567bbfde
|
|
83
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/LImon/snc/gn/v20190308/snc_LImon_CESM2_historical_r1i1p1f1_gn_200001-201412.nc b0f91e0eb9eef40ffa0ff6b57b8016bf2d3c25e6b3fdc8d12a8aca4d27e692a3
|
|
84
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/Lmon/burntFractionAll/gn/v20190308/burntFractionAll_Lmon_CESM2_historical_r1i1p1f1_gn_200001-201412.nc 3cfd6d2b71ead6408f95a6e38da1cf1ab51860404f069341a313d4197c41e5ac
|
|
85
|
+
CMIP6/CMIP/NCAR/CESM2/historical/r1i1p1f1/fx/areacella/gn/v20190308/areacella_fx_CESM2_historical_r1i1p1f1_gn.nc 3da72ab94592827eb6f31e1f9bb0fc312568e0acf02ade48af0bc8cf474e9fb8
|
|
86
|
+
CMIP6/DAMIP/CSIRO/ACCESS-ESM1-5/hist-GHG/r1i1p1f1/Amon/psl/gn/v20200615/psl_Amon_ACCESS-ESM1-5_hist-GHG_r1i1p1f1_gn_200001-202012.nc 320264f2aea7e872255615a0d95de642baf34399cd7cbc354648ccfdf0aae25c
|
|
87
|
+
CMIP6/DAMIP/CSIRO/ACCESS-ESM1-5/hist-GHG/r1i1p1f1/Amon/ts/gn/v20200615/ts_Amon_ACCESS-ESM1-5_hist-GHG_r1i1p1f1_gn_200001-202012.nc e0620351dae6599479fb2531e26114c235bb3eb310f7cdb0eff8953c38f2a39c
|
|
88
|
+
CMIP6/DAMIP/CSIRO/ACCESS-ESM1-5/hist-GHG/r1i1p1f1/fx/areacella/gn/v20200615/areacella_fx_ACCESS-ESM1-5_hist-GHG_r1i1p1f1_gn.nc 90d4857061d0909e92a5990bf4b6b3f06a2d8f5732f1b551b3443d7d66fc059e
|
|
89
|
+
CMIP6/DAMIP/CSIRO/ACCESS-ESM1-5/hist-GHG/r2i1p1f1/Amon/psl/gn/v20200615/psl_Amon_ACCESS-ESM1-5_hist-GHG_r2i1p1f1_gn_200001-202012.nc fe6cc9c93f7abe2eb49eb8c9908be4a87db1fedd461fb708d504807996390ca5
|
|
90
|
+
CMIP6/DAMIP/CSIRO/ACCESS-ESM1-5/hist-GHG/r2i1p1f1/Amon/ts/gn/v20200615/ts_Amon_ACCESS-ESM1-5_hist-GHG_r2i1p1f1_gn_200001-202012.nc c9f1f821b12d4eafd679a90ae8870c129a144e212a1021ab021ecbb6a3226e32
|
|
91
|
+
CMIP6/DAMIP/CSIRO/ACCESS-ESM1-5/hist-GHG/r2i1p1f1/fx/areacella/gn/v20200615/areacella_fx_ACCESS-ESM1-5_hist-GHG_r2i1p1f1_gn.nc ae8663b8060be712fea5acd4042221b263da7fdf40f504b0f49d4c793035256d
|
|
92
|
+
CMIP6/ScenarioMIP/CSIRO/ACCESS-ESM1-5/ssp126/r1i1p1f1/Amon/pr/gn/v20210318/pr_Amon_ACCESS-ESM1-5_ssp126_r1i1p1f1_gn_201501-210012.nc acccc5b9ee079b29f16ecbcc584302281d4bbd0113cfef1a4e0a6d59cd8f793e
|
|
93
|
+
CMIP6/ScenarioMIP/CSIRO/ACCESS-ESM1-5/ssp126/r1i1p1f1/Amon/rsdt/gn/v20210318/rsdt_Amon_ACCESS-ESM1-5_ssp126_r1i1p1f1_gn_201501-202512.nc d71f0ff6ba93e4fc72c33d6aee190386dec361441f103c2f0d801d96e0c4931e
|
|
94
|
+
CMIP6/ScenarioMIP/CSIRO/ACCESS-ESM1-5/ssp126/r1i1p1f1/Amon/rsut/gn/v20210318/rsut_Amon_ACCESS-ESM1-5_ssp126_r1i1p1f1_gn_201501-202512.nc 24756d55d51e3b4eef644724a7493dc61249c6f14322b1ec1555b568c0f46074
|
|
95
|
+
CMIP6/ScenarioMIP/CSIRO/ACCESS-ESM1-5/ssp126/r1i1p1f1/Amon/tas/gn/v20210318/tas_Amon_ACCESS-ESM1-5_ssp126_r1i1p1f1_gn_201501-210012.nc 03c85c08cc9c41ed7d5d2fde4931ca2491b5de80295187920d9db17fcc994d79
|
|
96
|
+
CMIP6/ScenarioMIP/CSIRO/ACCESS-ESM1-5/ssp126/r1i1p1f1/Omon/tos/gn/v20210318/tos_Omon_ACCESS-ESM1-5_ssp126_r1i1p1f1_gn_201501-202512.nc 14382c61c698f42e0eccd9dc303a92ee1afece823d2c8a21802a0152820bc351
|
|
97
|
+
CMIP6/ScenarioMIP/CSIRO/ACCESS-ESM1-5/ssp126/r1i1p1f1/fx/areacella/gn/v20210318/areacella_fx_ACCESS-ESM1-5_ssp126_r1i1p1f1_gn.nc 94ff20c49589503d6883292d2e5da5fe26f5342a089280a4f92a744cf8720d5d
|
|
98
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_198001-198012.nc f4688867bb922cccbb109834a041beafb76754e7e6c62e061c90933c5f5556ca
|
|
99
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_198101-198112.nc b08705c93c4b425a4ada174711ecd4c30fd33f5c8962d782d257204a58256d27
|
|
100
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_198201-198212.nc 2ec81005076d0f209c067c331002d1273b2bbfc883e3baaa9d993983fe7d4269
|
|
101
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_198301-198312.nc bd95e90eaf1ab3265dce40ea452eb027c8b5340aef8fd77fa7a559cc9c9805d0
|
|
102
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_198401-198412.nc 1ceba6948dd7b954ed0debe376fa1c04caab8835f526c4bef8fa6a6495e2f2d2
|
|
103
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_198501-198512.nc ba79345de70362c6d0079a21952624540f54cd889378db58599d67fa9d905e62
|
|
104
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_198601-198612.nc 26be47fa74cfdf53ba91d8f6f920eb9f6adfc8e1705752da3b3dc08c81fd9290
|
|
105
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_198701-198712.nc f129b720f04eb7b0a9706781bf472bab6b5fa17f29774a9b3db57c33fcc023b3
|
|
106
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_198801-198812.nc af5b5504a0a7b47dba8cea640895f6f3a04dbb82fe3b7296e7bdeab91e2e2999
|
|
107
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_198901-198912.nc 63e69c90e32c513f6ec07d034e6e724495a9ea900dd9a2cd97e78a978e86cfd4
|
|
108
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_199001-199012.nc 86faee57e10bae43e8411aa2aa06bda0308f2ec93b2e87db34efff2b06b9b7ca
|
|
109
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_199101-199112.nc 9a67df2c08cbe8ba7f7a97ff75c373f49bd5e5efac9f043d1f69893b77f02a25
|
|
110
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_199201-199212.nc 2364530fb5fb3a2801904a8cb17f13de2c6dca87840b27427efb308ae40c2196
|
|
111
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_199301-199312.nc 9646c9aac647917e43996b9e23fd392f148fbb3730123eafd9447c2170a4f990
|
|
112
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_199401-199412.nc f0d87fe6a56000496001711daed02b1755ffa92f0abaa349ff49239bb240980b
|
|
113
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_199501-199512.nc 2438b8aab3f1a731a3f6840f141f7b92e182fe1fc9a874b5badff22acf3aa3e3
|
|
114
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_199601-199612.nc 20a216b66eefc5e531d459a49855ad62de3737922b554a61ca1c95fffb797e91
|
|
115
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_199701-199712.nc 71c5eb8a979912195aecb474754bc76c54c757a38f0487c52134a6025de2cb88
|
|
116
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_199801-199812.nc 33e8843d24daca2b3c58ac54b496a320bd94aa374e8fe98978c04352e65b37cc
|
|
117
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_199901-199912.nc ec9977b734df90617cf48a3a45f63aedd41192ee3dbfb5e717ee99002872fa7c
|
|
118
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_200001-200012.nc 574aaf3b789d2d69d8f678d1cd51efaa98f6e8224d055929a82176592da9328d
|
|
119
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_200101-200112.nc 525af1ce6e34f2e1a1d6894a923e66c45e7fbbf2edcef4f6f41f2e7f5e5945bb
|
|
120
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_200201-200212.nc 0d6abd69d642874290458240a8fbdc737d031c787e228e0154d34c1b15f7c9e6
|
|
121
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_200301-200312.nc 531a935cc1a4cd3772b1c5ae937105ab137ca3f0e6adecc582ca1fbaca4049a8
|
|
122
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_200401-200412.nc 4ca827eb2258dbe9496121b0ee74ce3e5ac9ae68950a3b01c7fdd422a26b9a74
|
|
123
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_200501-200512.nc a72bb27cb9ffa90e8e78304f906bcd5728b64c776770bf2455b86583283344ed
|
|
124
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_200601-200612.nc e57a0ef5d0628834890c69d880915c852d58b75e67cb40ef81f14d1167aa815b
|
|
125
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_200701-200712.nc 3308fc496364ddcd58194e7b7b396c368903e5fc3d144fa88dc32f8344a8e351
|
|
126
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_200801-200812.nc 5aecb6feec9d9b663d2a70be05ea11cf1053420b3c871dd2264ec3f4845f449f
|
|
127
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_200901-200912.nc 9512bf3b86a18e6f4da494fd1a5c7e26368ad6d2076c01541a48fddf51e80fa7
|
|
128
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_201001-201012.nc 32bcb2785dad4426400857d0f901a43c11b3c370d8c1f4607feda04dcae4a2b0
|
|
129
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_201101-201112.nc 12e483458f4796d0ae9f2706f9e793c5b6476a75888e280e8d89ad7f9e639b9e
|
|
130
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_201201-201212.nc 08012325026854da8f7e935f5f86fec561bd52262e0787e0a618e1d0c2baeb6b
|
|
131
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_201301-201312.nc ccbd5f075677ad78cae372b9b67d187cdc84bf924ab4dccd8ce384976a6dc578
|
|
132
|
+
obs4MIPs/ECMWF/ERA-5/psl/gn/v20250220/psl_ERA-5_gn_201401-201412.nc 311770e1e67e0ec639a5edd708ebaa14089cf89dd7d2e8707a46dbfc8b8bc135
|
|
133
|
+
obs4MIPs/ECMWF/ERA-5/ta/gn/v20250220/ta_ERA-5_gn_200701-200712.nc 36bd5cbda06258fb6aafd9fb2ccb79b4d08574116a6ebe8ccc48b6462bdb6419
|
|
134
|
+
obs4MIPs/ECMWF/ERA-5/ta/gn/v20250220/ta_ERA-5_gn_200801-200812.nc 9b7802f845ca67f6b4d4bd0a73e0bce1c5042ecf3e7b209a5e470fd084ead238
|
|
135
|
+
obs4MIPs/ECMWF/ERA-5/ta/gn/v20250220/ta_ERA-5_gn_200901-200912.nc 208a988bc440699beda1738342e7571c28dd2c3b2d169e0770c1764996bd41a4
|
|
136
|
+
obs4MIPs/ECMWF/ERA-5/ta/gn/v20250220/ta_ERA-5_gn_201001-201012.nc 3bfb4dec6966cea160af4ce872302af4d84ee2bd8bd3bba91468a424e17d9eae
|
|
137
|
+
obs4MIPs/ECMWF/ERA-5/ta/gn/v20250220/ta_ERA-5_gn_201101-201112.nc da16b7d20e764e25af3c6b834376bed5041872a0b11fab59234eca5cf1124495
|
|
138
|
+
obs4MIPs/ECMWF/ERA-5/ta/gn/v20250220/ta_ERA-5_gn_201201-201212.nc 08ae50141a576dfcbba0a9cf15a32653f48fa88d58406b60d21383e50dd309f0
|
|
139
|
+
obs4MIPs/ECMWF/ERA-5/ta/gn/v20250220/ta_ERA-5_gn_201301-201312.nc 488e55c4f6c858301abb957a5fb7de866e93fa54b234dbce08df652fad634649
|
|
140
|
+
obs4MIPs/ECMWF/ERA-5/ta/gn/v20250220/ta_ERA-5_gn_201401-201412.nc 9c5c4656b929d1c6dba5d83d5459db61d7d543182e58e29168eacdb7f151b125
|
|
141
|
+
obs4MIPs/ECMWF/ERA-5/ta/gn/v20250220/ta_ERA-5_gn_201501-201512.nc 98e254f10b15c4d90dd258f66b8352f6e8b758f9bd64f435c90cb3bdd99c7086
|
|
142
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_198001-198012.nc 509ce93b60670b4b557b376757d83fad2773ee3de0843933100a4f79ac4b58ad
|
|
143
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_198101-198112.nc 3ec136ba13decffa189bd970de6eeea9f2677e40f9188b691b33caa614c69c15
|
|
144
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_198201-198212.nc 1c602f25f01b09ea9d9a7733dbfebc361221fbfb93511524f5f5586351bd7cbc
|
|
145
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_198301-198312.nc aaf817f39811d34a82676a79790d395fbd5a86c2cc9e492f02b67b4283c4f68c
|
|
146
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_198401-198412.nc 3cfd9c5b1b5b4afa274f69357e6a39823f1da5263230aff67e04e4a39f5328fe
|
|
147
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_198501-198512.nc f5146fc94c396499e2deff6da3780606a87a4588d4d07e87b43e68c90f40e33b
|
|
148
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_198601-198612.nc 9693af3e898256fd45f33fcb0ab1854368e1da820eb5dff81b84c26be5bb9a85
|
|
149
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_198701-198712.nc 997955efd17910ba6d932c365e893c31b8289eca9ec3ef3da0d42a80d3ca3e58
|
|
150
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_198801-198812.nc 2a54223b0fff489446a6e01c5c11a4050462ea7403636df33d93877dcc2f62a3
|
|
151
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_198901-198912.nc dd1b88325048b83f3443ddf4eb026d356357d9004275fd01a39a2aa6ce46c73d
|
|
152
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_199001-199012.nc a76c189b3ed684e3c87c713e7e8b171f420360a47b037d543d35806a6af22505
|
|
153
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_199101-199112.nc 1629af41e80b4412743ff18e4f9c27e3cdf963708dfac4cdfa7e05ed700658a3
|
|
154
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_199201-199212.nc 5009b43b3dc57e4520cc814434929142138b32389ab34e4bb610d40a55770655
|
|
155
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_199301-199312.nc 6b0479e5e184334858079fd2604fa4877dff7abe68ca48fa3b5a469ac5cb5b81
|
|
156
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_199401-199412.nc c3227390a55a191740482e54ebd233b9fe6a424ed41756d437c5b283ada9e024
|
|
157
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_199501-199512.nc f2461aad5e5b46134a38b0961817454a1dcd9844f25e6b1040d55fbd3d23d594
|
|
158
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_199601-199612.nc b0a27aedcefe76f7b3aad77fbbb0008cc25a4e1d9faa068f755b2bbfc71f0572
|
|
159
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_199701-199712.nc 09d8cddbd0d8f58f94e57ba027bad398617a3148e05f2ba63b75d3b8556ccbc3
|
|
160
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_199801-199812.nc 48c84195b7700579110869cd9e7066ff8a2c02015019909391fa3ba5c207aec0
|
|
161
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_199901-199912.nc f2e9f1ac589f08dc57ca4114519cef37385ded7d4a294997626bbaca2393642c
|
|
162
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_200001-200012.nc 0d4bdd8605ffdf949dd36e176f544a3e8291f1169c8a1e6e713045677cdec274
|
|
163
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_200101-200112.nc 4a831c76f3011ba5b8935b4806c5b84692f191a40bfe1049ca6c9ad1f866d83b
|
|
164
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_200201-200212.nc 32658d2dd17cd96824636d5af05dd9996fa4cdc1773f249c6a160800d014ed59
|
|
165
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_200301-200312.nc 69f08e20d46016736abba7b959f1752054ea701b704b3dc38f49540b0d669b02
|
|
166
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_200401-200412.nc 6f0cca1afa5c0dab410e5fbecab51958abd8b45a87942bcc9f69f8dad4768210
|
|
167
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_200501-200512.nc c6617d651092af935e9379626e7099a4e58d9f5ed17bb3af6c592bf2f00a69b8
|
|
168
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_200601-200612.nc 4f0fcf9bd258006d28c6293e4b25262fab851ac663873ea8b8e173318ddacba0
|
|
169
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_200701-200712.nc 22d22845b913cf68c3a784ef1501531782cccdb02d57166f8c66e9b31a063db3
|
|
170
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_200801-200812.nc fa38b73f8ea3469f3859bd1ccd115a865f2cf713391ce14fabb11d34451dc9f1
|
|
171
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_200901-200912.nc f4cf3a9ae5d8358ec6f50dee991a9d8da1e30994481407656a66f109f55068da
|
|
172
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_201001-201012.nc e14a524df56543598345ea2f85374b81be412452c8409c7cb1e2a49063d8f7cf
|
|
173
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_201101-201112.nc 014d0e2020a20d09428843b37feb3e81228bf84d387ab46f00061d589d1b7969
|
|
174
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_201201-201212.nc ddc80d3115f1d6ea932cb545503cc241737713d941ab92b12a3eaae3d6043606
|
|
175
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_201301-201312.nc 848efb2db19f4ab97a615de71941e7b2a6f3ad137af59d723c40cf693d52d156
|
|
176
|
+
obs4MIPs/ECMWF/ERA-5/tas/gn/v20250220/tas_ERA-5_gn_201401-201412.nc 9932441818dbf7b5f7bb878c317f6940a3d306e2f4650e2752c7effd02c6bc35
|
|
177
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_198001-198012.nc 6525ee73e5b0efa3df445d3c5f78950802e6e320e3426ba878e8b44cba059cf1
|
|
178
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_198101-198112.nc 7b8d1163d60e19bd4c444e39276a72660dccbde11d0ded434f78093003025859
|
|
179
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_198201-198212.nc 86f2c91ceb7f8ca517d3f5bdd0b06f7844c55ddddea21cd48bb6bb6c56526d48
|
|
180
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_198301-198312.nc 822196106549521777c5d69e1836f3393dc1da66030f1f528aa11d275cf90cd8
|
|
181
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_198401-198412.nc 01376081bd0e6e304843d759374734a3ade935a214de67af6cbb1beb15a6c623
|
|
182
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_198501-198512.nc 65b30d29cabbc7faecbe39a109850d5cbc4a3534c304baceaabbaaa24c70b2fe
|
|
183
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_198601-198612.nc 4a4118baa2316d797a1353901220f95a3be5edaeede9c39207491cabca4d45dd
|
|
184
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_198701-198712.nc 05f51a971c6ec169ef775135d5af3daa8ddd67058ab4a77b7a38981664b57e11
|
|
185
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_198801-198812.nc b066fedb836cbcb5cb292d2f45f969725bc54bc4527dd30072f47c4e175675e6
|
|
186
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_198901-198912.nc 19eaae0e564ead29b28e8547329ea3d3e2277a80f6ed8c2c0f43d6ccc3ab1be6
|
|
187
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_199001-199012.nc 80295f5ff3e6a78381c25a3acda951ec55f53f2f653b4d0e2dcec64d9ed5f4f5
|
|
188
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_199101-199112.nc b3cf0be9cbdbe7dc12324967668430d91ba3556c366e380e74bcd0371ef86e68
|
|
189
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_199201-199212.nc ca9eebd488af5be4cd64bfd3dcd0ce48c75b7030a3bee953f375ddc97cb6ce7f
|
|
190
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_199301-199312.nc f93722033f1e678e5da8e4930d4db6a64f501da330367430ff0f5ddf92a4629f
|
|
191
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_199401-199412.nc 75ef918646b0c82560d07dd0a2e1f867e969f8fae92a24adcd1322b688608d0d
|
|
192
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_199501-199512.nc 276e55931bff14a486c8349c4eba7c117d08220db3959f8a35e21759810b0c5f
|
|
193
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_199601-199612.nc 241da83a09ec72530ee0d6bed61cf540355ee299c5861e7d7cb3af50f5ccace7
|
|
194
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_199701-199712.nc 18923c1c2a1ba25c6798afade5e7f7245318117980ef8c93a299e6ab37b4189f
|
|
195
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_199801-199812.nc 60170a11570b3f8bd9aa66d57d02a02a787912a73af035e230f6c9eb650d52c1
|
|
196
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_199901-199912.nc 8d4e2cc8a262d446557ba215eb2bdd6e0149d39c8ffeb142a29b0093f3da32b7
|
|
197
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_200001-200012.nc 540de1f24a72cf47e07080338cf5cec7bd0272b247bb9e703c693146153b8444
|
|
198
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_200101-200112.nc 5eb2ae2dd56789563b902bd4cb7d4cb0a6aaca79c707a3981cd5b609390cfa6b
|
|
199
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_200201-200212.nc fc1207c4a67c225dc3d61a87afd2045e68c0313c58f523d099cc21d91665f57d
|
|
200
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_200301-200312.nc e6270e11353678b50090ad372b7f5f46a0808ee2c63431847ed9380a112590d4
|
|
201
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_200401-200412.nc 1a56be0e1ecc7bc50587540612fdc69524b8b60ac9d4b4b07a54822f91e23075
|
|
202
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_200501-200512.nc 5fc483c2bf906332d9d137e51474e284fbca148364b1b0313ff2c347248a694d
|
|
203
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_200601-200612.nc d35e2eec4388c168e26d94cefcf3ab9eddd1698a904442fac7050e917c349ec7
|
|
204
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_200701-200712.nc 9858014e71f683721103420f12ce5e372501525cde3518b1cfe1c453b9d01782
|
|
205
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_200801-200812.nc e0a240b267067bed842e3b634169c3014b906b15db62e6ecfddb80a2cbc571ba
|
|
206
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_200901-200912.nc 4ad80f3f5f053b7bb6ba1b0d8cdf23c813ef86cb96f65c126300530f3eab7f3e
|
|
207
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_201001-201012.nc 1dc72d224f8dd6f7e26df06acb37170d164ab159f463c500b70c87c70cc43008
|
|
208
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_201101-201112.nc 86826e8ab12dbf8471b2e371921b71783909550db31633c95a542bbe215c271e
|
|
209
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_201201-201212.nc 2b97422d1a0b1a62a1f2b93cfc8509b86bc5f1e189cfcdb23d50022288d9b481
|
|
210
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_201301-201312.nc 5e0758f140b3c1f598d2649161d12b4dbbd486d71482b5f8f44e9182a7071810
|
|
211
|
+
obs4MIPs/ECMWF/ERA-5/ua/gn/v20250220/ua_ERA-5_gn_201401-201412.nc b5efd6dca28b97ebf00ecb19c884c8c69f3237c108bc68acc2cd8edb460a84ba
|
|
212
|
+
obs4REF/obs4REF/ARCCSS/LORA-1-1/mon/mrro/gn/20250516/mrro_mon_LORA-1-1_REF_gn_198001-201212.nc 99812d66e02898aea67e0bcacd4f6676b6d9403560f4c3b87d202792c429171a
|
|
213
|
+
obs4REF/obs4REF/CNES/AVISO-1-0/mon/zos/gn/v20210727/zos_mon_AVISO-1-0_PCMDI_gn_199301-201912.nc e01db72f20c1aa3e05c007bd56ea142c6c7068d63ad471e995da53b0b96cfabc
|
|
214
|
+
obs4REF/obs4REF/ColumbiaU/WECANN-1-0/mon/gpp/gn/20250516/gpp_mon_WECANN-1-0_REF_gn_200701-201512.nc b847fad0d25bef3d4c0fab6866080f4df3497853a0f4aab087932ca05d25e47a
|
|
215
|
+
obs4REF/obs4REF/ColumbiaU/WECANN-1-0/mon/hfls/gn/20250516/hfls_mon_WECANN-1-0_REF_gn_200701-201512.nc f880c495bcaee4abeee202c9afb350d2ca7febd15938d57b454303a95ff82dcc
|
|
216
|
+
obs4REF/obs4REF/ColumbiaU/WECANN-1-0/mon/hfss/gn/20250516/hfss_mon_WECANN-1-0_REF_gn_200701-201512.nc 14bdeae9e0b4b7bfe849c97dbdd29eae87f27d9464e8b3795d815369b13ffd0c
|
|
217
|
+
obs4REF/obs4REF/ECMWF/ERA-20C/mon/psl/gn/v20210727/psl_mon_ERA-20C_PCMDI_gn_190001-201012.nc 53262d8f9076f233399d149810a644464d3bb36ae0f131fd55f164bc623b78da
|
|
218
|
+
obs4REF/obs4REF/ECMWF/ERA-20C/mon/ts/gn/v20210727/ts_mon_ERA-20C_PCMDI_gn_190001-201012.nc 95bf8da4b8a071464688b527e822724c33c2794d100052eb12eb2804219ddb94
|
|
219
|
+
obs4REF/obs4REF/ECMWF/ERA-5/mon/ta/gn/v20250220/ta_mon_ERA-5_PCMDI_gn_200701-200712.nc 36bd5cbda06258fb6aafd9fb2ccb79b4d08574116a6ebe8ccc48b6462bdb6419
|
|
220
|
+
obs4REF/obs4REF/ECMWF/ERA-5/mon/ta/gn/v20250220/ta_mon_ERA-5_PCMDI_gn_200801-200812.nc 9b7802f845ca67f6b4d4bd0a73e0bce1c5042ecf3e7b209a5e470fd084ead238
|
|
221
|
+
obs4REF/obs4REF/ECMWF/ERA-5/mon/ta/gn/v20250220/ta_mon_ERA-5_PCMDI_gn_200901-200912.nc 208a988bc440699beda1738342e7571c28dd2c3b2d169e0770c1764996bd41a4
|
|
222
|
+
obs4REF/obs4REF/ECMWF/ERA-5/mon/ta/gn/v20250220/ta_mon_ERA-5_PCMDI_gn_201001-201012.nc 3bfb4dec6966cea160af4ce872302af4d84ee2bd8bd3bba91468a424e17d9eae
|
|
223
|
+
obs4REF/obs4REF/ECMWF/ERA-5/mon/ta/gn/v20250220/ta_mon_ERA-5_PCMDI_gn_201101-201112.nc da16b7d20e764e25af3c6b834376bed5041872a0b11fab59234eca5cf1124495
|
|
224
|
+
obs4REF/obs4REF/ECMWF/ERA-5/mon/ta/gn/v20250220/ta_mon_ERA-5_PCMDI_gn_201201-201212.nc 08ae50141a576dfcbba0a9cf15a32653f48fa88d58406b60d21383e50dd309f0
|
|
225
|
+
obs4REF/obs4REF/ECMWF/ERA-5/mon/ta/gn/v20250220/ta_mon_ERA-5_PCMDI_gn_201301-201312.nc 488e55c4f6c858301abb957a5fb7de866e93fa54b234dbce08df652fad634649
|
|
226
|
+
obs4REF/obs4REF/ECMWF/ERA-5/mon/ta/gn/v20250220/ta_mon_ERA-5_PCMDI_gn_201401-201412.nc 9c5c4656b929d1c6dba5d83d5459db61d7d543182e58e29168eacdb7f151b125
|
|
227
|
+
obs4REF/obs4REF/ECMWF/ERA-5/mon/ta/gn/v20250220/ta_mon_ERA-5_PCMDI_gn_201501-201512.nc 98e254f10b15c4d90dd258f66b8352f6e8b758f9bd64f435c90cb3bdd99c7086
|
|
228
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/hfls/gn/v20210727/hfls_mon_ERA-INT_PCMDI_gn_197901-201903.nc 50d2b48789dcd642641b30ab52cc0f3ad161c057220cda52788080b2be2b927e
|
|
229
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/hfss/gn/v20210727/hfss_mon_ERA-INT_PCMDI_gn_197901-201903.nc 72f15a671e88cb0ec239af9e8c1a608bdf2837c884efde9721213481bcfa02a0
|
|
230
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/hur/gn/v20210727/hur_mon_ERA-INT_PCMDI_gn_198901-201001.nc 54c939a1a461930230a1ae1423856c1929d5dd6bab72cbdad1fe24c5da579908
|
|
231
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/hus/gn/v20210727/hus_mon_ERA-INT_PCMDI_gn_198901-201001.nc b2bf0a96e9e122af9a5e66e94d8d6df73431b6c4f423bfdb95d743ea486bb4d5
|
|
232
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/pr/gn/v20210727/pr_mon_ERA-INT_PCMDI_gn_197901-201903.nc 1c96c46955010524e05f0a35d2156526677315f210737d3fd1dd17edb7fef9cc
|
|
233
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/psl/gn/v20210727/psl_mon_ERA-INT_PCMDI_gn_197901-201903.nc 050e2a64269d3f0cc6cc6c8b63ae60ffa83e3492f9aaa9a8db30248c46791c73
|
|
234
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/rlds/gn/v20210727/rlds_mon_ERA-INT_PCMDI_gn_197901-201903.nc 738f25ccca0e90161a2962c93b8ac56fd18a6dc3593f8541908b33f80faf55eb
|
|
235
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/rlus/gn/v20210727/rlus_mon_ERA-INT_PCMDI_gn_197901-201903.nc 4c60f07f002cc2dfe61974e401899573b1b333ddadc0fb1f970e4e9c7e1a1a65
|
|
236
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/rsds/gn/v20210727/rsds_mon_ERA-INT_PCMDI_gn_197901-201903.nc 73185ff081ed33a01027a8b391e0f3be3a4c065d56b1b27a75f30e97a32ac6db
|
|
237
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/rsus/gn/v20210727/rsus_mon_ERA-INT_PCMDI_gn_197901-201903.nc ac018d7b6282638d3dfadc3f3ec8e06f20c5de81a2a2ae08bbc649d7278631dd
|
|
238
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/sfcWind/gn/v20210727/sfcWind_mon_ERA-INT_PCMDI_gn_197901-201903.nc cf4ed014ca441cd39683e2c309fdfa4a0244326881a620a929f92d6eb5967ef1
|
|
239
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/ta/gn/v20210727/ta_mon_ERA-INT_PCMDI_gn_198901-201001.nc 80c602cb601dddbbb700f29d454204c934f2d1d62d881d5f5923140c1a2c42d5
|
|
240
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/tauu/gn/v20210727/tauu_mon_ERA-INT_PCMDI_gn_197901-201903.nc e8354c2f45d0da5b92f0338f3119af87ad13bde1d8c68e322ee263eca5ed5198
|
|
241
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/tauv/gn/v20210727/tauv_mon_ERA-INT_PCMDI_gn_197901-201903.nc 673e835011ab79eafb4bb417e9a449e94b19af69bee91a3ad3b3818a9db190ad
|
|
242
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/ts/gn/v20210727/ts_mon_ERA-INT_PCMDI_gn_197901-201903.nc a7dbfdd9350e714273b37659ac0496d9076c43d710d3edc8d1e1df2d42f930cf
|
|
243
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/ua/gn/v20210727/ua_mon_ERA-INT_PCMDI_gn_198901-201001.nc 82d6ffb4ebc022830d15ad19409beca310d24b4ac8f1bc2bf3972c4ba6bf514c
|
|
244
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/uas/gn/v20210727/uas_mon_ERA-INT_PCMDI_gn_197901-201903.nc f2fbc584e8ef7b6cdbcf3b6c828dfb1303af5c28cbdac4fa0c470869b1ef8e9b
|
|
245
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/va/gn/v20210727/va_mon_ERA-INT_PCMDI_gn_198901-201001.nc f99dcb336fa85eb76de64c6818acb01196e45b33b4a7ba0e76fbcf3bf11eafe9
|
|
246
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/vas/gn/v20210727/vas_mon_ERA-INT_PCMDI_gn_197901-201903.nc c2d30a779d7158e13f5c313f6dcd1772bbb177a13dd766433b79fb215ec9bf83
|
|
247
|
+
obs4REF/obs4REF/ECMWF/ERA-INT/mon/zg/gn/v20210727/zg_mon_ERA-INT_PCMDI_gn_198901-201001.nc ee3661b072bad1da7cf930348a19ed4e4e95fe83d4456e4381719373ef56fde6
|
|
248
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/hfls/gn/v20210727/hfls_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc aea5aba3c42ae0a8a992a9e0373e60825f9deda56bdcd04f1bc8574fd783e524
|
|
249
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/hfls/gn/v20250415/hfls_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc 5a60b332e317711b44b99677cab29aa7ee4b199db80e017d343e777fdeffb21a
|
|
250
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/hfns/gn/v20210727/hfns_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc fa4e84ed6e2a72b433095d69d0d4a42ed652d7ddc750eb861ff9381ecf1bcf79
|
|
251
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/hfss/gn/v20210727/hfss_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc 8e4e80c243aef84b5ca66863d8fadd2084a69755b738a55cf55fcfd6867b53c2
|
|
252
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/hfss/gn/v20250415/hfss_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc d0a8bee274288ad8b986ab3288db8b69231e44d97b6c3c2e1e8756e97fd1d5ef
|
|
253
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/tas/gn/v20210727/tas_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc 85f167f1c18b84ce2ae30653d09cd5745d4e1c756c5e946a02326f3e752a5069
|
|
254
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/tas/gn/v20250415/tas_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc f9580241c6ac0f94771e3497fbc2913ee4e0ebaee3464f719cfbb108dae398c4
|
|
255
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/tauu/gn/v20210727/tauu_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc 0cae85512da13deaa6386644c5fdf8e45cd65836a79dba514e70b0abfcb3840c
|
|
256
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/tauu/gn/v20250415/tauu_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc 386cde1b44422e738da203db9fd639351e57e5df94f0eab3fce40b03900bd5c0
|
|
257
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/tauv/gn/v20210727/tauv_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc 4f9be86c42ef67c539b1ed87f1c2cbf88116d57abdb13c61cc03f740b5131d06
|
|
258
|
+
obs4REF/obs4REF/ESSO/TropFlux-1-0/mon/ts/gn/v20210727/ts_mon_TropFlux-1-0_PCMDI_gn_197901-201707.nc 23e4c5c82aaab4ab6db05b8b63f26265b7df09a30e1021e9cda058b3a0b7a1db
|
|
259
|
+
obs4REF/obs4REF/MOHC/HadISST-1-1/mon/ts/gn/v20210727/ts_mon_HadISST-1-1_PCMDI_gn_187001-201907.nc 6a8caba5d5c02b7b4a2ee9931bf4c874484601ca34b6b25fd4675d70bbda7768
|
|
260
|
+
obs4REF/obs4REF/MOHC/HadISST-1-1/mon/ts/gn/v20250415/ts_mon_HadISST-1-1_PCMDI_gn_187001-202501.nc efbbb1b8185cf54e5ce00428703bcbc2ff947868df20c1b6ea5c921251803f4d
|
|
261
|
+
obs4REF/obs4REF/NASA-GSFC/TRMM-3B43v-7/mon/pr/gn/v20210727/pr_mon_TRMM-3B43v-7_PCMDI_gn_199801-201712.nc f89d0eedde3b6dc6ebdf8373f70ed2b25c11dfc5f8d2bcd2b3b614c08bc3a9c6
|
|
262
|
+
obs4REF/obs4REF/NASA-LaRC/CERES-EBAF-4-2/mon/rlds/gn/v20230209/rlds_mon_CERES-EBAF-4-2_RSS_gn_200003-202309.nc e4cd777e2ffeeb6e374bd1cc0b2a1c64444684c6d3493946426714fe5b001a0c
|
|
263
|
+
obs4REF/obs4REF/NASA-LaRC/CERES-EBAF-4-2/mon/rlus/gn/v20230209/rlus_mon_CERES-EBAF-4-2_RSS_gn_200003-202309.nc f9d93f8454e9a0395f890a413bf0f699d8b71b83ddb6c907246ac1e39d369462
|
|
264
|
+
obs4REF/obs4REF/NASA-LaRC/CERES-EBAF-4-2/mon/rsds/gn/v20230209/rsds_mon_CERES-EBAF-4-2_RSS_gn_200003-202309.nc 595dca85fd2e3fd96ccccb697016a8b6157b9aa23e21475de395ef8a88c3e40e
|
|
265
|
+
obs4REF/obs4REF/NASA-LaRC/CERES-EBAF-4-2/mon/rsus/gn/v20230209/rsus_mon_CERES-EBAF-4-2_RSS_gn_200003-202309.nc d56e3bda1acc671e97d94287ace931fc0e2fc4507f2c27a38ac8cda58f8cc55b
|
|
266
|
+
obs4REF/obs4REF/NOAA-ESRL-PSD/20CR/mon/psl/gn/v20210727/psl_mon_20CR_PCMDI_gn_187101-201212.nc fdf71ce176af99e32dd535ae3ca1f03a3f069b47cd94d63d05aeea70ef667f16
|
|
267
|
+
obs4REF/obs4REF/NOAA-ESRL-PSD/20CR/mon/ts/gn/v20210727/ts_mon_20CR_PCMDI_gn_187101-201212.nc ea8759db96a02d1898d1014460b11b36484d7db05ab944a9a833c18c5721737f
|
|
268
|
+
obs4REF/obs4REF/NOAA-NCEI/CMAP-V1902/mon/pr/gn/v20210727/pr_mon_CMAP-V1902_PCMDI_gn_197901-201901.nc d0573bbb1999066411ade6af3a3d8acae50145ac815488f364bc9347f8678f9b
|
|
269
|
+
obs4REF/obs4REF/NOAA-NCEI/GPCP-2-3/mon/pr/gn/v20210727/pr_mon_GPCP-2-3_PCMDI_gn_197901-201907.nc 33f767519bf9b5fdbeb01368456f03cda26ba5ed30c91ae2b5bbd34c83dd068e
|
|
270
|
+
obs4REF/obs4REF/NOAA-NCEI/GPCP-2-3/mon/pr/gn/v20231205/pr_mon_GPCP-Monthly-3-2_RSS_gn_198301-202303.nc 47557998a36082d5ac27e27c57b1d10a526ebf6b8a2ffa3e83456c8306d2a8ce
|
|
271
|
+
obs4REF/obs4REF/NOAA-NCEI/WOA2023/mon/no3/gn/20250516/no3_mon_WOA2023_REF_gn_201501-202212.nc dc706fe262aff3416eb1d5c9320330ef6a41046eb64d249ffd265dec657430fd
|
|
272
|
+
obs4REF/obs4REF/NOAA-NCEI/WOA2023/mon/o2/gn/20250516/o2_mon_WOA2023_REF_gn_201501-202212.nc c2434f023d78b6384ddd0369bfa4ac9424eabd4d8560e292fec4c55437c809c8
|
|
273
|
+
obs4REF/obs4REF/NOAA-NCEI/WOA2023/mon/po4/gn/20250516/po4_mon_WOA2023_REF_gn_201501-202212.nc e0969733ed45aad47f0a431161d965fbc7c415c66fa2fb810799bc25c8da1e39
|
|
274
|
+
obs4REF/obs4REF/NOAA-NCEI/WOA2023/mon/so/gn/20250516/so_mon_WOA2023_REF_gn_201501-202212.nc 9aabd763da88b4370057cae7d4be0df377d141cb1541f0d92d2f4b8e4ff65ace
|
|
275
|
+
obs4REF/obs4REF/NOAA-NCEI/WOA2023/mon/thetao/gn/20250516/thetao_mon_WOA2023_REF_gn_201501-202212.nc f879066602c7b83df35d11eee9ce2cfd44df7c97222c89e530b630f558b3f908
|
|
276
|
+
obs4REF/obs4REF/NOC/RAPID/mon/msftmz/NA/20250516/msftmz_mon_RAPID_REF_NA_200404-202302.nc 0219756335b8a6361365cf192fe4edf2d8500941ba5d1fcfe81b004fb42f974c
|
|
277
|
+
obs4REF/obs4REF/UCI-ORNL/Hoffman/yr/fgco2/gm/20250516/fgco2_yr_Hoffman_REF_gm_185007-201007.nc 28dc7e7e05e93ae99351dc2e3fedd89470e13d2c9ca97b5d1d7fe2935c3b43f7
|
|
278
|
+
obs4REF/obs4REF/UCI-ORNL/Hoffman/yr/nbp/gm/20250516/nbp_yr_Hoffman_REF_gm_185007-201007.nc b86f2fff38045aa802cb7a91e1516594e955d1e149037ba252afd9e64d26fd44
|
climate_ref/executor/__init__.py
CHANGED
|
@@ -9,7 +9,14 @@ The simplest executor is the `LocalExecutor`, which runs the diagnostic in the s
|
|
|
9
9
|
This is useful for local testing and debugging.
|
|
10
10
|
"""
|
|
11
11
|
|
|
12
|
-
from .
|
|
12
|
+
from climate_ref_core.exceptions import InvalidExecutorException
|
|
13
|
+
|
|
14
|
+
try:
|
|
15
|
+
from .hpc import HPCExecutor
|
|
16
|
+
except InvalidExecutorException as exc:
|
|
17
|
+
# This exception is reraised when importing the executor as `climate_ref.executors.HPCExecutor`
|
|
18
|
+
HPCExecutor = exc # type: ignore
|
|
19
|
+
|
|
13
20
|
from .local import LocalExecutor
|
|
14
21
|
from .result_handling import handle_execution_result
|
|
15
22
|
from .synchronous import SynchronousExecutor
|
climate_ref/executor/hpc.py
CHANGED
|
@@ -5,12 +5,18 @@ If you want to
|
|
|
5
5
|
- run REF under the HPC workflows
|
|
6
6
|
- run REF in multiple nodes
|
|
7
7
|
|
|
8
|
+
The `HPCExecutor` requires the optional `parsl` dependency.
|
|
9
|
+
This dependency (and therefore this executor) is not available on Windows.
|
|
8
10
|
"""
|
|
9
11
|
|
|
10
12
|
try:
|
|
11
13
|
import parsl
|
|
12
14
|
except ImportError: # pragma: no cover
|
|
13
|
-
|
|
15
|
+
from climate_ref_core.exceptions import InvalidExecutorException
|
|
16
|
+
|
|
17
|
+
raise InvalidExecutorException(
|
|
18
|
+
"climate_ref_core.executor.hpc.HPCExecutor", "The HPCExecutor requires the `parsl` package"
|
|
19
|
+
)
|
|
14
20
|
|
|
15
21
|
import os
|
|
16
22
|
import time
|
|
@@ -17,11 +17,12 @@ from loguru import logger
|
|
|
17
17
|
from sqlalchemy import insert
|
|
18
18
|
|
|
19
19
|
from climate_ref.database import Database
|
|
20
|
-
from climate_ref.models import ScalarMetricValue
|
|
20
|
+
from climate_ref.models import ScalarMetricValue, SeriesMetricValue
|
|
21
21
|
from climate_ref.models.execution import Execution, ExecutionOutput, ResultOutputType
|
|
22
22
|
from climate_ref_core.diagnostics import ExecutionResult, ensure_relative_path
|
|
23
23
|
from climate_ref_core.exceptions import ResultValidationError
|
|
24
24
|
from climate_ref_core.logging import EXECUTION_LOG_FILENAME
|
|
25
|
+
from climate_ref_core.metric_values import SeriesMetricValue as TSeries
|
|
25
26
|
from climate_ref_core.pycmec.controlled_vocabulary import CV
|
|
26
27
|
from climate_ref_core.pycmec.metric import CMECMetric
|
|
27
28
|
from climate_ref_core.pycmec.output import CMECOutput, OutputDict
|
|
@@ -65,6 +66,111 @@ def _copy_file_to_results(
|
|
|
65
66
|
shutil.copy(input_directory / filename, output_filename)
|
|
66
67
|
|
|
67
68
|
|
|
69
|
+
def _process_execution_scalar(
|
|
70
|
+
database: Database,
|
|
71
|
+
result: "ExecutionResult",
|
|
72
|
+
execution: Execution,
|
|
73
|
+
cv: CV,
|
|
74
|
+
) -> None:
|
|
75
|
+
"""
|
|
76
|
+
Process the scalar values from the execution result and store them in the database
|
|
77
|
+
|
|
78
|
+
This also validates the scalar values against the controlled vocabulary
|
|
79
|
+
"""
|
|
80
|
+
# Load the metric bundle from the file
|
|
81
|
+
cmec_metric_bundle = CMECMetric.load_from_json(result.to_output_path(result.metric_bundle_filename))
|
|
82
|
+
|
|
83
|
+
# Check that the diagnostic values conform with the controlled vocabulary
|
|
84
|
+
try:
|
|
85
|
+
cv.validate_metrics(cmec_metric_bundle)
|
|
86
|
+
except (ResultValidationError, AssertionError):
|
|
87
|
+
# TODO: Remove once we have settled on a controlled vocabulary
|
|
88
|
+
logger.exception("Diagnostic values do not conform with the controlled vocabulary")
|
|
89
|
+
# execution.mark_failed()
|
|
90
|
+
|
|
91
|
+
# Perform a bulk insert of scalar values
|
|
92
|
+
# The current implementation will swallow the exception, but display a log message
|
|
93
|
+
try:
|
|
94
|
+
scalar_values = [
|
|
95
|
+
{
|
|
96
|
+
"execution_id": execution.id,
|
|
97
|
+
"value": result.value,
|
|
98
|
+
"attributes": result.attributes,
|
|
99
|
+
**result.dimensions,
|
|
100
|
+
}
|
|
101
|
+
for result in cmec_metric_bundle.iter_results()
|
|
102
|
+
]
|
|
103
|
+
logger.debug(f"Ingesting {len(scalar_values)} scalar values for execution {execution.id}")
|
|
104
|
+
if scalar_values:
|
|
105
|
+
# Perform this in a nested transaction to rollback if something goes wrong
|
|
106
|
+
# We will lose the metric values for a given execution, but not the whole execution
|
|
107
|
+
with database.session.begin_nested():
|
|
108
|
+
database.session.execute(
|
|
109
|
+
insert(ScalarMetricValue),
|
|
110
|
+
scalar_values,
|
|
111
|
+
)
|
|
112
|
+
# This is a broad exception catch to ensure we log any issues
|
|
113
|
+
except Exception:
|
|
114
|
+
logger.exception("Something went wrong when ingesting diagnostic values")
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
def _process_execution_series(
|
|
118
|
+
config: "Config",
|
|
119
|
+
database: Database,
|
|
120
|
+
result: "ExecutionResult",
|
|
121
|
+
execution: Execution,
|
|
122
|
+
cv: CV,
|
|
123
|
+
) -> None:
|
|
124
|
+
"""
|
|
125
|
+
Process the series values from the execution result and store them in the database
|
|
126
|
+
|
|
127
|
+
This also copies the series values file from the scratch directory to the results directory
|
|
128
|
+
and validates the series values against the controlled vocabulary.
|
|
129
|
+
"""
|
|
130
|
+
assert result.series_filename, "Series filename must be set in the result"
|
|
131
|
+
|
|
132
|
+
_copy_file_to_results(
|
|
133
|
+
config.paths.scratch,
|
|
134
|
+
config.paths.results,
|
|
135
|
+
execution.output_fragment,
|
|
136
|
+
result.series_filename,
|
|
137
|
+
)
|
|
138
|
+
|
|
139
|
+
# Load the series values from the file
|
|
140
|
+
series_values_path = result.to_output_path(result.series_filename)
|
|
141
|
+
series_values = TSeries.load_from_json(series_values_path)
|
|
142
|
+
|
|
143
|
+
try:
|
|
144
|
+
cv.validate_metrics(series_values)
|
|
145
|
+
except (ResultValidationError, AssertionError):
|
|
146
|
+
# TODO: Remove once we have settled on a controlled vocabulary
|
|
147
|
+
logger.exception("Diagnostic values do not conform with the controlled vocabulary")
|
|
148
|
+
# execution.mark_failed()
|
|
149
|
+
|
|
150
|
+
# Perform a bulk insert of series values
|
|
151
|
+
try:
|
|
152
|
+
series_values_content = [
|
|
153
|
+
{
|
|
154
|
+
"execution_id": execution.id,
|
|
155
|
+
"values": series_result.values,
|
|
156
|
+
"attributes": series_result.attributes,
|
|
157
|
+
**series_result.dimensions,
|
|
158
|
+
}
|
|
159
|
+
for series_result in series_values
|
|
160
|
+
]
|
|
161
|
+
logger.debug(f"Ingesting {len(series_values)} series values for execution {execution.id}")
|
|
162
|
+
if series_values:
|
|
163
|
+
# Perform this in a nested transaction to rollback if something goes wrong
|
|
164
|
+
# We will lose the metric values for a given execution, but not the whole execution
|
|
165
|
+
with database.session.begin_nested():
|
|
166
|
+
database.session.execute(
|
|
167
|
+
insert(SeriesMetricValue),
|
|
168
|
+
series_values_content,
|
|
169
|
+
)
|
|
170
|
+
except Exception:
|
|
171
|
+
logger.exception("Something went wrong when ingesting diagnostic series values")
|
|
172
|
+
|
|
173
|
+
|
|
68
174
|
def handle_execution_result(
|
|
69
175
|
config: "Config",
|
|
70
176
|
database: Database,
|
|
@@ -88,7 +194,7 @@ def handle_execution_result(
|
|
|
88
194
|
result
|
|
89
195
|
The result of the diagnostic execution, either successful or failed
|
|
90
196
|
"""
|
|
91
|
-
# Always copy log data
|
|
197
|
+
# Always copy log data to the results directory
|
|
92
198
|
_copy_file_to_results(
|
|
93
199
|
config.paths.scratch,
|
|
94
200
|
config.paths.results,
|
|
@@ -96,74 +202,52 @@ def handle_execution_result(
|
|
|
96
202
|
EXECUTION_LOG_FILENAME,
|
|
97
203
|
)
|
|
98
204
|
|
|
99
|
-
if result.successful
|
|
100
|
-
logger.
|
|
205
|
+
if not result.successful or result.metric_bundle_filename is None:
|
|
206
|
+
logger.error(f"{execution} failed")
|
|
207
|
+
execution.mark_failed()
|
|
208
|
+
return
|
|
209
|
+
|
|
210
|
+
logger.info(f"{execution} successful")
|
|
211
|
+
|
|
212
|
+
_copy_file_to_results(
|
|
213
|
+
config.paths.scratch,
|
|
214
|
+
config.paths.results,
|
|
215
|
+
execution.output_fragment,
|
|
216
|
+
result.metric_bundle_filename,
|
|
217
|
+
)
|
|
101
218
|
|
|
219
|
+
if result.output_bundle_filename:
|
|
102
220
|
_copy_file_to_results(
|
|
103
221
|
config.paths.scratch,
|
|
104
222
|
config.paths.results,
|
|
105
223
|
execution.output_fragment,
|
|
106
|
-
result.
|
|
224
|
+
result.output_bundle_filename,
|
|
225
|
+
)
|
|
226
|
+
_handle_output_bundle(
|
|
227
|
+
config,
|
|
228
|
+
database,
|
|
229
|
+
execution,
|
|
230
|
+
result.to_output_path(result.output_bundle_filename),
|
|
107
231
|
)
|
|
108
|
-
execution.mark_successful(result.as_relative_path(result.metric_bundle_filename))
|
|
109
|
-
|
|
110
|
-
if result.output_bundle_filename:
|
|
111
|
-
_copy_file_to_results(
|
|
112
|
-
config.paths.scratch,
|
|
113
|
-
config.paths.results,
|
|
114
|
-
execution.output_fragment,
|
|
115
|
-
result.output_bundle_filename,
|
|
116
|
-
)
|
|
117
|
-
_handle_output_bundle(
|
|
118
|
-
config,
|
|
119
|
-
database,
|
|
120
|
-
execution,
|
|
121
|
-
result.to_output_path(result.output_bundle_filename),
|
|
122
|
-
)
|
|
123
232
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
**result.dimensions,
|
|
143
|
-
}
|
|
144
|
-
for result in cmec_metric_bundle.iter_results()
|
|
145
|
-
]
|
|
146
|
-
if scalar_values:
|
|
147
|
-
# Perform this in a nested transaction to rollback if something goes wrong
|
|
148
|
-
# We will lose the metric values for a given execution, but not the whole execution
|
|
149
|
-
with database.session.begin_nested():
|
|
150
|
-
database.session.execute(
|
|
151
|
-
insert(ScalarMetricValue),
|
|
152
|
-
scalar_values,
|
|
153
|
-
)
|
|
154
|
-
except Exception:
|
|
155
|
-
# TODO: Remove once we have settled on a controlled vocabulary
|
|
156
|
-
logger.exception("Something went wrong when ingesting diagnostic values")
|
|
157
|
-
|
|
158
|
-
# TODO Ingest the series values
|
|
159
|
-
|
|
160
|
-
# TODO: This should check if the result is the most recent for the execution,
|
|
161
|
-
# if so then update the dirty fields
|
|
162
|
-
# i.e. if there are outstanding executions don't make as clean
|
|
163
|
-
execution.execution_group.dirty = False
|
|
164
|
-
else:
|
|
165
|
-
logger.error(f"{execution} failed")
|
|
166
|
-
execution.mark_failed()
|
|
233
|
+
cv = CV.load_from_file(config.paths.dimensions_cv)
|
|
234
|
+
|
|
235
|
+
if result.series_filename:
|
|
236
|
+
# Process the series values if they are present
|
|
237
|
+
# This will ingest the series values into the database
|
|
238
|
+
_process_execution_series(config=config, database=database, result=result, execution=execution, cv=cv)
|
|
239
|
+
|
|
240
|
+
# Process the scalar values
|
|
241
|
+
# This will ingest the scalar values into the database
|
|
242
|
+
_process_execution_scalar(database=database, result=result, execution=execution, cv=cv)
|
|
243
|
+
|
|
244
|
+
# TODO: This should check if the result is the most recent for the execution,
|
|
245
|
+
# if so then update the dirty fields
|
|
246
|
+
# i.e. if there are outstanding executions don't make as clean
|
|
247
|
+
execution.execution_group.dirty = False
|
|
248
|
+
|
|
249
|
+
# Finally, mark the execution as successful
|
|
250
|
+
execution.mark_successful(result.as_relative_path(result.metric_bundle_filename))
|
|
167
251
|
|
|
168
252
|
|
|
169
253
|
def _handle_output_bundle(
|
|
@@ -22,7 +22,7 @@ depends_on: Union[str, Sequence[str], None] = None
|
|
|
22
22
|
def upgrade() -> None:
|
|
23
23
|
# ### commands auto generated by Alembic - please adjust! ###
|
|
24
24
|
with op.batch_alter_table("cmip6_dataset", schema=None) as batch_op:
|
|
25
|
-
batch_op.add_column(sa.Column("finalised", sa.Boolean(), nullable=
|
|
25
|
+
batch_op.add_column(sa.Column("finalised", sa.Boolean(), nullable=True))
|
|
26
26
|
batch_op.alter_column("experiment", existing_type=sa.VARCHAR(), nullable=True)
|
|
27
27
|
batch_op.alter_column("frequency", existing_type=sa.VARCHAR(), nullable=True)
|
|
28
28
|
batch_op.alter_column("grid", existing_type=sa.VARCHAR(), nullable=True)
|
|
@@ -49,7 +49,7 @@ def downgrade() -> None:
|
|
|
49
49
|
# Note: Original migration 94beace57a9c added cmip6_dataset.finalised NOT NULL, with no default.
|
|
50
50
|
with op.batch_alter_table("cmip6_dataset", schema=None) as batch_op:
|
|
51
51
|
batch_op.add_column(
|
|
52
|
-
sa.Column("finalised", sa.Boolean(), nullable=
|
|
52
|
+
sa.Column("finalised", sa.Boolean(), nullable=True, server_default=sa.text("false"))
|
|
53
53
|
)
|
|
54
54
|
|
|
55
55
|
# Drop base dataset finalised
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"""add indexes
|
|
2
|
+
|
|
3
|
+
Revision ID: 8d28e5e0f9c3
|
|
4
|
+
Revises: ba5e
|
|
5
|
+
Create Date: 2025-09-05 20:19:18.311472
|
|
6
|
+
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from collections.abc import Sequence
|
|
10
|
+
from typing import Union
|
|
11
|
+
|
|
12
|
+
from alembic import op
|
|
13
|
+
|
|
14
|
+
# revision identifiers, used by Alembic.
|
|
15
|
+
revision: str = "8d28e5e0f9c3"
|
|
16
|
+
down_revision: Union[str, None] = "ba5e"
|
|
17
|
+
branch_labels: Union[str, Sequence[str], None] = None
|
|
18
|
+
depends_on: Union[str, Sequence[str], None] = None
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def upgrade() -> None:
|
|
22
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
|
23
|
+
with op.batch_alter_table("cmip6_dataset", schema=None) as batch_op:
|
|
24
|
+
batch_op.create_index(batch_op.f("ix_cmip6_dataset_experiment_id"), ["experiment_id"], unique=False)
|
|
25
|
+
batch_op.create_index(batch_op.f("ix_cmip6_dataset_instance_id"), ["instance_id"], unique=False)
|
|
26
|
+
batch_op.create_index(batch_op.f("ix_cmip6_dataset_member_id"), ["member_id"], unique=False)
|
|
27
|
+
batch_op.create_index(batch_op.f("ix_cmip6_dataset_source_id"), ["source_id"], unique=False)
|
|
28
|
+
|
|
29
|
+
with op.batch_alter_table("dataset", schema=None) as batch_op:
|
|
30
|
+
batch_op.create_index(batch_op.f("ix_dataset_dataset_type"), ["dataset_type"], unique=False)
|
|
31
|
+
|
|
32
|
+
with op.batch_alter_table("dataset_file", schema=None) as batch_op:
|
|
33
|
+
batch_op.create_index(batch_op.f("ix_dataset_file_dataset_id"), ["dataset_id"], unique=False)
|
|
34
|
+
|
|
35
|
+
with op.batch_alter_table("diagnostic", schema=None) as batch_op:
|
|
36
|
+
batch_op.create_index(batch_op.f("ix_diagnostic_updated_at"), ["updated_at"], unique=False)
|
|
37
|
+
|
|
38
|
+
with op.batch_alter_table("execution", schema=None) as batch_op:
|
|
39
|
+
batch_op.create_index(
|
|
40
|
+
batch_op.f("ix_execution_execution_group_id"), ["execution_group_id"], unique=False
|
|
41
|
+
)
|
|
42
|
+
batch_op.create_index(batch_op.f("ix_execution_successful"), ["successful"], unique=False)
|
|
43
|
+
batch_op.create_index(batch_op.f("ix_execution_updated_at"), ["updated_at"], unique=False)
|
|
44
|
+
|
|
45
|
+
with op.batch_alter_table("execution_dataset", schema=None) as batch_op:
|
|
46
|
+
batch_op.create_index(batch_op.f("ix_execution_dataset_dataset_id"), ["dataset_id"], unique=False)
|
|
47
|
+
batch_op.create_index(batch_op.f("ix_execution_dataset_execution_id"), ["execution_id"], unique=False)
|
|
48
|
+
|
|
49
|
+
with op.batch_alter_table("execution_group", schema=None) as batch_op:
|
|
50
|
+
batch_op.create_index(batch_op.f("ix_execution_group_diagnostic_id"), ["diagnostic_id"], unique=False)
|
|
51
|
+
batch_op.create_index(batch_op.f("ix_execution_group_updated_at"), ["updated_at"], unique=False)
|
|
52
|
+
|
|
53
|
+
with op.batch_alter_table("execution_output", schema=None) as batch_op:
|
|
54
|
+
batch_op.create_index(batch_op.f("ix_execution_output_updated_at"), ["updated_at"], unique=False)
|
|
55
|
+
|
|
56
|
+
with op.batch_alter_table("metric_value", schema=None) as batch_op:
|
|
57
|
+
batch_op.create_index(batch_op.f("ix_metric_value_execution_id"), ["execution_id"], unique=False)
|
|
58
|
+
batch_op.create_index(batch_op.f("ix_metric_value_type"), ["type"], unique=False)
|
|
59
|
+
batch_op.create_index(batch_op.f("ix_metric_value_updated_at"), ["updated_at"], unique=False)
|
|
60
|
+
|
|
61
|
+
with op.batch_alter_table("provider", schema=None) as batch_op:
|
|
62
|
+
batch_op.create_index(batch_op.f("ix_provider_updated_at"), ["updated_at"], unique=False)
|
|
63
|
+
|
|
64
|
+
# ### end Alembic commands ###
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
def downgrade() -> None:
|
|
68
|
+
# ### commands auto generated by Alembic - please adjust! ###
|
|
69
|
+
with op.batch_alter_table("provider", schema=None) as batch_op:
|
|
70
|
+
batch_op.drop_index(batch_op.f("ix_provider_updated_at"))
|
|
71
|
+
|
|
72
|
+
with op.batch_alter_table("metric_value", schema=None) as batch_op:
|
|
73
|
+
batch_op.drop_index(batch_op.f("ix_metric_value_updated_at"))
|
|
74
|
+
batch_op.drop_index(batch_op.f("ix_metric_value_type"))
|
|
75
|
+
batch_op.drop_index(batch_op.f("ix_metric_value_execution_id"))
|
|
76
|
+
|
|
77
|
+
with op.batch_alter_table("execution_output", schema=None) as batch_op:
|
|
78
|
+
batch_op.drop_index(batch_op.f("ix_execution_output_updated_at"))
|
|
79
|
+
|
|
80
|
+
with op.batch_alter_table("execution_group", schema=None) as batch_op:
|
|
81
|
+
batch_op.drop_index(batch_op.f("ix_execution_group_updated_at"))
|
|
82
|
+
batch_op.drop_index(batch_op.f("ix_execution_group_diagnostic_id"))
|
|
83
|
+
|
|
84
|
+
with op.batch_alter_table("execution_dataset", schema=None) as batch_op:
|
|
85
|
+
batch_op.drop_index(batch_op.f("ix_execution_dataset_execution_id"))
|
|
86
|
+
batch_op.drop_index(batch_op.f("ix_execution_dataset_dataset_id"))
|
|
87
|
+
|
|
88
|
+
with op.batch_alter_table("execution", schema=None) as batch_op:
|
|
89
|
+
batch_op.drop_index(batch_op.f("ix_execution_updated_at"))
|
|
90
|
+
batch_op.drop_index(batch_op.f("ix_execution_successful"))
|
|
91
|
+
batch_op.drop_index(batch_op.f("ix_execution_execution_group_id"))
|
|
92
|
+
|
|
93
|
+
with op.batch_alter_table("diagnostic", schema=None) as batch_op:
|
|
94
|
+
batch_op.drop_index(batch_op.f("ix_diagnostic_updated_at"))
|
|
95
|
+
|
|
96
|
+
with op.batch_alter_table("dataset_file", schema=None) as batch_op:
|
|
97
|
+
batch_op.drop_index(batch_op.f("ix_dataset_file_dataset_id"))
|
|
98
|
+
|
|
99
|
+
with op.batch_alter_table("dataset", schema=None) as batch_op:
|
|
100
|
+
batch_op.drop_index(batch_op.f("ix_dataset_dataset_type"))
|
|
101
|
+
|
|
102
|
+
with op.batch_alter_table("cmip6_dataset", schema=None) as batch_op:
|
|
103
|
+
batch_op.drop_index(batch_op.f("ix_cmip6_dataset_source_id"))
|
|
104
|
+
batch_op.drop_index(batch_op.f("ix_cmip6_dataset_member_id"))
|
|
105
|
+
batch_op.drop_index(batch_op.f("ix_cmip6_dataset_instance_id"))
|
|
106
|
+
batch_op.drop_index(batch_op.f("ix_cmip6_dataset_experiment_id"))
|
|
107
|
+
|
|
108
|
+
# ### end Alembic commands ###
|
climate_ref/models/base.py
CHANGED
|
@@ -38,7 +38,9 @@ class CreatedUpdatedMixin:
|
|
|
38
38
|
When the dataset was added to the database
|
|
39
39
|
"""
|
|
40
40
|
|
|
41
|
-
updated_at: Mapped[datetime.datetime] = mapped_column(
|
|
41
|
+
updated_at: Mapped[datetime.datetime] = mapped_column(
|
|
42
|
+
server_default=func.now(), onupdate=func.now(), index=True
|
|
43
|
+
)
|
|
42
44
|
"""
|
|
43
45
|
When the dataset was updated.
|
|
44
46
|
"""
|
climate_ref/models/dataset.py
CHANGED
|
@@ -30,7 +30,7 @@ class Dataset(Base):
|
|
|
30
30
|
|
|
31
31
|
In the case of CMIP6 datasets, this is the instance_id.
|
|
32
32
|
"""
|
|
33
|
-
dataset_type: Mapped[SourceDatasetType] = mapped_column(nullable=False)
|
|
33
|
+
dataset_type: Mapped[SourceDatasetType] = mapped_column(nullable=False, index=True)
|
|
34
34
|
"""
|
|
35
35
|
Type of dataset
|
|
36
36
|
"""
|
|
@@ -73,7 +73,9 @@ class DatasetFile(Base):
|
|
|
73
73
|
__tablename__ = "dataset_file"
|
|
74
74
|
|
|
75
75
|
id: Mapped[int] = mapped_column(primary_key=True)
|
|
76
|
-
dataset_id: Mapped[int] = mapped_column(
|
|
76
|
+
dataset_id: Mapped[int] = mapped_column(
|
|
77
|
+
ForeignKey("dataset.id", ondelete="CASCADE"), nullable=False, index=True
|
|
78
|
+
)
|
|
77
79
|
"""
|
|
78
80
|
Foreign key to the dataset table
|
|
79
81
|
"""
|
|
@@ -111,13 +113,13 @@ class CMIP6Dataset(Dataset):
|
|
|
111
113
|
branch_time_in_child: Mapped[float] = mapped_column(nullable=True)
|
|
112
114
|
branch_time_in_parent: Mapped[float] = mapped_column(nullable=True)
|
|
113
115
|
experiment: Mapped[str] = mapped_column(nullable=True)
|
|
114
|
-
experiment_id: Mapped[str] = mapped_column()
|
|
116
|
+
experiment_id: Mapped[str] = mapped_column(index=True)
|
|
115
117
|
frequency: Mapped[str] = mapped_column(nullable=True)
|
|
116
118
|
grid: Mapped[str] = mapped_column(nullable=True)
|
|
117
119
|
grid_label: Mapped[str] = mapped_column()
|
|
118
120
|
institution_id: Mapped[str] = mapped_column()
|
|
119
121
|
long_name: Mapped[str] = mapped_column(nullable=True)
|
|
120
|
-
member_id: Mapped[str] = mapped_column()
|
|
122
|
+
member_id: Mapped[str] = mapped_column(index=True)
|
|
121
123
|
nominal_resolution: Mapped[str] = mapped_column(nullable=True)
|
|
122
124
|
parent_activity_id: Mapped[str] = mapped_column(nullable=True)
|
|
123
125
|
parent_experiment_id: Mapped[str] = mapped_column(nullable=True)
|
|
@@ -126,7 +128,7 @@ class CMIP6Dataset(Dataset):
|
|
|
126
128
|
parent_variant_label: Mapped[str] = mapped_column(nullable=True)
|
|
127
129
|
realm: Mapped[str] = mapped_column(nullable=True)
|
|
128
130
|
product: Mapped[str] = mapped_column(nullable=True)
|
|
129
|
-
source_id: Mapped[str] = mapped_column()
|
|
131
|
+
source_id: Mapped[str] = mapped_column(index=True)
|
|
130
132
|
standard_name: Mapped[str] = mapped_column(nullable=True)
|
|
131
133
|
source_type: Mapped[str] = mapped_column(nullable=True)
|
|
132
134
|
sub_experiment: Mapped[str] = mapped_column(nullable=True)
|
|
@@ -138,7 +140,7 @@ class CMIP6Dataset(Dataset):
|
|
|
138
140
|
vertical_levels: Mapped[int] = mapped_column(nullable=True)
|
|
139
141
|
version: Mapped[str] = mapped_column()
|
|
140
142
|
|
|
141
|
-
instance_id: Mapped[str] = mapped_column()
|
|
143
|
+
instance_id: Mapped[str] = mapped_column(index=True)
|
|
142
144
|
"""
|
|
143
145
|
Unique identifier for the dataset (including the version).
|
|
144
146
|
"""
|
climate_ref/models/execution.py
CHANGED
|
@@ -40,7 +40,7 @@ class ExecutionGroup(CreatedUpdatedMixin, Base):
|
|
|
40
40
|
|
|
41
41
|
id: Mapped[int] = mapped_column(primary_key=True)
|
|
42
42
|
|
|
43
|
-
diagnostic_id: Mapped[int] = mapped_column(ForeignKey("diagnostic.id"))
|
|
43
|
+
diagnostic_id: Mapped[int] = mapped_column(ForeignKey("diagnostic.id"), index=True)
|
|
44
44
|
"""
|
|
45
45
|
The diagnostic that this execution group belongs to
|
|
46
46
|
"""
|
|
@@ -103,8 +103,8 @@ class ExecutionGroup(CreatedUpdatedMixin, Base):
|
|
|
103
103
|
execution_datasets = Table(
|
|
104
104
|
"execution_dataset",
|
|
105
105
|
Base.metadata,
|
|
106
|
-
Column("execution_id", ForeignKey("execution.id")),
|
|
107
|
-
Column("dataset_id", ForeignKey("dataset.id")),
|
|
106
|
+
Column("execution_id", ForeignKey("execution.id"), index=True),
|
|
107
|
+
Column("dataset_id", ForeignKey("dataset.id"), index=True),
|
|
108
108
|
)
|
|
109
109
|
|
|
110
110
|
|
|
@@ -136,7 +136,8 @@ class Execution(CreatedUpdatedMixin, Base):
|
|
|
136
136
|
ForeignKey(
|
|
137
137
|
"execution_group.id",
|
|
138
138
|
name="fk_execution_id",
|
|
139
|
-
)
|
|
139
|
+
),
|
|
140
|
+
index=True,
|
|
140
141
|
)
|
|
141
142
|
"""
|
|
142
143
|
The execution group that this execution belongs to
|
|
@@ -149,7 +150,7 @@ class Execution(CreatedUpdatedMixin, Base):
|
|
|
149
150
|
This is used to verify if an existing diagnostic execution has been run with the same datasets.
|
|
150
151
|
"""
|
|
151
152
|
|
|
152
|
-
successful: Mapped[bool] = mapped_column(nullable=True)
|
|
153
|
+
successful: Mapped[bool] = mapped_column(nullable=True, index=True)
|
|
153
154
|
"""
|
|
154
155
|
Was the run successful
|
|
155
156
|
"""
|
|
@@ -47,13 +47,13 @@ class MetricValue(CreatedUpdatedMixin, Base):
|
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
id: Mapped[int] = mapped_column(primary_key=True)
|
|
50
|
-
execution_id: Mapped[int] = mapped_column(ForeignKey("execution.id"))
|
|
50
|
+
execution_id: Mapped[int] = mapped_column(ForeignKey("execution.id"), index=True)
|
|
51
51
|
|
|
52
52
|
attributes: Mapped[dict[str, Any]] = mapped_column()
|
|
53
53
|
|
|
54
54
|
execution: Mapped["Execution"] = relationship(back_populates="values")
|
|
55
55
|
|
|
56
|
-
type: Mapped[MetricValueType] = mapped_column()
|
|
56
|
+
type: Mapped[MetricValueType] = mapped_column(index=True)
|
|
57
57
|
"""
|
|
58
58
|
Type of metric value
|
|
59
59
|
|
climate_ref/testing.py
CHANGED
|
@@ -27,7 +27,7 @@ def _determine_test_directory() -> Path | None:
|
|
|
27
27
|
|
|
28
28
|
|
|
29
29
|
TEST_DATA_DIR = _determine_test_directory()
|
|
30
|
-
SAMPLE_DATA_VERSION = "v0.
|
|
30
|
+
SAMPLE_DATA_VERSION = "v0.7.2"
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
def fetch_sample_data(force_cleanup: bool = False, symlink: bool = False) -> None:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: climate-ref
|
|
3
|
-
Version: 0.6.
|
|
3
|
+
Version: 0.6.6
|
|
4
4
|
Summary: Application which runs the CMIP Rapid Evaluation Framework
|
|
5
5
|
Author-email: Jared Lewis <jared.lewis@climate-resource.com>, Mika Pflueger <mika.pflueger@climate-resource.com>, Bouwe Andela <b.andela@esciencecenter.nl>, Jiwoo Lee <lee1043@llnl.gov>, Min Xu <xum1@ornl.gov>, Nathan Collier <collierno@ornl.gov>, Dora Hegedus <dora.hegedus@stfc.ac.uk>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -70,7 +70,7 @@ pip install climate-ref
|
|
|
70
70
|
If you want to use the diagnostic providers for the Assessment Fast Track, you can install them with:
|
|
71
71
|
|
|
72
72
|
```bash
|
|
73
|
-
pip install climate-ref[aft-providers]
|
|
73
|
+
pip install "climate-ref[aft-providers]"
|
|
74
74
|
```
|
|
75
75
|
|
|
76
76
|
## Quick Start
|
|
@@ -8,16 +8,16 @@ climate_ref/provider_registry.py,sha256=dyfj4vU6unKHNXtT03HafQtAi3LilL37uvu3paCn
|
|
|
8
8
|
climate_ref/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
9
|
climate_ref/slurm.py,sha256=XWXVPdXP-4BDib3bxYW9uPcAJdPpo1ixYZAI_y1cZuw,7305
|
|
10
10
|
climate_ref/solver.py,sha256=T5sQjweSvpUMG4q8MfbGjljxa5kBgKxNotT78PwyxqU,16804
|
|
11
|
-
climate_ref/testing.py,sha256=
|
|
11
|
+
climate_ref/testing.py,sha256=nSB8levCt0Ol6odumBJgy5HMKbusRCr19SuIbkMN3MQ,4256
|
|
12
12
|
climate_ref/cli/__init__.py,sha256=fvENOeL4j7CMPANVxrDlWfaB0QUvvYgrWcm5ptbL0P8,4350
|
|
13
13
|
climate_ref/cli/_utils.py,sha256=6bIb8zEVvzXyKpv8MG58T-T2L2jH-G8WNrOOGpz3uCw,1918
|
|
14
14
|
climate_ref/cli/config.py,sha256=ak4Rn9S6fH23PkHHlI-pXuPiZYOvUB4r26eu3p525-M,532
|
|
15
15
|
climate_ref/cli/datasets.py,sha256=4iYQZ0ceoF-Cd8eSpS4Q8b9aLt_vEDUw5slzGw02DsY,8277
|
|
16
|
-
climate_ref/cli/executions.py,sha256=
|
|
16
|
+
climate_ref/cli/executions.py,sha256=fKQ-3IvYaTEOCIhqNNrFWgwGyHPeVmKWlDQ8VH-K9rM,7721
|
|
17
17
|
climate_ref/cli/providers.py,sha256=-5hQkJc01jON1bc1dk--tSWTesyiHOzZuYMb9Vxge9k,2613
|
|
18
18
|
climate_ref/cli/solve.py,sha256=ZTXrwDFDXNrX5GLMJTN9tFnpV3zlcZbEu2aF3JDJVxI,2367
|
|
19
19
|
climate_ref/dataset_registry/obs4ref_reference.txt,sha256=2zJMbsAsQ49KaWziX3CqrlILq9yN7S2ygmfV3V5rsnw,8395
|
|
20
|
-
climate_ref/dataset_registry/sample_data.txt,sha256=
|
|
20
|
+
climate_ref/dataset_registry/sample_data.txt,sha256=MK-tvVRLOeNtEnmIQVnZrz27dSmsoSVsxmgTC6R-3v0,45237
|
|
21
21
|
climate_ref/datasets/__init__.py,sha256=PV3u5ZmhyfcHbKqySgwVA8m4-naZgxzydLXSBqdTGLM,1171
|
|
22
22
|
climate_ref/datasets/base.py,sha256=uZ55u625ckRNjsn-AqJg4_xO5uvHchqYvwBZIt4iHtY,11017
|
|
23
23
|
climate_ref/datasets/cmip6.py,sha256=KO761ConHvX40n9X0xLrxjhzN7wmighNWL2JyYygRAA,7049
|
|
@@ -25,11 +25,11 @@ climate_ref/datasets/cmip6_parsers.py,sha256=wH4WKQAR2_aniXwsW7nch6nIpXk2pSpPxkT
|
|
|
25
25
|
climate_ref/datasets/obs4mips.py,sha256=q0_erQb4k5KBaGMvEGgUtVSDvXQjuftqDmvW4QZpWZI,6138
|
|
26
26
|
climate_ref/datasets/pmp_climatology.py,sha256=goHDc_3B2Wdiy_hmpERNvWDdDYZACPOyFDt3Du6nGc0,534
|
|
27
27
|
climate_ref/datasets/utils.py,sha256=iLJO7h4G3DWsRe9hIC4qkIyi5_zIW1ZMw-FDASLujtM,359
|
|
28
|
-
climate_ref/executor/__init__.py,sha256=
|
|
29
|
-
climate_ref/executor/hpc.py,sha256=
|
|
28
|
+
climate_ref/executor/__init__.py,sha256=tXuXxoFQKH9-te4O3bJg9dVrBKtjRS2si0yzRsHVfGk,902
|
|
29
|
+
climate_ref/executor/hpc.py,sha256=DEp_Q5kDfBTPF_4mgyedjKbXtNZ-OmIkS9bbYo2B1FQ,14153
|
|
30
30
|
climate_ref/executor/local.py,sha256=65LUl41YtURFb87YTWZQHjDpIRlIKJ5Ny51c9DZjy0s,8582
|
|
31
31
|
climate_ref/executor/pbs_scheduler.py,sha256=WoH1sTmDl7bdmYodpcxZjkUSvInYUcWR4x7buIgBxqk,5807
|
|
32
|
-
climate_ref/executor/result_handling.py,sha256=
|
|
32
|
+
climate_ref/executor/result_handling.py,sha256=2VQHbLKdv109pQwQO_cTqxsAXAq9S-s4w8aYg10VWms,10796
|
|
33
33
|
climate_ref/executor/synchronous.py,sha256=o4TndsoKMu9AzJYLkusU9lRkgHCy6HcCP46tEs6o86U,1895
|
|
34
34
|
climate_ref/migrations/README,sha256=xM5osYbyEbEFA2eh5kwary_oh-5VFWtDubA-vgWwvlE,935
|
|
35
35
|
climate_ref/migrations/env.py,sha256=8GvBLhGTuQy6MKYMj7QszJEQ2LNewf1Z9kB9dBHQs9I,4375
|
|
@@ -37,18 +37,19 @@ climate_ref/migrations/script.py.mako,sha256=MEqL-2qATlST9TAOeYgscMn1uy6HUS9NFvD
|
|
|
37
37
|
climate_ref/migrations/versions/2025-05-02T1418_341a4aa2551e_regenerate.py,sha256=S8Q4THCI4TPnlaQHgQJUCiNW5LAyQClaiTB-0dwhtXU,14050
|
|
38
38
|
climate_ref/migrations/versions/2025-05-09T2032_03dbb4998e49_series_metric_value.py,sha256=s9nZ_l64pSF7sWN53rRPCQlqW_xHqR8tlWhU-ovmsME,2043
|
|
39
39
|
climate_ref/migrations/versions/2025-07-03T1505_795c1e6cf496_drop_unique_requirement_on_slug.py,sha256=TfBHJkm3oPlz0P5Z1tiY6LBp2B1oDvdyL_OOYoV-OiI,984
|
|
40
|
-
climate_ref/migrations/versions/2025-07-20T1521_94beace57a9c_cmip6_finalised.py,sha256=
|
|
41
|
-
climate_ref/migrations/versions/2025-08-05T0327_a1b2c3d4e5f6_finalised_on_base_dataset.py,sha256=
|
|
40
|
+
climate_ref/migrations/versions/2025-07-20T1521_94beace57a9c_cmip6_finalised.py,sha256=pzxhT9aFaEqyyUOWf0AExsr6sMW9syyr1RUhy0nj3AM,2907
|
|
41
|
+
climate_ref/migrations/versions/2025-08-05T0327_a1b2c3d4e5f6_finalised_on_base_dataset.py,sha256=Uen3ryUfmIpASeIQYuUJd9xDxnEl5ItTx3jKuHoDSko,2033
|
|
42
|
+
climate_ref/migrations/versions/2025-09-05T2019_8d28e5e0f9c3_add_indexes.py,sha256=r8xKMIykdQbnrtBgmfTtfs5uHlmiQJNp7g5IdWi4zrs,5456
|
|
42
43
|
climate_ref/models/__init__.py,sha256=rUDKRANeAEAHVOrzJVIZoZ99dDG5O4AGzHmOpC876Nc,801
|
|
43
|
-
climate_ref/models/base.py,sha256=
|
|
44
|
-
climate_ref/models/dataset.py,sha256=
|
|
44
|
+
climate_ref/models/base.py,sha256=jY7aMH1DAekH2Zs5v-r1O4mpAAfZq2Fn4EGXrO1vFvk,1297
|
|
45
|
+
climate_ref/models/dataset.py,sha256=eW0FV--ImpeZH08cGlC5PPKD088F4D_zv5qEVet8iNo,8156
|
|
45
46
|
climate_ref/models/diagnostic.py,sha256=0mKVvASEWNxx41R2Y-5VxplarZ4JAP6q0oaO14FKZuk,1751
|
|
46
|
-
climate_ref/models/execution.py,sha256=
|
|
47
|
-
climate_ref/models/metric_value.py,sha256=
|
|
47
|
+
climate_ref/models/execution.py,sha256=iqT8jrbP_RTyDtIO2nAczmp-rtouuaHzkb7g1IOhJ-0,9917
|
|
48
|
+
climate_ref/models/metric_value.py,sha256=XsmZvp21WMykBjDePDqsZsT2UefEFFskoZCd4uOXK-4,10212
|
|
48
49
|
climate_ref/models/provider.py,sha256=RAE2qAAxwObu-72CdK4kt5ACMmKYEn07WJm7DU9hF28,990
|
|
49
|
-
climate_ref-0.6.
|
|
50
|
-
climate_ref-0.6.
|
|
51
|
-
climate_ref-0.6.
|
|
52
|
-
climate_ref-0.6.
|
|
53
|
-
climate_ref-0.6.
|
|
54
|
-
climate_ref-0.6.
|
|
50
|
+
climate_ref-0.6.6.dist-info/METADATA,sha256=1Y-tl8sg-djWxY2UeLsN_A5paYJAFPvZGVf1rfJPtuE,4507
|
|
51
|
+
climate_ref-0.6.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
52
|
+
climate_ref-0.6.6.dist-info/entry_points.txt,sha256=IaggEJlDIhoYWXdXJafacWbWtCcoEqUKceP1qD7_7vU,44
|
|
53
|
+
climate_ref-0.6.6.dist-info/licenses/LICENCE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
54
|
+
climate_ref-0.6.6.dist-info/licenses/NOTICE,sha256=4qTlax9aX2-mswYJuVrLqJ9jK1IkN5kSBqfVvYLF3Ws,128
|
|
55
|
+
climate_ref-0.6.6.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|