Back to home page

MITgcm

 
 

    


File indexing completed on 2026-05-05 05:09:04 UTC

view on githubraw file Latest commit 3f0f10fc on 2026-05-04 14:55:37 UTC
b58e51ce4e Jean*0001 C     *==========================================================*
                0002 C     | SEAICE_PARAMS.h
                0003 C     | o Basic parameter header for sea ice model.
                0004 C     *==========================================================*
809c36b928 Patr*0005 
                0006 C--   COMMON /SEAICE_PARM_L/ Logical parameters of sea ice model.
f82b316546 Jean*0007 C - dynamics:
425e8efc36 Jean*0008 C     SEAICEuseDYNAMICS :: If false, do not use dynamics;
                0009 C                          default is to use dynamics.
1c278edd09 Jean*0010 C     SEAICEuseFREEDRIFT :: If True use free drift velocity instead of EVP
fe80ae39de Mart*0011 C                           or LSR
1459e8fe5a Mart*0012 C     SEAICEuseStrImpCpl:: If true use strongly implicit coupling formulation
210ee8461e jm-c 0013 C                          for LSR solver (Hutchings et al 2004,
1459e8fe5a Mart*0014 C                          Ocean Modelling, eq.44)
2bf4ed5c39 Mart*0015 C     SEAICEuseEVP      :: If true use elastic viscous plastic solver
210ee8461e jm-c 0016 C     SEAICEuseEVPstar  :: If true use modified elastic viscous plastic
2bf4ed5c39 Mart*0017 C                          solver (EVP*) by Lemieux et al (2012)
210ee8461e jm-c 0018 C     SEAICEuseEVPrev   :: If true use "revisited" elastic viscous plastic
0a27dce68e Mart*0019 C                          solver following Bouillon et al. (2013), very similar
                0020 C                          to EVP*, but uses fewer implicit terms and drops
                0021 C                          one 1/e^2 in equations for sigma2 and sigma12
425e8efc36 Jean*0022 C     SEAICEuseEVPpickup :: Set to false in order to start EVP solver with
d558d05cf5 Dimi*0023 C                          non-EVP pickup files.  Default is true.
                0024 C                          Applied only if SEAICEuseEVP=.TRUE.
f82b316546 Jean*0025 C     SEAICEuseMultiTileSolver :: in LSR, use full domain tri-diagonal solver
c8739d4898 Mart*0026 C     SEAICEuseLSR      :: If true, use default Picard solver with Line-
                0027 C                          Successive(-over)-Relaxation, can also be true
210ee8461e jm-c 0028 C                          if LSR is used as a preconditioner for the
c8739d4898 Mart*0029 C                          non-linear JFNK solver
143d9ce879 Dami*0030 C     SEAICEuseLSRflex  :: If true, use default Picard solver with Line-
                0031 C                          Successive(-over)-Relaxation, but determine the
                0032 C                          number of non-linear iterations depends on the
                0033 C                          residual resduction, similar to the Krylov and
                0034 C                          JFNK solvers
210ee8461e jm-c 0035 C     SEAICEusePicardAsPrecon :: If true, allow SEAICEuseLSR = .TRUE. as a
c8739d4898 Mart*0036 C                          preconditioner for non-linear JFNK problem (def. = F)
1ac05d2425 Mart*0037 C     SEAICEuseKrylov   :: If true, use matrix-free Krylov solver with Picard
                0038 C                          solver instead of LSR (default: false)
1aa3c3f516 Mart*0039 C     SEAICEuseJFNK     :: If true, use Jacobi-free Newton-Krylov solver
                0040 C                          instead of LSR (default: false)
                0041 C     SEAICEuseIMEX     :: use IMplicit/EXplicit scheme with JFNK
c512e371cc drin*0042 C     SEAICEuseTEM      :: to use the truncated ellipse method (see Geiger et al.
f82b316546 Jean*0043 C                          1998) set this parameter to true, default is false
c512e371cc drin*0044 C     SEAICEuseMCS      :: to use the Mohr-Coulomb yield curve with a shear
                0045 C                          only flow rule (Ip et al 1991), set this parameter to
                0046 C                          true, default is false
                0047 C     SEAICEuseMCE      :: to use the Mohr-Coulomb yield curve with elliptical
                0048 C                          plastic potential (similarly to Hibler and Schulson
                0049 C                          2000 without the elliptical cap) set this parameter
                0050 C                          to true, default is false
                0051 C     SEAICEuseTD       :: to use the teardrop yield curve (Zhang and Rothrock,
                0052 C                          2005) set this parameter to true, default is false
                0053 C     SEAICEusePL       :: to use the parabolic lens yield curve (Zhang and
                0054 C                          Rothrock, 2005) set this parameter to true,
                0055 C                          default is false
1aa3c3f516 Mart*0056 C     SEAICEuseTilt     :: If true then include surface tilt term in dynamics
f82b316546 Jean*0057 C     SEAICE_no_slip    :: apply no slip boundary conditions to seaice velocity
5dac41bc68 Mart*0058 C     SEAICE_2ndOrderBC :: apply 2nd order no slip boundary conditions (works
                0059 C                          only with EVP, JFNK or KRYLOV solver, default=F)
f82b316546 Jean*0060 C     SEAICE_maskRHS    :: mask the RHS of the solver where there is no ice
                0061 C     SEAICE_clipVelocities :: clip velocities to +/- 40cm/s
79022779f5 Mart*0062 C     SEAICEaddSnowMass :: in computing seaiceMass, add snow contribution
b8665dacca Mart*0063 C                          default is .TRUE.
f82b316546 Jean*0064 C     useHB87stressCoupling :: use an intergral over ice and ocean surface
                0065 C                          layer to define surface stresses on ocean
                0066 C                          following Hibler and Bryan (1987, JPO)
210ee8461e jm-c 0067 C     SEAICEupdateOceanStress :: If TRUE, update ocean surface stress
                0068 C                                accounting for seaice cover (default= T)
e501eee760 Mart*0069 C     SEAICEuseBDF2     :: use 2nd-order backward difference approach
                0070 C                          for momentum equations as described in
                0071 C                          Lemieux et al. 2014, JCP
1aa3c3f516 Mart*0072 C                          so far only implemented for JFNK-solver
210ee8461e jm-c 0073 C     useHibler79IceStrength :: if true original ice strength parameterization
5fd900657f Mart*0074 C                          other use Rothrock (1975) parameterization based
                0075 C                          on energetics and an ice thickness distribution
                0076 C                          (default = .true.)
36d0480ad6 Mart*0077 C     SEAICEscaleSurfStress :: if TRUE, scale ice-ocean and ice-atmosphere
                0078 C                          stress on ice by concenration (AREA) following
b8665dacca Mart*0079 C                          Connolley et al. (2004), JPO. (default = .TRUE.)
5fd900657f Mart*0080 C     SEAICEsimpleRidging :: use Hibler(1979) ridging (default=.true.)
3bd2cd9e40 Mart*0081 C     SEAICEuseLinRemapITD :: use linear remapping (Lipscomb et al. 2001)
                0082 C                             .TRUE. by default
f82b316546 Jean*0083 C - advection:
                0084 C     SEAICEuseFluxForm :: use flux form for advection and diffusion
                0085 C                          of seaice
425e8efc36 Jean*0086 C     SEAICEadvHeff     :: turn on advection of effective thickness
09e3b53265 Mart*0087 C                          (default = .true.)
                0088 C     SEAICEadvArea     :: turn on advection of fraction area
                0089 C                          (default = .true.)
eefc792916 Mart*0090 C     SEAICEadvSnow     :: turn on advection of snow (does not work with
                0091 C                          non-default Leap-frog scheme for advection)
fdfa8e151f Dimi*0092 C     SEAICEadvSalt     :: turn on advection of salt (does not work with
                0093 C                          non-default Leap-frog scheme for advection)
e0fa1cecbf Mart*0094 C     SEAICEmultiDimAdvection:: internal flag, set to false if any sea ice
                0095 C                          variable uses a non-multi-dimensional advection
                0096 C                          scheme
2e05c0b826 Mart*0097 C     SEAICEmomAdvection:: turn on advection of momentum (default = .false.)
                0098 C     SEAICEhighOrderVorticity :: momentum advection parameters analogous to
                0099 C     SEAICEupwindVorticity    :: highOrderVorticity, upwindVorticity,
                0100 C     SEAICEuseAbsVorticity    :: useAbsVorticity, useJamartMomAdv for vector
                0101 C     SEAICEuseJamartMomAdv    :: invariant momentum in the ocean
f82b316546 Jean*0102 C - thermodynamics:
09e3b53265 Mart*0103 C     usePW79thermodynamics :: use "0-layer" thermodynamics as described in
f414077a87 Mart*0104 C                           Parkinson and Washington (1979) and Hibler (1979)
210ee8461e jm-c 0105 C     SEAICE_useMultDimSnow :: use same fixed pdf for snow as for
b8665dacca Mart*0106 C                              multi-thickness-category ice (default=.TRUE.)
f82b316546 Jean*0107 C     SEAICEuseFlooding  :: turn on scheme to convert submerged snow into ice
                0108 C     SEAICEheatConsFix  :: If true then fix ocn<->seaice advective heat flux.
b58e51ce4e Jean*0109 C     useMaykutSatVapPoly :: use Maykut Polynomial for saturation vapor pressure
                0110 C                         instead of extended temp-range exponential law; def=F.
f82b316546 Jean*0111 C     SEAICE_mcPheeStepFunc :: use step function (not linear tapering) in
fe80ae39de Mart*0112 C                           ocean-ice turbulent flux
6ec4646d60 Gael*0113 C     SEAICE_doOpenWaterGrowth :: use open water heat flux directly to grow ice
fe80ae39de Mart*0114 C                           (when false cool ocean, and grow later if needed)
6ec4646d60 Gael*0115 C     SEAICE_doOpenWaterMelt   :: use open water heat flux directly to melt ice
fe80ae39de Mart*0116 C                           (when false warm ocean, and melt later if needed)
210ee8461e jm-c 0117 C     SEAICE_growMeltByConv :: grow/melt according to convergence of turbulence
62cc8945c8 Gael*0118 C                              and conduction, rather than in two steps (default)
1c278edd09 Jean*0119 C     SEAICE_salinityTracer    :: use SItracer to exchange and trace ocean
fe80ae39de Mart*0120 C                           salt in ice
f82b316546 Jean*0121 C     SEAICE_ageTracer         :: use SItracer to trace the age of ice
f414077a87 Mart*0122 C     SEAICErestoreUnderIce :: restore surface T/S also underneath ice
                0123 C                          ( default is false )
f82b316546 Jean*0124 C - other (I/O, ...):
                0125 C     SEAICEwriteState  :: If true, write sea ice state to file;
                0126 C                          default is false.
07abca99f1 Jean*0127 C     SEAICE_dump_mdsio :: write snap-shot output   using MDSIO
                0128 C     SEAICE_mon_stdio  :: write monitor to std-outp
                0129 C     SEAICE_dump_mnc   :: write snap-shot output   using MNC
                0130 C     SEAICE_mon_mnc    :: write monitor to netcdf file
a2d714f5b7 Jean*0131       LOGICAL
1459e8fe5a Mart*0132      &     SEAICEuseDYNAMICS, SEAICEuseFREEDRIFT, SEAICEuseStrImpCpl,
0a27dce68e Mart*0133      &     SEAICEuseEVP, SEAICEuseEVPstar, SEAICEuseEVPrev,
                0134      &     SEAICEuseEVPpickup,
f82b316546 Jean*0135      &     SEAICEuseMultiTileSolver,
143d9ce879 Dami*0136      &     SEAICEuseLSR, SEAICEuseLSRflex, SEAICEuseKrylov,
1ac05d2425 Mart*0137      &     SEAICEuseJFNK, SEAICEuseIMEX, SEAICEuseBDF2,
c8739d4898 Mart*0138      &     SEAICEusePicardAsPrecon,
5fd900657f Mart*0139      &     useHibler79IceStrength, SEAICEsimpleRidging,
c512e371cc drin*0140      &     SEAICEuseLinRemapITD, SEAICEuseTD, SEAICEusePL,
3f0f10fc37 Mart*0141      &     SEAICEuseTEM, SEAICEuseTilt,
c512e371cc drin*0142      &     SEAICEuseMCS, SEAICEuseMCE,
210ee8461e jm-c 0143      &     SEAICE_no_slip, SEAICE_2ndOrderBC,
5dac41bc68 Mart*0144      &     SEAICE_maskRHS, SEAICEscaleSurfStress,
210ee8461e jm-c 0145      &     SEAICE_clipVelocities, SEAICEaddSnowMass,
                0146      &     useHB87stressCoupling, SEAICEupdateOceanStress,
f82b316546 Jean*0147      &     SEAICEuseFluxForm, SEAICEadvHeff, SEAICEadvArea,
e0fa1cecbf Mart*0148      &     SEAICEmultiDimAdvection,
2e05c0b826 Mart*0149      &     SEAICEadvSnow, SEAICEadvSalt, SEAICEmomAdvection,
                0150      &     SEAICEhighOrderVorticity, SEAICEupwindVorticity,
                0151      &     SEAICEuseAbsVorticity, SEAICEuseJamartMomAdv,
f82b316546 Jean*0152      &     usePW79thermodynamics,
                0153      &     SEAICE_useMultDimSnow, SEAICEuseFlooding, SEAICEheatConsFix,
                0154      &     useMaykutSatVapPoly, SEAICE_mcPheeStepFunc,
6ec4646d60 Gael*0155      &     SEAICE_doOpenWaterGrowth, SEAICE_doOpenWaterMelt,
be02c52974 Gael*0156      &     SEAICE_salinityTracer, SEAICE_ageTracer,
62cc8945c8 Gael*0157      &     SEAICErestoreUnderIce, SEAICE_growMeltByConv,
f82b316546 Jean*0158      &     SEAICEwriteState,
b7411f1a84 Jean*0159      &     SEAICE_dump_mdsio, SEAICE_mon_stdio,
                0160      &     SEAICE_dump_mnc,   SEAICE_mon_mnc
809c36b928 Patr*0161       COMMON /SEAICE_PARM_L/
1459e8fe5a Mart*0162      &     SEAICEuseDYNAMICS, SEAICEuseFREEDRIFT, SEAICEuseStrImpCpl,
0a27dce68e Mart*0163      &     SEAICEuseEVP, SEAICEuseEVPstar, SEAICEuseEVPrev,
                0164      &     SEAICEuseEVPpickup,
f82b316546 Jean*0165      &     SEAICEuseMultiTileSolver,
143d9ce879 Dami*0166      &     SEAICEuseLSR, SEAICEuseLSRflex, SEAICEuseKrylov,
210ee8461e jm-c 0167      &     SEAICEuseJFNK, SEAICEuseIMEX, SEAICEuseBDF2,
c8739d4898 Mart*0168      &     SEAICEusePicardAsPrecon,
5fd900657f Mart*0169      &     useHibler79IceStrength, SEAICEsimpleRidging,
c512e371cc drin*0170      &     SEAICEuseLinRemapITD, SEAICEuseTD, SEAICEusePL,
3f0f10fc37 Mart*0171      &     SEAICEuseTEM, SEAICEuseTilt,
c512e371cc drin*0172      &     SEAICEuseMCS, SEAICEuseMCE,
5dac41bc68 Mart*0173      &     SEAICE_no_slip, SEAICE_2ndOrderBC,
                0174      &     SEAICE_maskRHS, SEAICEscaleSurfStress,
210ee8461e jm-c 0175      &     SEAICE_clipVelocities, SEAICEaddSnowMass,
                0176      &     useHB87stressCoupling, SEAICEupdateOceanStress,
f82b316546 Jean*0177      &     SEAICEuseFluxForm, SEAICEadvHeff, SEAICEadvArea,
2e05c0b826 Mart*0178      &     SEAICEadvSnow, SEAICEadvSalt, SEAICEmomAdvection,
e0fa1cecbf Mart*0179      &     SEAICEmultiDimAdvection,
2e05c0b826 Mart*0180      &     SEAICEhighOrderVorticity, SEAICEupwindVorticity,
                0181      &     SEAICEuseAbsVorticity, SEAICEuseJamartMomAdv,
f82b316546 Jean*0182      &     usePW79thermodynamics,
                0183      &     SEAICE_useMultDimSnow, SEAICEuseFlooding, SEAICEheatConsFix,
                0184      &     useMaykutSatVapPoly, SEAICE_mcPheeStepFunc,
6ec4646d60 Gael*0185      &     SEAICE_doOpenWaterGrowth, SEAICE_doOpenWaterMelt,
be02c52974 Gael*0186      &     SEAICE_salinityTracer, SEAICE_ageTracer,
62cc8945c8 Gael*0187      &     SEAICErestoreUnderIce, SEAICE_growMeltByConv,
f82b316546 Jean*0188      &     SEAICEwriteState,
b7411f1a84 Jean*0189      &     SEAICE_dump_mdsio, SEAICE_mon_stdio,
                0190      &     SEAICE_dump_mnc,   SEAICE_mon_mnc
809c36b928 Patr*0191 
                0192 C--   COMMON /SEAICE_PARM_I/ Integer valued parameters of sea ice model.
210ee8461e jm-c 0193 C     IMAX_TICE         :: number of iterations for ice surface temp
4413db9420 Mart*0194 C                          (default=10)
210ee8461e jm-c 0195 C     postSolvTempIter :: select flux calculation after surf. temp solver
4413db9420 Mart*0196 C                         iteration
                0197 C                         0 = none, i.e., from last iter
210ee8461e jm-c 0198 C                         1 = use linearized approx (consistent with tsurf
4413db9420 Mart*0199 C                             finding)
                0200 C                         2 = full non-lin form
3f0f10fc37 Mart*0201 C     SEAICEselectMetricTerms :: selector for metric terms in stress divergence
                0202 C                         0 = none, (only implicit metric terms in
                0203 C                             FV discretisation of stress divergence)
                0204 C                         1 = in addition use metric terms in strain rates
                0205 C                         2 = use all metric terms (default)
79df32c3f1 Mart*0206 C     SOLV_NCHECK         :: iteration interval for LSR-solver convergence test
                0207 C     SEAICEnonLinIterMax :: number of allowed non-linear solver iterations
                0208 C                            for implicit solvers (JFNK and Picard) (>= 2)
                0209 C     SEAICElinearIterMax :: number of allowed linear solver iterations for
                0210 C                            for implicit solvers (JFNK and Picard) C
                0211 C     SEAICEpreconNL_Iter :: number non-linear iterations in preconditioner
                0212 C     SEAICEpreconLinIter :: number linear iterations in preconditioner
2bf4ed5c39 Mart*0213 C     SEAICEnEVPstarSteps :: number of evp*-steps
e501eee760 Mart*0214 C     SEAICEmomStartBDF   :: number of previous u/vIce time levels available
                0215 C                          to start (or restart) BDF2 scheme.
a88fc20c6c Mart*0216 C     SEAICE_JFNK_lsIter  :: number of Newton iterations after which the
                0217 C                            line search is started
c704c5a1ef Mart*0218 C     SEAICE_JFNK_lsLmax  :: max. number line search iterations (default = 4)
f6f4a9e227 Mart*0219 C     SEAICE_JFNK_tolIter :: number of Newton iterations after which the
                0220 C                            the tolerance is relaxed again (default = 100)
b8665dacca Mart*0221 C     SEAICE_OLx/y      :: overlaps for LSR-solver and for the
                0222 C                          LSR-preconditioner in JFNK and KRYLOV solver;
                0223 C                          for 0 < SEAICE_OLx/y 0 <= OLx/y-2 the LSR solver
                0224 C                          and preconditioner use a restricted additive
                0225 C                          Schwarz method (default = OLx/y-2).
210ee8461e jm-c 0226 C     LSR_mixIniGuess   :: control mixing of free-drift sol. into LSR initial
4413db9420 Mart*0227 C                          guess
210ee8461e jm-c 0228 C                       :: =0 : nothing; =1 : no mix, but print free-drift
4413db9420 Mart*0229 C                          resid.;
604907fea6 Jean*0230 C                       :: =2,4 : mix with (1/local-residual)^2,4 factor
76c8933abb Gael*0231 C     SEAICEpresPow0    :: HEFF exponent for ice strength below SEAICEpresH0
                0232 C     SEAICEpresPow1    :: HEFF exponent for ice strength above SEAICEpresH0
5fd900657f Mart*0233 C     rigding parameters (only active when SEAICE_ITD is defined)
                0234 C     SEAICEpartFunc    :: =0 use Thorndyke et al (1975) participation function
                0235 C                       :: =1 use Lipscomb et al (2007) participation function
                0236 C     SEAICEredistFunc  :: =0 assume ridged ice is uniformly distributed
                0237 C                             (Hibler, 1980)
210ee8461e jm-c 0238 C                          =1 Following Lipscomb et al. (2007), ridged ice is
5fd900657f Mart*0239 C                             distributed following an exponentially
                0240 C                             decaying function
                0241 C     SEAICEridgingIterMax :: maximum number of ridging iterations
                0242 C     end ridging parameters
2e05c0b826 Mart*0243 C     SEAICEselectKEscheme   :: momentum advection parameters analogous
                0244 C     SEAICEselectVortScheme :: to selectKEscheme and selectVortScheme
425e8efc36 Jean*0245 C     SEAICEadvScheme   :: sets the advection scheme for thickness and area
b8665dacca Mart*0246 C                          (default = 77)
425e8efc36 Jean*0247 C     SEAICEadvSchArea  :: sets the advection scheme for area
                0248 C     SEAICEadvSchHeff  :: sets the advection scheme for effective thickness
                0249 C                         (=volume), snow thickness, and salt if available
                0250 C     SEAICEadvSchSnow  :: sets the advection scheme for snow on sea-ice
                0251 C     SEAICEadvSchSalt  :: sets the advection scheme for sea ice salinity
                0252 C     SEAICEadvSchSnow  :: sets the advection scheme for snow on sea-ice
6ec4646d60 Gael*0253 C     SEAICE_areaLossFormula :: selects formula for ice cover loss from melt
                0254 C                        :: 1=from all but only melt conributions by ATM and OCN
                0255 C                        :: 2=from net melt-growth>0 by ATM and OCN
                0256 C                        :: 3=from predicted melt by ATM
210ee8461e jm-c 0257 C     SEAICE_areaGainFormula :: selects formula for ice cover gain from open
4413db9420 Mart*0258 C                               water growth
6ec4646d60 Gael*0259 C                        :: 1=from growth by ATM
                0260 C                        :: 2=from predicted growth by ATM
2349c46237 Mart*0261 C     SEAICEetaZmethod   :: determines how shear-viscosity eta is computed at
                0262 C                           Z-points
                0263 C                           0=simple averaging from C-points (default and old)
210ee8461e jm-c 0264 C                           3=weighted averaging of squares of strain rates
c43a67fada Mart*0265 C                             (recommended for energy conservation)
f5282c5b03 Gael*0266 C     SEAICE_multDim     :: number of ice categories
425e8efc36 Jean*0267 C     SEAICE_debugPointI :: I,J index for seaice-specific debuggin
136908bfac Ian *0268 C     SEAICE_debugPointJ
809c36b928 Patr*0269 C
b58e51ce4e Jean*0270       INTEGER IMAX_TICE, postSolvTempIter
3f0f10fc37 Mart*0271       INTEGER SEAICEselectMetricTerms
79df32c3f1 Mart*0272       INTEGER SOLV_NCHECK
                0273       INTEGER SEAICEnonLinIterMax, SEAICElinearIterMax
                0274       INTEGER SEAICEpreconLinIter, SEAICEpreconNL_Iter
3de1dea93d Jean*0275       INTEGER LSR_mixIniGuess
2bf4ed5c39 Mart*0276       INTEGER SEAICEnEVPstarSteps
e501eee760 Mart*0277       INTEGER SEAICEmomStartBDF
f6f4a9e227 Mart*0278       INTEGER SEAICE_JFNK_lsIter, SEAICE_JFNK_tolIter
c704c5a1ef Mart*0279       INTEGER SEAICE_JFNK_lsLmax
b3c9aef4a6 Mart*0280       INTEGER SEAICE_OLx, SEAICE_OLy
2e05c0b826 Mart*0281       INTEGER SEAICEselectKEscheme, SEAICEselectVortScheme
0f6ad6f523 Mart*0282       INTEGER SEAICEadvScheme
bd4f8028de Mart*0283       INTEGER SEAICEadvSchArea
                0284       INTEGER SEAICEadvSchHeff
                0285       INTEGER SEAICEadvSchSnow
fdfa8e151f Dimi*0286       INTEGER SEAICEadvSchSalt
3a3bf6419a Gael*0287       INTEGER SEAICEadjMODE
6ec4646d60 Gael*0288       INTEGER SEAICE_areaLossFormula
1c278edd09 Jean*0289       INTEGER SEAICE_areaGainFormula
2349c46237 Mart*0290       INTEGER SEAICEetaZmethod
f5282c5b03 Gael*0291       INTEGER SEAICE_multDim
136908bfac Ian *0292       INTEGER SEAICE_debugPointI
                0293       INTEGER SEAICE_debugPointJ
76c8933abb Gael*0294       INTEGER SEAICEpresPow0, SEAICEpresPow1
5fd900657f Mart*0295       INTEGER SEAICEpartFunc, SEAICEredistFunc
                0296       INTEGER SEAICEridgingIterMax
425e8efc36 Jean*0297       COMMON /SEAICE_PARM_I/
79df32c3f1 Mart*0298      &     IMAX_TICE, postSolvTempIter, SOLV_NCHECK,
3f0f10fc37 Mart*0299      &     SEAICEselectMetricTerms,
79df32c3f1 Mart*0300      &     SEAICEnonLinIterMax, SEAICElinearIterMax,
                0301      &     SEAICEpreconLinIter, SEAICEpreconNL_Iter,
3de1dea93d Jean*0302      &     LSR_mixIniGuess,
2bf4ed5c39 Mart*0303      &     SEAICEnEVPstarSteps,
e501eee760 Mart*0304      &     SEAICEmomStartBDF,
b3c9aef4a6 Mart*0305      &     SEAICE_JFNK_lsIter, SEAICE_OLx, SEAICE_OLy,
c704c5a1ef Mart*0306      &     SEAICE_JFNK_lsLmax, SEAICE_JFNK_tolIter,
76c8933abb Gael*0307      &     SEAICEpresPow0, SEAICEpresPow1,
210ee8461e jm-c 0308      &     SEAICEpartFunc, SEAICEredistFunc, SEAICEridgingIterMax,
2e05c0b826 Mart*0309      &     SEAICEselectKEscheme, SEAICEselectVortScheme,
bd4f8028de Mart*0310      &     SEAICEadvScheme,
                0311      &     SEAICEadvSchArea,
                0312      &     SEAICEadvSchHeff,
fdfa8e151f Dimi*0313      &     SEAICEadvSchSnow,
f681b7f5d4 Dimi*0314      &     SEAICEadvSchSalt,
65f34462d4 Gael*0315      &     SEAICEadjMODE,
6ec4646d60 Gael*0316      &     SEAICE_areaLossFormula,
                0317      &     SEAICE_areaGainFormula,
f5282c5b03 Gael*0318      &     SEAICE_multDim,
2349c46237 Mart*0319      &     SEAICEetaZmethod,
136908bfac Ian *0320      &     SEAICE_debugPointI,
                0321      &     SEAICE_debugPointJ
809c36b928 Patr*0322 
                0323 C--   COMMON /SEAICE_PARM_C/ Character valued sea ice model parameters.
5bb179ddc2 Mart*0324 C     AreaFile       :: File containing initial sea-ice concentration
                0325 C     HsnowFile      :: File containing initial snow thickness
                0326 C     HsaltFile      :: File containing initial sea ice salt content
                0327 C     HeffFile       :: File containing initial sea-ice thickness
                0328 C     uIceFile       :: File containing initial sea-ice U comp. velocity
                0329 C     vIceFile       :: File containing initial sea-ice V comp. velocity
                0330 C     uCoastLineFile :: File containing the some measure of coastline
                0331 C                       roughness length (in m) at the U-points in the
                0332 C                       X-direction (i.e. for the U-equation).
                0333 C     vCoastLineFile :: Files containing the some measure of coastline
                0334 C                       roughness length (in m) at the V-points in the
                0335 C                       Y-direction (i.e. for the V-equation).
                0336 C
                0337 C                       This roughness length can be the subgrid
                0338 C                       scale length of the coastline in a grid cell
                0339 C                       projected in the direction normal to the u/v-
                0340 C                       direction as in Liu et al. (2022), but it can
                0341 C                       also be anything that is a good proxy of coast
                0342 C                       line roughness.
                0343 C
190e1777cb Dimi*0344 C        !!! NOTE !!! Initial sea-ice thickness can also be set using
                0345 C        SEAICE_initialHEFF below.  But a constant initial condition
                0346 C        can mean large artificial fluxes of heat and freshwater in
                0347 C        the surface layer during the first model time step.
809c36b928 Patr*0348 C
09066b09cb Mart*0349       CHARACTER*(MAX_LEN_FNAM) AreaFile
de31ea8481 Dimi*0350       CHARACTER*(MAX_LEN_FNAM) HsnowFile
fdfa8e151f Dimi*0351       CHARACTER*(MAX_LEN_FNAM) HsaltFile
6060ec2938 Dimi*0352       CHARACTER*(MAX_LEN_FNAM) HeffFile
425e8efc36 Jean*0353       CHARACTER*(MAX_LEN_FNAM) uIceFile
                0354       CHARACTER*(MAX_LEN_FNAM) vIceFile
5bb179ddc2 Mart*0355       CHARACTER*(MAX_LEN_FNAM) uCoastLineFile
                0356       CHARACTER*(MAX_LEN_FNAM) vCoastLineFile
f681b7f5d4 Dimi*0357       COMMON /SEAICE_PARM_C/
425e8efc36 Jean*0358      &   AreaFile, HsnowFile, HsaltFile, HeffFile,
5bb179ddc2 Mart*0359      &   uIceFile, vIceFile, uCoastLineFile, vCoastLineFile
809c36b928 Patr*0360 
                0361 C--   COMMON /SEAICE_PARM_RL/ Real valued parameters of sea ice model.
425e8efc36 Jean*0362 C     SEAICE_deltaTtherm :: Seaice timestep for thermodynamic equations (s)
                0363 C     SEAICE_deltaTdyn   :: Seaice timestep for dynamic solver          (s)
e45202e340 Mart*0364 C     SEAICE_LSRrelaxU/V :: relaxation parameter for LSR-solver: U/V-component
425e8efc36 Jean*0365 C     SEAICE_deltaTevp   :: Seaice timestep for EVP solver              (s)
                0366 C     SEAICE_elasticParm :: parameter that sets relaxation timescale
                0367 C                           tau = SEAICE_elasticParm * SEAICE_deltaTdyn
                0368 C     SEAICE_evpTauRelax :: relaxation timescale tau                    (s)
3de1dea93d Jean*0369 C     SEAICE_evpDampC    :: evp damping constant (Hunke,JCP,2001)       (kg/m^2)
2bf4ed5c39 Mart*0370 C     SEAICE_evpAlpha    :: dimensionless parameter 2*evpTauRelax/deltaTevp
                0371 C     SEAICE_evpBeta     :: dimensionless parameter deltaTdyn/deltaTevp
1a0d5a451b Mart*0372 C     SEAICEaEVPcoeff    :: main coefficent for adaptive EVP (largest
                0373 C                           stabilized frequency)
                0374 C     SEAICEaEVPcStar    :: multiple of stabilty factor: alpha*beta=cstar*gamma
                0375 C     SEAICEaEVPalphaMin :: lower limit of alpha and beta, regularisation
210ee8461e jm-c 0376 C                           to prevent singularities of system matrix,
1a0d5a451b Mart*0377 C                           e.g. when ice concentration is too low.
204068be6a R. S*0378 C     SEAICE_evpAreaReg  :: Specifies a minimun ice fraction for the purposes
                0379 C                           of regularizations in the calculation of denomU/V,
                0380 C                           to enhance the stability of EVP; off by default,
                0381 C                           turn on with a sensible value, e.g. 1e-5
79df32c3f1 Mart*0382 C     SEAICEnonLinTol    :: non-linear tolerance parameter for implicit solvers
812a8fb151 Mart*0383 C     JFNKgamma_lin_min/max :: tolerance parameters for linear JFNK solver
                0384 C     JFNKres_t          :: tolerance parameter for FGMRES residual
2e75855dde Mart*0385 C     JFNKres_tFac       :: if set, JFNKres_t=JFNKres_tFac*(initial residual)
c8f5b4180e Mart*0386 C     SEAICE_JFNKepsilon :: step size for the FD-gradient in s/r seaice_jacvec
c704c5a1ef Mart*0387 C     SEAICE_JFNK_lsGamma:: reduction factor for line search (default 0.5)
1f3ad2d627 Mart*0388 C     SEAICE_JFNKphi     :: [0,1] parameter for inexact Newton Method (def = 1)
                0389 C     SEAICE_JFNKalpha   :: (1,2] parameter for inexact Newton Method (def = 1)
3de1dea93d Jean*0390 C     SEAICE_zetaMaxFac  :: factor determining the maximum viscosity    (s)
bb06934ea0 Mart*0391 C                          (default = 5.e+12/2.e4 = 2.5e8)
fe80ae39de Mart*0392 C     SEAICE_zetaMin     :: lower bound for viscosity (default = 0)    (N s/m^2)
76c8933abb Gael*0393 C     SEAICEpresH0       :: HEFF threshold for ice strength            (m)
425e8efc36 Jean*0394 C     SEAICE_monFreq     :: SEAICE monitor frequency.                   (s)
                0395 C     SEAICE_dumpFreq    :: SEAICE dump frequency.                      (s)
                0396 C     SEAICE_initialHEFF :: initial sea-ice thickness                   (m)
                0397 C     SEAICE_rhoAir      :: density of air                              (kg/m^3)
                0398 C     SEAICE_rhoIce      :: density of sea ice                          (kg/m^3)
                0399 C     SEAICE_rhoSnow     :: density of snow                             (kg/m^3)
                0400 C     ICE2WATR           :: ratio of sea ice density to water density
                0401 C     SEAICE_cpAir       :: specific heat of air                        (J/kg/K)
f834b21bef Dimi*0402 C
5867b94c2f Mart*0403 C     OCEAN_drag         :: unitless air-ocean drag coefficient (default 0.001)
                0404 C     SEAICE_drag        :: unitless air-ice drag coefficient   (default 0.001)
                0405 C     SEAICE_waterDrag   :: unitless water-ice drag coefficient (default 0.0055)
                0406 C     SEAICEdWatMin      :: minimum linear water-ice drag applied to DWATN
                0407 C                           (default 0.25 m/s)
                0408 C
425e8efc36 Jean*0409 C     SEAICE_dryIceAlb   :: winter albedo
                0410 C     SEAICE_wetIceAlb   :: summer albedo
                0411 C     SEAICE_drySnowAlb  :: dry snow albedo
                0412 C     SEAICE_wetSnowAlb  :: wet snow albedo
1c278edd09 Jean*0413 C     HO                 :: AKA "lead closing parameter", demarcation thickness
fe80ae39de Mart*0414 C                           between thin and thick ice. Alternatively, HO (in
                0415 C                           meters) can be interpreted as the thickness of ice
                0416 C                           formed in open water.
                0417 C                           HO is a key ice-growth parameter that determines
                0418 C                           the partition between vertical and lateral growth.
                0419 C                           The default is 0.5m, increasing this value leads
                0420 C                           slower formation of a closed ice cover and thus to
                0421 C                           more ice (and thicker) ice, decreasing to faster
                0422 C                           formation of a closed ice cover (leads are closing
                0423 C                           faster) and thus less (thinner) ice.
f834b21bef Dimi*0424 C
425e8efc36 Jean*0425 C     SEAICE_drag_south       :: Southern Ocean SEAICE_drag
                0426 C     SEAICE_waterDrag_south  :: Southern Ocean SEAICE_waterDrag
                0427 C     SEAICE_dryIceAlb_south  :: Southern Ocean SEAICE_dryIceAlb
                0428 C     SEAICE_wetIceAlb_south  :: Southern Ocean SEAICE_wetIceAlb
                0429 C     SEAICE_drySnowAlb_south :: Southern Ocean SEAICE_drySnowAlb
                0430 C     SEAICE_wetSnowAlb_south :: Southern Ocean SEAICE_wetSnowAlb
                0431 C     HO_south                :: Southern Ocean HO
f834b21bef Dimi*0432 C
210ee8461e jm-c 0433 C     Parameters for basal drag of grounded ice following
abb637800a Mart*0434 C     Lemieux et al. (2015), doi:10.1002/2014JC010678
                0435 C     SEAICE_cBasalStar (default = SEAICE_cStar)
                0436 C     SEAICEbasalDragU0 (default = 5e-5)
                0437 C     SEAICEbasalDragK1 (default = 8)
210ee8461e jm-c 0438 C     SEAICEbasalDragK2  :: if > 0, turns on basal drag
abb637800a Mart*0439 C                           (default = 0, Lemieux suggests 15)
5bb179ddc2 Mart*0440 C     SEAICEsideDrag     :: if > 0, turns on lateral static drag
                0441 C                           if < 0, turns on lateral quadratic drag
                0442 C                           both are different landfast ice parameterisations
                0443 C                           (Liu et al 2022 use 2e-4,
                0444 C                            the default = 0 turns off the parameterisations)
abb637800a Mart*0445 C
b58e51ce4e Jean*0446 C     SEAICE_wetAlbTemp  :: Temp (deg.C) above which wet-albedo values are used
425e8efc36 Jean*0447 C     SEAICE_waterAlbedo :: water albedo
                0448 C     SEAICE_strength    :: sea-ice strength Pstar
ba6cfc5714 Mart*0449 C     SEAICE_cStar       :: sea-ice strength paramter C* (def: 20)
                0450 C     SEAICE_tensilFac   :: sea-ice tensile strength factor, values in [0,1]
d104051171 Mart*0451 C     SEAICE_tensilDepth :: crtical depth for sea-ice tensile strength (def 0.)
0adbdb4edd Mart*0452 C     SEAICEpressReplFac :: interpolator between PRESS0 and regularized PRESS
                0453 C                           1. (default): pure pressure replace method (PRESS)
                0454 C                           0.          : pure Hibler (1979) method (PRESS0)
425e8efc36 Jean*0455 C     SEAICE_eccen       :: sea-ice eccentricity of the elliptical yield curve
c512e371cc drin*0456 C     SEAICE_eccfr       :: sea-ice eccentricity of the elliptical flow rule
425e8efc36 Jean*0457 C     SEAICE_lhFusion    :: latent heat of fusion for ice and snow (J/kg)
                0458 C     SEAICE_lhEvap      :: latent heat of evaporation for water (J/kg)
                0459 C     SEAICE_dalton      :: Dalton number (= sensible heat transfer coefficient)
                0460 C     SEAICE_iceConduct  :: sea-ice conductivity
                0461 C     SEAICE_snowConduct :: snow conductivity
0d2761b0d1 Mart*0462 C     SEAICE_emissivity  :: longwave ocean-surface emissivity (-)
                0463 C     SEAICE_ice_emiss   :: longwave ice-surface emissivity (-)
                0464 C     SEAICE_snow_emiss  :: longwave snow-surface emissivity (-)
d778130a13 Mart*0465 C     SEAICE_boltzmann   :: Stefan-Boltzman constant (not a run time parameter)
b58e51ce4e Jean*0466 C     SEAICE_snowThick   :: cutoff snow thickness (for snow-albedo)
                0467 C     SEAICE_shortwave   :: ice penetration shortwave radiation factor
1c278edd09 Jean*0468 C     SEAICE_saltFrac    :: salinity of newly formed seaice defined as a
fe80ae39de Mart*0469 C                           fraction of the ocean surface salinity at the time
                0470 C                           of freezing
1c278edd09 Jean*0471 C     SEAICE_salt0       :: prescribed salinity of seaice (in g/kg).
fe80ae39de Mart*0472 C     facOpenGrow        :: 0./1. version of logical SEAICE_doOpenWaterGrowth
                0473 C     facOpenMelt        :: 0./1. version of logical SEAICE_doOpenWaterMelt
1c278edd09 Jean*0474 C     SEAICE_mcPheePiston:: ocean-ice turbulent flux "piston velocity" (m/s)
fe80ae39de Mart*0475 C                           that sets melt efficiency.
1c278edd09 Jean*0476 C     SEAICE_mcPheeTaper :: tapering down of turbulent flux term with ice
                0477 C                           concentration. The 100% cover turb. flux is
fe80ae39de Mart*0478 C                           multiplied by 1.-SEAICE_mcPheeTaper
1c278edd09 Jean*0479 C     SEAICE_frazilFrac  :: Fraction of surface level negative heat content
                0480 C                           anomalies (relative to the local freezing point)
fe80ae39de Mart*0481 C                           may contribute as frazil over one time step.
840c7fba30 Gael*0482 C     SEAICE_tempFrz0    :: sea water freezing point is
fe80ae39de Mart*0483 C     SEAICE_dTempFrz_dS :: tempFrz = SEAICE_tempFrz0 + salt*SEAICE_dTempFrz_dS
210ee8461e jm-c 0484 C     SEAICE_PDF         :: prescribed sea-ice distribution within grid box
425e8efc36 Jean*0485 C     SEAICEstressFactor :: factor by which ice affects wind stress (default=1)
                0486 C     LSR_ERROR          :: sets accuracy of LSR solver
                0487 C     DIFF1              :: parameter used in advect.F
c512e371cc drin*0488 C     SEAICEtdMU         :: slope parameter for the teardrop and parabolic lens
                0489 C                           yield curves
3daf25222c Mart*0490 C     SEAICE_deltaMin    :: small number used to reduce singularities of Delta
fe80ae39de Mart*0491 C     SEAICE_area_max    :: usually set to 1. Seeting areaMax below 1 specifies
1c278edd09 Jean*0492 C                           the minimun amount of leads (1-areaMax) in the
fe80ae39de Mart*0493 C                           ice pack.
425e8efc36 Jean*0494 C     SEAICE_area_floor  :: usually set to 1x10^-5. Specifies a minimun
                0495 C                           ice fraction in the ice pack.
                0496 C     SEAICE_area_reg    :: usually set to 1x10^-5. Specifies a minimun
                0497 C                           ice fraction for the purposes of regularization
                0498 C     SEAICE_hice_reg    :: usually set to 5 cm. Specifies a minimun
                0499 C                           ice thickness for the purposes of regularization
                0500 C     SEAICEdiffKhArea   :: sets the diffusivity for area (m^2/s)
                0501 C     SEAICEdiffKhHeff   :: sets the diffusivity for effective thickness (m^2/s)
                0502 C     SEAICEdiffKhSnow   :: sets the diffusivity for snow on sea-ice (m^2/s)
                0503 C     SEAICEdiffKhSalt   :: sets the diffusivity for sea ice salinity (m^2/s)
                0504 C     SEAICE_airTurnAngle   :: turning angles of air-ice interfacial stress
                0505 C     SEAICE_waterTurnAngle :: and ice-water interfacial stress (in degrees)
f82b316546 Jean*0506 C     SEAICE_tauAreaObsRelax :: Timescale of relaxation to observed
d32fe07ad8 Patr*0507 C                               sea ice concentration (s), default=unset
5fd900657f Mart*0508 C     ridging parameters (Lipscomb et al, 2007, Bitz et al. 2001):
                0509 C     SEAICE_cf       :: ratio of total energy sinks to gravitational sink
                0510 C                        (scales ice strength, suggested values: 2 to 17)
                0511 C     SEAICEgStar     :: maximum ice concentration that participates in ridging
                0512 C     SEAICEhStar     :: empirical thickness (ridging parameter)
                0513 C     SEAICEaStar     :: ice concentration parameter similar to gStar for
                0514 C                        exponential distribution (Lipscomb et al 2007)
                0515 C     SEAICEshearParm :: <=1 reduces amount of energy lost to ridge building
                0516 C     SEAICEmuRidging :: tuning parameter similar to hStar for Lipcomb et al
                0517 C                        (2007)-scheme
                0518 C     SEAICEmaxRaft   :: regularization parameter (default=1)
3ac108d8cf Mart*0519 C     SEAICEsnowFracRidge :: fraction of snow that remains on ridged
dc54d31829 Ian *0520 C     SINegFac        :: SIADV over/undershoot factor in FW/Adjoint
c512e371cc drin*0521 C     SEAICEmcMu      :: parameter for MC yield curve for useMCE, useMCS and
                0522 C                        useTEM options, default is one
809c36b928 Patr*0523 C
6e2f4e58fa Mart*0524       _RL SEAICE_deltaTtherm, SEAICE_deltaTdyn, SEAICE_deltaTevp
e45202e340 Mart*0525       _RL SEAICE_LSRrelaxU, SEAICE_LSRrelaxV
b7411f1a84 Jean*0526       _RL SEAICE_monFreq, SEAICE_dumpFreq
a2d714f5b7 Jean*0527       _RL SEAICE_initialHEFF
07b4a12853 Mart*0528       _RL SEAICE_rhoAir, SEAICE_rhoIce, SEAICE_rhoSnow, ICE2WATR
fff6be1885 Mart*0529       _RL SEAICE_cpAir
5867b94c2f Mart*0530       _RL SEAICE_drag, SEAICE_waterDrag, SEAICEdWatMin
                0531       _RL SEAICE_dryIceAlb, SEAICE_wetIceAlb
                0532       _RL SEAICE_drySnowAlb, SEAICE_wetSnowAlb, HO
f834b21bef Dimi*0533       _RL SEAICE_drag_south, SEAICE_waterDrag_south
                0534       _RL SEAICE_dryIceAlb_south, SEAICE_wetIceAlb_south
f81e0cd482 Dimi*0535       _RL SEAICE_drySnowAlb_south, SEAICE_wetSnowAlb_south, HO_south
abb637800a Mart*0536       _RL SEAICE_cBasalStar, SEAICEbasalDragU0
                0537       _RL SEAICEbasalDragK1, SEAICEbasalDragK2
5bb179ddc2 Mart*0538       _RL SEAICEsideDrag
b58e51ce4e Jean*0539       _RL SEAICE_wetAlbTemp, SEAICE_waterAlbedo
0adbdb4edd Mart*0540       _RL SEAICE_strength, SEAICE_cStar, SEAICEpressReplFac
c512e371cc drin*0541       _RL SEAICE_tensilFac, SEAICE_tensilDepth
                0542       _RL SEAICE_eccen, SEAICE_eccfr
                0543       _RL SEAICEmcMu, SEAICEtdMU
136908bfac Ian *0544       _RL SEAICE_lhFusion, SEAICE_lhEvap
fff6be1885 Mart*0545       _RL SEAICE_dalton
0d2761b0d1 Mart*0546       _RL SEAICE_iceConduct, SEAICE_snowConduct
                0547       _RL SEAICE_emissivity, SEAICE_ice_emiss, SEAICE_snow_emiss
d778130a13 Mart*0548       _RL SEAICE_boltzmann
1c278edd09 Jean*0549       _RL SEAICE_snowThick, SEAICE_shortwave
                0550       _RL SEAICE_saltFrac, SEAICE_salt0, SEAICEstressFactor
                0551       _RL SEAICE_mcPheeTaper, SEAICE_mcPheePiston
                0552       _RL SEAICE_frazilFrac, SEAICE_availHeatFrac
840c7fba30 Gael*0553       _RL facOpenGrow, facOpenMelt
                0554       _RL SEAICE_tempFrz0, SEAICE_dTempFrz_dS
4b6d456764 Mart*0555       _RL SEAICE_PDF(nITD)
136908bfac Ian *0556       _RL OCEAN_drag, LSR_ERROR, DIFF1
79df32c3f1 Mart*0557       _RL SEAICEnonLinTol, JFNKres_t, JFNKres_tFac
c8f5b4180e Mart*0558       _RL JFNKgamma_lin_min, JFNKgamma_lin_max, SEAICE_JFNKepsilon
c704c5a1ef Mart*0559       _RL SEAICE_JFNK_lsGamma
1f3ad2d627 Mart*0560       _RL SEAICE_JFNKphi, SEAICE_JFNKalpha
3daf25222c Mart*0561       _RL SEAICE_deltaMin
425e8efc36 Jean*0562       _RL SEAICE_area_reg, SEAICE_hice_reg
136908bfac Ian *0563       _RL SEAICE_area_floor, SEAICE_area_max
16f85413ea Mart*0564       _RL SEAICE_airTurnAngle, SEAICE_waterTurnAngle
4ece3a93a6 Mart*0565       _RL SEAICE_elasticParm, SEAICE_evpTauRelax
2bf4ed5c39 Mart*0566       _RL SEAICE_evpAlpha, SEAICE_evpBeta
bb06934ea0 Mart*0567       _RL SEAICE_evpDampC, SEAICE_zetaMin, SEAICE_zetaMaxFac
1a0d5a451b Mart*0568       _RL SEAICEaEVPcoeff, SEAICEaEVPcStar, SEAICEaEVPalphaMin
204068be6a R. S*0569       _RL SEAICE_evpAreaReg, SEAICEpresH0
6d78fc5463 Gael*0570       _RL SEAICEdiffKhArea, SEAICEdiffKhHeff, SEAICEdiffKhSnow
e54fe3e1f9 Gael*0571       _RL SEAICEdiffKhSalt
d32fe07ad8 Patr*0572       _RL SEAICE_tauAreaObsRelax
5fd900657f Mart*0573       _RL SEAICEgStar, SEAICEhStar, SEAICEaStar, SEAICEshearParm
                0574       _RL SEAICEmuRidging, SEAICEmaxRaft, SEAICE_cf
3ac108d8cf Mart*0575       _RL SEAICEsnowFracRidge
dc54d31829 Ian *0576       _RL SINegFac
bb06934ea0 Mart*0577 
809c36b928 Patr*0578       COMMON /SEAICE_PARM_RL/
e501eee760 Mart*0579      &    SEAICE_deltaTtherm, SEAICE_deltaTdyn,
e45202e340 Mart*0580      &    SEAICE_LSRrelaxU, SEAICE_LSRrelaxV,
4ece3a93a6 Mart*0581      &    SEAICE_deltaTevp, SEAICE_elasticParm, SEAICE_evpTauRelax,
2bf4ed5c39 Mart*0582      &    SEAICE_evpAlpha, SEAICE_evpBeta,
1a0d5a451b Mart*0583      &    SEAICEaEVPcoeff, SEAICEaEVPcStar, SEAICEaEVPalphaMin,
bb06934ea0 Mart*0584      &    SEAICE_evpDampC, SEAICE_zetaMin, SEAICE_zetaMaxFac,
204068be6a R. S*0585      &    SEAICE_evpAreaReg, SEAICEpresH0,
b7411f1a84 Jean*0586      &    SEAICE_monFreq, SEAICE_dumpFreq,
a2d714f5b7 Jean*0587      &    SEAICE_initialHEFF,
07b4a12853 Mart*0588      &    SEAICE_rhoAir, SEAICE_rhoIce, SEAICE_rhoSnow, ICE2WATR,
5867b94c2f Mart*0589      &    SEAICE_drag, SEAICE_waterDrag, SEAICEdWatMin,
                0590      &    SEAICE_dryIceAlb, SEAICE_wetIceAlb,
                0591      &    SEAICE_drySnowAlb, SEAICE_wetSnowAlb, HO,
f834b21bef Dimi*0592      &    SEAICE_drag_south, SEAICE_waterDrag_south,
                0593      &    SEAICE_dryIceAlb_south, SEAICE_wetIceAlb_south,
f81e0cd482 Dimi*0594      &    SEAICE_drySnowAlb_south, SEAICE_wetSnowAlb_south, HO_south,
abb637800a Mart*0595      &    SEAICE_cBasalStar, SEAICEbasalDragU0,
                0596      &    SEAICEbasalDragK1, SEAICEbasalDragK2,
5bb179ddc2 Mart*0597      &    SEAICEsideDrag,
b58e51ce4e Jean*0598      &    SEAICE_wetAlbTemp, SEAICE_waterAlbedo,
c512e371cc drin*0599      &    SEAICE_strength, SEAICE_cStar, SEAICE_eccen, SEAICE_eccfr,
                0600      &    SEAICEtdMU, SEAICEmcMu,
210ee8461e jm-c 0601      &    SEAICEpressReplFac, SEAICE_tensilFac, SEAICE_tensilDepth,
425e8efc36 Jean*0602      &    SEAICE_lhFusion, SEAICE_lhEvap,
fff6be1885 Mart*0603      &    SEAICE_dalton, SEAICE_cpAir,
0d2761b0d1 Mart*0604      &    SEAICE_iceConduct, SEAICE_snowConduct,
                0605      &    SEAICE_emissivity, SEAICE_ice_emiss, SEAICE_snow_emiss,
d778130a13 Mart*0606      &    SEAICE_boltzmann,
1c278edd09 Jean*0607      &    SEAICE_snowThick, SEAICE_shortwave,
                0608      &    SEAICE_saltFrac, SEAICE_salt0, SEAICEstressFactor,
                0609      &    SEAICE_mcPheeTaper, SEAICE_mcPheePiston,
                0610      &    SEAICE_frazilFrac, SEAICE_availHeatFrac,
6ec4646d60 Gael*0611      &    facOpenGrow, facOpenMelt,
4b6d456764 Mart*0612      &    SEAICE_tempFrz0, SEAICE_dTempFrz_dS, SEAICE_PDF,
425e8efc36 Jean*0613      &    OCEAN_drag, LSR_ERROR, DIFF1,
79df32c3f1 Mart*0614      &    SEAICEnonLinTol, JFNKres_t, JFNKres_tFac,
c8f5b4180e Mart*0615      &    JFNKgamma_lin_min, JFNKgamma_lin_max, SEAICE_JFNKepsilon,
c704c5a1ef Mart*0616      &    SEAICE_JFNK_lsGamma, SEAICE_JFNKphi, SEAICE_JFNKalpha,
3daf25222c Mart*0617      &    SEAICE_deltaMin, SEAICE_area_reg, SEAICE_hice_reg,
136908bfac Ian *0618      &    SEAICE_area_floor, SEAICE_area_max,
6d78fc5463 Gael*0619      &    SEAICEdiffKhArea, SEAICEdiffKhHeff, SEAICEdiffKhSnow,
d32fe07ad8 Patr*0620      &    SEAICEdiffKhSalt, SEAICE_tauAreaObsRelax,
5fd900657f Mart*0621      &    SEAICE_airTurnAngle, SEAICE_waterTurnAngle,
                0622      &    SEAICEgStar, SEAICEhStar, SEAICEaStar, SEAICEshearParm,
                0623      &    SEAICEmuRidging, SEAICEmaxRaft, SEAICE_cf,
c512e371cc drin*0624      &    SINegFac,
                0625      &    SEAICEsnowFracRidge
809c36b928 Patr*0626 
                0627 C--   COMMON /SEAICE_BOUND_RL/ Various bounding values
425e8efc36 Jean*0628 C     MIN_ATEMP         :: minimum air temperature   (deg C)
                0629 C     MIN_LWDOWN        :: minimum downward longwave (W/m^2)
                0630 C     MIN_TICE          :: minimum ice temperature   (deg C)
3daf25222c Mart*0631 C     SEAICE_EPS        :: small number
425e8efc36 Jean*0632 C     SEAICE_EPS_SQ     :: small number square
809c36b928 Patr*0633 C
050eb90cc6 Gael*0634       _RL MIN_ATEMP, MIN_LWDOWN, MIN_TICE
460cb5f999 Dimi*0635       _RL SEAICE_EPS, SEAICE_EPS_SQ
809c36b928 Patr*0636       COMMON /SEAICE_BOUND_RL/
050eb90cc6 Gael*0637      &     MIN_ATEMP, MIN_LWDOWN, MIN_TICE,
45a6dc0d5a Dimi*0638      &     SEAICE_EPS, SEAICE_EPS_SQ
809c36b928 Patr*0639 
86b84a92fc Patr*0640 #ifdef SEAICE_ITD
210ee8461e jm-c 0641 C     Hlimit            :: ice thickness category limits (m), array of
4413db9420 Mart*0642 C                          size nITD+1
210ee8461e jm-c 0643 C     Hlimit_c1,_c2,_c3 :: coefficients set in seaice_readparams.F to
4413db9420 Mart*0644 C                          calculate Hlimit in seaice_init_fixed.F
86b84a92fc Patr*0645       _RL Hlimit(0:nITD)
                0646       _RL Hlimit_c1, Hlimit_c2, Hlimit_c3
                0647       COMMON /SEAICE_BOUND_ITD_RL/
                0648      &     Hlimit,
                0649      &     Hlimit_c1,Hlimit_c2,Hlimit_c3
                0650 #endif /* SEAICE_ITD */
                0651 
baa476eeba Dimi*0652 C--   Constants used by sea-ice model
                0653       _RL         ZERO           , ONE           , TWO
3de1dea93d Jean*0654       PARAMETER ( ZERO = 0.0 _d 0, ONE = 1.0 _d 0, TWO = 2.0 _d 0 )
baa476eeba Dimi*0655       _RL         QUART            , HALF
3de1dea93d Jean*0656       PARAMETER ( QUART = 0.25 _d 0, HALF = 0.5 _d 0 )
f50f58ec54 Gael*0657       _RL siEps
3de1dea93d Jean*0658       PARAMETER ( siEps = 1. _d -5 )
9a87ea5e43 Ed H*0659 
1ed503f8a3 Gael*0660 C--   Constants needed by McPhee formulas for turbulent ocean fluxes :
1c278edd09 Jean*0661 C        Stanton number (dimensionless), typical friction velocity
1ed503f8a3 Gael*0662 C        beneath sea ice (m/s), and tapering factor (dimensionless)
                0663       _RL STANTON_NUMBER, USTAR_BASE, MCPHEE_TAPER_FAC
1c278edd09 Jean*0664       PARAMETER ( MCPHEE_TAPER_FAC = 12.5 _d 0 , STANTON_NUMBER =
1ed503f8a3 Gael*0665      &            0.0056 _d 0, USTAR_BASE = 0.0125 _d 0 )
                0666 
47852c9c0c Mart*0667 C--   identifiers for advected properties
f681b7f5d4 Dimi*0668       INTEGER GAD_HEFF,GAD_AREA,GAD_QICE1,GAD_QICE2,GAD_SNOW
f50f58ec54 Gael*0669       INTEGER GAD_SALT,GAD_SITR
425e8efc36 Jean*0670       PARAMETER ( GAD_HEFF  = 1,
bb3037b865 Gael*0671      &            GAD_AREA  = 2,
                0672      &            GAD_SNOW  = 3,
                0673      &            GAD_SALT  = 4,
ccaa3c61f4 Patr*0674      &            GAD_QICE1 = 5,
                0675      &            GAD_QICE2 = 6,
f50f58ec54 Gael*0676      &            GAD_SITR  = 7)
0f6ad6f523 Mart*0677 
9a87ea5e43 Ed H*0678 CEH3 ;;; Local Variables: ***
                0679 CEH3 ;;; mode:fortran ***
                0680 CEH3 ;;; End: ***