Index | Rundeck: P1SoM40 | Created: Fri May 10 03:30:18 EDT 2024 |
iceocean_fluxes | Module: SEAICE | File: SEAICE.f |
Author : Gavin Schmidt
Version:
Usage:
At the ice-ocean interface the following equations hold: Tb = -mu Sb (1) -lam_i(Ti,Si)(Ti-Tb)/dh + rho_m shw g_T (Tb-Tm) = -m Lh(Tib,Sib) + m shw (Tib-Tb)(2) rho_m g_S (Sb-Sm) = m (Sib-Sb ) (3) with Sib=Si, Tib=Ti m>0, or Sib = fsss Sb, Tib=Tb m<0 (4) This routine iteratively solves for m, Tb, Sb and Sib, Tib using Newton's method. The form of the latent heat and conductivity can optionally include salinity effects. The actual fluxes (positive down) are then: mflux = m ; sflux = 1d-3 m Sib (kg/m^2/s) hflux = lam_i(Ti,Si) (Ti-Tb)/dh -m Lh(Tib,Sib)+m shw Tib (J/m^2/s) Formulations of salinty effects PI/SI/BP from Schmidt et al (2004)
Declaration:
subroutine iceocean_fluxes(ti, si, tm, sm, dh, ustar, coriol, dtsrc, mlsh, mflux, sflux, hflux)
- g_mole_s :
real*8, parameter
- molecular diffusion terms for heat/salt
Initial Value= 2255d0
- g_mole_t :
real*8, parameter
- molecular diffusion terms for heat/salt
Initial Value= 65.9d0
- sm :
real*8, intent(in)
- salinity in lowest ice layer and mixed layer (psu)
- si :
real*8, intent(in)
- salinity in lowest ice layer and mixed layer (psu)
- tm :
real*8, intent(in)
- temperatures in ice and mixed layer (C)
- ti :
real*8, intent(in)
- temperatures in ice and mixed layer (C)
- dh :
real*8, intent(in)
- distance from center of bottom ice layer to base of ice (m)
- coriol :
real*8, intent(in)
- Coriolis parameter (used in turbulent flux calc) (1/s)
- ustar :
real*8, intent(in)
- friction velocity at ice-ocean interface (m/s)
- dtsrc :
real*8, intent(in)
- source time step (s)
- mlsh :
real*8, intent(in)
- mixed layer specific heat capactity (J/m^2 C) (UNUSED)
- hflux :
real*8, intent(out)
- mass, salt and heat fluxes at base of ice
- sflux :
real*8, intent(out)
- mass, salt and heat fluxes at base of ice
- mflux :
real*8, intent(out)
- mass, salt and heat fluxes at base of ice
- g_s :
real*8
- turbulent exchange velocities (m/s)
- g_t :
real*8
- turbulent exchange velocities (m/s)
- g_turb :
real*8
- turbulent diffusion term
- sb0 :
real*8
- final and initial estimate for salinity at interface (psu)
- sb :
real*8
- final and initial estimate for salinity at interface (psu)
- dsbdsb :
real*8
- differential of Sb with respect to initial Sb0
- m :
real*8
- melt rate (negative implies freezing) (kg/m^2/s)
- tb :
real*8
- temperature at interface (C)
- sib :
real*8
- actual temperature/salinity in melting/freezing ice (psu)
- tib :
- actual temperature/salinity in melting/freezing ice (psu)
- niter :
integer, parameter
- number of iterations
Initial Value= 5
- lh :
real*8
- left2 :
real*8
- df3dm :
real*8
- dmdtb :
real*8
- dmdsi :
real*8
- alamdh :
real*8
- f0 :
real*8
- df :
real*8
- rsg :
real*8
- i :
integer