Skip to content

Commit 42ff199

Browse files
authored
Merge pull request #647 from gustavo-marques/change_enthalpy_ice_runoff
Use ice heat capacity and fixed temperature for ice runoff enthalpy ### Description of changes Previously, ice runoff enthalpy was computed using ocean temperature and seawater heat capacity. This change: * Assumes a bulk ice temperature of −10 C * Uses shr_const_cpice for ice heat capacity Physically, this is a better approach than using ocean temperature relative to freezing for `hrofi` and `rofi_glc`, since they represent solid land-ice/iceberg freshwater input rather than liquid runoff. ### Specific notes Contributors other than yourself, if any: n/a CMEPS Issues Fixed (include github issue #): n/a Are changes expected to change answers? (specify if bfb, different at roundoff, more substantial) Yes, this will change the answers for all the tests using MOM6 (B, G, and C compsets) Any User Interface Changes (namelist or namelist defaults changes)? No. ### Testing performed These changes have already been applied to the CESM3 runs, but we have not run additional tests.
2 parents 56d5812 + 02d9d79 commit 42ff199

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

mediator/med_phases_prep_ocn_mod.F90

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@ subroutine med_phases_prep_ocn_accum(gcomp, rc)
8686
use ESMF , only : ESMF_GridComp, ESMF_FieldBundleGet
8787
use ESMF , only : ESMF_LogWrite, ESMF_LOGMSG_INFO, ESMF_SUCCESS
8888
use med_constants_mod , only : shr_const_cpsw, shr_const_tkfrz, shr_const_pi
89+
use med_constants_mod , only : shr_const_cpice
8990
use med_phases_prep_atm_mod , only : med_phases_prep_atm_enthalpy_correction
9091

9192
! input/output variables
@@ -230,9 +231,10 @@ subroutine med_phases_prep_ocn_accum(gcomp, rc)
230231
hevap(n) = (tocn(n) - shr_const_tkfrz) * min(evap(n), 0._r8) * shr_const_cpsw
231232
hcond(n) = max((tocn(n) - shr_const_tkfrz), 0._r8) * max(evap(n), 0._r8) * shr_const_cpsw
232233
hrofl(n) = max((tocn(n) - shr_const_tkfrz), 0._r8) * rofl(n) * shr_const_cpsw
233-
hrofi(n) = min((tocn(n) - shr_const_tkfrz), 0._r8) * rofi(n) * shr_const_cpsw
234234
hrofl_glc(n) = max((tocn(n) - shr_const_tkfrz), 0._r8) * rofl_glc(n) * shr_const_cpsw
235-
hrofi_glc(n) = min((tocn(n) - shr_const_tkfrz), 0._r8) * rofi_glc(n) * shr_const_cpsw
235+
! −10 C is a reasonable bulk temperature assumption for iceberg/land-ice runoff
236+
hrofi(n) = -10._r8 * rofi(n) * shr_const_cpice
237+
hrofi_glc(n) = -10._r8 * rofi_glc(n) * shr_const_cpice
236238
end do
237239

238240
! Determine enthalpy correction factor that will be added to the sensible heat flux sent to the atm

0 commit comments

Comments
 (0)