ice_thm_mod Module


Used by

  • module~~ice_thm_mod~~UsedByGraph module~ice_thm_mod ice_thm_mod module~stim_winton stim_winton module~stim_winton->module~ice_thm_mod

Contents


Variables

TypeVisibility AttributesNameInitial
integer, private, parameter:: rk =kind(1.d0)
real(kind=rk), public :: LI =334.e3
real(kind=rk), private :: KS =0.31
real(kind=rk), public, parameter:: DS =330.0
real(kind=rk), private, parameter:: KI =2.03
real(kind=rk), public, parameter:: DI =905.0
real(kind=rk), private, parameter:: CI =21e2
real(kind=rk), private, parameter:: SI =1.0
real(kind=rk), public, parameter:: MU_TS =0.054
real(kind=rk), public, parameter:: TFI =-MU_TS*SI
real(kind=rk), private, parameter:: CW =4.2e3
real(kind=rk), public, parameter:: DW =1030.0
real(kind=rk), private :: ALB_SNO =0.85
real(kind=rk), private :: ALB_ICE =0.5826
real(kind=rk), private :: PEN_ICE =0.3
real(kind=rk), private :: OPT_DEP_ICE =0.67
real(kind=rk), private :: T_RANGE_MELT =1.0
real(kind=rk), private :: H_LO_LIM =0.0
logical, private :: SLAB_ICE =.false.
real(kind=rk), private, parameter:: CRIT_THICKNESS =1.00
real(kind=rk), private, parameter:: T_RANGE =10.0
real(kind=rk), private, parameter:: MIN_ICE_ALB =0.55
real(kind=rk), private, parameter:: MAX_ICE_ALB =0.80
real(kind=rk), private, parameter:: ALB_OCEAN =0.10
logical, private :: CM2_BUGS =.false.

Functions

public function e_to_melt(hs, h1, t1, h2, t2)

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in), optional :: hs
real(kind=rk), intent(in), optional :: h1
real(kind=rk), intent(in), optional :: t1
real(kind=rk), intent(in), optional :: h2
real(kind=rk), intent(in), optional :: t2

Return Value real(kind=rk)


Subroutines

public subroutine ice_thm_param(alb_sno_in, alb_ice_in, pen_ice_in, opt_dep_ice_in, slab_ice_in, t_range_melt_in, cm2_bugs_in, ks_in, h_lo_lim_in)

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in) :: alb_sno_in
real(kind=rk), intent(in) :: alb_ice_in
real(kind=rk), intent(in) :: pen_ice_in
real(kind=rk), intent(in) :: opt_dep_ice_in
logical, intent(in) :: slab_ice_in
real(kind=rk), intent(in) :: t_range_melt_in
logical, intent(in) :: cm2_bugs_in
real(kind=rk), intent(in) :: ks_in
real(kind=rk), intent(in) :: h_lo_lim_in

public subroutine ice_optics(alb, pen, trn, hs, hi, ts, tfw)

check for ice albdeos out of range (0 to 1)

Read more…

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(out) :: alb
real(kind=rk), intent(out) :: pen
real(kind=rk), intent(out) :: trn
real(kind=rk), intent(in) :: hs
real(kind=rk), intent(in) :: hi
real(kind=rk), intent(in) :: ts
real(kind=rk), intent(in) :: tfw

public subroutine ice3lay_temp(hs, hi, t1, t2, ts, A, B, I, tfw, fb, dt, tmelt, bmelt)

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in) :: hs
real(kind=rk), intent(in) :: hi
real(kind=rk), intent(inout) :: t1
real(kind=rk), intent(inout) :: t2
real(kind=rk), intent(out) :: ts
real(kind=rk), intent(in) :: A
real(kind=rk), intent(in) :: B
real(kind=rk), intent(in) :: I
real(kind=rk), intent(in) :: tfw
real(kind=rk), intent(in) :: fb
real(kind=rk), intent(in) :: dt
real(kind=rk), intent(inout) :: tmelt
real(kind=rk), intent(inout) :: bmelt

private subroutine thm_checkout(ts, hs, hi, t1, t2, bmelt, tmelt)

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in) :: ts
real(kind=rk), intent(in) :: hs
real(kind=rk), intent(in) :: hi
real(kind=rk), intent(in) :: t1
real(kind=rk), intent(in) :: t2
real(kind=rk), intent(in) :: bmelt
real(kind=rk), intent(in) :: tmelt

private subroutine add_to_top(h, t, h1, t1)

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in) :: h
real(kind=rk), intent(in) :: t
real(kind=rk), intent(inout) :: h1
real(kind=rk), intent(inout) :: t1

private subroutine add_to_bot(h, t, h2, t2)

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(in) :: h
real(kind=rk), intent(in) :: t
real(kind=rk), intent(inout) :: h2
real(kind=rk), intent(inout) :: t2

private subroutine even_up(h1, t1, h2, t2)

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(inout) :: h1
real(kind=rk), intent(inout) :: t1
real(kind=rk), intent(inout) :: h2
real(kind=rk), intent(inout) :: t2

public subroutine ice3lay_resize(hs, hi, t1, t2, snow, frazil, evap, tmelt, bmelt, tfw, heat_to_ocn, h2o_to_ocn, h2o_from_ocn, snow_to_ice, bablt)

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(inout) :: hs
real(kind=rk), intent(inout) :: hi
real(kind=rk), intent(inout) :: t1
real(kind=rk), intent(inout) :: t2
real(kind=rk), intent(in) :: snow
real(kind=rk), intent(in) :: frazil
real(kind=rk), intent(in) :: evap
real(kind=rk), intent(in) :: tmelt
real(kind=rk), intent(in) :: bmelt
real(kind=rk), intent(in) :: tfw
real(kind=rk), intent(out) :: heat_to_ocn
real(kind=rk), intent(out) :: h2o_to_ocn
real(kind=rk), intent(out) :: h2o_from_ocn
real(kind=rk), intent(out) :: snow_to_ice
real(kind=rk), intent(out), optional :: bablt

public subroutine thm_pack(cn, hs, hi, t1, t2)

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(inout), dimension(:,:,:):: cn
real(kind=rk), intent(inout), dimension(:,:,:):: hs
real(kind=rk), intent(inout), dimension(:,:,:):: hi
real(kind=rk), intent(inout), dimension(:,:,:):: t1
real(kind=rk), intent(inout), dimension(:,:,:):: t2

public subroutine thm_unpack(cn, hs, hi, t1, t2)

Arguments

Type IntentOptional AttributesName
real(kind=rk), intent(inout), dimension(:,:,:):: cn
real(kind=rk), intent(inout), dimension(:,:,:):: hs
real(kind=rk), intent(inout), dimension(:,:,:):: hi
real(kind=rk), intent(inout), dimension(:,:,:):: t1
real(kind=rk), intent(inout), dimension(:,:,:):: t2