499 integer (kind=int_kind) :: &
506 integer (kind=int_kind),
dimension(1:(ihi-ilo+1)*(jhi-jlo+1)) :: &
509 real (kind=dbl_kind) :: &
510 slope, ti, sum, hbar &
514 real (kind=dbl_kind),
parameter :: &
515 hsno_init = 0.20_dbl_kind
517 if (trim(ice_ic) ==
'none')
then 561 ainit(ni) = max(
c0i, (
c2i*hbar*hinit(ni) - hinit(ni)**2))
562 sum = sum + ainit(ni)
565 ainit(ni) = ainit(ni) / (sum +
puny/
ncat)
573 if ((
sst(i,j) <=
tf(i,j)+
p2) .and. &
592 aicen(i,j,ni) = ainit(ni)
593 vicen(i,j,ni) = hinit(ni) * ainit(ni)
608 slope =
tf(i,j) -
tsfcn(i,j,ni)
610 + slope*(real(k,kind=dbl_kind)-
p5) &
611 /real(
nilyr,kind=dbl_kind)
real(kind=dbl_kind), dimension(:,:), allocatable, save tf
integer(kind=int_kind), parameter nilyr
real(kind=dbl_kind), dimension(:,:,:), allocatable, target, save esnon
real(kind=dbl_kind) rad_to_deg
real(kind=dbl_kind), parameter c0i
real(kind=dbl_kind), parameter c3i
real(kind=dbl_kind), parameter rhos
real(kind=dbl_kind), parameter lfresh
real(kind=dbl_kind), dimension(:,:), allocatable ulat
real(kind=dbl_kind), dimension(:,:), allocatable, save sst
real(kind=dbl_kind), parameter cp_ice
real(kind=dbl_kind), dimension(nilyr+1) tmlt
real(kind=dbl_kind), parameter p5
real(kind=dbl_kind), parameter puny
real(kind=dbl_kind), parameter tffresh
real(kind=dbl_kind), parameter p2
real(kind=dbl_kind), dimension(:,:,:), allocatable, target, save tsfcn
real(kind=dbl_kind), parameter tsmelt
real(kind=dbl_kind), dimension(:,:,:), allocatable, target, save vicen
real(kind=dbl_kind), dimension(:,:), allocatable, target, save aice
real(kind=dbl_kind), dimension(:,:,:), allocatable, target, save eicen
integer(kind=int_kind), parameter ncat
real(kind=dbl_kind), parameter c2i
real(kind=dbl_kind), dimension(:,:,:), allocatable, target, save aicen
real(kind=dbl_kind), dimension(0:ncat) hin_max
real(kind=dbl_kind), parameter c1i
real(kind=dbl_kind), dimension(:,:), allocatable, target, save aice_init
subroutine bound_aggregate
real(kind=dbl_kind), parameter rhoi
integer(kind=int_kind), parameter ntilay
real(kind=dbl_kind), dimension(:,:), allocatable, save tair
integer(kind=int_kind), dimension(ncat) ilyr1
logical(kind=log_kind), dimension(:,:), allocatable tmask
real(kind=dbl_kind), dimension(:,:,:), allocatable, target, save vsnon
real(kind=dbl_kind), parameter cp_ocn