/[MITgcm]/MITgcm_contrib/jscott/igsm/src/gr_clm.F
ViewVC logotype

Annotation of /MITgcm_contrib/jscott/igsm/src/gr_clm.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (hide annotations) (download)
Fri Aug 11 19:35:31 2006 UTC (18 years, 11 months ago) by jscott
Branch: MAIN
atm2d package

1 jscott 1.1
2     #include "ctrparam.h"
3    
4     ! ==========================================================
5     !
6     ! GROUND.F: THIS SUBROUTINE USES THE SURFACE FLUXES TO
7     ! PREDICT IN TIME THE GROUND TEMPERATURE, GROUND
8     ! WATER AND ICE, AND SNOW MELTING.
9     !
10     ! ----------------------------------------------------------
11     !
12     ! Revision History:
13     !
14     ! When Who What
15     ! ---- ---------- -------
16     ! 073100 Chien Wang add cpp & dmax dmin -> max, min
17     !
18     ! ==========================================================
19    
20     SUBROUTINE GR_CLM
21     C**** 7001.5
22     C**** THIS SUBROUTINE USES THE SURFACE FLUXES TO PREDICT IN TIME THE 7002.
23     C**** GROUND TEMPERATURE, GROUND WATER AND ICE, AND SNOW MELTING. 7002.5
24     C**** 7003.
25    
26     #if ( defined CLM )
27     #include "BD2G04.COM" 7003.5
28     #if ( defined OCEAN_3D || defined ML_2D )
29     #include "AGRID.COM"
30     #endif
31     #include "CLM.COM"
32     dimension DZSOI(nlevsoi)
33    
34    
35     COMMON U,V,T,P,Q 7004.
36     COMMON/WORK1/CONV(IM0,JM0,LM0),PK(IM0,JM0,LM0),PREC(IM0,JM0),
37     & TPREC(IM0,JM0)
38     COMMON/WORK3/E0(IO0,JM0,4),E1(IO0,JM0,4),EVAPOR(IO0,JM0,4) 7004.5
39     * ,TGRND(IO0,JM0,4)
40     COMMON/OT/OTA(IO0,JM0),OTB(IO0,JM0),OTC(IO0,JM0) 7005.
41     COMMON/SPEC2/KM,KINC,COEK,C3LAND(IO0,JM0),C3OICE(IO0,JM0) 7005.1
42     * ,C3LICE(IO0,JM0),WMGE(IO0,JM0),TSSFC(1,JM0,4) 7005.2
43     common/qfl/QFLUX(JM0,0:13),ZOAV(JM0),QFLUXT(JM0)
44     COMMON/OLDZO/Z1OOLD(IO0,JM0)
45     DIMENSION FWATER(JM0),TOBS(JM0),TF68(JM0),DELR(JM0) 7005.3
46     COMMON/FRMIC/ FRMDICE(JM0)
47     DATA SHV/0./,SHW/4185./,SHI/2060./,RHOW/1000./,RHOI/916.6/, 7005.9
48     * ALAMI/2.1762/,TFO/-1.56/,Z1I/.1/,Z2LI/2.9/,Z1E/.1/,Z2E/4./ 7006.
49     INTEGER JDOFM(13) 7006.1
50     DATA JDOFM/0,31,59,90,120,151,181,212,243,273,304,334,365/ 7006.2
51     DATA Z2OIM/0.9/,Z2OIX/4.9/ 7006.5
52     DATA TTRUNC/0./ 7007.
53     DATA IFIRST/1/ 7007.5
54     DATA DZSOI / 0.0175128179162552,
55     & 0.0275789692596763,
56     & 0.0454700332424132,
57     & 0.0749674109862086,
58     & 0.123600365102281,
59     & 0.203782551010432,
60     & 0.335980626448433,
61     & 0.553938405368685,
62     & 0.913290031589061,
63     & 1.1369718045125 /
64     C**** 7008.
65     C**** FDATA 2 LAND COVERAGE (1) 7008.5
66     C**** 3 RATIO OF LAND ICE COVERAGE TO LAND COVERAGE (1) 7009.
67     C**** 7009.5
68     C**** ODATA 1 OCEAN TEMPERATURE (C) 7010.
69     C**** 2 RATIO OF OCEAN ICE COVERAGE TO WATER COVERAGE (1) 7010.5
70     C**** 3 OCEAN ICE AMOUNT OF SECOND LAYER (KG/M**2) 7011.
71     C**** 7011.5
72     C**** GDATA 1 OCEAN ICE SNOW AMOUNT (KG/M**2) 7012.
73     C**** 2 EARTH SNOW AMOUNT (KG/M**2) 7012.5
74     C**** 3 OCEAN ICE TEMPERATURE OF FIRST LAYER (C) 7013.
75     C**** 4 EARTH TEMPERATURE OF FIRST LAYER (C) 7013.5
76     C**** 5 EARTH WATER OF FIRST LAYER (KG/M**2) 7014.
77     C**** 6 EARTH ICE OF FIRST LAYER (KG/M**2) 7014.5
78     C**** 7 OCEAN ICE TEMPERATURE OF SECOND LAYER (C) 7015.
79     C**** 8 EARTH TEMPERATURE OF SECOND LAYER (C) 7015.5
80     C**** 9 EARTH WATER OF SECOND LAYER (KG/M**2) 7016.
81     C**** 10 EARTH ICE OF SECOND LAYER (KG/M**2) 7016.5
82     C**** 12 LAND ICE SNOW AMOUNT (KG/M**2) 7017.
83     C**** 13 LAND ICE TEMPERATURE OF FIRST LAYER (C) 7017.5
84     C**** 14 LAND ICE TEMPERATURE OF SECOND LAYER (C) 7018.
85     C**** 7018.5
86     C**** VDATA 9 WATER FIELD CAPACITY OF FIRST LAYER (KG/M**2) 7019.
87     C**** 10 WATER FIELD CAPACITY OF SECOND LAYER (KG/M**2) 7019.5
88     C**** 7020.
89     IF(IFIRST.NE.1) GO TO 50 7020.5
90     IFIRST=0 7021.
91     ZS1=0.0
92     ZS2=0.0
93     ZS3=0.0
94     do k=1,nlevsoi
95     if(k.le.3)then
96     ZS1=ZS1+DZSOI(k)
97     else if(k.le.8)then
98     ZS2=ZS2+DZSOI(k)
99     endif
100     ZS3=ZS3+DZSOI(k)
101     enddo
102     print *,'Soil depth ',ZS1,ZS2,ZS3
103     FIO=IO 7021.1
104     JDAYPR=0
105     10 DTSRCE=NDYN*DT 7023.
106     ACE1I=Z1I*RHOI 7023.5
107     AC2OIM=Z2OIM*RHOI 7024.
108     ATRUNC=2.**(-13) 7024.5
109     BYZICX=1./(Z1I+Z2OIX) 7024.6
110     HC1I=ACE1I*SHI 7025.
111     HC2LI=Z2LI*RHOI*SHI 7025.5
112     HC1DE=Z1E*1129950. 7026.
113     HC2DE=Z2E*1129950.+3.5*.125*RHOW*3100. 7026.5
114     DIFFUS=DTSRCE/SDAY 7027.
115     C OTCOR=-.927E18 7027.1
116     print *,'E0(1,j,1)'
117     print *,(E0(1,j,1),j=1,JM0)
118     COEFSN=1.
119     print *,' COEFSN=',COEFSN
120     50 ANGLE=TWOPI*JDAY/365. 7027.5
121     DO 55 MONTH=1,12 7027.6
122     IF(JDAY.LE.JDOFM(MONTH+1)) GO TO 56 7027.7
123     55 CONTINUE 7027.8
124     56 CONTINUE 7027.9
125     SINANG=SIN(ANGLE) 7028.
126     COSANG=COS(ANGLE) 7028.5
127     C**** 7029.
128     C**** OUTSIDE LOOP OVER J AND I, EXECUTED ONCE FOR EACH GRID POINT 7029.5
129     C**** 7030.
130     JRPR=0
131     DO 980 J=1,JM 7030.5
132     IMAX=IM 7031.
133     IF((J.EQ.1).OR.(J.EQ.JM)) IMAX=1 7031.5
134     BF1DT=0. 7032.
135     BEDIFS=0. 7035.
136     BERUN0=0. 7036.
137     BERUN2=0. 7037.
138     BTG1=0. 7039.5
139     BTG2=0. 7041.
140     BEVAP=0. 7043.
141     BDIFS=0. 7044.
142     BRUN0=0. 7046.
143     BRUNS0=0.
144     BRUN2=0. 7047.
145     BWTR1=0. 7049.
146     BACE1=0. 7049.5
147     BWTR2=0. 7050.
148     BACE2=0. 7050.5
149     BSNOW=0. 7051.5
150     BSCOV=0.
151     BLWUP=0.
152     BSWUP=0.
153     DO 960 I=1,IMAX 7053.
154     C**** 7053.5
155     C**** 7054.5
156     C assign CLM results to GDATA
157     TG11=0.0
158     WTR1=0.0
159     ACE1=0.0
160     do k=1,3
161     TG11=TG11+tsoiclm(i,j,k)*DZSOI(k)
162     c WTR1=WTR1+h2olclm(i,j,k)*DZSOI(k)
163     c ACE1=ACE1+h2oiclm(i,j,k)*DZSOI(k)
164     WTR1=WTR1+h2olclm(i,j,k)
165     ACE1=ACE1+h2oiclm(i,j,k)
166     enddo
167     TG11=TG11/ZS1
168     c WTR1=0.1*WTR1/ZS1
169     c ACE1=0.1*ACE1/ZS1
170     TG2=0.0
171     WTR2=0.0
172     ACE2=0.0
173     do k=4,8
174     TG2=TG2+tsoiclm(i,j,k)*DZSOI(k)
175     c WTR2=WTR2+h2olclm(i,j,k)*DZSOI(k)
176     c ACE2=ACE2+h2oiclm(i,j,k)*DZSOI(k)
177     WTR2=WTR2+h2olclm(i,j,k)
178     ACE2=ACE2+h2oiclm(i,j,k)
179     enddo
180     TG2=TG2/ZS2-273.16
181     WTR2=WTR2/ZS2
182     ACE2=ACE2/ZS2
183     c TG1=tgndclm(i,j)-273.16
184     TG1=TGRND(I,J,3)
185     SNOW=100.*snwdclm(i,j)
186     C snwdclm in meters
187     SCOVL=snwcclm(i,j)
188     RUNS0=DTSRCE*(sroclm(i,j)+ssrclm(i,j)+glrclm(i,j))
189     ! RUN0=DTSRCE*(sroclm(i,j)+glrclm(i,j))
190     RUN0=DTSRCE*+glrclm(i,j)
191     RUN2=DTSRCE*ssrclm(i,j)
192     c print *,'From gr_clm J=',j,' TAU=',TAU
193     c print *,tsoiclm(i,j,1),tsoiclm(i,j,nlevsoi)
194     c print *,TG1,TG2,TG11
195     c print *,WTR1,WTR2,SNOW
196     albinr=0.7*aldirclm(j)+0.3*aldifclm(j)
197     albvis=0.7*asdirclm(j)+0.3*asdifclm(j)
198     swuclm=albinr*swinr4clm(j)+albvis*swvis4clm(j)
199    
200     GDATA(I,J,2)=SNOW
201     GDATA(I,J,4)=TG1 7294.5
202     GDATA(I,J,5)=WTR1 7295.
203     GDATA(I,J,6)=ACE1 7295.5
204     GDATA(I,J,8)=TG2 7296.
205     GDATA(I,J,9)=WTR2 7296.5
206     GDATA(I,J,10)=ACE2 7297.
207     GDATA(I,J,12)=SNOW
208     GDATA(I,J,13)=TG1 7191.
209     GDATA(I,J,14)=TG2 7191.5
210    
211     PLAND=FDATA(I,J,2) 7055.
212     C**** 7167.5
213     F0DT=E0(I,J,3) 7171.5
214     F1DT=E1(I,J,3) 7172.5
215     EVAP=EVAPOR(I,J,3) 7173.
216    
217    
218     C**** RESAVE PROGNOSTIC QUANTITIES 7293.5
219     BSNOW=BSNOW+SNOW*PLAND
220     BSCOV=BSCOV+SCOVL*PLAND
221     BTG1=BTG1+TG1*PLAND
222     BTG2=BTG2+TG2*PLAND
223     BWTR1=BWTR1+WTR1*PLAND
224     BACE1=BACE1+ACE1*PLAND
225     BWTR2=BWTR2+WTR2*PLAND
226     BACE2=BACE2+ACE2*PLAND
227     BF1DT=BF1DT+F1DT*PLAND
228     BEVAP=BEVAP+EVAP*PLAND
229     BRUNS0=BRUNS0+RUNS0*PLAND
230     BRUN0=BRUN0+RUN0*PLAND
231     BRUN2=BRUN2+RUN2*PLAND
232     BLWUP=BLWUP+lwuclm(i,j)*PLAND
233     BSWUP=BSWUP+swuclm*PLAND
234     C**** 7306.5
235     C**** ACCUMULATE DIAGNOSTICS 7307.
236     C**** 7307.5
237     960 CONTINUE 7315.5
238     C**** LONGITUDINALLY INTEGRATED QUANTITIES FOR DIAGJ 7316.
239     BJ(J,17)=BJ(J,17)+BTG2 7317.5
240     BJ(J,18)=BJ(J,18)+BTG1 7319.
241     BJ(J,19)=BJ(J,19)+BEVAP 7320.5
242     c BJ(J,40)=BJ(J,40)+BERUN0 7323.5
243     c BJ(J,41)=BJ(J,41)+BEDIFS 7324.
244     BJ(J,42)=BJ(J,42)+BF1DT 7325.
245     c BJ(J,43)=BJ(J,43)+BERUN2 7326.5
246     BJ(J,43)=BJ(J,43)+BSWUP
247     c BJ(J,45)=BJ(J,45)+BDIFS 7327.5
248     BJ(J,45)=BJ(J,45)+BLWUP
249     BJ(J,49)=BJ(J,49)+BWTR1 7332.
250     BJ(J,50)=BJ(J,50)+BACE1 7332.5
251     BJ(J,51)=BJ(J,51)+BWTR2 7333.
252     BJ(J,52)=BJ(J,52)+BACE2 7333.5
253     BJ(J,53)=BJ(J,53)+BSNOW 7334.5
254     c moved from dd2g04.F
255     BJ(J,31)=BJ(J,31)+BSCOV
256     C From prland
257     c BJ(J,39)=BJ(J,39)+BENRGP 4200.
258     c BJ(J,40)=BJ(J,40)+BERUN0 4201.
259     c BJ(J,41)=BJ(J,41)+BEDIFS 4201.5
260     c BJ(J,43)=BJ(J,43)+BERUN2 4203.
261     c BJ(J,45)=BJ(J,45)+BDIFS 4204.
262     C Runoff from first layer of soil including ice melting
263     BJ(J,47)=BJ(J,47)+BRUN0
264     C Runoff from first layer of soil does not include ice melting
265     BJ(J,54)=BJ(J,54)+BRUNS0
266     BJ(J,46)=BJ(J,46)+BRUN2
267     C From prland
268     #if ( defined OCEAN_3D || defined ML_2D )
269     COO Runoff from first layer of soil does not include ice melting
270     C Runoff from first layer of soil including glacial ice melting
271     arunoff(j)=arunoff(j)+RUNS0
272     #endif
273     980 CONTINUE 7336.5
274     #endif
275     RETURN 7337.
276     END 7337.5

  ViewVC Help
Powered by ViewVC 1.1.22