next up previous contents
Next: 4.19 Fortran: Module Interface Up: 4 Module Descriptions Previous: 4.17 Fortran: Module Interface   Contents

Subsections

4.18 Fortran: Module Interface ice_mechred - computes mech redistribution and strength for ITD (Source File: ice_mechred.F)

Ice thickness distribution model with multi-layer thermodynamics. Routines to compute mechanical redistribution and strength.

See Bitz, C.M., and W.H. Lipscomb, 1999: An energy-conserving thermodynamic model of sea ice, J. Geophys. Res., 104, 15,669-15,677.

See Bitz, C.M., M.M. Holland, A.J. Weaver, M. Eby, 2001: Simulating the ice-thickness distribution in a climate model, J. Geophys. Res., 106, 2441-2464.


REVISION HISTORY:

   author: C. M. Bitz
INTERFACE:
       module ice_mechred
USES:
       use ice_model_size
       use ice_constants
       use ice_state
       use ice_itd
       use ice_dyn_evp

4.18.1 init_mechred - initialize constants for ridging


INTERFACE:

       subroutine init_mechred
DESCRIPTION:

Initialize constants for ridging


REVISION HISTORY:

   author: C.M.Bitz, UW
USES:
INPUT/OUTPUT PARAMETERS:


4.18.2 mechanical_redistr - driver for ridging


INTERFACE:

       subroutine mechanical_redistr
DESCRIPTION:

This routine works with ncat=1
In fact, it will provide a source of open water from shear deformation. See Stern et al, 1995 for information about how and why this is done

Keeps track of heat and fresh water flx to ocn
if snow on ice that ridges is thrown into the ocean


REVISION HISTORY:

   
   author: C.M.Bitz, UW
USES:
       use ice_domain 
       use ice_flux
       use ice_grid
       use ice_timers
       use ice_calendar, only: dt
INPUT/OUTPUT PARAMETERS:


4.18.3 ridge - ridge ice due to convergence or shear deformation


INTERFACE:

       subroutine ridge( dt1, closng, epsi, delta_local, Tf1, 
      $                  Fhnet1, Fresh1, Gamm, H2Gamm)
DESCRIPTION:

Ridge ice due to convergence or shear deformation
note the timestep is dt1 for ridging among the cats
however will subcycle with timestep dtsub if a cat
would run out of ice if the timestep were greater than dtsub

Throw snow on ice that ridges into ocean if snow_into_ocn=.true.


REVISION HISTORY:

   author: C.M.Bitz, UW
USES:
       use shr_sys_mod, only : shr_sys_abort
INPUT/OUTPUT PARAMETERS:
       real (kind=dbl_kind), intent(in) ::
      &   dt1
      &,  delta_local         ! Delta from dynamics routine 
      &,  Tf1                 ! ocean freezing temperature
 
       real (kind=dbl_kind), intent(out) ::
      &   Fhnet1              ! heat given to ocean from snow             (N/m)
      &,  Fresh1              ! water given to ocean from snow              (m)
      &,  H2Gamm  (ncat,ncat) ! H*volume frac from cat i that goes into j
 
       real (kind=dbl_kind), intent(inout) ::
      &   Gamm    (ncat,ncat) ! area frac from cat i that goes into j
      &,  epsi                ! actual divergence computed from transport (1/s)
      &,  closng              ! closing from Flato & Hibler Eq. 9         (1/s)

4.18.4 ridging_mode - compute W and Wa factors


INTERFACE:

       subroutine ridging_mode( W, Wa, Gamm )
DESCRIPTION:

Compute W and Wa, factors for ridging mode and participation function


REVISION HISTORY:

   author: C.M.Bitz, UW
USES:
INPUT/OUTPUT PARAMETERS:
       real (kind=dbl_kind), intent(in) ::
      &  Gamm    (ncat,ncat) ! area frac from cat i that goes into j
 
       real (kind=dbl_kind), intent(out) ::
      &   W       (0:ncat)   ! W factor, geometric comp. of ridging mode 
      &,  Wa      (0:ncat)   ! part of W from participation func.

4.18.5 ridge_matrices - compute Gamma factors


INTERFACE:

       subroutine ridge_matrices( hin, Hmean, Gamm, HGamm, H2Gamm )
DESCRIPTION:

Compute Gamm,HGamm,H2Gamm for ridge and strength for true thicknesses


REVISION HISTORY:

   author: C.M.Bitz, UW
USES:
INPUT/OUTPUT PARAMETERS:
       real (kind=dbl_kind), intent(out) ::
      &   hin      (ncat)      ! ice thickness                           (m)
      &,  Hmean   (ncat)       ! mean thickness of ridg ice from cat nc  (m)
      &,  Gamm    (ncat,ncat)  ! area frac from cat i that goes into j
      &,  HGamm   (ncat,ncat)  ! volume frac from cat i that goes into j
      &,  H2Gamm  (ncat,ncat)  ! H*volume frac from cat i that goes into j
        ! HGamm is used in ridge and H2Gamm is used in roth_strength

4.18.6 comp_matrices - compute Gamm functions


INTERFACE:

       subroutine comp_matrices( rowflg, hin, Hmean,
      $                           Gamm, HGamm, H2Gamm )
DESCRIPTION:

Compute Gamm, HGamm, H2Gamm
HGamm is used in ridge and H2Gamm is used in roth-strength
Gamm(nc,k) distributes ice that participates in ridging from cat nc into a distrib. of cats k

n1 is the smallest k with nonzero fract
n2 is the largest k with nonzero fract

ice that partic. has thickness hin(nc) and it ridges up to linear distrib. between 2*hin(nc) and 2*sqrt(cK*hin(nc))


REVISION HISTORY:

   author: C.M.Bitz, UW
USES:
INPUT/OUTPUT PARAMETERS:
       logical (kind=log_kind), intent(in) ::
      &   rowflg(ncat)     ! true if cat has nonzero fractional area
       real (kind=dbl_kind), intent(in) ::
      &   hin      (ncat)      ! ice thickness                           (m)
 
       real (kind=dbl_kind), intent(out) ::
      &   Hmean   (ncat)      ! mean thickness of ridg ice from cat nc  (m)
      &,  Gamm    (ncat,ncat) ! area frac from cat i that goes into j
      &,  HGamm   (ncat,ncat) ! volume frac from cat i that goes into j
      &,  H2Gamm  (ncat,ncat) ! H*volume frac from cat i that goes into j

4.18.7 real function roth_strength - Rothrock ice strength


INTERFACE:

       real function roth_strength( Gamm ,H2Gamm )
DESCRIPTION:

Compute the ice strength based on Rothrock, 1975 and also see FH95
does not make sense to do this unless the ice that participates in
ridging is well resolved - must have about 5 categories, 10 would be better


REVISION HISTORY:

   author: C.M.Bitz, UW
USES:
INPUT/OUTPUT PARAMETERS:
       real (kind=dbl_kind), intent(in) ::
      &   Gamm    (ncat,ncat) ! area frac from cat i that goes into j
      &,  H2Gamm  (ncat,ncat) ! H*volume frac from cat i that goes into j


next up previous contents
Next: 4.19 Fortran: Module Interface Up: 4 Module Descriptions Previous: 4.17 Fortran: Module Interface   Contents
csm@ucar.edu