From 74cf4eb825a520b93955eece8e19ac60240e7543 Mon Sep 17 00:00:00 2001 From: Lawrence Bird Date: Tue, 31 Mar 2026 14:40:56 +1100 Subject: [PATCH 1/3] Add Davison et al. (2023) dataset. Address Issue #40 --- src/ccdtools/config/datasets.yaml | 23 ++++++++++++++++++ src/ccdtools/loaders.py | 40 +++++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+) diff --git a/src/ccdtools/config/datasets.yaml b/src/ccdtools/config/datasets.yaml index 683fb26..dd0f306 100644 --- a/src/ccdtools/config/datasets.yaml +++ b/src/ccdtools/config/datasets.yaml @@ -198,6 +198,29 @@ datasets: 50km: "50" static_patterns: v1: "aq1_01_" + + annual_ice_shelves_mass_balance: + doi: 10.5281/zenodo.8052519 + display_name: Annual mass budget of Antarctic ice shelves from 1997 to 2021 + path: /g/data/av17/admin/staging/cryosphere-data-pool/basal_forcing/ice_shelves_annaul_mass_balance_1997_2021 + description: Sub-ice shelf basal melt rates, masks, and basal mass balance timeseries from Davison et al. 2023. + tags: + - antarctica + - basal melt rates + ignore_dirs: + - code + subdatasets: + v1: + melt_rate: + subpath: data/basal_melt + extension: tif + masks: + subpath: data/masks/merged + extension: shp + timeseries: + subpath: data/basal_melt/timeseries/csv_outputs + extension: csv + loader: davison_timeseries # ICE VELOCITY DATASETS measures_annual_antarctic_ice_velocity_maps: diff --git a/src/ccdtools/loaders.py b/src/ccdtools/loaders.py index 83f419a..12f9b7e 100644 --- a/src/ccdtools/loaders.py +++ b/src/ccdtools/loaders.py @@ -11,6 +11,7 @@ from datetime import datetime import re import warnings +import pathlib def default(self, row, resolution = None, static = True, **kwargs): """ @@ -532,4 +533,43 @@ def _preprocessor(ds): "for timesteps where a given variable does not have data. Users should use caution when considering\n" "time-varying analysis and might consider 'trimming' data to isolate all non-NaN arrays for a given variable.") + return output + +def davison_timeseries(self, row, **kwargs): + + # Extract parameters from row + path, ext, skip_lines, no_data, ignore_dirs, ignore_files, loader, resolutions, static_patterns = self._extract_row_params(row) + + # Normalise lists as needed + ignore_dirs = self._normalise_list(ignore_dirs) + ignore_files = self._normalise_list(ignore_files) + + # Find files + files = self._recursive_find_files(path, ext, ignore_dirs = ignore_dirs, ignore_files = ignore_files) + + # Set low_memory option + low_memory = kwargs.pop("low_memory", False) + + # Empty lisy to store all files + data_list = [] + + # Loop over files, read them in, append them to list, and strip ice shelf name + for f in files: + # Extract name before "-timeseries.csv" + name = pathlib.Path(f).stem.replace("-timeseries", "") + + data = pd.read_csv(f, skiprows = skip_lines, low_memory = low_memory, index_col = 0, **kwargs) + + # Add new column with extracted name as the first colum + data.insert(0, "shelf_name", name) + + data_list.append(data) + + # Concatenate all CSVs + output = pd.concat(data_list, ignore_index=True) + + # Replace no_data values + if no_data is not None: + output = output.replace(no_data, np.nan) + return output \ No newline at end of file From bfa906a4a21be27ee12191bcddf515c48f977fee Mon Sep 17 00:00:00 2001 From: Lawrence Bird Date: Tue, 31 Mar 2026 16:10:10 +1100 Subject: [PATCH 2/3] Add additional tags for datasets. Address Issues #43 and #51 --- src/ccdtools/config/datasets.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/ccdtools/config/datasets.yaml b/src/ccdtools/config/datasets.yaml index dd0f306..252d298 100644 --- a/src/ccdtools/config/datasets.yaml +++ b/src/ccdtools/config/datasets.yaml @@ -120,6 +120,8 @@ datasets: - basal melt rates - smb - ice thickness + - paolo 2024 + - NSIDC 0792 extension: nc # GEOSPTATIAL DATASETS @@ -133,6 +135,9 @@ datasets: - grounding line - ice front - ice mask + - NSIDC 0709 + - boundaries + - drainage basins extension: shp doi: v1: 10.5067/SEVV4MR8P1ZN @@ -207,6 +212,7 @@ datasets: tags: - antarctica - basal melt rates + - davison 2023 ignore_dirs: - code subdatasets: From a3641ab61016aedfb126db099873997080991812 Mon Sep 17 00:00:00 2001 From: Lawrence Bird Date: Fri, 24 Apr 2026 17:07:48 +1000 Subject: [PATCH 3/3] Add REMA V2 mosaics; Fix typo in Davison 2023 directory --- src/ccdtools/config/datasets.yaml | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/ccdtools/config/datasets.yaml b/src/ccdtools/config/datasets.yaml index 252d298..c3472a0 100644 --- a/src/ccdtools/config/datasets.yaml +++ b/src/ccdtools/config/datasets.yaml @@ -124,6 +124,26 @@ datasets: - NSIDC 0792 extension: nc + rema: + display_name: REMA + path: /g/data/av17/admin/staging/cryosphere-data-pool/elevation_geometry/rema + description: The Reference Elevation Model of Antarctica (REMA) is a high resolution, time-stamped Digital Surface Model (DSM) of Antarctica. + tags: + - antarctica + - surface elevation + - rema + extension: tif + doi: + v2: 10.7910/DVN/EBW8UC + resolutions: + v2: + static: + 100m: 100m + 500m: 500m + 1000m: 1km + static_patterns: + v2: "rema_mosaic_" + # GEOSPTATIAL DATASETS measures_antarctic_boundaries: display_name: Antarctic Boundaries for IPY 2007-2009 from Satellite Radar @@ -207,7 +227,7 @@ datasets: annual_ice_shelves_mass_balance: doi: 10.5281/zenodo.8052519 display_name: Annual mass budget of Antarctic ice shelves from 1997 to 2021 - path: /g/data/av17/admin/staging/cryosphere-data-pool/basal_forcing/ice_shelves_annaul_mass_balance_1997_2021 + path: /g/data/av17/admin/staging/cryosphere-data-pool/basal_forcing/ice_shelves_annual_mass_balance_1997_2021 description: Sub-ice shelf basal melt rates, masks, and basal mass balance timeseries from Davison et al. 2023. tags: - antarctica