diff --git a/components/mpas-albany-landice/src/mode_forward/mpas_li_calving.F b/components/mpas-albany-landice/src/mode_forward/mpas_li_calving.F index 14af4d632d67..5da97b0546e7 100644 --- a/components/mpas-albany-landice/src/mode_forward/mpas_li_calving.F +++ b/components/mpas-albany-landice/src/mode_forward/mpas_li_calving.F @@ -3488,11 +3488,10 @@ subroutine li_calculate_damage(domain, err) ! damage is always larger than the Nye value for initialization of damage evolution. do iCell = 1, nCells - if ((li_mask_is_grounded_ice(cellMask(iCell))) .or. (thickness(iCell) .eq. 0.0_RKIND)) then + if ( thickness(iCell) .eq. 0.0_RKIND ) then damage(iCell) = 0.0_RKIND end if end do - ! the damage of grounded ice is kept as 0, as the strain rate calculation is only valid for ice shelf ! Options for initializing damage where ice goes afloat: if (trim(config_damage_gl_setting) == 'extrapolate') then @@ -3525,7 +3524,7 @@ subroutine li_calculate_damage(domain, err) if (li_mask_is_grounding_line(cellMask(iCell))) then do iNeighbor = 1, nEdgesOnCell(iCell) jCell = cellsOnCell(iNeighbor, iCell) - if (li_mask_is_floating_ice(cellMask(jCell))) then + if ( li_mask_is_floating_ice(cellMask(jCell)) .and. (damage(jCell) < damageNye(jCell)) ) then damage(jCell) = damageNye(jCell) end if end do @@ -3684,7 +3683,7 @@ subroutine li_finalize_damage_after_advection(domain, err) do iCell = 1, nCells - if (li_mask_is_grounded_ice(cellMask(iCell)) .or. .not. li_mask_is_ice(cellMask(iCell))) then + if (.not. li_mask_is_ice(cellMask(iCell))) then damage(iCell) = 0.0_RKIND end if end do @@ -3720,7 +3719,7 @@ subroutine li_finalize_damage_after_advection(domain, err) if (li_mask_is_grounding_line(cellMask(iCell))) then do iNeighbor = 1, nEdgesOnCell(iCell) jCell = cellsOnCell(iNeighbor, iCell) - if (li_mask_is_floating_ice(cellMask(jCell))) then + if ( li_mask_is_floating_ice(cellMask(jCell)) .and. (damage(jCell)