Skip to content

Commit

Permalink
Remove melted excess ice and set initiation for subsidence
Browse files Browse the repository at this point in the history
Removes melted excess ice from the profile and also
set the initiation for subsidence calculations in
1989 (though this threshold should be replaced for
expanding beyond the N Slope of Alaska). Should check
melt profiles carefully as the layer structure may
be inverted.
  • Loading branch information
rfiorella committed Jun 14, 2024
1 parent e7ca7e7 commit 496931b
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion components/elm/src/biogeophys/ActiveLayerMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -189,15 +189,22 @@ subroutine alt_calc(num_soilc, filter_soilc, &
melt_profile(j) = 0.0_r8
else if (j .eq. k_frz) then
melt_profile(j) = excess_ice(c,j) + ((z2-alt(c))/(z2-z1))*excess_ice(c,j+1) ! TODO: check indices here!!
! remove melted excess ice:
excess_ice(c,j) = 0._r8
excess_ice(c,j+1) = excess_ice(c,j+1)*(1._r8 - min(1._r8,(z2-alt(c))/(z2-z1)))
else
melt_profile(j) = excess_ice(c,j)
! remove melted excess ice
excess_ice(c,j) = 0._r8
end if
! calculate subsidence at this layer:
melt_profile(j) = melt_profile(j) * dzsoi(j)
end do

! subsidence is integral of melt profile:
subsidence(c) = subsidence(c) + sum(melt_profile)
if ((year .ge. 1989) .and. (altmax_ever(c) .ge. altmax_1989(c))) then
subsidence(c) = subsidence(c) + sum(melt_profile)
end if

! limit subsidence to 0.4 m
subsidence(c) = min(0.4_r8, subsidence(c))
Expand Down

0 comments on commit 496931b

Please sign in to comment.