From e88732c3eae3ee31a04bda1464e137651955f0e0 Mon Sep 17 00:00:00 2001 From: Robert Hallberg Date: Wed, 1 Apr 2020 08:32:30 -0400 Subject: [PATCH] (*)Do not use Hml>0 as an ice shelf melt filter Avoid using the criterion that Hml>0 as a filter of when ice shelf melt can occur. I am not aware of a good justification for this filter, and it seems to be an historical artefact. Removing it causes melting to start one time step earlier at the start of a run, giving apparently better answers. This changes the answers in cases with a thermodynamically active ice shelf, including an ISOMIP test case, but all answers in the MOM6-examples test suite are bitwise identical. --- src/ice_shelf/MOM_ice_shelf.F90 | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/ice_shelf/MOM_ice_shelf.F90 b/src/ice_shelf/MOM_ice_shelf.F90 index ab3d52c6ae..13dd8940a3 100644 --- a/src/ice_shelf/MOM_ice_shelf.F90 +++ b/src/ice_shelf/MOM_ice_shelf.F90 @@ -350,12 +350,8 @@ subroutine shelf_calc_flux(state, fluxes, Time, time_step, CS, forces) ! but it won't make a difference otherwise. fluxes%ustar_shelf(i,j)= 0.0 - ! DNG - to allow this everywhere Hml>0.0 allows for melting under grounded cells - ! propose instead to allow where Hml > [some threshold] - !### I do not know what the Hml flag adds; consider removing it. if ((iDens*state%ocean_mass(i,j) > CS%col_thick_melt_threshold) .and. & - (ISS%area_shelf_h(i,j) > 0.0) .and. & - (CS%isthermo) .and. (state%Hml(i,j) > 0.0) ) then + (ISS%area_shelf_h(i,j) > 0.0) .and. CS%isthermo ) then if (CS%threeeq) then ! Iteratively determine a self-consistent set of fluxes, with the ocean @@ -602,8 +598,7 @@ subroutine shelf_calc_flux(state, fluxes, Time, time_step, CS, forces) do j=js,je ; do i=is,ie if ((iDens*state%ocean_mass(i,j) > CS%col_thick_melt_threshold) .and. & - (ISS%area_shelf_h(i,j) > 0.0) .and. & - (CS%isthermo) .and. (state%Hml(i,j) > 0.0) ) then + (ISS%area_shelf_h(i,j) > 0.0) .and. CS%isthermo) then ! Set melt to zero above a cutoff pressure (CS%Rho0*CS%cutoff_depth*CS%g_Earth). ! This is needed for the ISOMIP test case.