1 |
C $Header$ |
C $Header$ |
2 |
C $Name$ |
C $Name$ |
3 |
|
|
4 |
|
#include "FIZHI_OPTIONS.h" |
5 |
SUBROUTINE TILE ( |
SUBROUTINE TILE ( |
6 |
I NCH, DTSTEP, ITYP, TRAINL,TRAINC, TSNOW, UM, |
I NCH, DTSTEP, ITYP, TRAINL,TRAINC, TSNOW, UM, |
7 |
I ETURB, DEDQA, DEDTC, HSTURB, DHSDQA, DHSDTC, |
I ETURB, DEDQA, DEDTC, HSTURB, DHSDQA, DHSDTC, |
31 |
C**** |
C**** |
32 |
INTEGER NCH |
INTEGER NCH |
33 |
INTEGER ITYP(NCH) |
INTEGER ITYP(NCH) |
34 |
REAL DTSTEP, TRAINL(NCH), TRAINC(NCH), TSNOW(NCH), UM(NCH), |
_RL DTSTEP, TRAINL(NCH), TRAINC(NCH), TSNOW(NCH), UM(NCH), |
35 |
& ETURB(NCH), DEDQA(NCH), HSTURB(NCH), DHSDTC(NCH), |
& ETURB(NCH), DEDQA(NCH), HSTURB(NCH), DHSDTC(NCH), |
36 |
& TM (NCH), CD(NCH), SUNANG(NCH), DHSDQA(NCH), |
& TM (NCH), CD(NCH), SUNANG(NCH), DHSDQA(NCH), |
37 |
& QM (NCH), PARDIR(NCH), PARDIF(NCH), SWNET(NCH), |
& QM (NCH), PARDIR(NCH), PARDIF(NCH), SWNET(NCH), |
38 |
& HLWDWN(NCH), PSUR(NCH), ZLAI(NCH), GREEN(NCH), |
& HLWDWN(NCH), PSUR(NCH), ZLAI(NCH), GREEN(NCH), |
39 |
& Z2(NCH), SQSCAT(NCH), DEDTC(NCH) |
& Z2(NCH), SQSCAT(NCH), DEDTC(NCH) |
40 |
REAL RSOIL1(NCH), RSOIL2(NCH), RDC(NCH), U2FAC(NCH), |
_RL RSOIL1(NCH), RSOIL2(NCH), RDC(NCH), U2FAC(NCH), |
41 |
& QSATTC(NCH), DQSDTC(NCH), ALWRAD(NCH), BLWRAD(NCH), |
& QSATTC(NCH), DQSDTC(NCH), ALWRAD(NCH), BLWRAD(NCH), |
42 |
& TC(NCH), TD(NCH), QA(NCH), BOMB(NCH), |
& TC(NCH), TD(NCH), QA(NCH), BOMB(NCH), |
43 |
& SWET1(NCH), SWET2(NCH), SWET3(NCH), CAPAC(NCH), |
& SWET1(NCH), SWET2(NCH), SWET3(NCH), CAPAC(NCH), |
44 |
& SNOW(NCH), EVAP(NCH), SHFLUX(NCH), RUNOFF(NCH) |
& SNOW(NCH), EVAP(NCH), SHFLUX(NCH), RUNOFF(NCH) |
45 |
REAL EINT(NCH), ESOI(NCH), EVEG(NCH), ESNO(NCH), |
_RL EINT(NCH), ESOI(NCH), EVEG(NCH), ESNO(NCH), |
46 |
& STRDG1(NCH), STRDG2(NCH), STRDG3(NCH), STRDG4(NCH), |
& STRDG1(NCH), STRDG2(NCH), STRDG3(NCH), STRDG4(NCH), |
47 |
& STRDG5(NCH), STRDG6(NCH), STRDG7(NCH), STRDG8(NCH), |
& STRDG5(NCH), STRDG6(NCH), STRDG7(NCH), STRDG8(NCH), |
48 |
& STRDG9(NCH), |
& STRDG9(NCH), |
50 |
& RUNSRF(NCH), FWSOIL(NCH) |
& RUNSRF(NCH), FWSOIL(NCH) |
51 |
C**** |
C**** |
52 |
INTEGER ChNo |
INTEGER ChNo |
53 |
REAL SWET(nch,NLAY), VGPSAT(NTYPS), VGCSAT (NTYPS), |
_RL SWET(nch,NLAY), VGPSAT(NTYPS), VGCSAT (NTYPS), |
54 |
& VGZDEP(NLAY,NTYPS), VGSLOP(NTYPS), DELTC, |
& VGZDEP(NLAY,NTYPS), VGSLOP(NTYPS), DELTC, |
55 |
& DELEA, VGPH1(NTYPS), VGPH2(NTYPS), |
& DELEA, VGPH1(NTYPS), VGPH2(NTYPS), |
56 |
& VGRPLN(NTYPS), CSOIL0(NTYPS), WSOI12, |
& VGRPLN(NTYPS), CSOIL0(NTYPS), WSOI12, |
58 |
& DELZ23(NTYPS) |
& DELZ23(NTYPS) |
59 |
C**** |
C**** |
60 |
|
|
61 |
REAL PHLAY(nch,NLAY), AKLAY(nch,NLAY), SWET12(nch), |
_RL PHLAY(nch,NLAY), AKLAY(nch,NLAY), SWET12(nch), |
62 |
& CSOIL(nch), |
& CSOIL(nch), |
63 |
& RCUN(nch), VPDSTR(nch), ESATTX(nch), |
& RCUN(nch), VPDSTR(nch), ESATTX(nch), |
64 |
& VPDSTX(nch), VGBEEX(nch) |
& VPDSTX(nch), VGBEEX(nch) |
65 |
REAL EMAXRT(nch), VGWMAX(NLAY,NTYPS), FTEMP(nch), |
_RL EMAXRT(nch), VGWMAX(NLAY,NTYPS), FTEMP(nch), |
66 |
& PHR(nch), SOILCO(nch), RC(nch), |
& PHR(nch), SOILCO(nch), RC(nch), |
67 |
& EAX(nch), TX(nch), RCX(nch), |
& EAX(nch), TX(nch), RCX(nch), |
68 |
& DRCDTC(nch), SATCAP(nch), PAR(nch), |
& DRCDTC(nch), SATCAP(nch), PAR(nch), |
69 |
& PDIR(nch), DUMMY(nch) |
& PDIR(nch), DUMMY(nch) |
70 |
REAL FTEMPX(nch), DRCDEA(nch), VGPSAX(nch), VGCSAX(nch), |
_RL FTEMPX(nch), DRCDEA(nch), VGPSAX(nch), VGCSAX(nch), |
71 |
& VGZDEX(NLAY,nch), VGSLOX(nch), VGPH1X(nch), |
& VGZDEX(NLAY,nch), VGSLOX(nch), VGPH1X(nch), |
72 |
& VGPH2X(nch), VGRPLX(nch) |
& VGPH2X(nch), VGRPLX(nch) |
73 |
REAL DEDEA(nch), DHSDEA(nch), EM(nch), ESATTC(nch), |
_RL DEDEA(nch), DHSDEA(nch), EM(nch), ESATTC(nch), |
74 |
& DESDTC(nch), EA(nch), RA(nch), ALHX(nch), |
& DESDTC(nch), EA(nch), RA(nch), ALHX(nch), |
75 |
& WETEQ1(nch), WETEQ2(nch), |
& WETEQ1(nch), WETEQ2(nch), |
76 |
& RX1(nch), RX2(nch), SNWFRC(nch), POTFRC(nch), |
& RX1(nch), RX2(nch), SNWFRC(nch), POTFRC(nch), |
77 |
& ESNFRC(nch), EIRFRC(nch), FCAN(nch), EPFRC, |
& ESNFRC(nch), EIRFRC(nch), FCAN(nch), EPFRC, |
78 |
& DEFCIT, EADJST, RTBS |
& DEFCIT, EADJST, RTBS |
79 |
real cmpbug |
_RL cmpbug |
80 |
|
|
81 |
C**** |
C**** |
82 |
DATA VGWMAX /8.4, 621.6, 840.0, |
DATA VGWMAX /8.4, 621.6, 840.0, |
515 |
C**** |
C**** |
516 |
INTEGER NCH |
INTEGER NCH |
517 |
INTEGER ITYP(NCH), ChNo |
INTEGER ITYP(NCH), ChNo |
518 |
REAL TRAINL(NCH), TRAINC(NCH), TSNOW(NCH), SATCAP(NCH), |
_RL TRAINL(NCH), TRAINC(NCH), TSNOW(NCH), SATCAP(NCH), |
519 |
& WMAX(NLAY,NTYPS), TC(NCH), CSOIL(NCH), CAPAC(NCH), |
& WMAX(NLAY,NTYPS), TC(NCH), CSOIL(NCH), CAPAC(NCH), |
520 |
& SNOW(NCH), SWET1(NCH), RUNOFF(NCH), SMELT(NCH), |
& SNOW(NCH), SWET1(NCH), RUNOFF(NCH), SMELT(NCH), |
521 |
& RUNSRF(NCH), FWSOIL(NCH), WETEQ1(NCH), WETINT |
& RUNSRF(NCH), FWSOIL(NCH), WETEQ1(NCH), WETINT |
522 |
REAL DTSTEP, SNOWM, WATADD, CAVAIL, THRUC, WRUNC, WRUNL, |
_RL DTSTEP, SNOWM, WATADD, CAVAIL, THRUC, WRUNC, WRUNL, |
523 |
& TIMFRL, TIMFRC, FWETL, FWETC, THRU1, THRU2, THRUL, XTCORR, |
& TIMFRL, TIMFRC, FWETL, FWETC, THRU1, THRU2, THRUL, XTCORR, |
524 |
& WETFRC |
& WETFRC |
525 |
C**** |
C**** |
692 |
INTEGER NCH |
INTEGER NCH |
693 |
INTEGER ITYP(NCH), ChNo |
INTEGER ITYP(NCH), ChNo |
694 |
|
|
695 |
REAL SUNANG(NCH), PDIR(NCH), PAR(NCH), ZLAI(NCH), |
_RL SUNANG(NCH), PDIR(NCH), PAR(NCH), ZLAI(NCH), |
696 |
& SQSCAT(NCH), GREEN(NCH), RCUN(NCH) |
& SQSCAT(NCH), GREEN(NCH), RCUN(NCH) |
697 |
|
|
698 |
REAL VGCHIL(NTYPS), VGZMEW(NTYPS), |
_RL VGCHIL(NTYPS), VGZMEW(NTYPS), |
699 |
& VGRST1(NTYPS), VGRST2(NTYPS), VGRST3(NTYPS) |
& VGRST1(NTYPS), VGRST2(NTYPS), VGRST3(NTYPS) |
700 |
|
|
701 |
REAL RHO4, EXTK1, EXTK2, |
_RL RHO4, EXTK1, EXTK2, |
702 |
& RCINV, GAMMA, EKAT, DUM1, |
& RCINV, GAMMA, EKAT, DUM1, |
703 |
& DUM2, DUM3, AA, BB, |
& DUM2, DUM3, AA, BB, |
704 |
& ZK, CC |
& ZK, CC |
790 |
INTEGER NCH |
INTEGER NCH |
791 |
INTEGER ITYP(NCH), ChNo |
INTEGER ITYP(NCH), ChNo |
792 |
|
|
793 |
REAL WET(NCH), PHR(NCH), SOILCO(NCH), VGPSAX(NCH), |
_RL WET(NCH), PHR(NCH), SOILCO(NCH), VGPSAX(NCH), |
794 |
& VGCSAX(NCH), VGBEEX(NCH), DELZ(NTYPS), WETEQ(NCH), |
& VGCSAX(NCH), VGBEEX(NCH), DELZ(NTYPS), WETEQ(NCH), |
795 |
& WEXPB, WET0, PHEQ |
& WEXPB, WET0, PHEQ |
796 |
|
|
840 |
INTEGER NCH |
INTEGER NCH |
841 |
INTEGER ITYP(NCH), ChNo |
INTEGER ITYP(NCH), ChNo |
842 |
|
|
843 |
REAL DTSTEP, ESATTC(NCH), DESDTC(NCH), ALHX(NCH), |
_RL DTSTEP, ESATTC(NCH), DESDTC(NCH), ALHX(NCH), |
844 |
& ETURB(NCH), DEDEA(NCH), DEDTC(NCH), |
& ETURB(NCH), DEDEA(NCH), DEDTC(NCH), |
845 |
& HSTURB(NCH), DHSDEA(NCH), DHSDTC(NCH), |
& HSTURB(NCH), DHSDEA(NCH), DHSDTC(NCH), |
846 |
& RC(NCH), DRCDEA(NCH), DRCDTC(NCH), |
& RC(NCH), DRCDEA(NCH), DRCDTC(NCH), |
851 |
& SWET1(NCH,NLAY), SNOW(NCH), |
& SWET1(NCH,NLAY), SNOW(NCH), |
852 |
& RUNOFF(NCH), EVAP(NCH), SHFLUX(NCH), SMELT(NCH), |
& RUNOFF(NCH), EVAP(NCH), SHFLUX(NCH), SMELT(NCH), |
853 |
& HLWUP(NCH), BOMB(NCH) |
& HLWUP(NCH), BOMB(NCH) |
854 |
REAL STRDG1(NCH),STRDG2(NCH),STRDG3(NCH),STRDG4(NCH) |
_RL STRDG1(NCH),STRDG2(NCH),STRDG3(NCH),STRDG4(NCH) |
855 |
REAL STRDG5(NCH),STRDG6(NCH),STRDG7(NCH),STRDG8(NCH) |
_RL STRDG5(NCH),STRDG6(NCH),STRDG7(NCH),STRDG8(NCH) |
856 |
REAL STRDG9(NCH) |
_RL STRDG9(NCH) |
857 |
|
|
858 |
REAL HLWTC, CDEEPS, Q0, RHOAIR, CONST, DHLWTC, |
_RL HLWTC, CDEEPS, Q0, RHOAIR, CONST, DHLWTC, |
859 |
& EPLANT, A11, A12, A21, A22, F0, |
& EPLANT, A11, A12, A21, A22, F0, |
860 |
& DEA, DTC, SNLEFT, Q0X, Q0SNOW, |
& DEA, DTC, SNLEFT, Q0X, Q0SNOW, |
861 |
& EANEW, ESATNW, EHARMN, DETERM, DENOM |
& EANEW, ESATNW, EHARMN, DETERM, DENOM |
862 |
|
|
863 |
LOGICAL CHOKE |
LOGICAL CHOKE |
864 |
real deepfac(ntyps) |
_RL deepfac(ntyps) |
865 |
DATA deepfac /1.,1.,1.,1.,1.,1.,1.,1.,1.,1./ |
DATA deepfac /1.,1.,1.,1.,1.,1.,1.,1.,1.,1./ |
866 |
C**** |
C**** |
867 |
C**** ------------------------------------------------------------------- |
C**** ------------------------------------------------------------------- |
1138 |
C**** |
C**** |
1139 |
INTEGER NCH |
INTEGER NCH |
1140 |
INTEGER ITYP(NCH), ChNo |
INTEGER ITYP(NCH), ChNo |
1141 |
REAL ESATTC(NCH), EA(NCH), VPDSTR(NCH) |
_RL ESATTC(NCH), EA(NCH), VPDSTR(NCH) |
1142 |
c REAL VGDFAC(NTYPS) |
c _RL VGDFAC(NTYPS) |
1143 |
C**** |
C**** |
1144 |
c DATA VGDFAC / .0273, .0357, .0310, .0238, |
c DATA VGDFAC / .0273, .0357, .0310, .0238, |
1145 |
c 5 .0275, .0275, 0., 0., |
c 5 .0275, .0275, 0., 0., |
1179 |
C**** |
C**** |
1180 |
INTEGER NCH |
INTEGER NCH |
1181 |
INTEGER ITYP(NCH), ChNo, TypPtr |
INTEGER ITYP(NCH), ChNo, TypPtr |
1182 |
REAL TC(NCH), FTEMP(NCH) |
_RL TC(NCH), FTEMP(NCH) |
1183 |
REAL VGTLL(MemFac*NTYPS), VGTU(MemFac*NTYPS), |
_RL VGTLL(MemFac*NTYPS), VGTU(MemFac*NTYPS), |
1184 |
& VGTCF1(MemFac*NTYPS), VGTCF2(MemFac*NTYPS), |
& VGTCF1(MemFac*NTYPS), VGTCF2(MemFac*NTYPS), |
1185 |
& VGTCF3(MemFac*NTYPS) |
& VGTCF3(MemFac*NTYPS) |
1186 |
C**** |
C**** |
1249 |
C**** |
C**** |
1250 |
INTEGER NCH |
INTEGER NCH |
1251 |
INTEGER ITYP(NCH), ChNo |
INTEGER ITYP(NCH), ChNo |
1252 |
REAL ESATTC(NCH), EA(NCH), PHR(NCH), SOILCO(NCH), |
_RL ESATTC(NCH), EA(NCH), PHR(NCH), SOILCO(NCH), |
1253 |
& RCUN(NCH), VPDSTR(NCH), FTEMP(NCH), TC(NCH), |
& RCUN(NCH), VPDSTR(NCH), FTEMP(NCH), TC(NCH), |
1254 |
& PSUR(NCH), Z2(NCH), RSOIL1(NCH), RSOIL2(NCH), |
& PSUR(NCH), Z2(NCH), RSOIL1(NCH), RSOIL2(NCH), |
1255 |
& VGPH1X(NCH), VGPH2X(NCH), VGRPLX(NCH), RC(NCH) |
& VGPH1X(NCH), VGPH2X(NCH), VGRPLX(NCH), RC(NCH) |
1256 |
REAL RCUNTD, RHOAIR, CONST, DEF, D12, DR2, |
_RL RCUNTD, RHOAIR, CONST, DEF, D12, DR2, |
1257 |
& RSOIL, R0, EEST, RSTFAC |
& RSOIL, R0, EEST, RSTFAC |
1258 |
C**** |
C**** |
1259 |
C**** ----------------------------------------------------------------- |
C**** ----------------------------------------------------------------- |
1297 |
IMPLICIT NONE |
IMPLICIT NONE |
1298 |
INTEGER NCH |
INTEGER NCH |
1299 |
INTEGER ChNo |
INTEGER ChNo |
1300 |
REAL UM(NCH), U2FAC(NCH), Z2(NCH), RDC(NCH), |
_RL UM(NCH), U2FAC(NCH), Z2(NCH), RDC(NCH), |
1301 |
& WET(NCH), ESATTC(NCH), EA(NCH), |
& WET(NCH), ESATTC(NCH), EA(NCH), |
1302 |
& RC(NCH), RX1(NCH), RX2(NCH) |
& RC(NCH), RX1(NCH), RX2(NCH) |
1303 |
REAL U2, RSURF, HESAT |
_RL U2, RSURF, HESAT |
1304 |
C**** |
C**** |
1305 |
C**** ----------------------------------------------------------------- |
C**** ----------------------------------------------------------------- |
1306 |
|
|
1352 |
IMPLICIT NONE |
IMPLICIT NONE |
1353 |
INTEGER NCH |
INTEGER NCH |
1354 |
INTEGER ChNo |
INTEGER ChNo |
1355 |
REAL CAPAC(NCH), SNOW(NCH), SATCAP(NCH), RA(NCH), ETURB(NCH), |
_RL CAPAC(NCH), SNOW(NCH), SATCAP(NCH), RA(NCH), ETURB(NCH), |
1356 |
& RC(NCH), SNWFRC(NCH), POTFRC(NCH) |
& RC(NCH), SNWFRC(NCH), POTFRC(NCH) |
1357 |
REAL ETCRIT,RAMPFC |
_RL ETCRIT,RAMPFC |
1358 |
|
|
1359 |
C**** (Note: ETCRIT arbitrarily set to ~-5 W/m2, or -2.e-6 mm/sec.) |
C**** (Note: ETCRIT arbitrarily set to ~-5 W/m2, or -2.e-6 mm/sec.) |
1360 |
DATA ETCRIT/ -2.E-6 / |
DATA ETCRIT/ -2.E-6 / |
1419 |
C**** |
C**** |
1420 |
INTEGER NCH |
INTEGER NCH |
1421 |
INTEGER ITYP(NCH), ChNo |
INTEGER ITYP(NCH), ChNo |
1422 |
REAL EVAP(NCH), SATCAP(NCH), VGWMAX(NLAY,NTYPS), |
_RL EVAP(NCH), SATCAP(NCH), VGWMAX(NLAY,NTYPS), |
1423 |
& TC(NCH), RA(NCH), RC(NCH), |
& TC(NCH), RA(NCH), RC(NCH), |
1424 |
& CAPAC(NCH), SNOW(NCH), SWET(nch,NLAY), |
& CAPAC(NCH), SNOW(NCH), SWET(nch,NLAY), |
1425 |
& RUNOFF(NCH), RX1(NCH), |
& RUNOFF(NCH), RX1(NCH), |
1426 |
& RX2(NCH), RUNSRF(NCH), FWSOIL(NCH), |
& RX2(NCH), RUNSRF(NCH), FWSOIL(NCH), |
1427 |
& ESNFRC(NCH), EIRFRC(NCH) |
& ESNFRC(NCH), EIRFRC(NCH) |
1428 |
REAL EINT(NCH), ESOI(NCH), EVEG(NCH), ESNO(NCH) |
_RL EINT(NCH), ESOI(NCH), EVEG(NCH), ESNO(NCH) |
1429 |
REAL DTSTEP, EGRO, FWS, THRU, DEWRUN, |
_RL DTSTEP, EGRO, FWS, THRU, DEWRUN, |
1430 |
& WTOTAL,WLAY1,WLAY2,ELAY1,ELAY2,EGROI |
& WTOTAL,WLAY1,WLAY2,ELAY1,ELAY2,EGROI |
1431 |
C**** |
C**** |
1432 |
C**** ----------------------------------------------------------------- |
C**** ----------------------------------------------------------------- |
1569 |
C**** |
C**** |
1570 |
INTEGER NCH |
INTEGER NCH |
1571 |
INTEGER ITYP(NCH), ChNo |
INTEGER ITYP(NCH), ChNo |
1572 |
REAL VGSLOX(NCH), RUNOFF(NCH), GDRAIN(NCH) |
_RL VGSLOX(NCH), RUNOFF(NCH), GDRAIN(NCH) |
1573 |
REAL ZDEP12, AKAVE, GWFLUX, ZDEP23, HALFMX, DHDZ, |
_RL ZDEP12, AKAVE, GWFLUX, ZDEP23, HALFMX, DHDZ, |
1574 |
& FAREA, TFM2, FRAMP |
& FAREA, TFM2, FRAMP |
1575 |
|
|
1576 |
REAL WSMAX(NLAY,NTYPS), PHLAY(nch,NLAY), |
_RL WSMAX(NLAY,NTYPS), PHLAY(nch,NLAY), |
1577 |
& AKLAY(nch,NLAY), TC(NCH), |
& AKLAY(nch,NLAY), TC(NCH), |
1578 |
& DTSTEP, SWET(nch,NLAY), |
& DTSTEP, SWET(nch,NLAY), |
1579 |
& VGZDEX(NLAY,nch), WETEQ1(NCH), WETEQ2(NCH), |
& VGZDEX(NLAY,nch), WETEQ1(NCH), WETEQ2(NCH), |