Line data Source code
1 : !=======================================================================
2 : !
3 : ! First year concentration tracer for sea ice
4 : !
5 : ! see
6 : ! Armour, K. C., C. M. Bitz, L. Thompson and E. C. Hunke (2011). Controls
7 : ! on Arctic sea ice from first-year and multi-year ice survivability.
8 : ! J. Climate, 24, 23782390. doi: 10.1175/2010JCLI3823.1.
9 : !
10 : ! authors C. Bitz, University of Washington, modified from icepack_age module
11 : !
12 : ! 2012: E. Hunke adopted from CESM into CICE, changed name from ice_FY.F90
13 : !
14 : module icepack_firstyear
15 :
16 : use icepack_kinds
17 : use icepack_parameters, only: secday, c0
18 : use icepack_warnings, only: warnstr, icepack_warnings_add
19 : use icepack_warnings, only: icepack_warnings_setabort, icepack_warnings_aborted
20 :
21 : implicit none
22 :
23 : private
24 : public :: update_FYarea
25 :
26 : !=======================================================================
27 :
28 : contains
29 :
30 : !=======================================================================
31 :
32 : ! Zero ice FY tracer on fixed day of year. Zeroing FY ice tracer promotes
33 : ! ice to MY ice. Unfortunately some frazil ice may grow before the
34 : ! zeroing date and thus get promoted to MY ice too soon.
35 : ! Bummer.
36 :
37 534159 : subroutine update_FYarea (dt, &
38 : nhmask, shmask, &
39 : yday, FYarea)
40 :
41 : real (kind=dbl_kind), intent(in) :: &
42 : dt , & ! time step
43 : yday ! day of the year
44 :
45 : logical (kind=log_kind), intent(in) :: &
46 : nhmask, shmask
47 :
48 : real (kind=dbl_kind), intent(inout) :: &
49 : FYarea
50 :
51 : character(len=*),parameter :: subname='(update_FYarea)'
52 :
53 534159 : if ((yday >= 259._dbl_kind) .and. &
54 : (yday < 259._dbl_kind+dt/secday)) then
55 1256 : if (nhmask) FYarea = c0
56 : endif
57 :
58 534159 : if ((yday >= 75._dbl_kind) .and. &
59 : (yday < 75._dbl_kind+dt/secday)) then
60 1224 : if (shmask) FYarea = c0
61 : endif
62 :
63 534159 : end subroutine update_FYarea
64 :
65 : !=======================================================================
66 :
67 : end module icepack_firstyear
68 :
69 : !=======================================================================
|