Skip to content

Update melt calibration script to use Paolo dataset#724

Open
matthewhoffman wants to merge 6 commits into
MPAS-Dev:masterfrom
matthewhoffman:landice/ismf-calibration-paolo
Open

Update melt calibration script to use Paolo dataset#724
matthewhoffman wants to merge 6 commits into
MPAS-Dev:masterfrom
matthewhoffman:landice/ismf-calibration-paolo

Conversation

@matthewhoffman
Copy link
Copy Markdown
Member

@matthewhoffman matthewhoffman commented May 18, 2026

This PR updates the script landice/mesh_tools_li/tune_ismip6_melt_deltat.py from using the Rignot et al. 2016 observed melt rates to using the Paolo et al. 2024 dataset. It also make other improvements:

  • add more command line arguments and save the command to the output file history attribute for better provenance
  • support arbitrary year ranges for calibrating to (default is entire Paolo range)
  • support arbitrary region definitions by utilizing the Paolo melt maps instead of the Rignot regional averages
  • create figure showing optimized melt rates compared to the observations for sanity check

Further improvements to this script are possible (cleanup/modernization/performance; more careful interpolation between Paolo grid and the MPAS grid), but this seems adequate for getting up and running for ISMIP7.

@matthewhoffman matthewhoffman marked this pull request as ready for review May 19, 2026 18:56
@matthewhoffman matthewhoffman requested a review from xylar May 19, 2026 18:57
@matthewhoffman
Copy link
Copy Markdown
Member Author

@xylar , I think you are in the best position to review this, but I'm cognizant of review burden. I think a cursory look would be fine. Alternatively, feel free to reassign to @trhille .

@matthewhoffman
Copy link
Copy Markdown
Member Author

Testing

Result on perlmutter from testing directory /pscratch/sd/h/hoffman2/test-paolo-melt-calibration:

$ python MPAS-Tools/landice/mesh_tools_li/tune_ismip6_melt_deltat.py --obs-file=/global/cfs/cdirs/fanssie/standard_datasets/AIS_datasets/Paolo_etal_2023_iceShelfMelt/Paolo_etal_2023_iceShelfMelt.nc --geometry-file relaxed_10yrs_4km_with_cavities.20241130.nc --region-file AIS_4to20km_r01_20220907.regionMask_ismip6.nc --tf-file AIS_4to20km_r01_20220907_obs_TF_1995-2017_8km_x_60m.nc --start-year=2008 --end-year=2017 --dTs -1,1,0.25
** Gathering information.  (Invoke with --help for more details. All arguments are optional)
Region ISMIP6 Basin A-Ap: min/max melt rate in mapped obs = -8.2 / 15.5 m/yr
Region ISMIP6 Basin Ap-B: min/max melt rate in mapped obs = -7.4 / 62.1 m/yr
Region ISMIP6 Basin B-C: min/max melt rate in mapped obs = -10.6 / 105.6 m/yr
Region ISMIP6 Basin C-Cp: min/max melt rate in mapped obs = -20.6 / 32.8 m/yr
Region ISMIP6 Basin Cp-D: min/max melt rate in mapped obs = -18.2 / 65.9 m/yr
Region ISMIP6 Basin D-Dp: min/max melt rate in mapped obs = -37.1 / 48.2 m/yr
Region ISMIP6 Basin Dp-E: min/max melt rate in mapped obs = -9.6 / 17.7 m/yr
Region ISMIP6 Basin E-F: min/max melt rate in mapped obs = -8.5 / 13.6 m/yr
Region ISMIP6 Basin F-G: min/max melt rate in mapped obs = -10.6 / 30.5 m/yr
Region ISMIP6 Basin G-H: min/max melt rate in mapped obs = -90.5 / 254.5 m/yr
Region ISMIP6 Basin H-Hp: min/max melt rate in mapped obs = -1.2 / 10.4 m/yr
Region ISMIP6 Basin Hp-I: min/max melt rate in mapped obs = -3.0 / 20.1 m/yr
Region ISMIP6 Basin I-Ipp: min/max melt rate in mapped obs = -5.5 / 13.1 m/yr
Region ISMIP6 Basin Ipp-J: min/max melt rate in mapped obs = -5.0 / 9.8 m/yr
Region ISMIP6 Basin J-K: min/max melt rate in mapped obs = -14.0 / 18.7 m/yr
Region ISMIP6 Basin K-A: min/max melt rate in mapped obs = -16.8 / 16.8 m/yr
Observation summary:
  file: /global/cfs/cdirs/fanssie/standard_datasets/AIS_datasets/Paolo_etal_2023_iceShelfMelt/Paolo_etal_2023_iceShelfMelt.nc
  selected years: 2008-2017
  available years in file: 1992-2017
  selected time records: 40
  in-bounds model cells: 385379 / 385379
  observational density used for conversion: 917.0 kg/m^3
Considering dTs [-1.   -0.75 -0.5  -0.25  0.    0.25  0.5   0.75]
Calculating with dT = -1.0
Calculating with dT = -0.75
Calculating with dT = -0.5
Calculating with dT = -0.25
Calculating with dT = 0.0
Calculating with dT = 0.25
Calculating with dT = 0.5
Calculating with dT = 0.75
ISMIP6 Basin A-Ap: target = 24.423 Gt/yr, best dT = -0.339
ISMIP6 Basin Ap-B: target = 12.928 Gt/yr, best dT = 0.367
ISMIP6 Basin B-C: target = 23.760 Gt/yr, best dT = -0.000
ISMIP6 Basin C-Cp: target = 40.784 Gt/yr, best dT = 0.178
ISMIP6 Basin Cp-D: target = 73.893 Gt/yr, best dT = 0.443
ISMIP6 Basin D-Dp: target = 7.513 Gt/yr, best dT = -0.096
ISMIP6 Basin Dp-E: target = 9.100 Gt/yr, best dT = -0.041
ISMIP6 Basin E-F: target = 19.255 Gt/yr, best dT = -0.243
ISMIP6 Basin F-G: target = 112.425 Gt/yr, best dT = 0.400
ISMIP6 Basin G-H: target = 167.182 Gt/yr, best dT = 0.519
ISMIP6 Basin H-Hp: target = 62.063 Gt/yr, best dT = 0.156
ISMIP6 Basin Hp-I: target = 78.170 Gt/yr, best dT = -0.817
ISMIP6 Basin I-Ipp: target = 8.606 Gt/yr, best dT = -0.214
ISMIP6 Basin Ipp-J: target = 19.163 Gt/yr, best dT = 0.195
ISMIP6 Basin J-K: target = 86.996 Gt/yr, best dT = -0.108
ISMIP6 Basin K-A: target = 33.855 Gt/yr, best dT = 0.170

Resulting melt map:
image

@xylar
Copy link
Copy Markdown
Collaborator

xylar commented May 19, 2026

I will happily review tomorrow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants