- Timestamp:
- 2013-11-04T12:51:55+01:00 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/LIM_SRC_3/ice.F90
r3625 r4147 158 158 !! * Share Module variables 159 159 !!-------------------------------------------------------------------------- 160 INTEGER , PUBLIC :: nstart !: iteration number of the begining of the run161 INTEGER , PUBLIC :: nlast !: iteration number of the end of the run162 INTEGER , PUBLIC :: nitrun !: number of iteration163 INTEGER , PUBLIC :: numit !: iteration number164 REAL(wp), PUBLIC :: rdt_ice !: ice time step165 REAL(wp), PUBLIC :: r1_rdtice !: = 1. / rdt_ice166 167 ! 168 INTEGER , PUBLIC :: nbiter = 1!: number of sub-time steps for relaxation169 INTEGER , PUBLIC :: nbitdr = 250!: maximum number of iterations for relaxation170 INTEGER , PUBLIC :: nevp = 400!: number of iterations for subcycling160 INTEGER , PUBLIC :: nstart !: iteration number of the begining of the run 161 INTEGER , PUBLIC :: nlast !: iteration number of the end of the run 162 INTEGER , PUBLIC :: nitrun !: number of iteration 163 INTEGER , PUBLIC :: numit !: iteration number 164 REAL(wp), PUBLIC :: rdt_ice !: ice time step 165 REAL(wp), PUBLIC :: r1_rdtice !: = 1. / rdt_ice 166 167 ! !!** ice-dynamic namelist (namicedyn) ** 168 INTEGER , PUBLIC :: nbiter !: number of sub-time steps for relaxation 169 INTEGER , PUBLIC :: nbitdr !: maximum number of iterations for relaxation 170 INTEGER , PUBLIC :: nevp !: number of iterations for subcycling 171 171 INTEGER , PUBLIC :: nlay_i = 5 !: number of layers in the ice 172 172 173 ! 174 REAL(wp), PUBLIC :: epsd = 1.0e-20_wp!: tolerance parameter for dynamic175 REAL(wp), PUBLIC :: alpha = 0.5_wp!: coefficient for semi-implicit coriolis176 REAL(wp), PUBLIC :: dm = 0.6e+03_wp!: diffusion constant for dynamics177 REAL(wp), PUBLIC :: om = 0.5_wp!: relaxation constant178 REAL(wp), PUBLIC :: resl = 5.0e-05_wp!: maximum value for the residual of relaxation179 REAL(wp), PUBLIC :: cw = 5.0e-03_wp!: drag coefficient for oceanic stress180 REAL(wp), PUBLIC :: angvg = 0._wp!: turning angle for oceanic stress181 REAL(wp), PUBLIC :: pstar = 1.0e+04_wp!: determines ice strength (N/M), Hibler JPO79182 REAL(wp), PUBLIC :: c_rhg = 20._wp!: determines changes in ice strength183 REAL(wp), PUBLIC :: etamn = 0.0e+07_wp!: minimun value for viscosity : has to be 0184 REAL(wp), PUBLIC :: creepl = 2.0e-08_wp!: creep limit : has to be under 1.0e-9185 REAL(wp), PUBLIC :: ecc = 2._wp!: eccentricity of the elliptical yield curve186 REAL(wp), PUBLIC :: ahi0 = 350._wp!: sea-ice hor. eddy diffusivity coeff. (m2/s)187 REAL(wp), PUBLIC :: telast = 2880._wp!: timescale for elastic waves (s) !SB188 REAL(wp), PUBLIC :: alphaevp = 1._wp!: coeficient of the internal stresses !SB173 ! !!** ice-dynamic namelist (namicedyn) ** 174 REAL(wp), PUBLIC :: epsd !: tolerance parameter for dynamic 175 REAL(wp), PUBLIC :: alpha !: coefficient for semi-implicit coriolis 176 REAL(wp), PUBLIC :: dm !: diffusion constant for dynamics 177 REAL(wp), PUBLIC :: om !: relaxation constant 178 REAL(wp), PUBLIC :: resl !: maximum value for the residual of relaxation 179 REAL(wp), PUBLIC :: cw !: drag coefficient for oceanic stress 180 REAL(wp), PUBLIC :: angvg !: turning angle for oceanic stress 181 REAL(wp), PUBLIC :: pstar !: determines ice strength (N/M), Hibler JPO79 182 REAL(wp), PUBLIC :: c_rhg !: determines changes in ice strength 183 REAL(wp), PUBLIC :: etamn !: minimun value for viscosity : has to be 0 184 REAL(wp), PUBLIC :: creepl !: creep limit : has to be under 1.0e-9 185 REAL(wp), PUBLIC :: ecc !: eccentricity of the elliptical yield curve 186 REAL(wp), PUBLIC :: ahi0 !: sea-ice hor. eddy diffusivity coeff. (m2/s) 187 REAL(wp), PUBLIC :: telast !: timescale for elastic waves (s) !SB 188 REAL(wp), PUBLIC :: alphaevp !: coeficient of the internal stresses !SB 189 189 REAL(wp), PUBLIC :: unit_fac = 1.e+09_wp !: conversion factor for ice / snow enthalpy 190 190 191 ! 192 REAL(wp), PUBLIC :: s_i_max = 20.0_wp!: maximum ice salinity [PSU]193 REAL(wp), PUBLIC :: s_i_min = 0.1_wp!: minimum ice salinity [PSU]194 REAL(wp), PUBLIC :: s_i_0 = 3.5_wp!: 1st sal. value for the computation of sal .prof. [PSU]195 REAL(wp), PUBLIC :: s_i_1 = 4.5_wp!: 2nd sal. value for the computation of sal .prof. [PSU]196 REAL(wp), PUBLIC :: sal_G = 5.0_wp!: restoring salinity for gravity drainage [PSU]197 REAL(wp), PUBLIC :: sal_F = 2.5_wp!: restoring salinity for flushing [PSU]198 REAL(wp), PUBLIC :: time_G = 1.728e+06_wp!: restoring time constant for gravity drainage (= 20 days) [s]199 REAL(wp), PUBLIC :: time_F = 8.640e+05_wp!: restoring time constant for gravity drainage (= 10 days) [s]200 REAL(wp), PUBLIC :: bulk_sal = 4.0_wp!: bulk salinity (ppt) in case of constant salinity201 202 ! 203 INTEGER , PUBLIC :: num_sal = 1!: salinity configuration used in the model204 ! 205 ! 206 ! 191 ! !!** ice-salinity namelist (namicesal) ** 192 REAL(wp), PUBLIC :: s_i_max !: maximum ice salinity [PSU] 193 REAL(wp), PUBLIC :: s_i_min !: minimum ice salinity [PSU] 194 REAL(wp), PUBLIC :: s_i_0 !: 1st sal. value for the computation of sal .prof. [PSU] 195 REAL(wp), PUBLIC :: s_i_1 !: 2nd sal. value for the computation of sal .prof. [PSU] 196 REAL(wp), PUBLIC :: sal_G !: restoring salinity for gravity drainage [PSU] 197 REAL(wp), PUBLIC :: sal_F !: restoring salinity for flushing [PSU] 198 REAL(wp), PUBLIC :: time_G !: restoring time constant for gravity drainage (= 20 days) [s] 199 REAL(wp), PUBLIC :: time_F !: restoring time constant for gravity drainage (= 10 days) [s] 200 REAL(wp), PUBLIC :: bulk_sal !: bulk salinity (ppt) in case of constant salinity 201 202 ! !!** ice-salinity namelist (namicesal) ** 203 INTEGER , PUBLIC :: num_sal !: salinity configuration used in the model 204 ! ! 1 - constant salinity in both space and time 205 ! ! 2 - prognostic salinity (s(z,t)) 206 ! ! 3 - salinity profile, constant in time 207 207 INTEGER , PUBLIC :: sal_prof = 1 !: salinity profile or not 208 INTEGER , PUBLIC :: thcon_i_swi = 1!: thermal conductivity: =1 Untersteiner (1964) ; =2 Pringle et al (2007)209 210 ! 211 REAL(wp), PUBLIC :: Cs = 0.25_wp!: fraction of shearing energy contributing to ridging212 REAL(wp), PUBLIC :: Cf = 17.0_wp!: ratio of ridging work to PE loss213 REAL(wp), PUBLIC :: fsnowrdg = 0.5_wp!: fractional snow loss to the ocean during ridging214 REAL(wp), PUBLIC :: fsnowrft = 0.5_wp!: fractional snow loss to the ocean during ridging215 REAL(wp), PUBLIC :: Gstar = 0.15_wp!: fractional area of young ice contributing to ridging216 REAL(wp), PUBLIC :: astar = 0.05_wp!: equivalent of G* for an exponential participation function217 REAL(wp), PUBLIC :: Hstar = 100.0_wp!: thickness that determines the maximal thickness of ridged ice218 REAL(wp), PUBLIC :: hparmeter = 0.75_wp!: threshold thickness (m) for rafting / ridging219 REAL(wp), PUBLIC :: Craft = 5.0_wp!: coefficient for smoothness of the hyperbolic tangent in rafting220 REAL(wp), PUBLIC :: ridge_por = 0.0_wp!: initial porosity of ridges (0.3 regular value)221 REAL(wp), PUBLIC :: sal_max_ridge = 15.0_wp!: maximum ridged ice salinity (ppt)222 REAL(wp), PUBLIC :: betas = 1.0_wp!: coef. for partitioning of snowfall between leads and sea ice223 REAL(wp), PUBLIC :: kappa_i = 1.0_wp!: coef. for the extinction of radiation Grenfell et al. (2006) [1/m]224 REAL(wp), PUBLIC :: nconv_i_thd = 50_wp!: maximal number of iterations for heat diffusion225 REAL(wp), PUBLIC :: maxer_i_thd = 1.0e-4_wp!: maximal tolerated error (C) for heat diffusion226 227 ! 228 INTEGER , PUBLIC :: ridge_scheme_swi = 0!: scheme used for ice ridging229 INTEGER , PUBLIC :: raftswi = 1!: rafting of ice or not230 INTEGER , PUBLIC :: partfun_swi = 1!: participation function: =0 Thorndike et al. (1975), =1 Lipscomb et al. (2007)231 INTEGER , PUBLIC :: transfun_swi = 0!: transfer function: =0 Hibler 1980, =1 Lipscomb et al. 2007232 INTEGER , PUBLIC :: brinstren_swi = 0!: use brine volume to diminish ice strength208 INTEGER , PUBLIC :: thcon_i_swi !: thermal conductivity: =1 Untersteiner (1964) ; =2 Pringle et al (2007) 209 210 ! !!** ice-mechanical redistribution namelist (namiceitdme) 211 REAL(wp), PUBLIC :: Cs !: fraction of shearing energy contributing to ridging 212 REAL(wp), PUBLIC :: Cf !: ratio of ridging work to PE loss 213 REAL(wp), PUBLIC :: fsnowrdg !: fractional snow loss to the ocean during ridging 214 REAL(wp), PUBLIC :: fsnowrft !: fractional snow loss to the ocean during ridging 215 REAL(wp), PUBLIC :: Gstar !: fractional area of young ice contributing to ridging 216 REAL(wp), PUBLIC :: astar !: equivalent of G* for an exponential participation function 217 REAL(wp), PUBLIC :: Hstar !: thickness that determines the maximal thickness of ridged ice 218 REAL(wp), PUBLIC :: hparmeter !: threshold thickness (m) for rafting / ridging 219 REAL(wp), PUBLIC :: Craft !: coefficient for smoothness of the hyperbolic tangent in rafting 220 REAL(wp), PUBLIC :: ridge_por !: initial porosity of ridges (0.3 regular value) 221 REAL(wp), PUBLIC :: sal_max_ridge !: maximum ridged ice salinity (ppt) 222 REAL(wp), PUBLIC :: betas !: coef. for partitioning of snowfall between leads and sea ice 223 REAL(wp), PUBLIC :: kappa_i !: coef. for the extinction of radiation Grenfell et al. (2006) [1/m] 224 REAL(wp), PUBLIC :: nconv_i_thd !: maximal number of iterations for heat diffusion 225 REAL(wp), PUBLIC :: maxer_i_thd !: maximal tolerated error (C) for heat diffusion 226 227 ! !!** ice-mechanical redistribution namelist (namiceitdme) 228 INTEGER , PUBLIC :: ridge_scheme_swi !: scheme used for ice ridging 229 INTEGER , PUBLIC :: raftswi !: rafting of ice or not 230 INTEGER , PUBLIC :: partfun_swi !: participation function: =0 Thorndike et al. (1975), =1 Lipscomb et al. (2007) 231 INTEGER , PUBLIC :: transfun_swi !: transfer function: =0 Hibler 1980, =1 Lipscomb et al. 2007 232 INTEGER , PUBLIC :: brinstren_swi !: use brine volume to diminish ice strength 233 233 234 234 REAL(wp), PUBLIC :: usecc2 !: = 1.0 / ( ecc * ecc ) … … 390 390 !! * Ice Run 391 391 !!-------------------------------------------------------------------------- 392 ! 393 CHARACTER(len=32) , PUBLIC :: cn_icerst_in = "restart_ice_in"!: suffix of ice restart name (input)394 CHARACTER(len=32) , PUBLIC :: cn_icerst_out = "restart_ice"!: suffix of ice restart name (output)395 LOGICAL , PUBLIC :: ln_limdyn = .TRUE.!: flag for ice dynamics (T) or not (F)396 LOGICAL , PUBLIC :: ln_nicep = .TRUE.!: flag for sea-ice points output (T) or not (F)397 REAL(wp) , PUBLIC :: hsndif = 0.e0!: computation of temp. in snow (0) or not (9999)398 REAL(wp) , PUBLIC :: hicdif = 0.e0!: computation of temp. in ice (0) or not (9999)399 REAL(wp) , PUBLIC :: cai = 1.40e-3!: atmospheric drag over sea ice400 REAL(wp) , PUBLIC :: cao = 1.00e-3!: atmospheric drag over ocean401 REAL(wp), DIMENSION(2), PUBLIC :: acrit = (/ 1.e-06 , 1.e-06 /) !: minimum fraction for leads in402 ! !: north and south hemisphere392 ! !!: ** Namelist namicerun read in iceini ** 393 CHARACTER(len=32) , PUBLIC :: cn_icerst_in !: suffix of ice restart name (input) 394 CHARACTER(len=32) , PUBLIC :: cn_icerst_out !: suffix of ice restart name (output) 395 LOGICAL , PUBLIC :: ln_limdyn !: flag for ice dynamics (T) or not (F) 396 LOGICAL , PUBLIC :: ln_nicep !: flag for sea-ice points output (T) or not (F) 397 REAL(wp) , PUBLIC :: hsndif !: computation of temp. in snow (0) or not (9999) 398 REAL(wp) , PUBLIC :: hicdif !: computation of temp. in ice (0) or not (9999) 399 REAL(wp) , PUBLIC :: cai !: atmospheric drag over sea ice 400 REAL(wp) , PUBLIC :: cao !: atmospheric drag over ocean 401 REAL(wp), DIMENSION(2), PUBLIC :: acrit !: minimum fraction for leads in north and south hemisphere 402 ! 403 403 !!-------------------------------------------------------------------------- 404 404 !! * Ice diagnostics
Note: See TracChangeset
for help on using the changeset viewer.