| 1 |
c source 2007 sokolov users 76203 Apr 25 15:29 atmosphere.F |
C $Header$ |
| 2 |
|
C $Name$ |
| 3 |
|
|
| 4 |
#include "ctrparam.h" |
#include "ctrparam.h" |
| 5 |
|
|
| 336 |
READ (546) |
READ (546) |
| 337 |
245 continue |
245 continue |
| 338 |
endif |
endif |
|
WRITE(503) OFFSSW 17.1 |
|
|
REWIND 503 17.2 |
|
| 339 |
c CALL FRTR0(IO) 18. |
c CALL FRTR0(IO) 18. |
| 340 |
KBGN=KINC+1 18.5 |
KBGN=KINC+1 18.5 |
| 341 |
KM2=KM*2-1 18.51 |
KM2=KM*2-1 18.51 |
| 451 |
c New run |
c New run |
| 452 |
c Reading from flin_nep |
c Reading from flin_nep |
| 453 |
read(537)adupt,temco2 |
read(537)adupt,temco2 |
| 454 |
else |
else |
| 455 |
c Restart of the run |
c Restart of the run |
| 456 |
c Reading from last_nep |
c Reading from last_nep |
| 457 |
read(367)adupt,temco2 |
cjrs file previously opened in input.F |
| 458 |
! & ,temch4,temn2o |
read(876)adupt,temco2 |
| 459 |
rewind 367 |
C CLOSE(876) |
| 460 |
endif |
rewind 876 |
| 461 |
! |
endif |
| 462 |
! adupt= 1.459814341652516 |
|
| 463 |
! adupt= 0.9078891180588442 |
cjrs next line per Andrei instruction 10/12/07 |
| 464 |
! adupt= 0.25 |
adupt= 0.0 |
|
! adupt= -0.1123070421398009 |
|
|
! |
|
|
! adupt= adupt+0.9 ! for vs23 |
|
| 465 |
|
|
| 466 |
aduptd=adupt/(365.*JM) |
aduptd=adupt/(365.*JM) |
| 467 |
temnepgl=0.0 |
temnepgl=0.0 |
| 659 |
PERCNT=100.*MELSE/(MSTART-MNOW+1.E-5) 56. |
PERCNT=100.*MELSE/(MSTART-MNOW+1.E-5) 56. |
| 660 |
MLAST=MNOW 59. |
MLAST=MNOW 59. |
| 661 |
C**** TEST FOR TERMINATION OF RUN 60. |
C**** TEST FOR TERMINATION OF RUN 60. |
| 662 |
200 READ (503,END=210) LABSSW 61. |
200 continue |
| 663 |
c HPRNT=TAU.gt.45.0.and.TAU.lt.60.0 |
c HPRNT=TAU.gt.45.0.and.TAU.lt.60.0 |
| 664 |
c HPRNT=TAU.gt.470.0.and.TAU.lt.550.0 |
c HPRNT=TAU.gt.470.0.and.TAU.lt.550.0 |
| 665 |
NCOMP=0 |
NCOMP=0 |
|
210 REWIND 503 61.1 |
|
|
IF(LABSSW.EQ.LABEL1) KSS6=1 61.2 |
|
|
IF(KSS6.EQ.1) GO TO 800 62. |
|
| 666 |
IF(TAU+.06125.GE.TAUE) GO TO 820 63. |
IF(TAU+.06125.GE.TAUE) GO TO 820 63. |
| 667 |
JDAY00=JDAY |
JDAY00=JDAY |
| 668 |
C**** IF TIME TO ZERO OUT DIAGNOSTIC ACCUMULATING ARRAYS, DO SO 64. |
C**** IF TIME TO ZERO OUT DIAGNOSTIC ACCUMULATING ARRAYS, DO SO 64. |
| 921 |
|
|
| 922 |
call chemmass66(1.0, 1.0,zco2,zco2mass) |
call chemmass66(1.0, 1.0,zco2,zco2mass) |
| 923 |
|
|
| 924 |
call chemmass6(150.0,1.0,xn2o,xn2omass) |
!call chemmass6(150.0,1.0,xn2o,xn2omass) |
| 925 |
|
call chemmass6(120.0,1.0,xn2o,xn2omass) |
| 926 |
call chemmass2(1.0,ch4, ch4mass ) |
call chemmass2(1.0,ch4, ch4mass ) |
| 927 |
|
|
| 928 |
! === if hfc, pfc, and sf6 are included: |
! === if hfc, pfc, and sf6 are included: |
| 1083 |
i=1 |
i=1 |
| 1084 |
do j=1,jm |
do j=1,jm |
| 1085 |
pcpl4clm(i,j)=pcpl4clm(i,j)*prlnd2total(j,mndriver) |
pcpl4clm(i,j)=pcpl4clm(i,j)*prlnd2total(j,mndriver) |
| 1086 |
|
& *3600./(NDYN*DT) |
| 1087 |
pcpc4clm(i,j)=pcpc4clm(i,j)*prlnd2total(j,mndriver) |
pcpc4clm(i,j)=pcpc4clm(i,j)*prlnd2total(j,mndriver) |
| 1088 |
|
& *3600./(NDYN*DT) |
| 1089 |
enddo |
enddo |
| 1090 |
! print *,' main after surf4clm',' TAU=',TAU |
! print *,' main after surf4clm',' TAU=',TAU |
| 1091 |
! print ('2(12f7.2,/,11f7.2,/)'),ps4clm,pcpl4clm, |
! print ('2(12f7.2,/,11f7.2,/)'),ps4clm,pcpl4clm, |
| 1876 |
C DTATM time step of atm model in hours |
C DTATM time step of atm model in hours |
| 1877 |
C precip and evap in mm/day or kg/m**2/day |
C precip and evap in mm/day or kg/m**2/day |
| 1878 |
do j=1,jm0 |
do j=1,jm0 |
| 1879 |
#if ( defined OCEAN_3D && defined CPL_OCEANCO2 ) |
Cjrs #if ( defined OCEAN_3D && defined CPL_OCEANCO2 ) |
| 1880 |
ncallatm=ncallatm+1 |
#ifdef OCEAN_3D |
| 1881 |
|
!jrs ncallatm=ncallatm+1 |
| 1882 |
! 020107 |
! 020107 |
| 1883 |
! co24ocean(j)=pC_atm(j)*1.e6 |
! co24ocean(j)=pC_atm(j)*1.e6 |
| 1884 |
|
! jrs give CO2 even if ocn carbon off |
| 1885 |
co24ocean(j)=atm_co2(j) |
co24ocean(j)=atm_co2(j) |
| 1886 |
! 020107 |
# ifdef CPL_OCEANCO2 |
| 1887 |
co24ocnan(j)=co24ocnan(j)+co24ocean(j) |
co24ocnan(j)=co24ocnan(j)+co24ocean(j) |
| 1888 |
|
# endif |
| 1889 |
#endif |
#endif |
| 1890 |
#ifdef ML_2D |
#ifdef ML_2D |
| 1891 |
cjrs block only MD_2D |
cjrs block only MD_2D |
| 2078 |
return |
return |
| 2079 |
C CALL ENQJOB 309. |
C CALL ENQJOB 309. |
| 2080 |
C CALL ENQJOB 310. |
C CALL ENQJOB 310. |
|
IF(KSS6.EQ.1) STOP 12 310.1 |
|
| 2081 |
IF(IPFLAG.EQ.0) STOP 13 311. |
IF(IPFLAG.EQ.0) STOP 13 311. |
| 2082 |
STOP 1 312. |
STOP 1 312. |
| 2083 |
C**** 313. |
C**** 313. |