31 |
|
|
32 |
integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid |
integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid |
33 |
_RL myTime |
_RL myTime |
34 |
|
_RL rayleighdrag |
35 |
|
|
36 |
integer i, j |
integer i, j |
37 |
|
|
38 |
|
if(klev.eq.Nr)then |
39 |
|
rayleighdrag = 1./(31.*86400.*2.) |
40 |
|
else |
41 |
|
rayleighdrag = 0. |
42 |
|
endif |
43 |
|
|
44 |
do j=jMin,jMax |
do j=jMin,jMax |
45 |
do i=iMin,iMax |
do i=iMin,iMax |
46 |
gU(i,j,kLev,bi,bj) = gU(i,j,kLev,bi,bj) + |
gU(i,j,kLev,bi,bj) = gU(i,j,kLev,bi,bj) + |
47 |
. maskW(i,j,kLev,bi,bj) * guphy(i,j,kLev,bi,bj) |
. maskW(i,j,kLev,bi,bj) * guphy(i,j,kLev,bi,bj) |
48 |
|
. - rayleighdrag * maskW(i,j,kLev,bi,bj)*uVel(i,j,kLev,bi,bj) |
49 |
enddo |
enddo |
50 |
enddo |
enddo |
51 |
|
|
80 |
|
|
81 |
integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid |
integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid |
82 |
_RL myTime |
_RL myTime |
83 |
|
_RL rayleighdrag |
84 |
|
|
85 |
integer i, j |
integer i, j |
86 |
|
|
87 |
|
if(klev.eq.Nr)then |
88 |
|
rayleighdrag = 1./(31.*86400.*2.) |
89 |
|
else |
90 |
|
rayleighdrag = 0. |
91 |
|
endif |
92 |
|
|
93 |
do j=jMin,jMax |
do j=jMin,jMax |
94 |
do i=iMin,iMax |
do i=iMin,iMax |
95 |
gV(i,j,kLev,bi,bj) = gV(i,j,kLev,bi,bj) + |
gV(i,j,kLev,bi,bj) = gV(i,j,kLev,bi,bj) + |
96 |
. maskS(i,j,kLev,bi,bj) * gvphy(i,j,kLev,bi,bj) |
. maskS(i,j,kLev,bi,bj) * gvphy(i,j,kLev,bi,bj) |
97 |
|
. - rayleighdrag * maskS(i,j,kLev,bi,bj)*vVel(i,j,kLev,bi,bj) |
98 |
enddo |
enddo |
99 |
enddo |
enddo |
100 |
|
|
128 |
|
|
129 |
integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid |
integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid |
130 |
_RL myTime |
_RL myTime |
131 |
|
_RL rayleighdrag,getcon,cp,kappa,pNrkappa |
132 |
|
|
133 |
integer i, j |
integer i, j |
134 |
|
|
135 |
|
if(klev.eq.Nr)then |
136 |
|
cp = getcon('CP') |
137 |
|
kappa = getcon('KAPPA') |
138 |
|
pNrkappa = (rC(Nr)/100000.)**kappa |
139 |
|
rayleighdrag = 1./((31.*86400.*2.)*(pNrkappa*cp)) |
140 |
|
else |
141 |
|
rayleighdrag = 0. |
142 |
|
endif |
143 |
|
|
144 |
do j=jMin,jMax |
do j=jMin,jMax |
145 |
do i=iMin,iMax |
do i=iMin,iMax |
146 |
gT(i,j,kLev,bi,bj) = maskC(i,j,kLev,bi,bj) |
gT(i,j,kLev,bi,bj) = maskC(i,j,kLev,bi,bj) |
147 |
. *( gT(i,j,kLev,bi,bj) + gthphy(i,j,kLev,bi,bj) ) |
. *( gT(i,j,kLev,bi,bj) + gthphy(i,j,kLev,bi,bj) ) |
148 |
|
. + rayleighdrag * |
149 |
|
. (maskW(i,j,kLev,bi,bj)*uVel(i,j,kLev,bi,bj)*uVel(i,j,kLev,bi,bj)+ |
150 |
|
. maskS(i,j,kLev,bi,bj)*vVel(i,j,kLev,bi,bj)*vVel(i,j,kLev,bi,bj)) |
151 |
enddo |
enddo |
152 |
enddo |
enddo |
153 |
|
|