-
Notifications
You must be signed in to change notification settings - Fork 97
/
Copy pathauscom_ice_parameters.F90
107 lines (99 loc) · 4.81 KB
/
auscom_ice_parameters.F90
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
module auscom_ice_parameters_mod
! Set parameters for ice formation/melting
implicit none
integer :: il_out
integer :: dt_cpl
logical :: pop_icediag = .true.
logical :: do_ice = .true. !determine if ice formation should be calculated!
logical :: do_ice_once = .true.
!if .t. call ice_formation only once per coupling interval
! .f. call ice_formation every time step! (21/07/2008)
logical :: fixmeltT = .true.
logical :: limit_srfstress = .false.
!.t. in case surface stress from ice is too big, upsetting the model!
!should not be an issue after ice-ocn stress error fixed (20090311)
logical :: use_ioaice = .true.
!use aice from cice to determine if ice exists
real :: aice_cutoff = .15
!if ioaice >= aice_cutoff then ice exists
real :: tlthk0 = 10.0 !top layer thickness (m) (in 'IC', akward, 20100423)
integer :: kmxice = 1 !max layer that allows for ice formation
real :: Tmelt = -1.0 !ice melting point (C)
real :: Mstress = 2.0 !maximum surface stress allowed into ocn.
!(only applys when limit_srfstress = .t.)
real :: icemlt_factor = 1.0 !potential ice melting reduction factor
!real :: frazil_factor = 0.5 !ocn/ice 'time-stepping' associated factor
! frazil_factor is associated with the difference between ocean model
! and ice model time-stepping: for mom4, two-level frog-leap is used
! and frazil heat flux is calculated and accumulated with
! frazil_factor = 1, which is supposed to be used for a ice model with
! the same two-level time-stepping scheme such as SIS.
! but cice uses forward time-stepping, which means we need 'correct'
! the frazil energy by multiplying 0.5 before sending to cice.
real :: frazil_factor = 1.0 !CH: mom4 and cice use same 2-level time-steeping!!!
real :: sign_stflx = 1.0 !if saltflux from cice needs change sign.
logical :: iceform_adj_salt = .false.
! option for adjusting salinity when frazil is calculated in mom4 using POP
! approach (see comment in ice_formation_new routine)
!20110802: low background_diffusivity in the equatorial zone (defined by lat_low_bgdiff)
!real :: lat_low_bgdiff = 10 !degrees S/N (beyond this zone set to the 'background_diffusivity')
!real :: bg_diff_eq = 1.0e-6 !lowest bg_diff at equator
!
!Red Sea (2 boxes)
integer :: irs1 = 314
integer :: ire1 = 324
integer :: jrs1 = 169
integer :: jre1 = 196
integer :: irs2 = 325
integer :: ire2 = 331
integer :: jrs2 = 169
integer :: jre2 = 180
!Gulf Bay (1 box)
integer :: igs = 328
integer :: ige = 345
integer :: jgs = 189
integer :: jge = 198
!maximum depth/level
integer :: ksmax = 5 !deepest level of the Red Sea/Gulf Bay
!
integer :: sfix_hours = 12 !do s mixing every sfix_hours.
!
logical :: redsea_gulfbay_sfix = .false.
logical :: do_sfix_now = .false.
logical :: do_sfix_at_start = .false.
logical :: chk_i2o_fields = .false.
logical :: chk_o2i_fields = .false.
! How often to dump the coupling fields if either of the above options are .true.
! The unit of time is seconds. By default fields are dumped every timestep.
integer :: chk_fields_period = 1
! The time in seconds after which the field dumps should begin.
integer :: chk_fields_start_time = 0
namelist /auscom_ice_nml/ dt_cpl, &
tlthk0, &
pop_icediag, &
do_ice_once, &
kmxice, &
fixmeltT, &
Tmelt, &
limit_srfstress, &
Mstress, &
use_ioaice, &
aice_cutoff, &
icemlt_factor, &
frazil_factor, &
iceform_adj_salt, &
sign_stflx, &
redsea_gulfbay_sfix, &
irs1, ire1, jrs1, jre1, &
irs2, ire2, jrs2, jre2, &
igs, ige, jgs, jge, &
ksmax, &
sfix_hours, &
do_sfix_at_start, &
chk_i2o_fields, &
chk_o2i_fields, &
chk_fields_period, &
chk_fields_start_time
integer :: int_sec
!===========================================================================
end module auscom_ice_parameters_mod