C A CODE FOR LINEAR INTERPOLATION IN KURUCZ MODEL GRID c c authors: J. Budaj c contact: budaj@ta3.sk c published: http://www.ta3.sk/~budaj/software c special requirements: c non original routins: c input: keyboard + files c output: files c PARAMETER(NMAX=64) CHARACTER*10 IN1,IN2,IN3,IN4,out DIMENSION A(NMAX,4),B(NMAX,4),C(NMAX,4),D(NMAX,4),E(NMAX,4) P ,E1(NMAX,4),E2(NMAX,4) WRITE(*,*)'PARAMETRE INTERPOLOVANEHO MODELU (T,LOG G)' WRITE(*,*)'MUSIA LEZAT MEDZI KURUCZOVYMI DISKRETNYMI HODNOTAMI' WRITE(*,*)'A OBE DVOJICE MUSIA MAT ROVNAKE LOG G' WRITE(*,*)'NAJPRRV SA INTERPOLUJE NA SPRAVNU TEPLOTU' C C T2>T1 | A(40,4) B(40,4) C | E1(40,4) E(40,4) E2(40,4) C T1 | C(40,4) D(40,4) C-----------|-------------------------------------------------- C | G1 G2>G1 C WRITE(*,*)'ZADAJ T, LOG G POTREBNEHO MODELU' READ(*,*)EA,EB WRITE(*,*)'ZADAJ FILE NAME MODELOV S VACSOU TEP. P NAJPRV TEN S MENSIM LOG G' READ(*,22)IN1 READ(*,22)IN2 22 FORMAT(A10) OPEN(1,FILE=IN1,STATUS='OLD') OPEN(2,FILE=IN2,STATUS='OLD') WRITE(*,*)'ZADAJ FILE NAME MODELOV S MENSOU TEP. P NAJPRV TEN S MENSIM LOG G' READ(*,22)IN3 READ(*,22)IN4 OPEN(3,FILE=IN3,STATUS='OLD') OPEN(4,FILE=IN4,STATUS='OLD') write(*,*)'VYSTUPNY SUBOR' read(*,22)out OPEN(6,FILE=out,STATUS='new') WRITE(*,*)'ZADAJ POCET HLBKOVYCH BODOV' READ(*,*)NBOD READ(1,25)AA,AB DO 10 I=1,NBOD READ(1,20)(A(I,J),J=1,4) 10 CONTINUE READ(2,25)BA,BB DO 30 I=1,NBOD READ(2,20)(B(I,J),J=1,4) 30 CONTINUE READ(3,25)CA,CB DO 40 I=1,NBOD READ(3,20)(C(I,J),J=1,4) 40 CONTINUE READ(4,25)DA,DB DO 50 I=1,NBOD READ(4,20)(D(I,J),J=1,4) 50 CONTINUE 20 FORMAT(F10.5,F10.1,2F10.4) 25 FORMAT(F10.0,F10.2) DO 70 J=1,4 DO 60 I=1,NBOD E1(I,J)=(A(I,J)-C(I,J))*(EA-CA)/(AA-CA)+C(I,J) E2(I,J)=(B(I,J)-D(I,J))*(EA-DA)/(BA-DA)+D(I,J) 60 CONTINUE 70 CONTINUE DO 80 J=1,4 DO 90 I=1,NBOD E(I,J)=(E2(I,J)-E1(I,J))*(EB-CB)/(DB-CB)+E1(I,J) 90 CONTINUE 80 CONTINUE WRITE(6,25)EA,EB DO 100 I=1,NBOD WRITE(6,20)E(I,1),E(I,2),E(I,3),E(I,4) 100 CONTINUE END