#include "dims.h" C SUBROUTINE NATFIX ! use cons_module,only: kmax,imaxp4 C **** C **** ADVANCES PSI(CO2) BY ONE TIME STEP C **** C include "params.h" C include "fcom.h" C include "vscr.h" C include "index.h" C include "buff.h" C include "crates.h" C include "lowbnd.h" C include "phys.h" C include "compcom.h" C DIMENSION WNAT(ZKMXP) C WNAT =(/ C + 1.9500E-12, 1.9600E-12, 1.9800E-12, 2.0200E-12, 2.0700E-12, C + 2.1700E-12, 2.3200E-12, 2.5500E-12, 2.9300E-12, 3.5300E-12, C + 4.4800E-12, 5.9900E-12, 8.3700E-12, 1.2100E-11, 1.8000E-11, C + 2.6700E-11, 3.7700E-11, 4.7400E-11, 5.2200E-11, 5.3000E-11, C + 5.1700E-11, 4.9600E-11, 4.6100E-11, 4.0500E-11, 3.3400E-11, C + 2.6200E-11, 1.9800E-11, 1.4600E-11, 1.0500E-11, 7.3900E-12, C + 5.0500E-12, 3.3500E-12, 2.1500E-12, 1.3200E-12, 7.8100E-13, C + 4.4200E-13, 2.4000E-13, 1.2600E-13, 6.3800E-14, 3.1400E-14, C + 1.5200E-14, 7.2000E-15, 3.3700E-15, 1.5600E-15, 7.2200E-16/) C NPNATK = NJ+NPNAT-1 C NPNATMK = NJ+NPNATNM-1 C DO 1 K=1,KMAX C NPNATK = NPNATK+1 C NPNATMK = NPNATMK+1 C DO 1 I=1,IMAXP4 C F(I,NPNATK) = WNAT(K) C F(I,NPNATMK) = WNAT(K) C 1 CONTINUE C RETURN C END !----------------------------------------------------------------------- SUBROUTINE CMPNAT use cons_module,only: len1,len2 implicit none C **** ADVANCE NAT COMPOSITION BY ONE TIME STEP c 1/2/97: changed var names from AR to NAT (NAT was previously tested c in AR slot) #include "params.h" #include "fcom.h" #include "vscr.h" #include "index.h" #include "buff.h" #include "mwt.h" #include "diffk.h" #include "cmpdat.h" ! ! Local: real :: PHINAT(3)=(/1.042, 1.509, 1.176/) real,parameter :: ALFANAT=0.17, PSNATB=0.1146E-1, | AS=1.875E-3, ZPS=89.E+5, H1S=5.E+5 integer :: ibnd,ibndb,i,k,nzk real :: xynat C **** UPPER BOUNDARY - ZERO FLUX C **** LOWER BOUNDARY - CONSTANT VALUE IBND = 1 C IBNDB = 0 IBNDB = 1 DO 1 I=1,LEN1 T4(I)=0. T1(I)=0. T2(I)=1. C T3(I)=-SQRT(WNAT(1)*WNAT(2)) T3(I)=-1.5E+3 1 CONTINUE C **** SOURCES ARE METEORITES AND LOSSES ARE ZERO NZK=NJ+NZ DO 2 I=1,LEN2 S2(I,1) = AS*EXP(-((F(I,NZK)-ZPS)/H1S)**2) S1(I,1) = 0. 2 CONTINUE XYNAT = 1.E-10 CALL MINOR(NPNAT,NPNATNM,RMNAT,PHINAT,ALFANAT,IBND,IBNDB,WNAT, | XYNAT,NPDHNAT,difkk,9) C************************************************* C NPNATK = NJNP + NPNAT - 1 C DO K = 1,KMAXP1,4 C DO I = 1,IMAX C PLOT(I,J,K) = F(I+2,NPNATK + K) C ENDDO C ENDDO C IF(J.EQ.JMAX)THEN C DO K = 1,KMAXP1,4 C CALL EZCNTR(PLOT(1,1,K),IMAX,JMAX) C WRITE(6,*)'K = ', K C ENDDO C ENDIF C************************************************* RETURN END