DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: S T

⟦b02377165⟧ TextFile

    Length: 8296 (0x2068)
    Types: TextFile
    Names: »S00018.f«

Derivation

└─⟦db229ac7e⟧ Bits:30007240 EUUGD20: SSBA 1.2 / AFW Benchmarks
    └─⟦this⟧ »EUUGD20/AFUU-ssba1.21/ssba1.21E/doduc/S00018.f« 
    └─⟦this⟧ »EUUGD20/AFUU-ssba1.21/ssba1.21F/doduc/S00018.f« 

TextFile

      SUBROUTINE S00018(I12,I21,IORG)
      IMPLICITDOUBLEPRECISION(A-H,O-Z)
      COMMON/AAA11/V0011N(20),V0012X(20),V0011,V0012,
     1TLIM,ZLIMIN,ZLIMAX,DTVOI,TIMIMP(20),DIFREF(20),DIFMIC(20),
     3V00001,V22202,TEMIMP,TEMMIC,DELM,DELV,DELVI,DELVS,
     6V22201,V22203,DTPRE,DTPHY,DTTEMP,DTCHAN,DTDIS,DTBEF,DTORG
     7,NIMIC,NMULTR,IZONE,N00011(20),ISORT,NECRIT,NSTAR,IPLOT,NZONE
     +,IFRE(20),ICO,IIMP,NPAS1(20),NPAS2(20)
      COMMON/AAA22/DH(22,2),DM(22,2),DPDT,DUU(22,2),DV(22,2),DNU(22,2)
      COMMON/AAA44/SC(21),SCAPA(22),SHTC(22),VC(22),XL(22)
     1,VFIX,ZCOT(21),I6FT,J6FT,I8FT,J8FT,NC,NC1,NC2,IBCH,IHCH
      COMMON/AAA55/KPRESS,KDEB,KCON,KTGAI,KT876,ICAT(3),KIMP,KGLISS
      COMMON/AAA66/TS,HFS,HGS,HFGS,DHFPS,DHGPS,VVFS,VVGS,DVVFPS,DVVGPS
     1             ,DHFGS,VV1,VV2,DVV1P,DVV2P,T1,T2
      COMMON/AAA10/V(22,2),VV(22,2),H(22,2),HF(22,2),HG(22,2),
     1   DNUHP(22,2),U(22,2),XM(22,2),XT(22,2),ALFA(22,2),
     2             T(22,2),DVVH(22,2),DELH(22,2),DVVP(22,2),DELP(22,2)
     3            ,AA(22,2),BB(22,2),DTDH(22,2),DTDP(22,2),DTSAT,
     4   DNUPP(22,2),A(22),B(22),C(22),TVID(22,12),M(22,2),IST(22,2)
      COMMON/AAA13/TEM,P,DT,HNIV(22),VITESS
     1            ,ZNIV,RI(2),ISS,NITERA,NIV,ISLNI,IBTR,IHTR,ITYP(22)
      COMMON/AAA77/QINIT,TPUI(20),QPUI(20),RPUI,PLMOY,
     1    XHTC(22,12),PL(22,12),QREPA(22,12),
     2              XMCGA(22,12),XMCUO(22,12),QCED(22,12),QCON(22,12)
     3            ,QUGA(22,12),QFOU(22,12),QCEI(2),QCONI(2),QUGII(2)
     4            ,TMI(2),DTMI(2),QTOTAL,QTUG,QTGF,TERC(2)
     4             ,TGAI(22,12),TGAII(22,12),T876(22,12),TUMAX(22,12)
     5            ,TUMIN(22,12),DTGAI(22,12),DT876(22,12)
     6            ,TERCO(22,12),TMU(2),DTMU(2),NPUI,NASL(22),NSL(22)
      COMMON/AAA26/DEB(21),DEBV(21),DEBL(21),ALFAD(21),ALFB(21),
     2ALFT(21),HA(21),HB(21),HE(21,2),HEM(21),VE(21,2),
     3              XA(21),XB(21),XD(21),XEM(21),SDSC
     4             ,TJONC(21),HJONB(21,2),HJONT(21,2),DEBAV(21)
     5            ,GLINF(21),GLSUP(21),PP1,PP2,ALNIV
     6            ,VGJO(21),GLINFP(21),V55198(21),ICAS(21),ICZW(21)
      COMMON/AAA99/HLCF,HVCFO,HVAP,HCON,HVIN,HLIN,R876,RGAI
     1             ,XM876,XMGAI,XL876,XLGAI,CP876,CPGAI,XMC876,XMCGAI
     2            ,DIAHY,HGAPP(22),HCG(22),HTC(22,12),HVCFF(22)
      COMMON/AAA17/DDPDT,DDH(22,2),DDV(22,2),DDM(22,2),DDU(22,2)
      COMMON/AAA16/DBENT(20),TENT(20),HENT(20),DEBE,ENTE,
     2        DBSOR(20),TSOR(20),DEBS,DPDTT(20),TDPDT(20)
     3  ,HSOR(20),THSOR(20),ENTS,NDBENT,NDPDT,NDBSOR,NHSOR
      COMMON/AAA18/DDEB(21),DDDEB(21),DXAT(21),DXAG(21),DXBT(21),
     1             DXBG(21),DNUG(21),DNUF(21),DHE(22,2),DDEBO(21)
      DOUBLEPRECISION M
      DTBEF=1.25*DT
      IS=ISS
      I12=0
      I21=0
       EPS=1.D-8
      IORG=0
      DODUC=.8
      DDC=10.*V0012/NC1
      COEDH=DMIN1(DODUC,DDC)
      DT=V0012
      DTTEMP=V0012
      DTDIS=V0012
      DTCHAN=V0012
      DTTEMP=V0012
      DTPHY=V0012
      DTORG=V0012
      DTVOI=V0012
      SENS=V00001
      DTP=V0012
      IF(DABS(DPDT).LE.EPS)GOTO 200
      DTP=SENS*P/DABS(DPDT)
  200 DO 1000 I=2,NC1
      J1=2-(1/ITYP(I))
      DTH=V0012
      DTVOL=V0012
      SENS=V00001
      DO 1010 J=1,J1
      X=V0012
      Y=DABS(DH(I,J))
      IF(Y.LE.1.D-3)Y=1.D-3
      YY=DABS(DDH(I,J))
      IF(YY.LE.1.D-2)YY=1.D-2
      DT2=DSQRT(SENS*H(I,J)/YY)
      DT3=SENS*H(I,J)/Y
      DTH=DMIN1(X,DT2,DT3)
 1010 CONTINUE
      IF(ITYP(I).NE.2)GOTO 800
      Y=DABS(DV(I,1))
      YO=VC(I)*1.D-3
      IF(Y.LE.YO)Y=YO
      YY=DABS(DDV(I,1))
      YO=YO*10.
      IF(YY.LE.YO)YY=YO
      XLA=.5
      YMAX=VC(I)
      IF(Y.LT.YMAX)XLA=.5*YMAX/Y
      DT1=XLA*Y/YY
      DT2=DSQRT(SENS*VC(I)/(10 .*YY))
      DT3=SENS*VC(I)/Y
      DTVOL=DMIN1(X,DT1,DT2,DT3)
  800 CONTINUE
      DTPHY=DMIN1(DTH,DTVOL,DTPHY)
      SENS=V22202
      N1=NASL(I)
      DO 890 J=1,N1
      DTPAR=V0012
      IF(I.EQ.NIV.AND.J.EQ.ISLNI)GOTO 850
      IF(DABS(DTGAI(I,J)).LE.EPS)GOTO 890
      DTPAR=SENS*DABS(TGAI(I,J)/DTGAI(I,J))
      GOTO 890
  850 K1=2
      DO 855 K=1,K1
      DTPA=V0012
      IF(DABS(DTMI(K)).LE.EPS)GOTO 855
      DTPA=2.*SENS*DABS(TMI(K)/DTMI(K))
  855 DTPAR=DMIN1(DTPAR,DTPA)
  890 DTTEMP=DMIN1(DTTEMP,DTPAR)
      IF(ITYP(I).EQ.2)GOTO 950
      J1=2-(1/ITYP(I))
      DO 910 J=1,J1
      IF(DABS(DH(I,J)).LT.1.D-6)GOTO 910
      DTCH1=.6*(HFS-H(I,J))/DH(I,J)
      DTCH2=.6*(HGS-H(I,J))/DH(I,J)
      IF(DTCH1.LT.EPS)DTCH1=V0012
      IF(DTCH2.LT.EPS)DTCH2=V0012
      DTCHAN=DMIN1(DTCH1,DTCH2,DTCHAN)
  910 CONTINUE
  950 CONTINUE
      IF(ICAT(2).LE.2)GOTO 1000
      DTCH1=V0012
      DTCH2=V0012
      IF(ITYP(I).EQ.3)GOTO 951
      XH1=F00111(I)
      XH2=F00111(I)
      DXH1=DH(I,1)
      DXH2=DH(I,2)
      IF(ITYP(I).EQ.1)GOTO 952
      XMT=M(I,1)+M(I,2)
      DXH1=(DM(I,1)*(H(I,1)-XH1)+DM(I,2)*(H(I,2)-XH1)+M(I,1)*DH(I,1)+
     1M(I,2)*DH(I,2))/(XMT*XMT)
      DXH2=DXH1
      GOTO 952
  951 XH1=H(I,1)
      XH2=H(I,2)
      DXH1=DH(I,1)
      DXH2=DH(I,2)
  952 J=I-1
      GOTO (955,956,957),IDODUC
  955 HINF=H(J,1)
      DHINF=DH(J,1)
      GOTO 958
  956 HINF=F00111(J)
      XMT=M(J,1)+M(J,2)
      DHINF=(DM(J,1)*(H(J,1)-HINF)+DM(J,2)*(H(J,2)-HINF)+M(J,1)*DH(J,1)
     1  +M(J,2)*DH(J,2))/(XMT*XMT)
      GOTO 958
  957 HINF=H(J,2)
      DHINF=DH(J,2)
  958 J=I+1
      IF(ITYP(J).EQ.2)GOTO 959
      HSUP=H(J,1)
      DHSUP=DH(J,1)
      GOTO 960
  959 HSUP=F00111(J)
      XMT=M(J,1)+M(J,2)
      DHSUP=(DM(J,1)*(H(J,1)-HSUP)+DM(J,2)*(H(J,2)-HSUP)+M(J,1)*DH(J,1)+
     1 M(J,2)*DH(J,2))/(XMT*XMT)
  960 CONTINUE
      IF(I.EQ.2)GOTO 953
      ECT=XH1-HINF
      DECT=DXH1-DHINF
      IF(DABS(DECT).LT.1.D-4)GOTO 953
      DTCH1=COEDH*ECT/DECT
      IF(DTCH1.LT.EPS)DTCH1=V0012
  953 IF(I.EQ.NC1)GOTO 954
      ECT=XH2-HSUP
      DECT=DXH2-DHSUP
      IF(DABS(DECT).LT.1.D-4)GOTO 954
      DTCH2=COEDH*ECT/DECT
      IF(DTCH2.LT.EPS)DTCH2=V0012
  954 DTVOI=DMIN1(DTVOI,DTCH1,DTCH2)
 1000 CONTINUE
      IF(ICAT(2).LE.2)GOTO 990
      SENS=V22201
      ROO=1.
      VITE=DABS(VITESS)
      DTDIS=V0012
      VNIV=VITE/SCAPA(NIV)
      VINJ=DEB(1)
      VINJ=VINJ*VVFS/SCAPA(NIV)
      IF(VNIV.LT..01)GOTO 985
      IF(VINJ.LT..01)GOTO 980
      ROO=VINJ/VNIV
  980 DTDIS=SENS*XL(NIV)/VNIV*DMIN1(1.D0,ROO)
  985 CONTINUE
  990 CONTINUE
      DTPRE=DTP
      DT=DMIN1(DTP,DTPHY,DTTEMP,DTCHAN,DTDIS,DTBEF,DTVOI)
      DTO=V0012
      DO 1601 I=2,NC1
      IF(ITYP(I).EQ.1)GOTO 1601
      DO 1600 J=1,2
      YC=V(I,J)
      IF(YC.LE.1.D-7)GOTO 1600
      YA=DDV(I,J)
      YB=DV(I,J)
      VF=YC+(YB+YA*DT)*DT
      IF(VF.GE.0.)GOTO 1600
      IF(DABS(YA).LT.1.D-6)GOTO 1550
      DELT=YB*YB-4.*YA*YC
      IF(DELT .LE.1.D-8)GOTO 1600
      TC=DSQRT(DELT)
      DT1=(-YB-TC)/(2.*YA)
      DT2=(-YB+TC)/(2.*YA)
      DT3=DMIN1(DT1,DT2)
      DT4=DMAX1(DT1,DT2)
      DT1=DT3
      IF(DT3.LE.0.)DT1=DT4
      DT1=.9*DT1
      DTO=DMIN1(DT1,DTO)
      GOTO 1600
 1550 IF(DABS(YB).LT.1.D-6)GOTO 1600
      DT1=-YC/YB
      DT1=.9*DT1
      DTO=DMIN1(DT1,DTO)
 1600 CONTINUE
 1601 CONTINUE
      DTORG=DTO
      DT=DMIN1(DT,DTORG)
      DT=DMAX1(V0011,DT)
      IF(ICAT(2).LE.2)GOTO 1699
      I=NIV
      ECV=DT*(DDV(I,1)*DT+DV(I,1))
      VL1=V(I,1)+ECV
      VL2=V(I,2)-ECV
      IF(VL1.LT.0.)IORG=1
      IF(VL2.LT.0.)IORG=1
 1699 CONTINUE
      DT3=V0012
      DO 1650 I=1,NDBENT
      TBUT=TENT(I)+1.D-4
      DT2=TBUT-TEM
      IF(DT2.LE.0.)GOTO 1650
      IF(DT2.GE.DT)GOTO 1650
      DT3=DMIN1(DT3,DT2)
 1650 CONTINUE
      DTORG=DMIN1(DTORG,DT3)
      DT=DMIN1(DT,DTORG)
      DT=DMAX1(V0011,DT)
      DO 1700 I=2,NC1
      IF(DABS(DEBL(I-1)).GE.1.D-6)GOTO 1700
      VMIN=1.D-7*VC(I)
      IF(V(I,1).GE.VMIN)GOTO 1700
      H(I,1)=HF(I-1,1)
      GOTO 1750
 1700 CONTINUE
 1750 CONTINUE
      DO 1800 I=1,NC1
      ALBT=DABS(ALFB(I)-ALFT(I))
       IF(ALBT.LT.1.D-2)GOTO 1800
      SEC=SC(I)
      G=DEB(I)/SEC
      DG=DDEB(I)/SEC
      DTGSU=V0012
      DENOM=V55198(I)-DG
      IF(DABS(DENOM).LE.1.D-3)GOTO 1798
      DTGSU=(G-GLSUP(I))/DENOM
      IF(DTGSU.LE.1.D-4)DTGSU=V0012
 1798 DTGIN=V0012
      DENOM=GLINFP(I)-DG
      IF(DABS(DENOM).LE.1.D-3)GOTO 1799
      DTGIN=(G-GLINF(I))/DENOM
      IF(DTGIN.LE.1.D-4)DTGIN=V0012
 1799 DTVOI=DMIN1(DTVOI,DTGSU,DTGIN)
 1800 CONTINUE
      DT=DMIN1(DTVOI,DT)
      DT=DMAX1(DT,V0011)
      RETURN
       END