@@ -112,7 +112,7 @@ def __init__(
112112 experiment_id : str ,
113113 source_id : str ,
114114 variant_label : str ,
115- grid_label : str ,
115+ grid_label : str | None = None ,
116116 cmip_version : str = "CMIP6" ,
117117 activity_id : str | None = None ,
118118 output_path : str | Path | None = "." ,
@@ -139,7 +139,8 @@ def __init__(
139139 experiment_id: CMIP experiment ID, e.g. ``"historical"``.
140140 source_id: CMIP source ID, e.g. ``"ACCESS-ESM1-5"``.
141141 variant_label: CMIP variant label, e.g. ``"r1i1p1f1"``.
142- grid_label: CMIP grid label, e.g. ``"gn"``.
142+ grid_label: CMIP grid label, e.g. ``"gn"``. Defaults to
143+ ``"g999"`` for CMIP7 and ``"gn"`` for CMIP6/CMIP6Plus.
143144 cmip_version: Vocabulary family to use: ``"CMIP6"``,
144145 ``"CMIP6Plus"``, or ``"CMIP7"``.
145146 activity_id: Optional CMIP activity ID, e.g. ``"CMIP"``.
@@ -192,6 +193,10 @@ def __init__(
192193 resource-backed variable is used.
193194 """
194195
196+ # Apply version-specific defaults
197+ if grid_label is None :
198+ grid_label = "g999" if cmip_version == "CMIP7" else "gn"
199+
195200 # Validate CMIP version
196201 if cmip_version not in ("CMIP6" , "CMIP6Plus" , "CMIP7" ):
197202 raise ValueError (
0 commit comments