File indexing completed on 2025-10-27 12:20:54 UTC
view on githubraw file Latest commit c3be0435 on 2025-09-18 18:40:16 UTC
9c9abe7120 Jean*0001 #include "CPP_OPTIONS.h"
0002
0003
0004
0005
0006 SUBROUTINE INI_FFIELDS( myThid )
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 IMPLICIT NONE
0019
0020 #include "SIZE.h"
0021 #include "EEPARAMS.h"
0022 #include "PARAMS.h"
0023 #include "FFIELDS.h"
0024
0025
0026
0027
0028 INTEGER myThid
0029
0030
0031
0032
0033
0034 INTEGER bi, bj
0035 INTEGER i, j, k
0036
0037
0038
0039 DO bj = myByLo(myThid), myByHi(myThid)
0040 DO bi = myBxLo(myThid), myBxHi(myThid)
0041
0042
0043 DO j=1-OLy,sNy+OLy
0044 DO i=1-OLx,sNx+OLx
0045 fu (i,j,bi,bj) = 0. _d 0
0046 fv (i,j,bi,bj) = 0. _d 0
0047 Qnet (i,j,bi,bj) = 0. _d 0
0048 Qsw (i,j,bi,bj) = 0. _d 0
0049 EmPmR (i,j,bi,bj) = 0. _d 0
0050 saltFlux (i,j,bi,bj) = 0. _d 0
0051 SST (i,j,bi,bj) = 0. _d 0
0052 SSS (i,j,bi,bj) = 0. _d 0
0053 phiTide2d (i,j,bi,bj) = 0. _d 0
0054 pLoad (i,j,bi,bj) = 0. _d 0
0055 sIceLoad (i,j,bi,bj) = 0. _d 0
c3be04357d Jean*0056 gcmSST (i,j,bi,bj) = 0. _d 0
9c9abe7120 Jean*0057 #ifdef ALLOW_GEOTHERMAL_FLUX
0058 geothermalFlux (i,j,bi,bj) = 0. _d 0
0059 #endif
c3be04357d Jean*0060
2e7aec9951 dngo*0061
9c9abe7120 Jean*0062 Qnetm (i,j,bi,bj) = 0. _d 0
c3be04357d Jean*0063
9c9abe7120 Jean*0064 #ifndef EXCLUDE_FFIELDS_LOAD
0065
0066 taux0 (i,j,bi,bj) = 0. _d 0
0067 taux1 (i,j,bi,bj) = 0. _d 0
0068 tauy0 (i,j,bi,bj) = 0. _d 0
0069 tauy1 (i,j,bi,bj) = 0. _d 0
0070 Qnet0 (i,j,bi,bj) = 0. _d 0
0071 Qnet1 (i,j,bi,bj) = 0. _d 0
0072 EmPmR0 (i,j,bi,bj) = 0. _d 0
0073 EmPmR1 (i,j,bi,bj) = 0. _d 0
0074 saltFlux0 (i,j,bi,bj) = 0. _d 0
0075 saltFlux1 (i,j,bi,bj) = 0. _d 0
0076 SST0 (i,j,bi,bj) = 0. _d 0
0077 SST1 (i,j,bi,bj) = 0. _d 0
0078 SSS0 (i,j,bi,bj) = 0. _d 0
0079 SSS1 (i,j,bi,bj) = 0. _d 0
0080 #ifdef SHORTWAVE_HEATING
0081 Qsw0 (i,j,bi,bj) = 0. _d 0
0082 Qsw1 (i,j,bi,bj) = 0. _d 0
0083 #endif
0084 #ifdef ALLOW_GEOTHERMAL_FLUX
0085 geothFlux0 (i,j,bi,bj) = 0. _d 0
0086 geothFlux1 (i,j,bi,bj) = 0. _d 0
0087 #endif
0088 #ifdef ATMOSPHERIC_LOADING
0089 pLoad0 (i,j,bi,bj) = 0. _d 0
0090 pLoad1 (i,j,bi,bj) = 0. _d 0
0091 #endif
0092 #endif /* EXCLUDE_FFIELDS_LOAD */
0093 ENDDO
0094 ENDDO
0095 #ifndef EXCLUDE_FFIELDS_LOAD
0096 loadedRec(bi,bj) = 0
0097 #endif /* EXCLUDE_FFIELDS_LOAD */
0098
0099
0100 DO k=1,Nr
0101 #ifdef ALLOW_ADDFLUID
0102 DO j=1-OLy,sNy+OLy
0103 DO i=1-OLx,sNx+OLx
0104 addMass(i,j,k,bi,bj) = 0. _d 0
0105 ENDDO
0106 ENDDO
0107 #endif /* ALLOW_ADDFLUID */
0108 #ifdef ALLOW_FRICTION_HEATING
0109 DO j=1-OLy,sNy+OLy
0110 DO i=1-OLx,sNx+OLx
0111 frictionHeating(i,j,k,bi,bj) = 0. _d 0
0112 ENDDO
0113 ENDDO
0114 #endif /* ALLOW_FRICTION_HEATING */
0115 #ifdef ALLOW_EDDYPSI
0116 DO j=1-OLy,sNy+OLy
0117 DO i=1-OLx,sNx+OLx
0118 eddyPsiX (i,j,k,bi,bj) = 0. _d 0
0119 eddyPsiY (i,j,k,bi,bj) = 0. _d 0
0120 tauxEddy (i,j,k,bi,bj) = 0. _d 0
0121 tauyEddy (i,j,k,bi,bj) = 0. _d 0
0122 uEulerMean(i,j,k,bi,bj) = 0. _d 0
0123 vEulerMean(i,j,k,bi,bj) = 0. _d 0
0124 ENDDO
0125 ENDDO
0126 #endif /* ALLOW_EDDYPSI */
0127 ENDDO
0128
0129
0130 DO j=1-OLy,sNy+OLy
0131 DO i=1-OLx,sNx+OLx
0132 surfaceForcingU (i,j,bi,bj) = 0. _d 0
0133 surfaceForcingV (i,j,bi,bj) = 0. _d 0
0134 surfaceForcingT (i,j,bi,bj) = 0. _d 0
0135 surfaceForcingS (i,j,bi,bj) = 0. _d 0
0136 adjustColdSST_diag (i,j,bi,bj) = 0. _d 0
0137 lambdaThetaClimRelax(i,j,bi,bj) = 0. _d 0
0138 lambdaSaltClimRelax (i,j,bi,bj) = 0. _d 0
2e7aec9951 dngo*0139 #ifdef ALLOW_BALANCE_FLUXES
0140 weight2BalanceFlx(i,j,bi,bj) = 0. _d 0
0141 #endif
9c9abe7120 Jean*0142 botDragU (i,j,bi,bj) = 0. _d 0
0143 botDragV (i,j,bi,bj) = 0. _d 0
0144 ENDDO
0145 ENDDO
0146
0147
0148 ENDDO
0149 ENDDO
0150
0151 RETURN
0152 END