home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 9 / 09.iso / e / e003 / 4.ddi / ELSTF10.FOR < prev    next >
Encoding:
Text File  |  1987-04-16  |  70.4 KB  |  880 lines

  1.       SUBROUTINE THDFE(ID,PROP1,PROP2,PROP4,PROP5,PROP6,LM,             00301560
  2.      $S,RF,XM,SA,SF,TEMPD,KK1,KK2,KK4,KK5,KK6,IX,IA,NEL,NUMNP,          00301570
  3.      $NDMX,NSMX,MXDF,MMA)                                               00301580
  4.       IMPLICIT REAL*8 (A-H,O-Z)                                         00301590
  5.       REAL*8  ID,LM                                                     00301600
  6.       REAL*8MODUE                                                       00301610
  7.       COMMON A(1)                                                       00301620
  8.       COMMON /JUNK/ IEL,NND9,NINT,NINTOP,ND,MEL,NOD9(12),RRJUNK(218)    R0301630
  9.       COMMON /QTSARG/ D(6,6),P(3,20),YZ(60),H(20),TAU(3),               00301640
  10.      $PROP(4),B(60   ),XJ(3,3),HP(60),UP(60),DE,DET,STR(6,60)           00301650
  11.      &,FN(20,2),RRQTSA(226)                                             R0301660
  12.       COMMON /ELTEMP/TAVG,RRELTE(102)                                   R0301670
  13.       COMMON /CG/ SCG(4),RRCG(2)                                        R0301680
  14.       COMMON /PREP/ XZ(2),KSKIP,NDYN,NRPREP(15)                         R0301690
  15.       COMMON /AMB/ GRAV,REFT,JROT                                       00301710
  16.       COMMON /ELPAR/ XPAR(14),NZQ,MBAND,NZD(8),N2P,N3P,NMRI,NTRI,N1P    00301720
  17.      & ,NRELPA(43)                                                      R0301721
  18.       COMMON/MASS/LMASS                                                 00301730
  19.       COMMON /TRASH/ XX(7)                                              00301740
  20.      $,ZQ(2),H8(8),LSW,KDM,STRS(6,60)                                   00301750
  21.      $ ,W,I,J,L,II,I2,JJ,NC,NN,NR,NT,MAT,NDM,NPR,NRTRAS(209)            R0301770
  22.       DIMENSION LM(MXDF),RF(MXDF,KK6),S(MXDF,MXDF),SA(NSMX,MXDF),       00301780
  23.      $SF(NSMX,KK6),TEMPD(NDMX,KK6)                                      00301790
  24.       DIMENSION PROP6(KK6,7),XM(MXDF,MMA),ITABLE(9)                     00301800
  25.       DIMENSION PROP5(KK5,7)                                            00301810
  26.       DIMENSION IX(13),ID(NUMNP,3),IA(20)                               00301820
  27.       DIMENSION PRES(7)                                                 00301830
  28.       DIMENSION EVAL( 9,3)                                              00301840
  29.       DIMENSION TM(9,8)                                                 00301850
  30.       DATA  EVAL / 1., 1.,-1.,-1., 1., 1.,-1.,-1., 0.,                  00301860
  31.      $            -1., 1., 1.,-1.,-1., 1., 1.,-1., 0.,                  00301870
  32.      $            -1.,-1.,-1.,-1., 1., 1., 1., 1., 0./                  00301880
  33.       LL=KK6                                                            00301890
  34.       MEL=NEL                                                           00301900
  35.       DO 80 I=2,9                                                       00301910
  36.    80 ITABLE(I)=I-1                                                     00301920
  37.       ITABLE(1)=9                                                       00301930
  38.       LSW=0                                                             00301940
  39.       IF(IX(4).NE.IX(3).OR.IX(8).NE.IX(7)) GO TO 90                     00301950
  40.       LSW=1                                                             00301960
  41.       IA(11)=IX(3)                                                      00301970
  42.       IA(15)=IX(7)                                                      00301980
  43.       IA(20)=IA(19)                                                     00301990
  44.       ITABLE(4)=5                                                       00302000
  45.       ITABLE(5)=6                                                       00302010
  46.    90 CONTINUE                                                          00302020
  47.       II=0                                                              00302030
  48.       DO 100 I=9,20                                                     00302040
  49.       NN=IA(I)                                                          00302050
  50.       IF(NN.EQ.0) GO TO 100                                             00302060
  51.       II=II+1                                                           00302070
  52.       NOD9(II)=I                                                        00302080
  53.   100 CONTINUE                                                          00302090
  54.       IEL=II+8                                                          00302100
  55.       NND9=II                                                           00302110
  56.   110 I2=0                                                              00302120
  57.       DO 130 I=1,IEL                                                    00302130
  58.       IF(I.LE.8) II=IX(I)                                               00302140
  59.       IF(I.LE.8) GO TO 120                                              00302150
  60.       JJ=NOD9(I-8)                                                      00302160
  61.       II=IA(JJ)                                                         00302170
  62.   120 I2=I2 + 3                                                         00302180
  63.       CALL UNPKID(ID,NUMNP,LM(I2-2),W,2,II,1)                           00302190
  64.       CALL UNPKID(ID,NUMNP,LM(I2-1),W,2,II,2)                           00302200
  65.       CALL UNPKID(ID,NUMNP,LM(I2)  ,W,2,II,3)                           00302210
  66.       CALL UNPKID(ID,NUMNP,W,YZ(I2-2),1,II,1)                           00302220
  67.       CALL UNPKID(ID,NUMNP,W,YZ(I2-1),1,II,2)                           00302230
  68.   130 CALL UNPKID(ID,NUMNP,W,YZ(I2)  ,1,II,3)                           00302240
  69.         IF(JROT.EQ.0) GO TO 134                                         00302250
  70.         I2=0                                                            00302260
  71.         DO 132 I=1,IEL                                                  00302270
  72.         I2=I2+3                                                         00302280
  73. 132     CALL CENT(YZ(I2-2),YZ(I2-1),FN(I,1),FN(I,2))                    00302290
  74. 134   CONTINUE                                                          00302300
  75.       NS=54                                                             00302310
  76.       IF(NND9.EQ.0) NS=6                                                00302320
  77.       IF(LSW.LE.0) GO TO 135                                            00302330
  78.       NS=30                                                             00302340
  79.       LM(10)=0.                                                         00302350
  80.       LM(11)=0.                                                         00302360
  81.       LM(12)=0.                                                         00302370
  82.       LM(22)=0.                                                         00302380
  83.       LM(23)=0.                                                         00302390
  84.       LM(24)=0.                                                         00302400
  85.       LM(31)=0.                                                         00302410
  86.       LM(32)=0.                                                         00302420
  87.       LM(33)=0.                                                         00302430
  88.       LM(43)=0.                                                         00302440
  89.       LM(44)=0.                                                         00302450
  90.       LM(45)=0.0                                                        00302460
  91.       LM(58)=0.0                                                        00302470
  92.       LM(59)=0.0                                                        00302480
  93.       LM(60)=0.0                                                        00302490
  94.   135 CONTINUE                                                          00302500
  95.       MAT=IX(9)                                                         00302510
  96.       IF(MAT.GT.18.AND.NTRI.EQ.0) WRITE(6,140)NEL                       00302520
  97.       IF(MAT.GT.18.AND.NTRI.EQ.0) MAT=1                                 00302530
  98.   140 FORMAT (//20X, 45HNO USER SUPPLIED MATERIALS ARE AVAIL. FOR EL.,I500302540
  99.      $/)                                                                00302550
  100.       IF(MAT.GT.18) GO TO 150                                           00302560
  101.       PROP(1)= MODUE(TAVG,MAT)                                          00302570
  102.       PROP(2)=PRATO (TAVG,MAT)                                          00302580
  103.       PROP(3)=DENS(TAVG,MAT)/1728.0E0/GRAV                              00302590
  104.       PROP(4)=ALPHZM(TAVG,MAT)                                          00302600
  105.       GO TO 160                                                         00302610
  106.   150 CALL MATEV(MAT,NMRI,NTRI,TAVG,PROP(1),PROP(2),PROP(4),PROP(3),    00302620
  107.      $A(N1P),A(N2P),A(N3P),NEL)                                         00302630
  108.       PROP(3)=PROP(3)/GRAV                                              00302640
  109.   160 DE=PROP(3)                                                        00302650
  110.       NINTOP=IX(12)                                                     00302660
  111.       IF(NDYN.EQ.7) NINTOP=9                                            00302670
  112.       NINT=3                                                            00302680
  113.       IF(IEL.LE.8) NINT=2                                               00302690
  114.       IF(NINTOP.GT.0.AND.NINTOP.LE.3) NINT=2                            00302700
  115.       IF(NINTOP.GT.0.AND.NINTOP.LE.3) NINTOP=0                          00302710
  116.       SQ3=1.0/SQRT(3.0)                                                 00302720
  117.       IF(NINT.EQ.3) SQ3= SQRT(0.6)                                      00302730
  118.       RS=1.0/SQ3                                                        00302740
  119.       RSF=1.0                                                           00302750
  120.       RSF2=0.0                                                          00302760
  121.       IF(NINT.EQ.3) RSF=1.0/3.0                                         00302770
  122.       IF(NINT.EQ.3) RSF2=4.0                                            00302780
  123.       AS=(5.0+RSF2+(3.0+RSF2)*RS)*RSF*0.25                              00302790
  124.       BS=-(RS+1.0)*RSF*0.25                                             00302800
  125.       CS= (RS-1.0)*RSF*0.25                                             00302810
  126.       DS=(5.0+RSF2-(3.0+RSF2)*RS)*RSF*0.25                              00302820
  127.       DO 161 I=1,8                                                      00302830
  128.       DO 161 J=1,8                                                      00302840
  129.   161 TM(J,I)=BS                                                        00302850
  130.       DO 162 I=1,8                                                      00302860
  131.       J=9-I                                                             00302870
  132.       TM(I,I)=AS                                                        00302880
  133.   162 TM(J,I)=CS                                                        00302890
  134.       DO 163 I=3,8                                                      00302900
  135.       J=I-2                                                             00302910
  136.       TM(I,J)=CS                                                        00302920
  137.   163 TM(J,I)=CS                                                        00302930
  138.       DO 164 I=1,3                                                      00302940
  139.       J=I+5                                                             00302950
  140.       TM(I,J)=CS                                                        00302960
  141.       TM(J,I)=CS                                                        00302970
  142.       K=I+1                                                             00302980
  143.       J=K+3                                                             00302990
  144.       TM(K,J)=CS                                                        00303000
  145.   164 TM(J,K)=CS                                                        00303010
  146.       DO 165 I=1,2                                                      00303020
  147.       J=I+6                                                             00303030
  148.       TM(I,J)=DS                                                        00303040
  149.       TM(J,I)=DS                                                        00303050
  150.       K=I+2                                                             00303060
  151.       J=K+2                                                             00303070
  152.       TM(J,K)=DS                                                        00303080
  153.   165 TM(K,J)=DS                                                        00303090
  154.       DO 166 K=1,8                                                      00303100
  155.       I=10-K                                                            00303110
  156.       L=I-1                                                             00303120
  157.       DO 166 J=1,8                                                      00303130
  158.   166 TM(I,J)=TM(L,J)                                                   00303140
  159.       DO 167 I=1,8                                                      00303150
  160.   167 TM(1,I)=0.125                                                     00303160
  161.       IF(MAT.EQ.19.OR.MAT.EQ.20)  NINT=1                                00303170
  162.       ND=3*IEL                                                          00303180
  163.       CALL STIF60(S,RF,PROP6,LL,TEMPD,NDMX,MXDF,XM)                     00303190
  164.       IF(KSKIP.EQ.1) RETURN                                             00303200
  165.       IF(LMASS.NE.1) GO TO 1160                                         00303210
  166.       DO 1140 I=1,ND                                                    00303220
  167.  1140 XM(I,I)=XM(I,1)                                                   00303230
  168.       DO 1150 I=1,ND                                                    00303240
  169.       IRK=I+1                                                           00303250
  170.       IF(IRK.GT.ND) GO TO 1150                                          00303260
  171.       DO 1145 J=IRK,ND                                                  00303270
  172.       XM(I,J)=0.0E0                                                     00303280
  173.  1145 XM(J,I)=XM(I,J)                                                   00303290
  174.  1150 CONTINUE                                                          00303300
  175.  1160 CONTINUE                                                          00303310
  176.       NT=(ND*ND-ND)/2+ND                                                00303320
  177.       NDM=ND-1                                                          00303330
  178.       DO 180 I=1,NDM                                                    00303340
  179.       II=ND-I+1                                                         00303350
  180.       L=ND+1                                                            00303360
  181.       DO 180 J=II,ND                                                    00303370
  182.       L=L-1                                                             00303380
  183.       NR= MOD(NT,MXDF)                                                  00303390
  184.       NC=NT/MXDF+1                                                      00303400
  185.       IF(NR.GT.0) GO TO 170                                             00303410
  186.       NR=MXDF                                                           00303420
  187.       NC=NC-1                                                           00303430
  188.   170 S(L,II)=S(NR,NC)                                                  00303440
  189.   180 NT=NT-1                                                           00303450
  190.       IF(NINT.EQ.1) NINT=3                                              00303460
  191.       NPR=IX(11)                                                        00303470
  192.         IF(IX(10).GT.1) NPR=IX(10)+99                                   00303480
  193.       IF(NPR.LE.0) GO TO 240                                            00303490
  194.       IF(NPR.LE.KK5) GO TO 200                                          00303500
  195.       WRITE(6,190)NEL                                                   00303510
  196.   190 FORMAT(//20X, 44HTHE PRESSURE TYPE DOES NOT EXIST FOR ELEMENT,I5/ 00303520
  197.      $  20X, 21H EXECUTION WILL STOP.//)                                00303530
  198.       KSKIP=1                                                           00303540
  199.       RETURN                                                            00303550
  200.   200 DO 210 I=1,7                                                      00303560
  201.   210 PRES(I)=PROP5(NPR,I)                                              00303570
  202.       CALL PLD60(PRES)                                                  00303580
  203.       IF(KSKIP.EQ.1) RETURN                                             00303590
  204.       DO 230 I=1,LL                                                     00303600
  205.       PLF=PROP6(I,1)                                                    00303610
  206.       PHF=1.0                                                           00303620
  207.       IF(PLF.EQ.0.0) GO TO 230                                          00303630
  208.       DO 220 J=1,ND                                                     00303640
  209.   220 RF(J,I)=RF(J,I)+PLF*UP(J)+ PHF*HP(J)                              00303650
  210.   230 CONTINUE                                                          00303660
  211.   240 CONTINUE                                                          00303670
  212.       KK=NS/6                                                           00303680
  213.       DS=D(4,4)                                                         00303690
  214.       DO 340 II=1,8                                                     00303700
  215.       I6=6*II-3                                                         00303710
  216.       I=ITABLE(II)                                                      00303720
  217.       E1=EVAL(II,1)*SQ3                                                 00303730
  218.       E2=EVAL(II,2)*SQ3                                                 00303740
  219.       E3=EVAL(II,3)*SQ3                                                 00303750
  220.       CALL DERIQ3(NEL,YZ,B,DET,E1,E2,E3,NOD9,1)                         00303760
  221.       DO 250 I=1,ND                                                     00303770
  222.       DO 250 J=1,6                                                      00303780
  223.   250 STR(J,I)=0.0                                                      00303790
  224.       DO 260 K=3,ND,3                                                   00303800
  225.       K3=K                                                              00303810
  226.       K2=K3-1                                                           00303820
  227.       K1=K2-1                                                           00303830
  228.       STR(1,K1)=B(K1)                                                   00303840
  229.       STR(2,K2)=B(K2)                                                   00303850
  230.       STR(3,K3)=B(K3)                                                   00303860
  231.       STR(4,K1)=B(K2)                                                   00303870
  232.       STR(4,K2)=B(K1)                                                   00303880
  233.       STR(5,K2)=B(K3)                                                   00303890
  234.       STR(5,K3)=B(K2)                                                   00303900
  235.       STR(6,K1)=B(K3)                                                   00303910
  236.   260 STR(6,K3)=B(K1)                                                   00303920
  237.       DO 280 I=1,3                                                      00303930
  238.       IM=I+3                                                            00303940
  239.       DO 280 J=1,ND                                                     00303950
  240.       SP=0.0                                                            00303960
  241.       DO 270 L7=1,3                                                     00303970
  242.   270 SP=SP+D(I,L7)*STR(L7,J)                                           00303980
  243.       STRS(I,J)=SP                                                      00303990
  244.   280 STRS(IM,J)=DS*STR(IM,J)                                           00304000
  245.       DO 330 L=1,LL                                                     00304010
  246.       TOPT=PROP6(L,2)                                                   00304020
  247.       IF(TOPT.EQ.0) GO TO 330                                           00304030
  248.       IF(TOPT.EQ.2) TEMP=PROP6(L,3)                                     00304040
  249.       IF(TOPT.NE.1) GO TO 310                                           00304050
  250.       TEMP=0.0                                                          00304060
  251.       KL=8                                                              00304070
  252.       DO 290 K=1,8                                                      00304080
  253.   290 TEMP=TEMP+H(K)*TEMPD(K,L)                                         00304090
  254.       DO 300 K=9,20                                                     00304100
  255.       IF(IA(K).EQ.0) GO TO 300                                          00304110
  256.       KL=KL+1                                                           00304120
  257.       TEMP=TEMP+H(KL)*TEMPD(K,L)                                        00304130
  258.   300 CONTINUE                                                          00304140
  259.   310 TEMP=TEMP-REFT                                                    00304150
  260.       DO 320 NK=1,3                                                     00304160
  261.       IM=I6+NK                                                          00304170
  262.   320 SF(IM,L)=-TAU(NK)*TEMP                                            00304180
  263.   330 CONTINUE                                                          00304190
  264.   331 DO 334 M=1,KK                                                     00304200
  265.       J7=6*M-6                                                          00304210
  266.       I=ITABLE(M)+1                                                     00304220
  267.       IF(M.EQ.1) I=1                                                    00304230
  268.       FACTOR=TM(I,II)                                                   00304240
  269.       DO 332 J1=1,6                                                     00304250
  270.       L33=J1+J7                                                         00304260
  271.       DO 332 K1=1,ND                                                    00304270
  272.   332 SA(L33,K1)=SA(L33,K1)+FACTOR*STRS(J1,K1)                          00304280
  273.       DO 333 J1=1,3                                                     00304290
  274.       L33=J1+J7                                                         00304300
  275.       MO=I6+J1                                                          00304310
  276.       DO 333 K1=1,LL                                                    00304320
  277.   333 SF(L33,K1)=SF(L33,K1)+FACTOR*SF(MO,K1)                            00304330
  278.   334 CONTINUE                                                          00304340
  279.   340 CONTINUE                                                          00304350
  280.       DO 345 I=1,KK                                                     00304360
  281.       L3=6*I-6                                                          00304370
  282.       DO 345 J1=4,6                                                     00304380
  283.       J7=L3+J1                                                          00304390
  284.       DO 345 K1=1,LL                                                    00304400
  285.   345 SF(J7,K1)=0.0                                                     00304410
  286.       LK=4                                                              00304420
  287.       IF(NND9.EQ.0) GO TO 351                                           00304430
  288.       DO 350 I=2,KK                                                     00304440
  289.       LK=LK+6                                                           00304450
  290.       J=ITABLE(I)                                                       00304460
  291.   350 SF(LK,1)= IX(J)/10000.                                            00304470
  292.   351 CONTINUE                                                          00304480
  293.       IF(DE.EQ.0.0) GO TO 390                                           00304490
  294.       IRK=1                                                             00304500
  295.       IRK1=1                                                            00304510
  296.       IRK2=1                                                            00304520
  297.       DO 360 IM=3,ND,3                                                  00304530
  298.       IM1=IM-1                                                          00304540
  299.       IM2=IM-2                                                          00304550
  300.       IF(LMASS.NE.1) GO TO 355                                          00304560
  301.       IRK=IM                                                            00304570
  302.       IRK1=IM1                                                          00304580
  303.       IRK2=IM2                                                          00304590
  304.   355 CONTINUE                                                          00304600
  305.       SCG(1)=SCG(1)+XM(IM2,IRK2)*YZ(IM2)                                00304610
  306.       SCG(2)=SCG(2)+XM(IM1,IRK1)*YZ(IM1)                                00304620
  307.       SCG(3)=SCG(3)+XM(IM,IRK )*YZ(IM)                                  00304630
  308.   360 SCG(4)=SCG(4)+XM(IM,IRK)                                          00304640
  309.       DO 380 I=1,LL                                                     00304650
  310.       AX=PROP6(I,5)*GRAV                                                00304660
  311.         IF(JROT.EQ.0) GO TO 365                                         00304670
  312.         AX=0.0                                                          00304680
  313.         AY=0.0                                                          00304690
  314. 365     CONTINUE                                                        00304700
  315.       AZ=PROP6(I,7)*GRAV                                                00304710
  316.       IF(AX.EQ.0.0.AND.AY.EQ. 0.0.AND.AZ.EQ.0.0) GO TO 380              00304720
  317.       IRK=1                                                             00304730
  318.       IRK1=1                                                            00304740
  319.       IRK2=1                                                            00304750
  320.       DO 370 IM=3,ND,3                                                  00304760
  321.       IM1=IM-1                                                          00304770
  322.       IM2=IM-2                                                          00304780
  323.       IF(LMASS.NE.1) GO TO 368                                          00304790
  324.       IRK=IM                                                            00304800
  325.       IRK1=IM1                                                          00304810
  326.       IRK2=IM2                                                          00304820
  327.   368 CONTINUE                                                          00304830
  328.       RF(IM2,I)=RF(IM2,I)+XM(IM2,IRK2)*AX                               00304840
  329.       RF(IM1,I)=RF(IM1,I)+XM(IM1,IRK1)*AY                               00304850
  330.   370 RF(IM ,I)=RF(IM ,I)+XM(IM,IRK)*AZ                                 00304860
  331.   380 CONTINUE                                                          00304870
  332.   390 CONTINUE                                                          00304880
  333.         IF(JROT.EQ.0) GO TO 410                                         00304890
  334.         IM2=-2                                                          00304900
  335.       IRK1=1                                                            00304910
  336.       IRK2=1                                                            00304920
  337.         DO 400 I=1,IEL                                                  00304930
  338.         IM2=IM2+3                                                       00304940
  339.         IM1=IM2+1                                                       00304950
  340.       IF(LMASS.NE.1) GO TO 393                                          00304960
  341.       IRK1=IM1                                                          00304970
  342.       IRK2=IM2                                                          00304980
  343.   393 CONTINUE                                                          00304990
  344.         DO 400 J=1,LL                                                   00305000
  345.         AX=PROP6(J,5)                                                   00305010
  346.         AY=PROP6(J,6)                                                   00305020
  347.         RF(IM2,J)=RF(IM2,J)+XM(IM2,IRK2)*(AX*FN(I,1)+AY*FN(I,2))        00305030
  348. 400     RF(IM1,J)=RF(IM1,J)+XM(IM1,IRK1)*(AX*FN(I,2)-AY*FN(I,1))        00305040
  349. 410     CONTINUE                                                        00305050
  350.       CALL WRITET(MBAND,NDIF,IX(13),ND,NS,LM,SA)                        00305060
  351.       RETURN                                                            00305070
  352.       END                                                               00305080
  353.       SUBROUTINE STIF60( S,RF,PROP6,LL,TEMPD,NDMX,MXDF,XM)              00269800
  354.       IMPLICIT REAL*8 (A-H,O-Z)                                         00269810
  355.       DIMENSION PROP6(LL,7),TEMPD(NDMX,LL),RF(MXDF,LL),XM(1)            00269820
  356.       DIMENSION S(1)                                                    00269830
  357.       COMMON /TRASH/BB(9)                                               00269840
  358.      $      ,H8(8),RRTRAS(473)                                          R0269850
  359.       COMMON /QTSARG/ D(6,6),P(3,20),YZ(60),H(20),TAU(3),               00269860
  360.      $PROP( 4),B(60  ),XJ(3,3),HP(60),UP(60),DE,DET,RRQTSA(626)         R0269870
  361.       COMMON /JUNK/ IEL,NND9,NINT,NINTOP,ND,NEL,NOD9(12),RRJUNK(218)    R0269880
  362.       COMMON /GASS/ XG(4,4),WGT(4,4),IPERM(3)                           R0269890
  363.       COMMON /PREP/ XZ(2),KSKIP,RRPREP(8)                               R0269900
  364.       COMMON /AMB/ GRAV,REFT,JROT                                       R0269910
  365.       D1=PROP(1)                                                        00269920
  366.       D2=D1                                                             00269930
  367.       D3=0.0                                                            00269940
  368.       DO 70 I=1,6                                                       00269950
  369.       DO 70 J=1,6                                                       00269960
  370.    70 D(I,J)=0.0                                                        00269970
  371.       DO 80 I=1,3                                                       00269980
  372.       DO 80 J=1,3                                                       00269990
  373.    80 D(I,J)=D1                                                         00270000
  374.       IF(NINT.EQ.1) GO TO 90                                            00270010
  375.       CALL STST3L(PROP,D,TAU)                                           00270020
  376.       D1=D(1,1)                                                         00270030
  377.       D2=D(1,2)                                                         00270040
  378.       D3=D(4,4)                                                         00270050
  379.    90 CONTINUE                                                          00270060
  380.       FACT=PROP(1)/((1.-2.*PROP(2))*(1.+PROP(2)))                       00270070
  381.       FACT=FACT*PROP(4)*(1.+PROP(2))                                    00270080
  382.       WGH=0.0                                                           00270090
  383.       NINTX=NINT                                                        00270100
  384.       NINTY=NINT                                                        00270110
  385.       NINTZ=NINT                                                        00270120
  386.       IF(NINT.EQ.1) NINTX=3                                             00270130
  387.       IF(NINT.EQ.1) NINTY=3                                             00270140
  388.       IF(NINT.EQ.1) NINTZ=3                                             00270150
  389.       IF(NINTOP.EQ.1) NINTX=NINT-1                                      00270160
  390.       IF(NINTOP.EQ.2) NINTY=NINT-1                                      00270170
  391.       IF(NINTOP.EQ.3) NINTZ=NINT-1                                      00270180
  392.       DO 200 LX=1,NINTX                                                 00270190
  393.       E1=XG(LX,NINTX)                                                   00270200
  394.       DO 200 LY=1,NINTY                                                 00270210
  395.       E2=XG(LY,NINTY)                                                   00270220
  396.       DO 200 LZ=1,NINTZ                                                 00270230
  397.       E3=XG(LZ,NINTZ)                                                   00270240
  398.       WT=WGT(LX,NINTX)*WGT(LY,NINTY)*WGT(LZ,NINTZ)                      00270250
  399.       CALL DERIQ3  (NEL, YZ,B,DET,E1,E2,E3,NOD9,0)                      00270260
  400.       IF(KSKIP.EQ.1) RETURN                                             00270270
  401.       FAC=WT*DET                                                        00270280
  402.       IF(DE.EQ.0.0) GO TO 110                                           00270290
  403.       GG=FAC*DE                                                         00270300
  404.       IF(NINTOP.EQ.9) GO TO 101                                         00270310
  405.       DO 100 I=1,IEL                                                    00270320
  406.       II=3*I-2                                                          00270330
  407.   100 XM(II)=XM(II)+H(I)*GG                                             00270340
  408.       GO TO 110                                                         00270350
  409.   101 IK=1                                                              00270360
  410.       DO 105 I=1,ND,3                                                   00270370
  411.       XM(I)=XM(I)+H(IK)*H(IK)*GG                                        00270380
  412.   105 IK=IK+1                                                           00270390
  413.       WGH=WGH+GG                                                        00270400
  414.   110 CONTINUE                                                          00270410
  415.       IF(PROP(4).EQ.0.0) GO TO 170                                      00270420
  416.       DO 160 I=1,LL                                                     00270430
  417.       TMR=0.0                                                           00270440
  418.       TOPT=PROP6(I,2)                                                   00270450
  419.       IF(TOPT.EQ.0) GO TO 160                                           00270460
  420.       IF(TOPT.EQ.2)TMR=PROP6(I,3)                                       00270470
  421.       IF(TOPT.NE.1) GO TO 140                                           00270480
  422.       DO 120 II=1,8                                                     00270490
  423.   120 TMR=TMR+TEMPD(II,I)*H(II)                                         00270500
  424.       IF(NND9.EQ.0) GO TO 140                                           00270510
  425.       IK=8                                                              00270520
  426.       DO 130 II=1,NND9                                                  00270530
  427.       J=NOD9(II)                                                        00270540
  428.       IK=IK+1                                                           00270550
  429.   130 TMR=TMR+TEMPD(J,I)*H(IK)                                          00270560
  430.   140 TMR=TMR-REFT                                                      00270570
  431.       TMR=TMR*FACT*FAC                                                  00270580
  432.       DO 150 II=1,ND                                                    00270590
  433.   150 RF(II,I)=RF(II,I)+TMR*B(II)                                       00270600
  434.   160 CONTINUE                                                          00270610
  435.   170 CONTINUE                                                          00270620
  436.       FAC= DSQRT(FAC)                                                   00270630
  437.       DO 180 I=1,ND                                                     00270640
  438.   180 B(I)=FAC*B(I)                                                     00270650
  439.       KL=0                                                              00270660
  440.       DO 190 I=1,ND                                                     00270670
  441.       DO 190 J=I,ND                                                     00270680
  442.       KL=KL + 1                                                         00270690
  443.   190 S(KL)=S(KL) + B(I)*B(J)                                           00270700
  444.   200 CONTINUE                                                          00270710
  445.       KL=1                                                              00270720
  446.       DO 250 II=1,IEL                                                   00270730
  447.       I0=3*(II-1)                                                       00270740
  448.       DO 240 JJ=II,IEL                                                  00270750
  449.       J0=3*(JJ-1)                                                       00270760
  450.       KS=KL                                                             00270770
  451.       IC=0                                                              00270780
  452.       DO 220 I=1,3                                                      00270790
  453.       DO 210 J=1,3                                                      00270800
  454.       IC=IC + 1                                                         00270810
  455.       BB(IC)=S(KS)                                                      00270820
  456.   210 KS=KS + 1                                                         00270830
  457.   220 KS=KS + ND - I0 - I - 3                                           00270840
  458.       KS1=KL                                                            00270850
  459.       KS2=KS1 + ND - I0 - 1                                             00270860
  460.       KS3=KS2 + ND - I0 - 2                                             00270870
  461.       S(KS1)=BB(1)*D1 + (BB(5) + BB(9))*D3                              00270880
  462.       S(KS2+1)=BB(5)*D1 + (BB(1) + BB(9))*D3                            00270890
  463.       S(KS3+2)=BB(9)*D1 + (BB(1) + BB(5))*D3                            00270900
  464.       IF (II.EQ.JJ) GO TO 230                                           00270910
  465.       S(KS1+1)=BB(2)*D2 + BB(4)*D3                                      00270920
  466.       S(KS2)=BB(4)*D2 + BB(2)*D3                                        00270930
  467.       S(KS1+2)=BB(3)*D2 + BB(7)*D3                                      00270940
  468.       S(KS3)=BB(7)*D2 + BB(3)*D3                                        00270950
  469.       S(KS2+2)=BB(6)*D2 + BB(8)*D3                                      00270960
  470.       S(KS3+1)=BB(8)*D2 + BB(6)*D3                                      00270970
  471.       GO TO 240                                                         00270980
  472.   230 S(KS1+1)=BB(2)*(D2 + D3)                                          00270990
  473.       S(KS1+2)=BB(3)*(D2 + D3)                                          00271000
  474.       S(KS2+2)=BB(6)*(D2 + D3)                                          00271010
  475.   240 KL=KL + 3                                                         00271020
  476.   250 KL=KL + 2*(ND-I0) - 3                                             00271030
  477.   260 CONTINUE                                                          00271040
  478.       IF(DE.LE.0.0) RETURN                                              00271050
  479.       TMR=0.0                                                           00271060
  480.       DO 265 I=1,ND,3                                                   00271070
  481.   265 TMR=TMR +XM(I)                                                    00271080
  482.       WGH=WGH/TMR                                                       00271090
  483.       IF(NINTOP.NE.9) WGH=1.0                                           00271100
  484.       DO 270 I=1,ND,3                                                   00271110
  485.       XM(I)=XM(I)*WGH                                                   00271120
  486.       IK=I+1                                                            00271130
  487.       KL=I+2                                                            00271140
  488.       XM(IK)=XM(I)                                                      00271150
  489.   270 XM(KL)=XM(I)                                                      00271160
  490.       RETURN                                                            00271170
  491.       END                                                               00271180
  492.       SUBROUTINE STST3L(PROP,C,TAU)                                     00282620
  493.       IMPLICIT REAL*8 (A-H,O-Z)                                         00282630
  494.       COMMON/TRASH/YM,PV,A1,B1,C1,D1,RRTRAS(484)                        R0282640
  495.       DIMENSION PROP(1),C(6,1),TAU(1)                                   00282650
  496.   100 YM=PROP(1)                                                        00282660
  497.       PV=PROP(2)                                                        00282670
  498.       C1=1. - 2.*PV                                                     00282680
  499.       B1=YM/(1. + PV)                                                   00282690
  500.       A1=B1/C1                                                          00282700
  501.       D1=1. - PV                                                        00282710
  502.       D1=A1*D1                                                          00282720
  503.       A1=A1*PV                                                          00282730
  504.       B1=0.5*B1                                                         00282740
  505.       DO 110 I=1,6                                                      00282750
  506.       DO 110 J=1,6                                                      00282760
  507.   110 C(I,J)=0.0                                                        00282770
  508.       DO 120 I=1,3                                                      00282780
  509.   120 C(I,I)=D1                                                         00282790
  510.       DO 130 I=2,3                                                      00282800
  511.   130 C(1,I)=A1                                                         00282810
  512.       C(2,3)=A1                                                         00282820
  513.       DO 140 I=4,6                                                      00282830
  514.   140 C(I,I)=B1                                                         00282840
  515.       DO 150 I=1,6                                                      00282850
  516.       DO 150 J=1,6                                                      00282860
  517.   150 C(J,I)=C(I,J)                                                     00282870
  518.       DO 160 I=1,3                                                      00282880
  519.       TAU(I)=0.0                                                        00282890
  520.       DO 160 J=1,3                                                      00282900
  521.   160 TAU(I)=TAU(I)+C(I,J)*PROP(4)                                      00282910
  522.       RETURN                                                            00282920
  523.       END                                                               00282930
  524.       SUBROUTINE DERIQ3  (NEL,XX,B,DET,R,S,T,NOD9,KFL)                  00057600
  525.       IMPLICIT REAL*8 (A-H,O-Z)                                         00057610
  526.       COMMON /JUNK/ IEL,NRJUNK(453)                                     R0057620
  527.       COMMON /QTSARG/ D(6,6),P(3,20),YZ(60),H(20),TAU(3),               00057630
  528.      $PROP( 4),Y(60  ),XJ(3,3),RRQTSA(748)                              R0057640
  529.       DIMENSION XX(3,1),B(1),NOD9(1)                                    00057650
  530.       COMMON /TRASH/ XJI(3,3),RRTRAS(481)                               R0057660
  531.       CALL FUNCT (R,S,T,H,P,NOD9,XJ,DET,XX,KFL)                         00057670
  532.       IF(DET.LT.1.0E-20) DET=1.0E-20                                    00057680
  533.       DUM=1.0/DET                                                       00057690
  534.       XJI(1,1)=DUM*( XJ(2,2)*XJ(3,3) - XJ(2,3)*XJ(3,2))                 00057700
  535.       XJI(2,1)=DUM*(-XJ(2,1)*XJ(3,3) + XJ(2,3)*XJ(3,1))                 00057710
  536.       XJI(3,1)=DUM*( XJ(2,1)*XJ(3,2) - XJ(2,2)*XJ(3,1))                 00057720
  537.       XJI(1,2)=DUM*(-XJ(1,2)*XJ(3,3) + XJ(1,3)*XJ(3,2))                 00057730
  538.       XJI(2,2)=DUM*( XJ(1,1)*XJ(3,3) - XJ(1,3)*XJ(3,1))                 00057740
  539.       XJI(3,2)=DUM*(-XJ(1,1)*XJ(3,2) + XJ(1,2)*XJ(3,1))                 00057750
  540.       XJI(1,3)=DUM*( XJ(1,2)*XJ(2,3) - XJ(1,3)*XJ(2,2))                 00057760
  541.       XJI(2,3)=DUM*(-XJ(1,1)*XJ(2,3) + XJ(1,3)*XJ(2,1))                 00057770
  542.       XJI(3,3)=DUM*( XJ(1,1)*XJ(2,2) - XJ(1,2)*XJ(2,1))                 00057780
  543.       DO 120 K=1,IEL                                                    00057790
  544.       K2=K*3                                                            00057800
  545.       K2P=K2+1                                                          00057810
  546.       DO 100 I=1,3                                                      00057820
  547.   100 B(K2P -I)=0.0                                                     00057830
  548.       DO 110 I=1,3                                                      00057840
  549.       B(K2-2)=B(K2-2) + XJI(1,I)*P(I,K)                                 00057850
  550.       B(K2-1)=B(K2-1) + XJI(2,I)*P(I,K)                                 00057860
  551.   110 B(K2)=B(K2) + XJI(3,I)*P(I,K)                                     00057870
  552.   120 CONTINUE                                                          00057880
  553.       RETURN                                                            00057890
  554.       END                                                               00057900
  555.       SUBROUTINE FUNCT (R1,S1,T1,H,P,NOD9,XJ,DET,XX,KFL)                00097380
  556.       IMPLICIT REAL*8 (A-H,O-Z)                                         00097390
  557.       COMMON /PREP/ XZ(2),KSKIP,RRPREP(8)                               R0097400
  558.       COMMON/TRASH/RP,SP,TP,RM,SM,TM,RR,SS,TT                           00097410
  559.      $,H8(8),LSW,NRTRAS(945)                                            R0097420
  560.       COMMON /JUNK/ IEL,NND9,NINT,NINTOP,ND,NEL,RRJUNK(224)             R0097430
  561.       DIMENSION H(20),P(3,20),NOD9(12),IPERM(8),XJ(3,3),XX(3,20)        00097440
  562.       DIMENSION PDH1(3),PDH5(3)                                         00097450
  563.       DATA IPERM / 2,3,4,1,6,7,8,5 /                                    00097460
  564.       R=R1                                                              00097470
  565.       S=S1                                                              00097480
  566.       T=T1                                                              00097490
  567.       IELX=IEL                                                          00097500
  568.       RP=1.0 + R                                                        00097510
  569.       SP=1.0 + S                                                        00097520
  570.       TP=0.125*(1.0+T)                                                  00097530
  571.       RM=1.0 - R                                                        00097540
  572.       SM=1.0 - S                                                        00097550
  573.       TM=0.125*(1.0-T)                                                  00097560
  574.       RR=1.0 - R*R                                                      00097570
  575.       SS=1.0 - S*S                                                      00097580
  576.       TT=1.0 - T*T                                                      00097590
  577.       H(1)=RP*SM*TM                                                     00097600
  578.       H(2)=RP*SP*TM                                                     00097610
  579.       H(3)=RM*SP*TM                                                     00097620
  580.       H(4)=RM*SM*TM                                                     00097630
  581.       H(5)=RP*SM*TP                                                     00097640
  582.       H(6)=RP*SP*TP                                                     00097650
  583.       H(7)=RM*SP*TP                                                     00097660
  584.       H(8)=RM*SM*TP                                                     00097670
  585.       DO 50 I=1,8                                                       00097680
  586.    50 H8(I)=H(I)                                                        00097690
  587.       P(1,1)=SM*TM                                                      00097700
  588.       P(1,2)=SP*TM                                                      00097710
  589.       P(1,3)=-P(1,2)                                                    00097720
  590.       P(1,4)=-P(1,1)                                                    00097730
  591.       P(1,5)=SM*TP                                                      00097740
  592.       P(1,6)=SP*TP                                                      00097750
  593.       P(1,7)=-P(1,6)                                                    00097760
  594.       P(1,8)=-P(1,5)                                                    00097770
  595.       P(2,2)=RP*TM                                                      00097780
  596.       P(2,1)=-P(2,2)                                                    00097790
  597.       P(2,3)=RM*TM                                                      00097800
  598.       P(2,4)=-P(2,3)                                                    00097810
  599.       P(2,6)=RP*TP                                                      00097820
  600.       P(2,5)=-P(2,6)                                                    00097830
  601.       P(2,7)=RM*TP                                                      00097840
  602.       P(2,8)=-P(2,7)                                                    00097850
  603.       P(3,5)= 0.125*RP*SM                                               00097860
  604.       P(3,6)= 0.125*RP*SP                                               00097870
  605.       P(3,7)= 0.125*RM*SP                                               00097880
  606.       P(3,8)= 0.125*RM*SM                                               00097890
  607.       P(3,1)=-P(3,5)                                                    00097900
  608.       P(3,2)=-P(3,6)                                                    00097910
  609.       P(3,3)=-P(3,7)                                                    00097920
  610.       P(3,4)=-P(3,8)                                                    00097930
  611.       IF (IEL.EQ.8) GO TO 290                                           00097940
  612.       TM=TM+TM                                                          00097950
  613.       TP=TP+TP                                                          00097960
  614.       R=R+R                                                             00097970
  615.       S=S+S                                                             00097980
  616.       TT=0.25*TT                                                        00097990
  617.       T=-0.50*T                                                         00098000
  618.       I=0                                                               00098010
  619.   100 I=I + 1                                                           00098020
  620.       IF (I.GT.NND9) GO TO 230                                          00098030
  621.       NN=NOD9(I) - 8                                                    00098040
  622.       GO TO (110,120,130,140,150,160,170,180,190,200,210,220), NN       00098050
  623.   110 H(9)=RP*SS*TM                                                     00098060
  624.       P(1, 9)=SS*TM                                                     00098070
  625.       P(2, 9)=-RP*S*TM                                                  00098080
  626.       P(3, 9)=-0.25*RP*SS                                               00098090
  627.       GO TO 100                                                         00098100
  628.   120 H(10)=RR*SP*TM                                                    00098110
  629.       P(1,10)=-R*SP*TM                                                  00098120
  630.       P(2,10)=RR*TM                                                     00098130
  631.       P(3,10)=-0.25*RR*SP                                               00098140
  632.       GO TO 100                                                         00098150
  633.   130 H(11)=RM*SS*TM                                                    00098160
  634.       P(1,11)=-SS*TM                                                    00098170
  635.       P(2,11)=-RM*S*TM                                                  00098180
  636.       P(3,11)=-0.25*RM*SS                                               00098190
  637.       GO TO 100                                                         00098200
  638.   140 H(12)=RR*SM*TM                                                    00098210
  639.       P(1,12)=-R*SM*TM                                                  00098220
  640.       P(2,12)=-RR*TM                                                    00098230
  641.       P(3,12)=-0.25*RR*SM                                               00098240
  642.       GO TO 100                                                         00098250
  643.   150 H(13)=RP*SS*TP                                                    00098260
  644.       P(1,13)=SS*TP                                                     00098270
  645.       P(2,13)=-RP*S*TP                                                  00098280
  646.       P(3,13)= 0.25*RP*SS                                               00098290
  647.       GO TO 100                                                         00098300
  648.   160 H(14)=RR*SP*TP                                                    00098310
  649.       P(1,14)=-R*SP*TP                                                  00098320
  650.       P(2,14)=RR*TP                                                     00098330
  651.       P(3,14)= 0.25*RR*SP                                               00098340
  652.       GO TO 100                                                         00098350
  653.   170 H(15)=RM*SS*TP                                                    00098360
  654.       P(1,15)=-SS*TP                                                    00098370
  655.       P(2,15)=-RM*S*TP                                                  00098380
  656.       P(3,15)= 0.25*RM*SS                                               00098390
  657.       GO TO 100                                                         00098400
  658.   180 H(16)=RR*SM*TP                                                    00098410
  659.       P(1,16)=-R*SM*TP                                                  00098420
  660.       P(2,16)=-RR*TP                                                    00098430
  661.       P(3,16)= 0.25*RR*SM                                               00098440
  662.       GO TO 100                                                         00098450
  663.   190 H(17)=RP*SM*TT                                                    00098460
  664.       P(1,17)=SM*TT                                                     00098470
  665.       P(2,17)=-RP*TT                                                    00098480
  666.       P(3,17)=RP*SM*T                                                   00098490
  667.       GO TO 100                                                         00098500
  668.   200 H(18)=RP*SP*TT                                                    00098510
  669.       P(1,18)=SP*TT                                                     00098520
  670.       P(2,18)=RP*TT                                                     00098530
  671.       P(3,18)=RP*SP*T                                                   00098540
  672.       GO TO 100                                                         00098550
  673.   210 H(19)=RM*SP*TT                                                    00098560
  674.       P(1,19)=-SP*TT                                                    00098570
  675.       P(2,19)= RM*TT                                                    00098580
  676.       P(3,19)=RM*SP*T                                                   00098590
  677.       GO TO 100                                                         00098600
  678.   220 H(20)=RM*SM*TT                                                    00098610
  679.       P(1,20)=-SM*TT                                                    00098620
  680.       P(2,20)=-RM*TT                                                    00098630
  681.       P(3,20)=RM*SM*T                                                   00098640
  682.       GO TO 100                                                         00098650
  683.   230 IH=0                                                              00098660
  684.   240 IH=IH + 1                                                         00098670
  685.       IF (IH.GT.NND9) GO TO 290                                         00098680
  686.       II=IH + 7                                                         00098690
  687.       IF (II.EQ.IELX) GO TO 300                                         00098700
  688.   250 IN=NOD9(IH)                                                       00098710
  689.       IF (IN.GT.16) GO TO 270                                           00098720
  690.       I1=IN - 8                                                         00098730
  691.       I2=IPERM(I1)                                                      00098740
  692.       H(I1)=H(I1) - 0.5*H(IN)                                           00098750
  693.       H(I2)=H(I2) - 0.5*H(IN)                                           00098760
  694.       H(IH+8)=H(IN)                                                     00098770
  695.       DO 260 J=1,3                                                      00098780
  696.       P(J,I1)=P(J,I1) - 0.5*P(J,IN)                                     00098790
  697.       P(J,I2)=P(J,I2) - 0.5*P(J,IN)                                     00098800
  698.   260 P(J,IH+8)=P(J,IN)                                                 00098810
  699.       GO TO 240                                                         00098820
  700.   270 CONTINUE                                                          00098830
  701.       I1=IN - 16                                                        00098840
  702.       I2=I1 + 4                                                         00098850
  703.       H(I1)=H(I1) - 0.5*H(IN)                                           00098860
  704.       H(I2)=H(I2) - 0.5*H(IN)                                           00098870
  705.       H(IH+8)=H(IN)                                                     00098880
  706.       DO 280 J=1,3                                                      00098890
  707.       P(J,I1)=P(J,I1) - 0.5*P(J,IN)                                     00098900
  708.       P(J,I2)=P(J,I2) - 0.5*P(J,IN)                                     00098910
  709.   280 P(J,IH+8)=P(J,IN)                                                 00098920
  710.       GO TO 240                                                         00098930
  711.   290 CONTINUE                                                          00098940
  712.       IF(LSW.LE.0) GO TO 295                                            00098950
  713.       DELTH1=0.25*RR*SS*TM                                              00098960
  714.       DELTH5=0.25*RR*SS*TP                                              00098970
  715.       H(1)=H(1)+DELTH1                                                  00098980
  716.       H(2)=H(2)+DELTH1                                                  00098990
  717.       H(3)=H(3)+H(4)+H(11)                                              00099000
  718.       H(4)=0.0                                                          00099010
  719.       H(5)=H(5)+DELTH5                                                  00099020
  720.       H(6)=H(6)+DELTH5                                                  00099030
  721.       H(7)=H(7)+H(8)+H(15)                                              00099040
  722.       H(8)=0.0                                                          00099050
  723.       H(9)=H(9)-2.0*DELTH1                                              00099060
  724.       H(11)=0.0                                                         00099070
  725.       H(13)=H(13)-2.*DELTH5                                             00099080
  726.       H(15)=0.0                                                         00099090
  727.       H(19)=H(19)+H(20)                                                 00099100
  728.       H(20)=0.0                                                         00099110
  729.       PDH1(1)=-0.25*R*SS*TM                                             00099120
  730.       PDH1(2)=-0.25*S*RR*TM                                             00099130
  731.       PDH1(3)=-0.0625*RR*SS                                             00099140
  732.       PDH5(1)=-0.25*R*SS*TP                                             00099150
  733.       PDH5(2)=-0.25*S*RR*TP                                             00099160
  734.       PDH5(3)=-PDH1(3)                                                  00099170
  735.       DO 292 I=1,3                                                      00099180
  736.       P(I,1)=P(I,1)+PDH1(I)                                             00099190
  737.       P(I,2)=P(I,2)+PDH1(I)                                             00099200
  738.       P(I,3)=P(I,3)+P(I,4)+P(I,11)                                      00099210
  739.       P(I,4)=0.0                                                        00099220
  740.       P(I,5)=P(I,5)+PDH5(I)                                             00099230
  741.       P(I,6)=P(I,6)+PDH5(I)                                             00099240
  742.       P(I,7)=P(I,7)+P(I,8)+P(I,15)                                      00099250
  743.       P(I,8)=0.0                                                        00099260
  744.       P(I,9)=P(I,9)-2.0*PDH1(I)                                         00099270
  745.       P(I,11)=0.0                                                       00099280
  746.       P(I,13)=P(I,13)-2.0*PDH5(I)                                       00099290
  747.       P(I,15)=0.0                                                       00099300
  748.       P(I,19)=P(I,19)+P(I,20)                                           00099310
  749.   292 P(I,20)=0.0                                                       00099320
  750.   295 CONTINUE                                                          00099330
  751.   300 DO 320 I=1,3                                                      00099340
  752.       DO 320 J=1,3                                                      00099350
  753.       DUM=0.0                                                           00099360
  754.       DO 310 K=1,IELX                                                   00099370
  755.   310 DUM=DUM + P(I,K)*XX(J,K)                                          00099380
  756.   320 XJ(I,J)=DUM                                                       00099390
  757.       DET = XJ(1,1)*XJ(2,2)*XJ(3,3)                                     00099400
  758.      $    + XJ(1,2)*XJ(2,3)*XJ(3,1)                                     00099410
  759.      $    + XJ(1,3)*XJ(2,1)*XJ(3,2)                                     00099420
  760.      $    - XJ(1,3)*XJ(2,2)*XJ(3,1)                                     00099430
  761.      $    - XJ(1,2)*XJ(2,1)*XJ(3,3)                                     00099440
  762.      $    - XJ(1,1)*XJ(2,3)*XJ(3,2)                                     00099450
  763.       IF(DET.GT.1.0E-08) GO TO 330                                      00099460
  764.       IF(KFL.GT.0) GO TO 330                                            00099470
  765.       WRITE (6,340) NEL                                                 00099480
  766.       KSKIP=1                                                           00099490
  767.   330 CONTINUE                                                          00099500
  768.       RETURN                                                            00099510
  769.   340 FORMAT (40H STOP  -  NEGATIVE OR ZERO DETERMINANT       /         00099520
  770.      $1X,                                                               00099530
  771.      $11HON ELEMENT ,I5,35HCHECK NUMBERING OR COORDINATES.      )       00099540
  772.       END                                                               00099550
  773.       SUBROUTINE PLD60(PRES)                                            00166400
  774.       IMPLICIT REAL*8(A-H,O-Z)                                          00166410
  775.       REAL*8  LM                                                        00166420
  776.       DIMENSION KFACE(6,8)                                              00166430
  777.       DIMENSION KCRD(6),FVAL(6)                                         00166440
  778.       DIMENSION PRES(7)                                                 00166450
  779.       COMMON /QTSARG/ D(6,6),P(3,20),YZ(60),H(20),TAU(3),               00166460
  780.      $PROP(4),B(60), A(3,3),LM(60),XM(60),DE,DET,RRQTSA(626)            R0166470
  781.       COMMON /JUNK/IEL,NND9,NINT,NINTOP,ND,NEL,NOD9(12),ETA(3),         R0166480
  782.      & RRJUNK(215)                                                      R0166490
  783.       COMMON /TRASH/ ZA(17),LSW,NRTRAS(945)                             R0166500
  784.       COMMON /PREP/ ZB(2),KSKIP,RRPREP(8)                               R0166510
  785.       COMMON /GASS/ XK(4,4),WGT(4,4),IPERM(3)                           00166520
  786.       DATA KCRD / 1,1,2,2,3,3/                                          00166530
  787.       DATA FVAL /1.,-1.,1.,-1.,1.,-1./                                  00166540
  788.       DATA KFACE/ 1, 4, 2, 1, 6, 2,                                     00166550
  789.      $            2, 3, 3, 4, 7, 3,                                     00166560
  790.      $            6, 7, 7, 8, 8, 4,                                     00166570
  791.      $            5, 8, 6, 5, 5, 1,                                     00166580
  792.      $            9,11,10,12,14,10,                                     00166590
  793.      $           18,19,19,20,15,11,                                     00166600
  794.      $           13,15,14,16,16,12,                                     00166610
  795.      $           17,20,18,17,13, 9/                                     00166620
  796.       DO 100 I=1,ND                                                     00166630
  797.       LM(I)=0.0                                                         00166640
  798.   100 XM(I)=0.0                                                         00166650
  799.       DO 210 KK=1,3                                                     00166660
  800.       YREF=PRES(2)                                                      00166670
  801.       KTYPE=1                                                           00166680
  802.       IF(KK.EQ.1.AND.YREF.NE.0) KTYPE=2                                 00166690
  803.       PR=PRES(1)                                                        00166700
  804.       IF(KK.GE.2) PR=PRES(2*KK)                                         00166710
  805.       KF=PRES(2*KK+1)                                                   00166720
  806.       IF(LSW.LE.0.OR.KF.NE.2) GO TO 105                                 00166730
  807.       KSKIP=1                                                           00166740
  808.       WRITE(6,102)NEL                                                   00166750
  809.   102 FORMAT(/20X,7HELEMENT,I5,34H IS A WEDGE AND PRESSURE CANNOT BE,   00166760
  810.      $45H APPLIED TO FACE NO. 2, EXECUTION TERMINATED.//)               00166770
  811.       RETURN                                                            00166780
  812.   105 CONTINUE                                                          00166790
  813.       IF(PR.EQ.0) GO TO 210                                             00166800
  814.       IF(KF.EQ.0) GO TO 210                                             00166810
  815.       IF(KF.EQ.1.OR.KF.EQ.3.OR.KF.EQ.5) PR=-PR                          00166820
  816.       ML = KCRD(KF)                                                     00166830
  817.       ETA(ML) = FVAL(KF)                                                00166840
  818.       MM = IPERM(ML)                                                    00166850
  819.       MN = IPERM(MM)                                                    00166860
  820.       DO 180 LX=1,NINT                                                  00166870
  821.       ETA(MM)=XK(LX,NINT)                                               00166880
  822.       W1=WGT(LX,NINT)                                                   00166890
  823.       DO 180 LY=1,NINT                                                  00166900
  824.       ETA(MN)=XK(LY,NINT)                                               00166910
  825.       W2=WGT(LY,NINT)                                                   00166920
  826.       CALL FUNCT (ETA(1),ETA(2),ETA(3),H,P,NOD9, A,DET,YZ,1)            00166930
  827.       A1 = (A(MM,2)*A(MN,3)-A(MM,3)*A(MN,2))                            00166940
  828.       A2 = (A(MM,3)*A(MN,1)-A(MM,1)*A(MN,3))                            00166950
  829.       A3 = (A(MM,1)*A(MN,2)-A(MM,2)*A(MN,1))                            00166960
  830.       AA=                                                               00166970
  831.      $   DSQRT(A1**2+A2**2+A3**2)                                       00166980
  832.       A1 = A1/AA                                                        00166990
  833.       A2 = A2/AA                                                        00167000
  834.       A3 = A3/AA                                                        00167010
  835.       AA = 0.                                                           00167020
  836.       BB = 0.                                                           00167030
  837.       CC = 0.                                                           00167040
  838.       DO 110  I = 1,3                                                   00167050
  839.       AA=AA+A(MM,I)**2                                                  00167060
  840.       CC=CC+A(MN,I)**2                                                  00167070
  841.   110 BB = BB + A(MM,I)*A(MN,I)                                         00167080
  842.       C= DSQRT(AA*CC - BB*BB)                                           00167090
  843.       IF (KTYPE.EQ.2) GO TO 120                                         00167100
  844.       FORCE = PR                                                        00167110
  845.       GO TO 140                                                         00167120
  846.   120 YY = 0.                                                           00167130
  847.       DO 130 I=1,IEL                                                    00167140
  848.       K=3*I                                                             00167150
  849.   130 YY=YY+H(I)*YZ(K)                                                  00167160
  850.       YY = YY - YREF                                                    00167170
  851.       FORCE = -PR*YY                                                    00167180
  852.       IF(YY.GT.0.) FORCE = 0.                                           00167190
  853.   140 CONTINUE                                                          00167200
  854.       TS=FORCE*W1*W2*C                                                  00167210
  855.       DO 170 I=1,8                                                      00167220
  856.       N= KFACE(KF,I)                                                    00167230
  857.       IF(I.LE.4) GO TO 160                                              00167240
  858.       IF(NND9.EQ.0) GO TO 170                                           00167250
  859.       IL=N                                                              00167260
  860.       DO 150 IK=1,NND9                                                  00167270
  861.       N=IK+8                                                            00167280
  862.       IF(NOD9(IK).EQ.IL) GO TO 160                                      00167290
  863.   150 CONTINUE                                                          00167300
  864.       GO TO 170                                                         00167310
  865.   160 QQ=TS*H(N)                                                        00167320
  866.       K=3*N                                                             00167330
  867.       XM(K-2)=XM(K-2)+QQ*A1                                             00167340
  868.       XM(K-1)=XM(K-1)+QQ*A2                                             00167350
  869.       XM(K  )=XM(K  )+QQ*A3                                             00167360
  870.   170 CONTINUE                                                          00167370
  871.   180 CONTINUE                                                          00167380
  872.       IF(KTYPE.LT.2.OR. KK. GT.1)  GO TO 200                            00167390
  873.       DO 190 I=1,ND                                                     00167400
  874.       LM(I)=XM(I)                                                       00167410
  875.   190 XM(I)=0.0                                                         00167420
  876.   200 CONTINUE                                                          00167430
  877.   210 CONTINUE                                                          00167440
  878.       RETURN                                                            00167450
  879.       END                                                               00167460
  880.