File indexing completed on 2023-03-29 05:09:44 UTC
view on githubraw file Latest commit cda1c18f on 2023-03-28 22:31:47 UTC
2d5bb917cc Jean*0001 #include "PACKAGES_CONFIG.h"
aea29c8517 Alis*0002 #include "CPP_OPTIONS.h"
cda1c18f72 Jean*0003 #ifdef ALLOW_MOM_COMMON
0004 # include "MOM_COMMON_OPTIONS.h"
0005 #endif
2d5bb917cc Jean*0006 #ifdef ALLOW_CTRL
0007 # include "CTRL_OPTIONS.h"
0008 #endif
aea29c8517 Alis*0009
9366854e02 Chri*0010
0011
0012
aea29c8517 Alis*0013 SUBROUTINE INI_DYNVARS( myThid )
9366854e02 Chri*0014
0015
d18df35fee Jean*0016
0017
9366854e02 Chri*0018
0019
0020
0021
0022
0023
0024
0025
aea29c8517 Alis*0026 IMPLICIT NONE
0027
0028 #include "SIZE.h"
0029 #include "EEPARAMS.h"
0030 #include "PARAMS.h"
0031 #include "DYNVARS.h"
855d57fc61 Jean*0032 #ifdef ALLOW_SOLVE4_PS_AND_DRAG
0033 #include "GRID.h"
0034 #endif /* ALLOW_SOLVE4_PS_AND_DRAG */
aea29c8517 Alis*0035
9366854e02 Chri*0036
aea29c8517 Alis*0037
d18df35fee Jean*0038
aea29c8517 Alis*0039 INTEGER myThid
0040
9366854e02 Chri*0041
aea29c8517 Alis*0042
d18df35fee Jean*0043
229ac9feb6 Jean*0044
aea29c8517 Alis*0045 INTEGER bi, bj
229ac9feb6 Jean*0046 INTEGER i, j, k
9366854e02 Chri*0047
aea29c8517 Alis*0048
0049
0050 DO bj = myByLo(myThid), myByHi(myThid)
0051 DO bi = myBxLo(myThid), myBxHi(myThid)
0052
0053
229ac9feb6 Jean*0054 DO k=1,Nr
0055 DO j=1-OLy,sNy+OLy
0056 DO i=1-OLx,sNx+OLx
aea29c8517 Alis*0057
229ac9feb6 Jean*0058 uVel (i,j,k,bi,bj) = 0. _d 0
0059 vVel (i,j,k,bi,bj) = 0. _d 0
0060 wVel (i,j,k,bi,bj) = 0. _d 0
0061 theta(i,j,k,bi,bj) = 0. _d 0
0062 salt (i,j,k,bi,bj) = 0. _d 0
ad9b3080a0 Patr*0063
229ac9feb6 Jean*0064 gU(i,j,k,bi,bj) = 0. _d 0
0065 gV(i,j,k,bi,bj) = 0. _d 0
274224cbb1 Jean*0066 #ifdef USE_OLD_EXTERNAL_FORCING
229ac9feb6 Jean*0067 gT(i,j,k,bi,bj) = 0. _d 0
0068 gS(i,j,k,bi,bj) = 0. _d 0
274224cbb1 Jean*0069 #endif
7d08bc1aa0 Jean*0070 #ifdef ALLOW_ADAMSBASHFORTH_3
229ac9feb6 Jean*0071 guNm(i,j,k,bi,bj,1) = 0. _d 0
0072 gvNm(i,j,k,bi,bj,1) = 0. _d 0
0073 gtNm(i,j,k,bi,bj,1) = 0. _d 0
0074 gsNm(i,j,k,bi,bj,1) = 0. _d 0
0075 guNm(i,j,k,bi,bj,2) = 0. _d 0
0076 gvNm(i,j,k,bi,bj,2) = 0. _d 0
0077 gtNm(i,j,k,bi,bj,2) = 0. _d 0
0078 gsNm(i,j,k,bi,bj,2) = 0. _d 0
7d08bc1aa0 Jean*0079 #else
229ac9feb6 Jean*0080 guNm1(i,j,k,bi,bj) = 0. _d 0
0081 gvNm1(i,j,k,bi,bj) = 0. _d 0
0082 gtNm1(i,j,k,bi,bj) = 0. _d 0
0083 gsNm1(i,j,k,bi,bj) = 0. _d 0
7d08bc1aa0 Jean*0084 #endif
2d5bb917cc Jean*0085 #if (defined (ALLOW_3D_DIFFKR) || defined (ALLOW_DIFFKR_CONTROL))
0086 diffKr(i,j,k,bi,bj)= 0. _d 0
0087 #endif
0088 #ifdef ALLOW_SMAG_3D_DIFFUSIVITY
0089 smag3D_diffK(i,j,k,bi,bj) = 0. _d 0
0090 #endif
0091 totPhiHyd(i,j,k,bi,bj) = 0. _d 0
0092 rhoInSitu(i,j,k,bi,bj) = 0. _d 0
fa49f16b06 Jean*0093 IVDConvCount(i,j,k,bi,bj) = 0. _d 0
cda1c18f72 Jean*0094 #ifdef ALLOW_LEITH_QG
0095 sigmaRfield(i,j,k,bi,bj) = 0. _d 0
0096 #endif
855d57fc61 Jean*0097 #ifdef ALLOW_SOLVE4_PS_AND_DRAG
2d5bb917cc Jean*0098 dU_psFacX(i,j,k,bi,bj) = 0. _d 0
0099 dV_psFacY(i,j,k,bi,bj) = 0. _d 0
855d57fc61 Jean*0100 #endif /* ALLOW_SOLVE4_PS_AND_DRAG */
fb2c52cfd4 aver*0101 #ifdef INCLUDE_SOUNDSPEED_CALC_CODE
0102 cSound(i,j,k,bi,bj) = 0. _d 0
0103 #endif /* INCLUDE_SOUNDSPEED_CALC_CODE */
aea29c8517 Alis*0104 ENDDO
0105 ENDDO
0106 ENDDO
0107
0108
fb2c52cfd4 aver*0109 DO j=1-OLy,sNy+OLy
0110 DO i=1-OLx,sNx+OLx
229ac9feb6 Jean*0111 etaN(i,j,bi,bj) = 0. _d 0
0112 etaH(i,j,bi,bj) = 0. _d 0
0113 phiHydLow(i,j,bi,bj) = 0. _d 0
0114 hMixLayer(i,j,bi,bj) = 0. _d 0
aea29c8517 Alis*0115 ENDDO
0116 ENDDO
0117
855d57fc61 Jean*0118 #ifdef ALLOW_SOLVE4_PS_AND_DRAG
0119
0120 DO k=1,Nr
0121 DO j=1-OLy,sNy+OLy
0122 DO i=1-OLx,sNx+OLx
0123 dU_psFacX(i,j,k,bi,bj) = maskW(i,j,k,bi,bj)
0124 & *recip_deepFacC(k)*recip_rhoFacC(k)
0125 dV_psFacY(i,j,k,bi,bj) = maskS(i,j,k,bi,bj)
0126 & *recip_deepFacC(k)*recip_rhoFacC(k)
0127 ENDDO
0128 ENDDO
0129 ENDDO
0130 #endif /* ALLOW_SOLVE4_PS_AND_DRAG */
0131
aea29c8517 Alis*0132 ENDDO
0133 ENDDO
0134
0135 RETURN
0136 END