home *** CD-ROM | disk | FTP | other *** search
- SUBROUTINE AXIS 00021440
- IMPLICIT REAL*8(A-H,O-Z) 00021450
- REAL*8 NPAR R0021451
- COMMON/JUNK/SIG(200),MM,L,K,NTAG,NDYN,NRJUNK(49) R0021460
- COMMON /ELPAR/ NPAR(14),NUMNP,MBAND,NELTYP,N1,N2,N3,N4,N5,MTOT,NEQ00021470
- $ ,N2P,N3P,NMRI,NTRI,N1P,NUMEL,NUMEL2,KZ(20,2),NEMN R0021480
- COMMON /OUT/NRES,NSTR,NDIS,NROUT(7) R0021490
- COMMON/DAPG/NQ,NRDAPG(421) R0021500
- 100 IF(NTAG.EQ.0) WRITE (6,130) 00021510
- CC=(SIG(1)+SIG(2))/2.0 00021520
- BB=(SIG(1)-SIG(2))/2. 00021530
- CR= DSQRT(BB**2+SIG(4)**2) 00021540
- SIG(5)=CC+CR 00021550
- SIG(6)=CC-CR 00021560
- SIG(7)=0.0 00021570
- EF=(SIG(3)-SIG(5))**2+(SIG(5)-SIG(6))**2+(SIG(6)-SIG(3))**2 00021580
- EF= DSQRT(EF/2.) 00021590
- SIG(8)=EF 00021600
- IF(NQ.EQ.-1)GO TO 110 00021610
- IF ((BB.EQ.0.0).AND.(SIG(4).EQ.0.0)) GO TO 110 00021620
- SIG(7)=28.648* DATAN2(SIG(4),BB) 00021630
- 110 WRITE(6,140)MM,L,(SIG (I),I=1,8) 00021640
- 1234 FORMAT(3X,1H7,I2,4H12 4 ,7G10.4) 00021650
- 120 FORMAT (I4,I2,2H12,6F9.0) 00021660
- NTAG=1 00021670
- IF(NQ.NE.-1)RETURN 00021680
- IF(NSTR.GT.0)WRITE(NSTR,1234)L,SIG(5),SIG(6),SIG(8),(SIG(I),I=1,4)00021690
- RETURN 00021700
- 130 FORMAT(1X ,30H AXISYMMETRIC ELEMENT STRESSES// 00021710
- $ 12H0EL.NO. LOAD,7X,8HR-STRESS,7X,8HZ-STRESS,7X, 00021720
- $ 8HT-STRESS,6X,9HRZ-STRESS,5X,10HMAX-STRESS,5X,10HMIN-STRESS, 00021730
- $3X,5HANGLE,5X,6HSIG-EF/) 00021740
- 140 FORMAT(2I6,6E15.5,F8.3,E12.5) 00021750
- END 00021760
- SUBROUTINE THREED 00305090
- IMPLICIT REAL*8(A-H,O-Z) 00305100
- REAL*8NS 00305110
- REAL*8 IS1,IS2,IS3,IS4 00305120
- DIMENSION SPR(6) 00305130
- DIMENSION EFS(2) 00305140
- COMMON / JUNK / SIG(200),MM,L,K,NTAG,NDYN,NRJUNK(49) R0305150
- COMMON /OUT/NRES,NSTR,NDIS,NROUT(7) R0305160
- COMMON/DAPG/NQ,NRDAPG(421) R0305170
- EQUIVALENCE (IS3,SIG(130)),(IS4,SIG(140)),(NS,SIG(150)) 00305180
- 100 CONTINUE 00305190
- IF(NTAG.EQ.0) WRITE (6,140) 00305200
- NG=NS 00305210
- IS1=IS3 00305220
- IS2=IS4 00305230
- IF(IS1.LT.1) IS1=IS1*100.+0.001 00305240
- IF(IS2.LT.1) IS2=IS2*100.+0.001 00305250
- NF1=IS1 00305260
- NF2=IS2 00305270
- IS1=NF1 00305280
- IS2=NF2 00305290
- IF(NF1.EQ.0) NF1=7 00305300
- IF(NF2.EQ.0) NF2=7 00305310
- NF=10*NF1+NF2 00305320
- IF(NF.EQ.77) NF=71 00305330
- EFS(2)=0.0 00305340
- SPR(4)=0.0 00305350
- SPR(5)=0.0 00305360
- IF(NQ.EQ.-1)GO TO 1000 00305370
- CALL PRIST (IS1,IS2,SIG,SPR,NS) 00305380
- DO 10 I=1,6 00305390
- 10 SIG(14+I)=SPR(6) 00305400
- II=NG/6 00305410
- DO 120 J=1,II 00305420
- M=6*J-6 00305430
- EFS(J)=(SIG(M+1)-SIG(M+2))**2+(SIG(M+2)-SIG(M+3))**2+(SIG(M+3)- 00305440
- $SIG(M+1))**2 00305450
- DO 110 I=4,6 00305460
- MI=M+I 00305470
- 110 EFS(J)=EFS(J)+6.*SIG(MI)**2 00305480
- EFS(J)= DSQRT(EFS(J)/2.) 00305490
- J12=12+J 00305500
- SIG(J12)=EFS(J) 00305510
- 120 CONTINUE 00305520
- 1000 WRITE(6,150)MM,L,IS1,(SIG(I),I=1,6),(SIG(I),I=15,17 ),SIG(13) 00305530
- IF(NG.EQ.12)WRITE(6,160) IS2,(SIG(I),I=7,12),(SIG(I),I=18,20) 00305540
- $ ,SIG(14) 00305550
- II=6+NG 00305560
- IF(NQ.NE.-1)RETURN 00305570
- IF(NSTR.GT.0)WRITE(NSTR,1234)II,L,NF,SIG(15),SIG(16),SIG(13) 00305580
- $ ,SIG(18),SIG(19),SIG(14),(SIG(I),I=1,NG) 00305590
- 1234 FORMAT(I4,I2,I2,2H 5,7G10.4/(8G10.4)) 00305600
- 130 FORMAT (I4,2I2,6F9.0) 00305610
- RETURN 00305620
- 140 FORMAT(36H1.....8-NODE SOLID ELEMENT STRESSES // 00305630
- $118H ELEM. LOAD FACE SIG-XX SIG-YY SIG-ZZ SIG-XY SI00305640
- $G-YZ SIG-ZX SIG-MAX SIG-MIN S2 OR SIG-EF / 16H NO00305650
- $. NO. NO.,84X,5HANGLE/) 00305660
- 150 FORMAT(I5,I4,F5.0,1X,10E10.3) 00305670
- 160 FORMAT(9X ,F5.0,1X,10E10.3) 00305680
- END 00305690
- SUBROUTINE PRIST (IS1,IS2,SIG,SPR,NS) 00177390
- IMPLICIT REAL*8(A-H,O-Z) 00177400
- REAL*8 IS1,IS2,NS 00177410
- DIMENSION SIG(12),SPR(6),IS(2),SG(6) 00177420
- IS(1)=IS1 00177430
- IS(2)=IS2 00177440
- NNS=1 00177450
- IF (NS.EQ.12) NNS=2 00177460
- DO 150 N=1,NNS 00177470
- IN=3*N-3 00177480
- II=IN*2 00177490
- IF (IS(N).EQ.0) GO TO 100 00177500
- CC=(SIG(II+1)+SIG(II+2))/2. 00177510
- BB=(SIG(II+1)-SIG(II+2))/2. 00177520
- CR= 00177530
- $ DSQRT(BB**2+SIG(II+4)**2) 00177540
- SPR(IN+1)=CC+CR 00177550
- SPR(IN+2)=CC-CR 00177560
- SPR(IN+3)=0. 00177570
- IF (BB.NE.0.)SPR(IN+3)=28.648* 00177580
- $ DATAN2(SIG(II+4),BB) 00177590
- GO TO 150 00177600
- 100 CC=(SIG(II+1)+SIG(II+2)+SIG(II+3))/3. 00177610
- DO 110 I=1,3 00177620
- SG(I)=SIG(II+I)-CC 00177630
- 110 SG(I+3)=SIG(II+I+3) 00177640
- C2=(SG(1)**2+SG(2)**2+SG(3)**2)*.5+SG(4)**2+SG(5)**2+SG(6)**2 00177650
- C3=SG(1)*(SG(2)*SG(3)-SG(5)*SG(5))+SG(4)*(SG(5)*SG(6)-SG(4)*SG(3))00177660
- $+SG(6)*(SG(4)*SG(5)-SG(2)*SG(6)) 00177670
- IF(C2.EQ.0.0D0) C2=1.0D-08 00177680
- T= DSQRT(C2/1.5) 00177690
- A=C3*1.414214/T**3 00177700
- AXQ=A+1.0 00177710
- IF(AXQ.GT.0.0.AND.AXQ.LT.2.0) A=DACOS(A)/3.0 R0177720
- IF(AXQ.GE.2.0) A=0.0 00177730
- IF(AXQ.LE.0.0) A=1.0471976 00177740
- T=T*1.414214 00177750
- SPR(IN+1)=T* DCOS(A) 00177760
- SPR(IN+2)=T* DCOS(A+2.0944) 00177770
- SPR(IN+3)=T* DCOS(A-2.0944) 00177780
- DO 120 I=2,3 00177790
- IF (SPR(IN+1).GT.SPR(IN+I)) GO TO 120 00177800
- C3=SPR(IN+1) 00177810
- SPR(IN+1)=SPR(IN+I) 00177820
- SPR(IN+I)=C3 00177830
- 120 CONTINUE 00177840
- IF (SPR(IN+2).LE.SPR(IN+3)) GO TO 130 00177850
- C3=SPR(IN+2) 00177860
- SPR(IN+2)=SPR(IN+3) 00177870
- SPR(IN+3)=C3 00177880
- 130 DO 140 I=1,3 00177890
- 140 SPR(IN+I)=SPR(IN+I)+CC 00177900
- 150 CONTINUE 00177910
- RETURN 00177920
- END 00177930
- SUBROUTINE SHELL 00236580
- IMPLICIT REAL*8 (A-H,O-Z) 00236590
- COMMON/JUNK/SIG(200),MM,L,K,NTAG,NDYN,NRJUNK(49) R0236600
- COMMON /OUT/NRES,NSTR,NDIS,NROUT(7) R0236610
- COMMON/DAPG/NQ,NRDAPG(421) R0236620
- DIMENSION EFS(2) 00236630
- 100 IF(NTAG.EQ.0) WRITE(6,120) 00236640
- IF(NQ.EQ.-1)GO TO 110 00236650
- SIG( 7)=SIG(1)+SIG(4) 00236660
- SIG( 8)=SIG(2)+SIG(5) 00236670
- SIG( 9)=SIG(3)+SIG(6) 00236680
- CC=(SIG( 7)+SIG( 8))/2. 00236690
- BB=(SIG( 7)-SIG( 8))/2. 00236700
- CR= DSQRT(BB**2+SIG( 9)**2) 00236710
- SIG(10)=CC+CR 00236720
- SIG(11)=CC-CR 00236730
- SIG(12)=0.0 00236740
- IF(BB.NE.0) SIG(12)=28.648* DATAN2(SIG( 9),BB) 00236750
- SIG(13)=SIG(1)-SIG(4) 00236760
- SIG(14)=SIG(2)-SIG(5) 00236770
- SIG(15)=SIG(3)-SIG(6) 00236780
- CC=(SIG(13)+SIG(14))/2. 00236790
- BB=(SIG(13)-SIG(14))/2. 00236800
- CR= DSQRT(BB**2+SIG(15)**2) 00236810
- SIG(16)=CC+CR 00236820
- SIG(17)=CC-CR 00236830
- SIG(18)=0.0 00236840
- IF(BB.NE.0) SIG(18)=28.648* DATAN2(SIG(15),BB) 00236850
- EFS(1)=SIG(10)**2+SIG(11)**2-SIG(10)*SIG(11) 00236860
- EFS(1)= DSQRT(EFS(1)) 00236870
- EFS(2)=SIG(16)**2+SIG(17)**2-SIG(16)*SIG(17) 00236880
- EFS(2)= DSQRT(EFS(2)) 00236890
- SIG(19)=EFS(1) 00236900
- SIG(20)=EFS(2) 00236910
- 110 WRITE(6,130)MM,L,(SIG(I),I=1,12),SIG(19),(SIG(I),I=13,18),SIG(20) 00236920
- IF(NQ.NE.-1)RETURN 00236930
- IF(NSTR.GT.0)WRITE(NSTR,1234)L,SIG(10),SIG(11),SIG(19),SIG(16), 00236940
- $SIG(17),SIG(20),(SIG(I),I=7,9),SIG(12),(SIG(I),I=13,15),SIG(18) 00236950
- 1234 FORMAT(4H 14,I2,4H12 6, 7G10.4/(8G10.4)) 00236960
- RETURN 00236970
- 120 FORMAT(24H1 SHELL ELEMENT STRESSES //10X, 00236980
- $10H ELEMENT,6X,4HLOAD,10H SIG-X,9X,5HSIG-Y,9X,6HSIG-XY,7X, 00236990
- $7HSIG-MAX,7X,7HSIG-MIN,8X,5HANGLE,9X,6HSIG-EF) 00237000
- 130 FORMAT(//10H MEMBRANE ,2I10,1X,1PE12.5,2X,1PE12.5,2X,1PE12.5/ 00237010
- $10H BENDING ,20X,1X,1PE12.5,2X,1PE12.5,2X,1PE12.5/ 00237020
- $10H +T/2 SIDE,20X,1X,1PE12.5,2X,1PE12.5,2X,1PE12.5,2X,1PE12.5,2X, 00237030
- $1PE12.5,2X,1PE12.5,2X,1PE12.5/ 00237040
- $10H -T/2 SIDE,20X,1X,1PE12.5,2X,1PE12.5,2X,1PE12.5,2X,1PE12.5,2X, 00237050
- $1PE12.5,2X,1PE12.5,2X,1PE12.5) 00237060
- 140 FORMAT (I4,I2,2H12,6F9.0) 00237070
- END 00237080
- SUBROUTINE BOUND(NORD,NADD) 00030130
- IMPLICIT REAL*8(A-H,O-Z) 00030140
- COMMON / JUNK / SIG(12), EXRA(188),MM,L,K,NTAG,NDYN,NRJUNK(49) R0030150
- DIMENSION NORD(NADD) 00030160
- 100 IF(NTAG.EQ.0) WRITE(6,110) 00030170
- NN=EXRA(138)*10000.D0+.001D0 00030180
- IF(EXRA(138).GT.1.0) NN=EXRA(139)*10000.D0+.001D0 00030190
- IF(NADD.GT.1.AND.NN.LE.NADD.AND.NN.GT.0) NN=NORD(NN) 00030200
- IF(NN.LE.0) NN=0 00030210
- WRITE(6,120) MM,NN,L,SIG(1),SIG(2) 00030220
- RETURN 00030230
- 110 FORMAT(1X , 39H CONSTRAINT FORCE - BOUNDARY ELEMENTS,// 00030240
- $62H EL. NUMBER NODE N LOAD CASE FORCE(LBS.) M,00030250
- $14HOMENT(IN-LBS.)/) 00030260
- 120 FORMAT(1X,I10,I12,I11,4X,1P2E15.7) 00030270
- END 00030280
- SUBROUTINE ELBOST 00073470
- IMPLICIT REAL*8(A-H,O-Z) 00073480
- COMMON /JUNK/SIG(39),EXR(161),MM,L,K,NTAG,RRJUNK(25) R0073490
- COMMON / OUT / N,NSTR,NDIS,NBMSTR,NROUT(6) R0073500
- COMMON/DAPG/NQ,NRDAPG(421) R0073510
- IF(NTAG.EQ.0) WRITE(6,100) 00073520
- IF(NTAG.EQ.0 .AND. NBMSTR.EQ.1)WRITE(6,125) 00073530
- IF(NTAG.EQ.0)WRITE(6,126) 00073540
- 126 FORMAT(1X) 00073550
- 100 FORMAT(85H1E L B O W - F O R C E S, M O M E N T S, A 00073560
- XN D S T R E S S E S // 00073570
- X1X,7HELEMENT,2X,4HLOAD,2X,7HSTATION,15X,5HAXIAL,2(6X,5HSHEAR), 00073580
- X4X,9HTORSION ,2(5X,13HB E N D I N G ,4X)/ 00073590
- X2X,6HNUMBER,2X,4HCASE,11X,5HFORCE, 00073600
- X 11X,2HRX,9X,2HRY,9X,2HRZ,9X,2HMX,20X,2HMY,20X,2HMZ) 00073610
- 125 FORMAT( 00073620
- X25X,6HSTRESS,7X,5HRX/A1,3X,8HAT Q3/B3,4X,8HAT Q2/B2,5X,4H- - ,1X, 00073630
- X2X,9H AT +C3,2X,9H AT -C3, 00073640
- X2X,9H AT +C2,2X,9H AT -C2 ) 00073650
- NS=EXR(161) 00073660
- IF(NS.GT.18) 00073670
- XWRITE(6,120)MM,L,(SIG(I1),I1= 1, 6), 00073680
- X (SIG(I2),I2=19,25), 00073690
- X (SIG(I3),I3= 7,12), 00073700
- X (SIG(I4),I4=26,32), 00073710
- X (SIG(I5),I5=13,18), 00073720
- X (SIG(I6),I6=33,39) 00073730
- IF(NS.LE.18) 00073740
- XWRITE(6,140)MM,L,(SIG(I1),I1= 1,18) 00073750
- NTAG=1 00073760
- IF(NQ.NE.-1)RETURN 00073770
- IF(NSTR.GT.0) WRITE(NSTR,1234) NS,L,(SIG(I),I=1,NS) 00073780
- 1234 FORMAT(I4,I2,2X,2H 9,7G10.4/(8G10.4)) 00073790
- 120 FORMAT(4X,I4,2X,I4,4X, 00073800
- X 5HEND-I, 2X,6HFORCE ,2X,1P4E12.4,12X,1PE12.4,12X,1PE12.4/ 00073810
- X23X,2X,6HSTRESS,2X,1P3E12.4,12X,1P4E12.4/ 00073820
- X18X,6HCENTER,3X,6HFORCE ,2X,1P4E12.4,12X,1PE12.4,12X,1PE12.4/ 00073830
- X23X,2X,6HSTRESS,2X,1P3E12.4,12X,1P4E12.4/ 00073840
- X18X,5HEND-J, 2X,6HFORCE ,2X,1P4E12.4,12X,1PE12.4,12X,1PE12.4/ 00073850
- X23X,2X,6HSTRESS,2X,1P3E12.4,12X,1P4E12.4) 00073860
- 140 FORMAT(4X,I4,2X,I4,4X, 00073870
- X 5HEND-I, 2X,6HFORCE ,2X,1P4E12.4,12X,1PE12.4,12X,1PE12.4/ 00073880
- X18X,6HCENTER,2X,6HFORCE ,2X,1P4E12.4,12X,1PE12.4,12X,1PE12.4/ 00073890
- X18X,5HEND-J, 2X,6HFORCE ,2X,1P4E12.4,12X,1PE12.4,12X,1PE12.4) 00073900
- RETURN 00073910
- END 00073920
- SUBROUTINE ST2D2(NORD,NADD) 00261870
- IMPLICIT REAL*8(A-H,O-Z) 00261880
- COMMON /JUNK/ SIG(200),MM,L,K,NTAG,RRJUNK(25) R0261890
- COMMON /BAND/KOPT,NRBAND(7) R0261900
- COMMON /OUT/NRES,NSTR,NROUT(8) R0261910
- COMMON/PREP/XMX,XAD,NRPREP(17) R0261920
- DIMENSION NORD(NADD) 00261930
- COMMON /QTSARG/ SIGEX(100),X(2),RRQTSA(898) R0261940
- COMMON/DAPG/NQ,NQX,DUMY(210) 00261950
- DIMENSION C(4),D(4),Q(3) 00261960
- DATA Q/4HNODE,4HC.G.,4HI.P./ 00261970
- JJ=SIG(150)/4 00261980
- MTYP=SIG(151) 00261990
- KL=0 00262000
- IF(NTAG.GT.0) GO TO 154 00262010
- IF(MTYP.EQ.11.AND.NTAG.EQ.0) WRITE(6,100) 00262020
- IF(MTYP.EQ.12.AND.NTAG.EQ.0) WRITE(6,110) 00262030
- IF(MTYP.EQ.13.AND.NTAG.EQ.0) WRITE(6,120) 00262040
- 100 FORMAT(1X , 32H .... AXISYMMETRIC ELEMENTS ..../) 00262050
- 110 FORMAT(1X , 32H .... PLANE STRESS ELEMENTS ..../) 00262060
- 120 FORMAT(1X , 32H .... PLANE STRAIN ELEMENTS ..../) 00262070
- IF(NTAG.EQ.0.AND.MTYP .NE.11) WRITE(6,130) 00262080
- IF(NTAG.EQ.0.AND.MTYP .EQ.11) WRITE(6,140) 00262090
- 130 FORMAT(12H0EL.NO. LOAD,12X,90HY-STRESS Z-STRESS YZ-STRESS T-S00262100
- $TRESS MAX-STRESS MIN-STRESS ANGLE SIG-EF LOCATION /) 00262110
- 140 FORMAT(12H0EL.NO. LOAD,12X,90HR-STRESS Z-STRESS RZ-STRESS T-S00262120
- $TRESS MAX-STRESS MIN-STRESS ANGLE SIG-EF LOCATION /) 00262130
- IF(NTAG.EQ.0.AND.KOPT.GT.1.AND.NADD.EQ.1) WRITE(6,150) 00262140
- 150 FORMAT( 5X,39HNOTE - NODES ARE NEW RENUMBERED NODES /) 00262150
- 154 KK=SIG(150) 00262160
- JL=1000 00262170
- IF(JJ.GT.1) JL=(KK-16)/4 00262180
- DO 200 I=1,JJ 00262190
- KK=KK+1 00262200
- FACE=SIG(KK)*10000.+.001 00262210
- NF=FACE 00262220
- LL=NF 00262230
- A=Q(2) 00262240
- IF(I.EQ.1) GO TO 155 00262250
- IF(NADD.GT.1.AND.I.LE.JL) NF=NORD(LL) 00262260
- A=Q(1) 00262270
- IF(I.EQ.1) A=Q(2) 00262280
- IF(I.LE.JL) GO TO 155 00262290
- A=Q(3) 00262300
- NF=I-JL 00262310
- LL=SIG(KK) 00262320
- IF(SIG(KK).LT.0.0) LL=LL-1 00262330
- X(1)=(SIG(KK)-LL-XAD)*XMX 00262340
- KK=KK+1 00262350
- LL=SIG(KK) 00262360
- IF(SIG(KK).LT.0.0) LL=LL-1 00262370
- X(2)=(SIG(KK)-LL-XAD)*XMX 00262380
- 155 CONTINUE 00262390
- IF(NQ.EQ.-1)GO TO 161 00262400
- LL=4*(I-1) 00262410
- DO 160 J=1,4 00262420
- LL=LL+1 00262430
- 160 D(J)=SIG(LL) 00262440
- CALL MXMN2 (D,C(1),C(2),C(3),C(4)) 00262450
- 161 IF(NQ.NE.-1)GO TO 164 00262460
- DO 162 KR=1,4 00262470
- D(KR)=DUMY(8*(I-1)+KR) 00262480
- 162 C(KR)=DUMY(8*(I-1)+KR+4) 00262490
- 164 CONTINUE 00262500
- DO 165 K=1,4 00262510
- KL=KL+1 00262520
- 165 SIGEX(KL)=C(K) 00262530
- 170 FORMAT(I4,I2,2H12,6F9.0) 00262540
- IF(I.EQ.1) WRITE(6,180)MM,L,D,C,A 00262550
- IF(I.GT.1.AND.I.LE.JL) WRITE(6,190)D,C,A,NF 00262560
- IF(I.GT.JL) SIGEX(KL-1)=X(1) 00262570
- IF(I.GT.JL) SIGEX(KL )=X(2) 00262580
- IF(I.GT.JL) GO TO 200 00262590
- IF(I.GT.JL.AND.L.EQ.1) WRITE(6,175)X(1),X(2),D,C,A,NF 00262600
- IF(I.GT.JL.AND.L.GT.1) WRITE(6,190)D,C,A,NF 00262610
- 175 FORMAT(3H Y=,F8.2,3H Z=,F8.2,F10.0,5E11.4,F7.2,E11.4,2X,A4,I5) 00262620
- 180 FORMAT(2I6, 9X,6E11.4,F7.2,E11.4,2X,A4,I5) 00262630
- 190 FORMAT(21X, 6E11.4,F7.2,E11.4,2X,A4,I5) 00262640
- DO 195 KR=1,4 00262650
- DUMY(8*(I-1)+KR)=D(KR) 00262660
- 195 DUMY(8*(I-1)+4+KR)=C(KR) 00262670
- NQX=8*I 00262680
- 200 CONTINUE 00262690
- KK=SIG(150) 00262700
- LL=JJ*4 00262710
- NS=KK+LL 00262720
- IF(NQ.NE.-1)RETURN 00262730
- IF(NSTR.GT.0) WRITE(NSTR,1234) NS,L,MTYP,(SIGEX(I),I=1,LL),(SIG(I)00262740
- $,I=1,KK) 00262750
- 1234 FORMAT(I4,I2,2X,I2 ,7G10.4/(8G10.4)) 00262760
- RETURN 00262770
- END 00262780
- SUBROUTINE MXMN2(STRESS,P1,P2,AG,EF) 00151960
- IMPLICIT REAL*8 (A-H,O-Z) 00151970
- DIMENSION STRESS(1) 00151980
- CC = (STRESS(1)+STRESS(2)) * 0.5E0 00151990
- BB = (STRESS(1)-STRESS(2)) * 0.5E0 00152000
- CR = DSQRT(BB**2 + STRESS(3)**2) 00152010
- P1 = CC+CR 00152020
- P2 = CC-CR 00152030
- AG=45.0E0 00152040
- IF( DABS(BB).LT.1.0D-8) GO TO 100 00152050
- AG = 28.648E0* DATAN2(STRESS(3),BB) 00152060
- 100 EF=(P1-P2)**2+(P2-STRESS(4))**2+(STRESS(4)-P1)**2 00152070
- EF= DSQRT(EF/2.0) 00152080
- RETURN 00152090
- END 00152100
- SUBROUTINE ST3D2(NORD,NADD) 00264210
- IMPLICIT REAL*8(A-H,O-Z) 00264220
- COMMON /JUNK/ SIG(200),MM,L,K,NTAG,RRJUNK(25) R0264230
- COMMON /BAND/ KOPT,NRBAND(7) R0264240
- COMMON /OUT/NR,NSTR,NROUT(8) R0264250
- COMMON/QTSARG/SIGEX(90),RRQTSA(910) R0264260
- COMMON/DAPG/NQ,NQX,DUMY(210) 00264270
- DIMENSION C(6),D(12),Q(2) 00264280
- DIMENSION NORD(NADD) 00264290
- DATA Q/4HNODE,4HC.G./ 00264300
- JJ=SIG(150)/6. 00264310
- IF(NTAG.GT.0) GO TO 125 00264320
- IF(NTAG.EQ.0) WRITE(6,100) 00264330
- 100 FORMAT(1X , 39H .... 3-D SOLID ELEMENTS 8-20NODE .... /) 00264340
- IF(NTAG.EQ.0.AND.KOPT.GT.1.AND.NADD.EQ.1) WRITE(6,110) 00264350
- 110 FORMAT(5X, 35H NODE NUMBERS ARE RENUMBERED NODES /) 00264360
- IF(NTAG.EQ.0) WRITE(6,120) 00264370
- 120 FORMAT( 00264380
- $61H ELEM. LOAD LOC. SIG-XX SIG-YY SIG-ZZ SIG-XY S, 00264390
- $57HIG-YZ SIG-ZX SIG-MAX SIG-MIN SIG-MID SIG-EF/) 00264400
- 125 KK=SIG(150) 00264410
- A=0. 00264420
- B=0. 00264430
- E=6. 00264440
- KL=0 00264450
- DO 190 I=1,JJ 00264460
- KK=KK+1 00264470
- FACE=SIG(KK)*10000.+.001 00264480
- NF=FACE 00264490
- LL=NF 00264500
- IF(NADD.GT.1.AND.I.GT.1) NF=NORD(LL) 00264510
- IF(NQ.EQ.-1)GO TO 131 00264520
- LL=6*(I-1) 00264530
- DO 130 J=1,6 00264540
- LL=LL+1 00264550
- 130 D(J)=SIG(LL) 00264560
- CALL PRIST(A,B,D,C,E) 00264570
- EFS=(C(1)-C(2))**2+(C(2)-C(3))**2+(C(3)-C(1))**2 00264580
- EFS= DSQRT(EFS/2.) 00264590
- 131 IF(NQ.NE.-1)GO TO 134 00264600
- DO 132 KR=1,6 00264610
- 132 D(KR)=DUMY(10*(I-1)+KR) 00264620
- DO 133 KR=1,3 00264630
- 133 C(KR)=DUMY(10*(I-1)+KR+6) 00264640
- EFS=DUMY(10*(I-1)+10) 00264650
- 134 CONTINUE 00264660
- DO 135 K=1,3 00264670
- KL=KL+1 00264680
- 135 SIGEX(KL)=C(K) 00264690
- KL=KL+1 00264700
- SIGEX(KL)=EFS 00264710
- IF(I.GT.1) GO TO 160 00264720
- 140 FORMAT(I4,I2,2H71,6F9.0) 00264730
- WRITE(6,150)MM,L,Q(2),(D(J),J=1,6),(C(J),J=1,3),EFS 00264740
- 150 FORMAT(I5,I4,1X,A4,1X,10E10.3) 00264750
- GO TO 180 00264760
- 160 WRITE(6,170)Q(1),NF,(D(J),J=1,6),(C(J),J=1,3),EFS 00264770
- 170 FORMAT (5X,A4,I5,1X,10E10.3) 00264780
- 180 CONTINUE 00264790
- DO 181 KR=1,6 00264800
- 181 DUMY(10*(I-1)+KR)=D(KR) 00264810
- DO 182 KR=1,3 00264820
- 182 DUMY(10*(I-1)+KR+6)=C(KR) 00264830
- DUMY(10*(I-1)+10)=EFS 00264840
- KRX=10*I 00264850
- 190 CONTINUE 00264860
- KK=SIG(150) 00264870
- LL=JJ*4 00264880
- NS=KK+LL 00264890
- IF(NQ.NE.-1)RETURN 00264900
- IF(NSTR.GT.0) WRITE(NSTR,1234) NS,L,(SIGEX(I),I=1,LL),(SIG(I),I=1,00264910
- $KK) 00264920
- 1234 FORMAT(I4,I2,2X,2H10,7G10.4/(8G10.4)) 00264930
- RETURN 00264940
- END 00264950
- SUBROUTINE SIXST2 00238280
- IMPLICIT REAL*8(A-H,O-Z) 00238290
- COMMON /OUT/NRES,NSTR,NROUT(8) R0238300
- COMMON/JUNK/SIG(6),EXTRA(194),MM,L,K,NTAG,RRJUNK(25) R0238310
- COMMON/DAPG/NQ,NRDAPG(421) R0238320
- IF(NTAG.EQ.0) WRITE(6,300) 00238330
- WRITE(6,100)MM,L,SIG 00238340
- NTAG=1 00238350
- IF(NQ.NE.-1)RETURN 00238360
- IF(NSTR.GT.0) WRITE (NSTR,1234) L,SIG 00238370
- 1234 FORMAT(3X,1H6,I2,2X,2H14,6G10.4) 00238380
- RETURN 00238390
- 100 FORMAT (2I6,6E15.8) 00238400
- 200 FORMAT (I4,I2,2H12,6F9.0) 00238410
- 300 FORMAT (//10X,48H SIX BY SIX STIFFNESS ELEMENT FORCES AND MOMENTS/00238420
- $20X,18H(LOCAL DIRECTIONS)/ 00238430
- $12H0EL.NO. LOAD,5X,10HFORCE - XX,5X,10HFORCE - YY,5X,10HFORCE - ZZ00238440
- $,4X,11HMOMENT - XX,4X,11HMOMENT - YY,4X,11HMOMENT - ZZ) 00238450
- END 00238460
- SUBROUTINE SUMSTR(NT,FR,NF,NUME,NT48,NT47) 00285260
- IMPLICIT REAL*8(A-H,O-Z) 00285270
- COMMON/DAPG/N1,N2,DUMY(210) 00285280
- COMMON /JUNK/ SIG(200),MM,IFLL,KDU,NTAG,IXX(2),NDYN,IOPT,NFUN, 00285290
- 1ITYPE,NFN(3),NRJUNK(41) R0285300
- DIMENSION FR(NF),A(210),AA(210) 00285310
- REWIND NT47 00285320
- REWIND NT48 00285330
- REWIND NT 00285340
- READ(NT)FR,CLF 00285350
- CLF=(CLF/100.)+1.0 00285360
- DO 400 KKK=1,3 00285370
- IF(NFN(KKK).EQ.0) GO TO 400 00285380
- DO 390 III=1,NUME 00285390
- DO 10 I=1,210 00285400
- A(I)=0. 00285410
- 10 AA(I)=0. 00285420
- KSWCH=0 00285430
- DO 300 JJ=1,NF 00285440
- IF(KSWCH.EQ.0)FR1=FR(JJ) 00285450
- READ(NT48)N,(DUMY(I),I=1,N) 00285460
- IF(JJ.EQ.NF)GO TO 100 00285470
- FR2=FR(JJ+1) 00285480
- BW=FR1*CLF 00285490
- IF(FR2.GT.BW)GO TO 100 00285500
- KSWCH=1 00285510
- DO 30 I=1,N 00285520
- 30 A(I)=A(I)+DABS(DUMY(I)) 00285530
- GO TO 300 00285540
- 100 CONTINUE 00285550
- IF(KSWCH.EQ.0)GO TO 200 00285560
- DO 110 I=1,N 00285570
- A(I)=A(I)+DABS(DUMY(I)) 00285580
- AA(I)=AA(I)+A(I)*A(I) 00285590
- 110 A(I)=0. 00285600
- KSWCH=0 00285610
- GO TO 300 00285620
- 200 CONTINUE 00285630
- DO 210 I=1,N 00285640
- 210 AA(I)=AA(I)+DUMY(I)*DUMY(I) 00285650
- 300 CONTINUE 00285660
- WRITE(NT47)N,(AA(I),I=1,N) 00285670
- 390 CONTINUE 00285680
- 400 CONTINUE 00285690
- REWIND NT48 00285700
- DO 500 II=1,NUME 00285710
- REWIND NT47 00285720
- DO 405 I=1,210 00285730
- 405 A(I)=0. 00285740
- DO 490 KKK=1,3 00285750
- IF(NFN(KKK).EQ.0) GO TO 490 00285760
- DO 410 JJ=1,NUME 00285770
- IF(JJ.NE.II)GO TO 409 00285780
- READ(NT47)N,(AA(I),I=1,N) 00285790
- GO TO 410 00285800
- 409 READ(NT47) 00285810
- 410 CONTINUE 00285820
- DO 420 I=1,N 00285830
- 420 A(I)=A(I)+AA(I) 00285840
- 490 CONTINUE 00285850
- DO 492 I=1,N 00285860
- 492 DUMY(I)=DSQRT(A(I)) 00285870
- WRITE(NT48)N,(DUMY(I),I=1,N) 00285880
- 500 CONTINUE 00285890
- WRITE(6,1000) 00285900
- 1000 FORMAT(32H1.......ROOT SUM SQUARE STRESSES//) 00285910
- N1=-1 00285920
- REWIND NT48 00285930
- RETURN 00285940
- END 00285950