climate-ref-esmvaltool 0.6.3__py3-none-any.whl → 0.6.5__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.
@@ -1,3 +1,73 @@
1
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1980_monthly.nc 48ff88cfbe8d99a0886e2dc6a80499a542c5d3d91e51a5475814104ea24959fd
2
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1981_monthly.nc d23fd46ca62287f7f9b8bb2cab6f78cd05c95225400eba122e498d7404da5eae
3
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1982_monthly.nc 0bcb4e855c89b350e357a703fcbb76f0316800e325302d66481db8bed4e6e62d
4
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1983_monthly.nc c01d412621a6e4853594ef275b2bcfa569acd80fd3b5ef6d9aca83aa941b2ab2
5
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1984_monthly.nc 5892d9629a5da067d7fe2d4a3412513b11195d2647374aefa223ab578334329c
6
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1985_monthly.nc c90318e810f8dc11b04b96a63812970b5b84cf0eec20076834173e1bfcb2e092
7
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1986_monthly.nc 8677384f7c8568ecc56b1d0fff10cc7633a36f141890268992f54c12c7f02431
8
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1987_monthly.nc e9938785bc083bd86e5a6882bd6aae4319d58438e7455dec62ec6c6e815456e6
9
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1988_monthly.nc 452da6c221438202faf5d7c698a3b2b697b187ab170ace21c2a90ca7c226b6b0
10
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1989_monthly.nc 8784d1125f81e57efa85c3a491b69fd0c61847e45947d3d5e639345ee1f2ed96
11
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1990_monthly.nc 86c94b2e0ed6f598d536e16cdbbea856dec81a7a02a019a59e1ef3a09a24137f
12
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1991_monthly.nc 8220294b443cd96cb7b499a3d963786a61766a6dc944d396905d96e2676182a2
13
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1992_monthly.nc 04ee384343d8fdca07d52af4f6b074fb6597a99359b6b2116a76f7ce1b7a45e3
14
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1993_monthly.nc a6cb4d42e3fb2a9e702c1e601b7e8edf74eecf0862f259fe5dc14dec71fe9b41
15
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1994_monthly.nc acd0ebbffc5a32591b2d71f906a7167a8d74960f15f43834f668e0668aeb0214
16
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1995_monthly.nc d47ca46cc518deb0c54e823d3bc819e8e0c16c91a918bcd5af0d7f87c0ed9f28
17
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1996_monthly.nc dc638a30d9b31fd51353c5e097dcaeef57634ff1c43570936b6286936ad4b5f5
18
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1997_monthly.nc 3bd6217ed16abcd92288962c76d392ee782cdc857f32b95ccc7060406f7fc3e6
19
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1998_monthly.nc 6e55f80d3aaff7ea572a1952a59de3a382c31d72f322d17fafd0f2f85a9c4be7
20
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_1999_monthly.nc baa867a37e79ef2ce4214556915a11e4f091d8e6dadc0af4a286f928ecdb5a0b
21
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2000_monthly.nc 13f0dd65458d444f259078c7dca46b32e569beffb00fd61675892f1be9344766
22
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2001_monthly.nc e9eb1270f31e687810d3ee18a6d87e4f75194bf1ab9ccd468f9f0bffa46b1507
23
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2002_monthly.nc eb7fae23ee31beba63d4bf0683c33f7f086c8546051b14ab49ef819a3a55f8d2
24
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2003_monthly.nc b24a85c15f54e4fb2a49a2b91b6fb7f4467fd2af4028f65aa4fa6720cb4d44d8
25
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2004_monthly.nc 8d1b015fb2e6acdb719d756d190d5283cf0713365a8b4058bd9c09b1a6998635
26
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2005_monthly.nc 816da648dd5da271a40657c030b61b0b1f6baf0e108384262917ec7c404cbd78
27
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2006_monthly.nc 0b7ed69c8e93de182db00ef90f9a753ef056a0b8abf13f8c2e7ea5f54b52fa2d
28
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2007_monthly.nc 020f2d6f3c01c65a88e05dcc64583a6801507540dcf5b27fb3fa5a1b416518b9
29
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2008_monthly.nc f5880184b7c0ec0a3836e0b84df3beb012d735e0ea310c2b8ceb8a583a59bb1c
30
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2009_monthly.nc 8c2f0d3ddc9eef994ae971c81005010c3762ebec9797c659e0260eeeec3a360d
31
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2010_monthly.nc 80f16ef9275d9fccfb969a08e7ad04d4b25fdad9fb4752d10f5fe0212530468f
32
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2011_monthly.nc ed5ebb860db5e5554c16b6efea6d5ef6c8bd426f728477db45b856d859782f34
33
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2012_monthly.nc 2745a5d61f977f3c71f13b5df1373d6f7801d4541d9862ba8a1a6686c7ccaca3
34
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2013_monthly.nc d60c4395484b195e8fceb6ee1d8436fdd142a0dcd6a0828dcd3f2c181ff1da35
35
+ ESMValTool/native6/Tier3/ERA5/v1/mon/hus/era5_specific_humidity_2014_monthly.nc 1b5ea6a09d156ede27dfacf36cdb7e4633a0c96311523dc487fbc57f276f36eb
36
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1980_monthly.nc 5363c35729b71986dbf0ab870d3280aa70367b2ed992e747f4d354322c20267e
37
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1981_monthly.nc 8dbe433af76d2e9f40aeb5fb0d9cc11f6823b9b71d1db3e8700d5f77722cab81
38
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1982_monthly.nc 5a545da7425ee3b148db286fb2df3f85ac07808926bbc85ee7edea20412479be
39
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1983_monthly.nc 01dab7313cc2c68dfe83d25cb1e3a1f5fdc3a611c3001d22ec4a75ede782d957
40
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1984_monthly.nc 0eec210377c3063983875fdddbb4f357343e4081f6aa31594963b029c13e1bb6
41
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1985_monthly.nc 6eca60f548216df4b2259c1552977aaee82e6dfe66438974582f71133a85d83f
42
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1986_monthly.nc a3142087ab5aecbd6ea42e8f2c700a9fc4090e07faacdb9444b356cb7b53b7eb
43
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1987_monthly.nc ff3c17bf4d475cd061fa80763edda03e371aac3cf526d3b3a54630607f29aea1
44
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1988_monthly.nc 628560d51bdaa45ee079891823e4770699fae685db17ecb29329f0db4a9bd6fe
45
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1989_monthly.nc dc41551e2a21df91f8b4d1840d47f0777808959db269ca50b1fee296882b647e
46
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1990_monthly.nc 8669dcd643da485e7975aa2014b86b9c66ebd5e51923cca7d1b0f4b6898309e6
47
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1991_monthly.nc e09248e7361e3e884ab70c32c85294e0d9d418b8c29ba1187adccedfe42504d4
48
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1992_monthly.nc 09e7750ee3c2357ae81dbdd6b0554b53d8124027f370fdc48965bb389e370b7e
49
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1993_monthly.nc f537c64565172b176c1f0391f66153e0924e0cef920cf7014f167eff9f563c87
50
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1994_monthly.nc f38138bf64a5a4b991db9673c051892df16d89fe19bd9b7c767d3985d4f2b8d3
51
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1995_monthly.nc 3497d32d78fa2e8887277b8629b88ed71b0f570dcaec4fdbeb95129986d69e3b
52
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1996_monthly.nc fd8dd938f724747edd951c026d0e663d48439dda315a2394eda9a21056032bdf
53
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1997_monthly.nc fbb3ccd82381dac655f44c9a363839d6f1b507f0082578a391862a20bf381129
54
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1998_monthly.nc 9d88d17eb926222ab658a6fef376a9243310f4048e20a158a9f3b3bac2672123
55
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_1999_monthly.nc 7146a3bb327ba9bb1a6584574915a27a43ec65eccbe946dd3305bbd5392b2a71
56
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2000_monthly.nc 6c47f0edab228d477d4780be468a8d801c829b204cae2d2449c8d604982cba66
57
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2001_monthly.nc 516e75787b4503f092028bb170c6c48730c1cb3efe3091b32c427d7062ee4905
58
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2002_monthly.nc b7e9e6d35b9515767b05a583ee5a037a6dc16f144cae18c6ded16619d1006ba1
59
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2003_monthly.nc 739d997936d282bba448294c8f4b1d998f4d92313e84445e28806f8c52778f79
60
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2004_monthly.nc c3729496614e917a4b802d5144ebce73eac148c17ac9a68c245b274e704c2be2
61
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2005_monthly.nc 5bc32ffa821732f3cb1fbdd4115daad84530bd3dd05bed69f70bb9472641c9b1
62
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2006_monthly.nc ae253c74b2f7bc05deb66772170a63fa6a2ffa6a43476cd612331c4c91965054
63
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2007_monthly.nc 9fc23a565792d61dd0877b3671803e31c108dd1b96b8228a14ae61f0eeb2e8cd
64
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2008_monthly.nc 13ff4fb0efa617fb0bb9601c1cffcb0d969ecb841def96ba8fa25efcc13c949f
65
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2009_monthly.nc c7fe95230ac84c5b8a13b4d05dd1927a24586c43a3fb134bec2f0707e70a7f11
66
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2010_monthly.nc ab1fef5b7d89c3e4c0cb4c803fc40d077e6baf84ff8b9497adfce03812650ea7
67
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2011_monthly.nc 1f4c9735818621c6dac53b49cb959f48aef6a0affe9ac63a97c20d90b21b47da
68
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2012_monthly.nc 7324f447010bdca690028197fff483cd53668707ade467d00b41ee2717355318
69
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2013_monthly.nc 710ba54caf511eb713eee58f7dda2a79c824ce3c758ad08802109b4898641eb8
70
+ ESMValTool/native6/Tier3/ERA5/v1/mon/pr/era5_total_precipitation_2014_monthly.nc af69507521f2493cfb898100f1a33d983cf09c394421fcb8f5b644b2e113d79c
1
71
  ESMValTool/obs4MIPs/GPCP-V2.3/v20180519/pr_GPCP-SG_L3_v2.3_197901-201710.nc 4dd4678b79ef139446c8406da5aae4fed210abb2f2160ef95f6988bf83e4525b
2
72
  ESMValTool/OBS/Tier2/CERES-EBAF/OBS_CERES-EBAF_sat_Ed4.2_Amon_rlut_200003-202311.nc ede887cf2d83c848a0d71316799232e4d717662bd2f78d5aa1fc166b41d9953b
3
73
  ESMValTool/OBS/Tier2/CERES-EBAF/OBS_CERES-EBAF_sat_Ed4.2_Amon_rlutcs_200003-202311.nc e70e3273092edf01527970693271641fc6474d1974887d7d272e7d656bab83c2
@@ -7,6 +77,7 @@ ESMValTool/OBS/Tier2/ESACCI-CLOUD/OBS_ESACCI-CLOUD_sat_AVHRR-AMPM-fv3.0_Amon_rlu
7
77
  ESMValTool/OBS/Tier2/ESACCI-CLOUD/OBS_ESACCI-CLOUD_sat_AVHRR-AMPM-fv3.0_Amon_rlutcs_198201-201612.nc 21f096ecafff659e5c7e3338060425f7194e5d1b39c9510865496e04ecac3d75
8
78
  ESMValTool/OBS/Tier2/ESACCI-CLOUD/OBS_ESACCI-CLOUD_sat_AVHRR-AMPM-fv3.0_Amon_rsut_198201-201612.nc f2c3f3afcdc2e730df7985c210a3de89b0d4f83b150e0c3846f7ac3c5fa9c54a
9
79
  ESMValTool/OBS/Tier2/ESACCI-CLOUD/OBS_ESACCI-CLOUD_sat_AVHRR-AMPM-fv3.0_Amon_rsutcs_198201-201612.nc d180d3140d4c1f6b9bb1960e07b45f192643f047e7c272c8c8c7070296ca3ab7
80
+ ESMValTool/OBS/Tier2/HadCRUT5/OBS_HadCRUT5_ground_5.0.1.0-analysis_Amon_tas_185001-202112.nc edc3ee50b942dfbeccfd58b574df3393555379c2de3418c9717ac11dbafc12fc
10
81
  ESMValTool/OBS/Tier2/ISCCP-FH/OBS_ISCCP-FH_sat_v0_Amon_rlut_198401-201612.nc 650b347df432f6e5f3f693310aad695a7502f2905ac545753c7d4ccb0592adbe
11
82
  ESMValTool/OBS/Tier2/ISCCP-FH/OBS_ISCCP-FH_sat_v0_Amon_rlutcs_198401-201612.nc a90d9e035447f8778a2f64362411c079536d9dea559f6d53d032710b2c9b00e3
12
83
  ESMValTool/OBS/Tier2/ISCCP-FH/OBS_ISCCP-FH_sat_v0_Amon_rsut_198401-201612.nc 8afa3afd416500b17bceda5689c43d64277a4c32f99521f79a3603d0e3fe0570
@@ -6,6 +6,7 @@ from climate_ref_esmvaltool.diagnostics.ecs import EquilibriumClimateSensitivity
6
6
  from climate_ref_esmvaltool.diagnostics.enso import ENSOBasicClimatology, ENSOCharacteristics
7
7
  from climate_ref_esmvaltool.diagnostics.example import GlobalMeanTimeseries
8
8
  from climate_ref_esmvaltool.diagnostics.sea_ice_area_basic import SeaIceAreaBasic
9
+ from climate_ref_esmvaltool.diagnostics.sea_ice_sensitivity import SeaIceSensitivity
9
10
  from climate_ref_esmvaltool.diagnostics.tcr import TransientClimateResponse
10
11
  from climate_ref_esmvaltool.diagnostics.tcre import TransientClimateResponseEmissions
11
12
  from climate_ref_esmvaltool.diagnostics.zec import ZeroEmissionCommitment
@@ -18,6 +19,7 @@ __all__ = [
18
19
  "EquilibriumClimateSensitivity",
19
20
  "GlobalMeanTimeseries",
20
21
  "SeaIceAreaBasic",
22
+ "SeaIceSensitivity",
21
23
  "TransientClimateResponse",
22
24
  "TransientClimateResponseEmissions",
23
25
  "ZeroEmissionCommitment",
@@ -4,8 +4,8 @@ from pathlib import Path
4
4
  from typing import ClassVar
5
5
 
6
6
  import pandas
7
+ import yaml
7
8
  from loguru import logger
8
- from ruamel.yaml import YAML
9
9
 
10
10
  from climate_ref_core.dataset_registry import dataset_registry_manager
11
11
  from climate_ref_core.datasets import ExecutionDatasetCollection, SourceDatasetType
@@ -19,8 +19,6 @@ from climate_ref_core.pycmec.output import CMECOutput, OutputCV
19
19
  from climate_ref_esmvaltool.recipe import load_recipe, prepare_climate_data
20
20
  from climate_ref_esmvaltool.types import MetricBundleArgs, OutputBundleArgs, Recipe
21
21
 
22
- yaml = YAML()
23
-
24
22
 
25
23
  class ESMValToolDiagnostic(CommandLineDiagnostic):
26
24
  """ESMValTool Diagnostic base class."""
@@ -177,7 +175,7 @@ class ESMValToolDiagnostic(CommandLineDiagnostic):
177
175
  # Add the plots and data files
178
176
  plot_suffixes = {".png", ".jpg", ".pdf", ".ps"}
179
177
  for metadata_file in result_dir.glob("run/*/*/diagnostic_provenance.yml"):
180
- metadata = yaml.load(metadata_file.read_text(encoding="utf-8"))
178
+ metadata = yaml.safe_load(metadata_file.read_text(encoding="utf-8"))
181
179
  for filename in metadata:
182
180
  caption = metadata[filename].get("caption", "")
183
181
  relative_path = definition.as_relative_path(filename)
@@ -0,0 +1,105 @@
1
+ from pathlib import Path
2
+
3
+ import pandas
4
+ import pandas as pd
5
+
6
+ from climate_ref_core.constraints import (
7
+ AddSupplementaryDataset,
8
+ RequireContiguousTimerange,
9
+ RequireFacets,
10
+ )
11
+ from climate_ref_core.datasets import ExecutionDatasetCollection, FacetFilter, SourceDatasetType
12
+ from climate_ref_core.diagnostics import DataRequirement
13
+ from climate_ref_core.pycmec.metric import CMECMetric, MetricCV
14
+ from climate_ref_core.pycmec.output import CMECOutput
15
+ from climate_ref_esmvaltool.diagnostics.base import ESMValToolDiagnostic
16
+ from climate_ref_esmvaltool.recipe import dataframe_to_recipe
17
+ from climate_ref_esmvaltool.types import MetricBundleArgs, OutputBundleArgs, Recipe
18
+
19
+
20
+ class SeaIceSensitivity(ESMValToolDiagnostic):
21
+ """
22
+ Calculate sea ice sensitivity.
23
+ """
24
+
25
+ name = "Sea ice sensitivity"
26
+ slug = "sea-ice-sensitivity"
27
+ base_recipe = "recipe_seaice_sensitivity.yml"
28
+
29
+ variables = (
30
+ "siconc",
31
+ "tas",
32
+ )
33
+
34
+ data_requirements = (
35
+ DataRequirement(
36
+ source_type=SourceDatasetType.CMIP6,
37
+ filters=(
38
+ FacetFilter(
39
+ facets={
40
+ "variable_id": variables,
41
+ "experiment_id": "historical",
42
+ },
43
+ ),
44
+ ),
45
+ group_by=("experiment_id",), # this does nothing, but group_by cannot be empty
46
+ constraints=(
47
+ AddSupplementaryDataset.from_defaults("areacella", SourceDatasetType.CMIP6),
48
+ AddSupplementaryDataset.from_defaults("areacello", SourceDatasetType.CMIP6),
49
+ RequireContiguousTimerange(group_by=("instance_id",)),
50
+ RequireFacets("variable_id", variables),
51
+ # TODO: Add a constraint to ensure that tas, siconc and areacello
52
+ # are available for each model or alternatively filter out
53
+ # incomplete models below.
54
+ ),
55
+ ),
56
+ )
57
+ facets = ("experiment_id", "source_id", "region", "metric")
58
+
59
+ @staticmethod
60
+ def update_recipe(recipe: Recipe, input_files: pandas.DataFrame) -> None:
61
+ """Update the recipe."""
62
+ recipe_variables = dataframe_to_recipe(input_files)
63
+ datasets = recipe_variables["tas"]["additional_datasets"]
64
+ for dataset in datasets:
65
+ dataset.pop("mip")
66
+ dataset["timerange"] = "1979/2014"
67
+ recipe["datasets"] = datasets
68
+
69
+ @staticmethod
70
+ def format_result(
71
+ result_dir: Path,
72
+ execution_dataset: ExecutionDatasetCollection,
73
+ metric_args: MetricBundleArgs,
74
+ output_args: OutputBundleArgs,
75
+ ) -> tuple[CMECMetric, CMECOutput]:
76
+ """Format the result."""
77
+ metric_args[MetricCV.DIMENSIONS.value] = {
78
+ "json_structure": [
79
+ "source_id",
80
+ "region",
81
+ "metric",
82
+ ],
83
+ "source_id": {},
84
+ "region": {},
85
+ "metric": {},
86
+ }
87
+ for region in "antarctic", "arctic":
88
+ df = pd.read_csv(
89
+ result_dir / "work" / region / "sea_ice_sensitivity_script" / "plotted_values.csv"
90
+ )
91
+ df = df.rename(columns={"Unnamed: 0": "source_id"}).drop(columns=["label"])
92
+ metric_args[MetricCV.DIMENSIONS.value]["region"][region] = {}
93
+ for metric in df.columns[1:]:
94
+ metric_args[MetricCV.DIMENSIONS.value]["metric"][metric] = {}
95
+ for row in df.itertuples(index=False):
96
+ source_id = row.source_id
97
+ metric_args[MetricCV.DIMENSIONS.value]["source_id"][source_id] = {}
98
+ for metric, value in zip(df.columns[1:], row[1:]):
99
+ if source_id not in metric_args[MetricCV.RESULTS.value]:
100
+ metric_args[MetricCV.RESULTS.value][source_id] = {}
101
+ if region not in metric_args[MetricCV.RESULTS.value][source_id]:
102
+ metric_args[MetricCV.RESULTS.value][source_id][region] = {}
103
+ metric_args[MetricCV.RESULTS.value][source_id][region][metric] = value
104
+
105
+ return CMECMetric.model_validate(metric_args), CMECOutput.model_validate(output_args)
@@ -5,15 +5,13 @@ from pathlib import Path
5
5
  from typing import TYPE_CHECKING, Any
6
6
 
7
7
  import pooch
8
- from ruamel.yaml import YAML
8
+ import yaml
9
9
 
10
10
  from climate_ref_esmvaltool.types import Recipe
11
11
 
12
12
  if TYPE_CHECKING:
13
13
  import pandas as pd
14
14
 
15
- yaml = YAML()
16
-
17
15
  FACETS = {
18
16
  "CMIP6": {
19
17
  "activity": "activity_id",
@@ -115,8 +113,8 @@ def dataframe_to_recipe(files: pd.DataFrame) -> dict[str, Any]:
115
113
  return variables
116
114
 
117
115
 
118
- _ESMVALTOOL_COMMIT = "58fd0b8ece981bc97c4fbd213b11f2228d90db28"
119
- _ESMVALTOOL_VERSION = f"2.13.0.dev65+g{_ESMVALTOOL_COMMIT[:9]}"
116
+ _ESMVALTOOL_COMMIT = "8f56863a70ba4df76ec501ba0372c571a0af6cf9"
117
+ _ESMVALTOOL_VERSION = f"2.13.0.dev120+g{_ESMVALTOOL_COMMIT[:9]}"
120
118
 
121
119
  _RECIPES = pooch.create(
122
120
  path=pooch.os_cache("climate_ref_esmvaltool"),
@@ -144,7 +142,7 @@ def load_recipe(recipe: str) -> Recipe:
144
142
  The loaded recipe.
145
143
  """
146
144
  filename = _RECIPES.fetch(recipe)
147
- return yaml.load(Path(filename).read_text(encoding="utf-8")) # type: ignore[no-any-return]
145
+ return yaml.safe_load(Path(filename).read_text(encoding="utf-8")) # type: ignore[no-any-return]
148
146
 
149
147
 
150
148
  def prepare_climate_data(datasets: pd.DataFrame, climate_data_dir: Path) -> None:
@@ -1,10 +1,11 @@
1
1
  examples/recipe_python.yml ab3f06d269bb2c1368f4dc39da9bcb232fb2adb1fa556ba769e6c16294ffb4a3
2
2
  recipe_calculate_gwl_exceedance_stats.yml 5aa266abc9a8029649b689a2b369a47623b0935d609354332ff4148994642d6b
3
3
  recipe_ecs.yml 0cc57034fcb64e32015b4ff949ece5df8cdb8c6f493618b50ceded119fb37918
4
+ recipe_seaice_sensitivity.yml f7247c076e161c582d422947c8155f3ca98549e6f2e4c3b1c76414786d7e50c5
4
5
  recipe_tcr.yml 35f9ef035a4e71aff5cac5dd26c49da2162fc00291bf3b0bd16b661b7b2f606b
5
6
  recipe_tcre.yml 48fc9e3baf541bbcef7491853ea3a774053771dca33352b41466425faeaa38af
6
7
  recipe_zec.yml b0af7f789b7610ab3f29a6617124aa40c40866ead958204fc199eaf82863de51
7
8
  ref/recipe_enso_basicclimatology.yml 9ea7deb7ee668e39ac44618b96496d898bd82285c22dcee4fce4695e0c9fa82b
8
9
  ref/recipe_enso_characteristics.yml 34c2518b138068ac96d212910b979d54a8fcedee2c0089b5acd56a42c41dc3e4
9
- ref/recipe_ref_cre.yml 4f35d9639f1008be3b5382a5bd8933a855cb5368ccf5d04a1c70227172e2e82c
10
+ ref/recipe_ref_cre.yml 4375f262479c3b3e1b348b71080a6d758e195bda76516a591182045a3a29aa32
10
11
  ref/recipe_ref_sea_ice_area_basic.yml 7d01a8527880663ca28284772f83a8356d9972fb4f022a4000e50a56ce044b09
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: climate-ref-esmvaltool
3
- Version: 0.6.3
3
+ Version: 0.6.5
4
4
  Summary: ESMValTool diagnostic provider for the Rapid Evaluation Framework
5
5
  Author-email: ESMValTool development team <esmvaltool-dev@listserv.dfn.de>, Jared Lewis <jared.lewis@climate-resource.com>
6
6
  License-Expression: Apache-2.0
@@ -20,7 +20,7 @@ Classifier: Topic :: Scientific/Engineering
20
20
  Requires-Python: >=3.11
21
21
  Requires-Dist: climate-ref-core
22
22
  Requires-Dist: pooch>=1.8
23
- Requires-Dist: ruamel-yaml>=0.18
23
+ Requires-Dist: pyyaml
24
24
  Requires-Dist: xarray>=2023.3.0
25
25
  Description-Content-Type: text/markdown
26
26
 
@@ -1,25 +1,27 @@
1
1
  climate_ref_esmvaltool/__init__.py,sha256=4WHuuZJvK50Djb831ws_Y2EtFLWicwsLIxhOvRld2BE,994
2
2
  climate_ref_esmvaltool/_version.py,sha256=Ed7geC_W9fxIocCdAvK1fk2k-pDt6FGOM_LEgR06-24,94
3
3
  climate_ref_esmvaltool/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- climate_ref_esmvaltool/recipe.py,sha256=DWgcQuj58YM2VzRVt2rP3upbXHsqQZ9QihGqCONzAe0,5111
5
- climate_ref_esmvaltool/recipes.txt,sha256=97Nxkw9aF6c0UiE1js_05MJRcFGEopZordWHqBmNrRQ,965
4
+ climate_ref_esmvaltool/recipe.py,sha256=8V_aEJE5cwX6ae-3Rn5V13uCuN1ZIKX06YmfAHrxqv4,5085
5
+ climate_ref_esmvaltool/recipes.txt,sha256=V0CUGqojALi6nn6zE65Hfn7S4s-IjzNeIu6EhBRhIkA,1060
6
6
  climate_ref_esmvaltool/types.py,sha256=luUMNS3LJGJEecVrHRDh5l5ElnQgz7G0auCtA_Jwnno,117
7
- climate_ref_esmvaltool/dataset_registry/data.txt,sha256=MRDNDcBNbi-Qg17i_XxTHDBuHfCju7RHxbEwEExn5-o,13344
8
- climate_ref_esmvaltool/diagnostics/__init__.py,sha256=c340A--rrRHOt52ea9mLKMFVI6qdd-8l0I-jaKL5NoI,1128
9
- climate_ref_esmvaltool/diagnostics/base.py,sha256=gVNDVZRe7V3OEnNHLdsZ9G8Rz_JqcQdL0tcH_P6cLoc,7868
7
+ climate_ref_esmvaltool/dataset_registry/data.txt,sha256=ONlSkyZaW2-kx6remluMzPfBdlqvNZ6wD6E_srX9gv0,23687
8
+ climate_ref_esmvaltool/diagnostics/__init__.py,sha256=SYZQf3QEz9HX_W8513OLCjC_08gi117otGYgMm4SoTM,1238
9
+ climate_ref_esmvaltool/diagnostics/base.py,sha256=kSbLhc_pCuNLVHVKN7RlOFf2IZp-dDWOZw6WIajKjTM,7841
10
10
  climate_ref_esmvaltool/diagnostics/climate_at_global_warming_levels.py,sha256=o5xSAiZJnuMhG3i8lO1QPsN4YSk3s2jhEWi3pdMAJNw,3532
11
11
  climate_ref_esmvaltool/diagnostics/cloud_radiative_effects.py,sha256=WdG49r6zDbikpKiM5bFckl3oOwyFgBfARLrYR6OzlPs,2815
12
12
  climate_ref_esmvaltool/diagnostics/ecs.py,sha256=7Zb1llwOqW0vs-7j5iri3HWQEuvcgyeh0O0CDlBwrIA,5290
13
13
  climate_ref_esmvaltool/diagnostics/enso.py,sha256=dn6_vrNKoBUiMiMGJ8NLHI4ntCnSaK0fXz95f0UKP3E,5359
14
14
  climate_ref_esmvaltool/diagnostics/example.py,sha256=F2mazDsSju68v3JE9aU6u4SwszIN3wFR5dRlQExvNns,1981
15
15
  climate_ref_esmvaltool/diagnostics/sea_ice_area_basic.py,sha256=PPJTvr97Mgie7iuADT6pZvC8byqTwJ2GhKwcxFVSNLE,3180
16
+ climate_ref_esmvaltool/diagnostics/sea_ice_sensitivity.py,sha256=JZUGSwDqDZmPTncpS7y-fIm2ncwbzFSlLq6fQ07g6Jg,4194
16
17
  climate_ref_esmvaltool/diagnostics/tcr.py,sha256=v1HwKG6JZwGZ4_lOBWj2YeqT5Ha83HliBqBeuTs-lN0,4668
17
18
  climate_ref_esmvaltool/diagnostics/tcre.py,sha256=s9wl2LEO8qKVoYjLE_Iwfl89jOtP6zH_teplg-yhzz0,5388
18
19
  climate_ref_esmvaltool/diagnostics/zec.py,sha256=iB1pO0VGOlXAtTzyQlFN0tMfDfL9Leq1QGVE70TagOM,3925
19
20
  climate_ref_esmvaltool/requirements/conda-lock.yml,sha256=i9jv2YX1KylXWl4oJQJWEgD6ZmY5pAsj_cbKAxzudFs,588058
20
21
  climate_ref_esmvaltool/requirements/environment.yml,sha256=Pc3Vq0ZGwSEc_bOxDYJsgoro13-YrGWjpdyO1UQwHEM,78
21
- climate_ref_esmvaltool-0.6.3.dist-info/METADATA,sha256=I1pAj7dIg_XTNfQbYEZIdWSlo_-Q-hWXZD6xkqLEleg,2425
22
- climate_ref_esmvaltool-0.6.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
23
- climate_ref_esmvaltool-0.6.3.dist-info/licenses/LICENCE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
24
- climate_ref_esmvaltool-0.6.3.dist-info/licenses/NOTICE,sha256=4qTlax9aX2-mswYJuVrLqJ9jK1IkN5kSBqfVvYLF3Ws,128
25
- climate_ref_esmvaltool-0.6.3.dist-info/RECORD,,
22
+ climate_ref_esmvaltool-0.6.5.dist-info/METADATA,sha256=aHb9JTVf39QAHD3HWO4cmCxONVPPAwsXr8sAcRPhCOY,2414
23
+ climate_ref_esmvaltool-0.6.5.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
24
+ climate_ref_esmvaltool-0.6.5.dist-info/entry_points.txt,sha256=zhPwPv0Fu67MgdOCF8GAilZUHa9wl4T4xlkQ3HX4Sno,69
25
+ climate_ref_esmvaltool-0.6.5.dist-info/licenses/LICENCE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
26
+ climate_ref_esmvaltool-0.6.5.dist-info/licenses/NOTICE,sha256=4qTlax9aX2-mswYJuVrLqJ9jK1IkN5kSBqfVvYLF3Ws,128
27
+ climate_ref_esmvaltool-0.6.5.dist-info/RECORD,,
@@ -0,0 +1,2 @@
1
+ [climate-ref.providers]
2
+ esmvaltool = climate_ref_esmvaltool:provider