From 6971715c9fcc219d2f67f4e9f6a30ed1c6facc27 Mon Sep 17 00:00:00 2001 From: Jasper Wijnands Date: Mon, 16 Dec 2024 16:26:08 +0000 Subject: [PATCH 1/3] Identify stretched grid from graph --- src/anemoi/training/train/forecaster.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/anemoi/training/train/forecaster.py b/src/anemoi/training/train/forecaster.py index 6a6ec58a..ae0eb005 100644 --- a/src/anemoi/training/train/forecaster.py +++ b/src/anemoi/training/train/forecaster.py @@ -103,7 +103,7 @@ def __init__( _, self.val_metric_ranges = self.get_val_metric_ranges(config, data_indices) # Check if the model is a stretched grid - if "lam_resolution" in getattr(config.graph.nodes.hidden, "node_builder", []): + if graph_data["hidden"].node_type == 'StretchedTriNodes': mask_name = config.graph.nodes.hidden.node_builder.mask_attr_name limited_area_mask = graph_data[config.graph.data][mask_name].squeeze().bool() else: From 21fa50cb30eb0f0c8098de3d30a6d28266f56007 Mon Sep 17 00:00:00 2001 From: Jasper Wijnands Date: Mon, 16 Dec 2024 16:27:28 +0000 Subject: [PATCH 2/3] Code quality improvements --- src/anemoi/training/train/forecaster.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/anemoi/training/train/forecaster.py b/src/anemoi/training/train/forecaster.py index ae0eb005..08db6cd9 100644 --- a/src/anemoi/training/train/forecaster.py +++ b/src/anemoi/training/train/forecaster.py @@ -103,7 +103,7 @@ def __init__( _, self.val_metric_ranges = self.get_val_metric_ranges(config, data_indices) # Check if the model is a stretched grid - if graph_data["hidden"].node_type == 'StretchedTriNodes': + if graph_data["hidden"].node_type == "StretchedTriNodes": mask_name = config.graph.nodes.hidden.node_builder.mask_attr_name limited_area_mask = graph_data[config.graph.data][mask_name].squeeze().bool() else: From bfe9df176c8fb8b7a082ce26a02e970f85a2f633 Mon Sep 17 00:00:00 2001 From: Jasper Wijnands Date: Mon, 16 Dec 2024 16:41:04 +0000 Subject: [PATCH 3/3] Added change log entry --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ccbad57d..2fb5c36f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ Keep it human-readable, your future self will thank you! - Dont crash when using the profiler if certain env vars arent set [#180](https://github.com/ecmwf/anemoi-training/pull/180) - Remove saving of metadata to training checkpoint [#57](https://github.com/ecmwf/anemoi-training/pull/190) - Fixes to callback plots [#182] (power spectrum large numpy array error + precip cmap for cases where precip is prognostic). +- Identify stretched grid models based on graph rather than configuration file [#204](https://github.com/ecmwf/anemoi-training/pull/204) ### Added - Introduce variable to configure: transfer_learning -> bool, True if loading checkpoint in a transfer learning setting.