47 |
|
|
48 |
integer i, j, L, bi, bj, Lbotij |
integer i, j, L, bi, bj, Lbotij |
49 |
integer im1, im2, jm1, jm2, idim1, idim2, jdim1, jdim2 |
integer im1, im2, jm1, jm2, idim1, idim2, jdim1, jdim2 |
50 |
|
logical alarm |
51 |
|
external alarm |
52 |
|
|
53 |
im1 = 1-OLx |
im1 = 1-OLx |
54 |
im2 = sNx+OLx |
im2 = sNx+OLx |
59 |
jdim1 = 1 |
jdim1 = 1 |
60 |
jdim2 = sNy |
jdim2 = sNy |
61 |
|
|
62 |
|
c First Check to see if we can start a fizhi experiment at current time |
63 |
|
c All Fizhi alarms must be on for the first time step of a segment |
64 |
|
|
65 |
|
if( .not.alarm('moist') .or. .not.alarm('turb') .or. |
66 |
|
. .not.alarm('radsw') .or. .not.alarm('radlw') ) then |
67 |
|
print *,' Cant Start Fizhi experiment at ',nymd,' ',nhms |
68 |
|
stop |
69 |
|
endif |
70 |
|
|
71 |
|
C Deal Here with Variables that are on a Fizhi Pickup or need Initialization |
72 |
|
|
73 |
IF ( startTime.EQ.0. .AND. nIter0.EQ.0 ) THEN |
IF ( startTime.EQ.0. .AND. nIter0.EQ.0 ) THEN |
74 |
print *,' In fizhi_init_vars: Beginning of New Experiment ' |
print *,' In fizhi_init_vars: Beginning of New Experiment ' |
75 |
|
|
203 |
enddo |
enddo |
204 |
enddo |
enddo |
205 |
|
|
206 |
c Now initialize tke, xlmt, khmt, xxmt, yymt, ctmt, zetamt, |
c Initialize tke, xlmt, khmt, xxmt, yymt, ctmt, zetamt, |
207 |
if( (nhms.eq.nhms0) .and. (nymd.eq.nymd0) ) then |
if( (nhms.eq.nhms0) .and. (nymd.eq.nymd0) ) then |
208 |
print *,' Cold Start: Zero out Turb second moments ' |
print *,' Cold Start: Zero out Turb second moments ' |
209 |
do i = 1,nchp |
do i = 1,nchp |
219 |
khmt(i,L,bi,bj) = 0. |
khmt(i,L,bi,bj) = 0. |
220 |
enddo |
enddo |
221 |
enddo |
enddo |
222 |
|
else |
223 |
|
print *,' Need initial Values for TKE - dont have them! ' |
224 |
|
stop |
225 |
endif |
endif |
226 |
|
|
227 |
c Now initialize land state too - tcanopy, etc... SET FOR NOW, |
c Now initialize land state too - tcanopy, etc... SET FOR NOW, |
248 |
do L = 1,Nrphys |
do L = 1,Nrphys |
249 |
do j = 1,sNy |
do j = 1,sNy |
250 |
do i = 1,sNx |
do i = 1,sNx |
251 |
swlz(i,j,L) = 0. |
swlz(i,j,L,bi,bj) = 0. |
252 |
lwlz(i,j,L) = 0. |
lwlz(i,j,L,bi,bj) = 0. |
253 |
qliqavesw(i,j,L) = 0. |
qliqavesw(i,j,L,bi,bj) = 0. |
254 |
qliqavelw(i,j,L) = 0. |
qliqavelw(i,j,L,bi,bj) = 0. |
255 |
fccavesw(i,j,L) = 0. |
fccavesw(i,j,L,bi,bj) = 0. |
256 |
fccavelw(i,j,L) = 0. |
fccavelw(i,j,L,bi,bj) = 0. |
257 |
cldtot_sw(i,j,L) = 0. |
cldtot_sw(i,j,L,bi,bj) = 0. |
258 |
cldras_sw(i,j,L) = 0. |
cldras_sw(i,j,L,bi,bj) = 0. |
259 |
cldlsp_sw(i,j,L) = 0. |
cldlsp_sw(i,j,L,bi,bj) = 0. |
260 |
cldtot_lw(i,j,L) = 0. |
cldtot_lw(i,j,L,bi,bj) = 0. |
261 |
cldras_lw(i,j,L) = 0. |
cldras_lw(i,j,L,bi,bj) = 0. |
262 |
cldlsp_lw(i,j,L) = 0. |
cldlsp_lw(i,j,L,bi,bj) = 0. |
|
lwdt(i,j,L,bi,bj) = 0. |
|
|
swdt(i,j,L,bi,bj) = 0. |
|
|
turbt(i,j,L,bi,bj) = 0. |
|
|
moistt(i,j,L,bi,bj) = 0. |
|
|
turbq(i,j,L,1,bi,bj) = 0. |
|
|
moistq(i,j,L,1,bi,bj) = 0. |
|
|
turbu(i,j,L,bi,bj) = 0. |
|
|
moistu(i,j,L,bi,bj) = 0. |
|
|
turbv(i,j,L,bi,bj) = 0. |
|
|
moistv(i,j,L,bi,bj) = 0. |
|
263 |
enddo |
enddo |
264 |
enddo |
enddo |
265 |
enddo |
enddo |
266 |
do j = 1,sNy |
do j = 1,sNy |
267 |
do i = 1,sNx |
do i = 1,sNx |
268 |
rainlsp(i,j) = 0. |
rainlsp(i,j,bi,bj) = 0. |
269 |
raincon(i,j) = 0. |
raincon(i,j,bi,bj) = 0. |
270 |
snowfall(i,j) = 0. |
snowfall(i,j,bi,bj) = 0. |
271 |
enddo |
enddo |
272 |
enddo |
enddo |
273 |
|
|