File indexing completed on 2026-05-05 05:09:00 UTC
view on githubraw file Latest commit 3f0f10fc on 2026-05-04 14:55:37 UTC
fefe253d88 Dimi*0001
0002
0003
0004
3c80412959 Jean*0005
0006
0007
0008
0009
809c36b928 Patr*0010
3c80412959 Jean*0011
0012
0013
0014
0015
0016
0017
460cb5f999 Dimi*0018
3c80412959 Jean*0019
0020
0021
0022
0023
0024
0025
0026
0027
fefe253d88 Dimi*0028
0029
b61db21361 Mart*0030
0031
45315406aa Mart*0032 COMMON/SEAICE_DYNVARS_1/
0033 & AREA, HEFF, HSNOW, UICE, VICE
0034 _RL AREA (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0035 _RL HEFF (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0036 _RL HSNOW (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0037 _RL UICE (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0038 _RL VICE (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0039
0040
0041
0042 COMMON/SEAICE_DYNVARS_2/
0043 & DWATN,
0044 & uIceNm1, vIceNm1
0045 _RL DWATN (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0046 _RL uIceNm1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0047 _RL vIceNm1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0048
86b84a92fc Patr*0049 #ifdef SEAICE_ITD
45315406aa Mart*0050 COMMON/SEAICE_DYNVARS_ITD/
0051 & AREAITD, HEFFITD, HSNOWITD,
0052 & opnWtrFrac, fw2ObyRidge
8377b8ee87 Mart*0053
0054
0055
0056
0057
0058
0059
86b84a92fc Patr*0060 _RL AREAITD (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nITD,nSx,nSy)
0061 _RL HEFFITD (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nITD,nSx,nSy)
0062 _RL HSNOWITD (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nITD,nSx,nSy)
b1ac83383d Mart*0063 _RL opnWtrFrac (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
d445b0e4a7 Mart*0064 _RL fw2ObyRidge(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
f913c5a485 Mart*0065 #endif /* SEAICE_ITD */
4b1ace36e3 Mart*0066
45315406aa Mart*0067 #ifdef SEAICE_CGRID
0068
0069 COMMON /SEAICE_STRESSDIV/
0070 & stressDivergenceX, stressDivergenceY
0071 _RL stressDivergenceX(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0072 _RL stressDivergenceY(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0073 # ifdef SEAICE_ALLOW_EVP
0074
0075
0076
0077
0078
0079 COMMON /SEAICE_EVP_FIELDS/
0080 & seaice_sigma1, seaice_sigma2, seaice_sigma12
0081 _RL seaice_sigma1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0082 _RL seaice_sigma2 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0083 _RL seaice_sigma12 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0084 # endif /* SEAICE_ALLOW_EVP */
0085 #endif
0086
0087 #if ( defined SEAICE_CGRID || defined SEAICE_BGRID_DYNAMICS )
8377b8ee87 Mart*0088
0089
0090
0091
0092
0093
0094
0095
45315406aa Mart*0096
065b1424ce Patr*0097 COMMON/SEAICE_DYNVARS_3/
45315406aa Mart*0098 & ETA, etaZ, ZETA, zetaZ, PRESS, tensileStrFac,
0099 & e11, e22, e12, deltaC,
0100 & FORCEX,FORCEY
0101
772590b63c Mart*0102 _RL ETA (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
5ee9d8ba4b Mart*0103 _RL etaZ (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
772590b63c Mart*0104 _RL ZETA (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
1459e8fe5a Mart*0105 _RL zetaZ (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
7bdcfa8e6c Mart*0106
772590b63c Mart*0107 _RL PRESS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
45315406aa Mart*0108 _RL tensileStrFac(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
7bdcfa8e6c Mart*0109
772590b63c Mart*0110 _RL e11 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0111 _RL e22 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0112 _RL e12 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
36fa289698 Mart*0113 _RL deltaC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
7bdcfa8e6c Mart*0114
772590b63c Mart*0115 _RL FORCEX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0116 _RL FORCEY (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
2f88b60189 Mart*0117
8377b8ee87 Mart*0118
0119
8e32c48b8f Mart*0120
8377b8ee87 Mart*0121 COMMON/SEAICE_DYNVARS_4/
45315406aa Mart*0122 & PRESS0, FORCEX0, FORCEY0, SEAICE_zMax, SEAICE_zMin
0123 _RL PRESS0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0124 _RL FORCEX0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0125 _RL FORCEY0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0126 _RL SEAICE_zMax(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0127 _RL SEAICE_zMin(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0128 #endif
8377b8ee87 Mart*0129
0130 #ifdef SEAICE_CGRID
0131
2f88b60189 Mart*0132 COMMON/SEAICE_DYNVARS_CGRID/
2f5e8addfd Mart*0133 & seaiceMassC, seaiceMassU, seaiceMassV
0134 _RL seaiceMassC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0135 _RL seaiceMassU(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0136 _RL seaiceMassV(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
8377b8ee87 Mart*0137 # ifdef SEAICE_ALLOW_FREEDRIFT
0138
0139 COMMON /SEAICE_FD_FIELDS/
0140 & uice_fd, vice_fd
0141 _RL uice_fd (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0142 _RL vice_fd (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0143 # endif
809c36b928 Patr*0144
8377b8ee87 Mart*0145 # ifdef SEAICE_ALLOW_BOTTOMDRAG
0146
abb637800a Mart*0147 COMMON/SEAICE_BOTTOMDRAG/ CbotC
0148 _RL CbotC (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
8377b8ee87 Mart*0149 # endif /* SEAICE_ALLOW_BOTTOMDRAG */
0150
5bb179ddc2 Mart*0151 # ifdef SEAICE_ALLOW_SIDEDRAG
0152
0153
0154
0155
0156
0157 COMMON/SEAICE_SIDEDRAG/ sideDragU, sideDragV,
0158 & coastRoughU, coastRoughV
0159 _RL sideDragU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0160 _RL sideDragV (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0161 _RL coastRoughU(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0162 _RL coastRoughV(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0163 # endif /* SEAICE_ALLOW_SIDEDRAG */
0164
45315406aa Mart*0165 # if ( defined SEAICE_ALLOW_JFNK || defined SEAICE_ALLOW_KRYLOV )
8377b8ee87 Mart*0166
0167 INTEGER totalNewtonIters
0168 INTEGER totalNewtonFails
0169 INTEGER totalKrylovIters
0170 INTEGER totalKrylovFails
0171 INTEGER totalJFNKtimeSteps
0172 COMMON /SEAICE_SOLVER_I/
0173 & totalNewtonIters, totalNewtonFails,
0174 & totalKrylovIters, totalKrylovFails,
0175 & totalJFNKtimeSteps
45315406aa Mart*0176
8377b8ee87 Mart*0177 INTEGER nVec
0178 PARAMETER ( nVec=2*sNx*sNy )
0179 _RL scalarProductMetric( nVec, 1, nSx, nSy )
0180 COMMON /SEAICE_KRYLOV_RL/ scalarProductMetric
0181 # endif /* SEAICE_ALLOW_JFNK or SEAICE_ALLOW_KRYLOV */
0182
45315406aa Mart*0183 #endif /* SEAICE_CGRID */
0184
0185 #ifdef SEAICE_BGRID_DYNAMICS
8377b8ee87 Mart*0186
0187
45315406aa Mart*0188
0189
0190
0191 COMMON/SEAICE_DYNVARS_BGRID/ AMASS, DAIRN, uIceB, vIceB
8377b8ee87 Mart*0192 _RL AMASS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0193 _RL DAIRN (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
45315406aa Mart*0194 _RL uIceB (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0195 _RL vIceB (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
8377b8ee87 Mart*0196
0197 COMMON/WIND_STRESS_OCE/WINDX,WINDY
0198
0199
0200 _RL WINDX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0201 _RL WINDY (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0202
0203
0204 COMMON/GWATXY/GWATX,GWATY
0205 _RL GWATX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0206 _RL GWATY (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0207
0208
0209 COMMON/SEAICE_KGEO/KGEO
0210 INTEGER KGEO (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
45315406aa Mart*0211 #endif /* SEAICE_BGRID_DYNAMICS */
53092bcb42 Mart*0212
1cf549c217 Mart*0213 COMMON/SEAICE_REG_NEG/d_HEFFbyNEG,d_HSNWbyNEG
0214
0215
0216 _RL d_HEFFbyNEG (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0217 _RL d_HSNWbyNEG (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
ccbdcd2957 Jean*0218
1cf549c217 Mart*0219 #ifdef EXF_SEAICE_FRACTION
0220 COMMON/SEAICE_RELAX/d_AREAbyRLX,d_HEFFbyRLX
0221
0222 _RL d_AREAbyRLX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0223
0224 _RL d_HEFFbyRLX (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0225 #endif /* EXF_SEAICE_FRACTION */
8377b8ee87 Mart*0226
a98c4b8072 Ian *0227 #ifdef SEAICE_VARIABLE_SALINITY
8377b8ee87 Mart*0228
0229
0230
1cf549c217 Mart*0231 COMMON/SEAICE_SALINITY_R/HSALT, saltFluxAdjust
0232 _RL HSALT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0233 _RL saltFluxAdjust(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0234 #endif /* SEAICE_VARIABLE_SALINITY */
fdfa8e151f Dimi*0235
8377b8ee87 Mart*0236
0237
0238
14ff2fe9e4 Dimi*0239 COMMON/ICEFLUX/ saltWtrIce, frWtrIce
772590b63c Mart*0240 _RL saltWtrIce (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
0241 _RL frWtrIce (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
1cfef3b6ad Patr*0242
5e0369b6fa Mart*0243
89a0cb7c99 Mart*0244 COMMON/MULTICATEGORY/TICES
f913c5a485 Mart*0245 _RL TICES (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nITD,nSx,nSy)
6c847351e2 Patr*0246
9a87ea5e43 Ed H*0247
0248
0249