24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1441  |  回复: 2

kaen1989

铜虫 (初入文坛)

[求助] Compaq Visual Fortran v6.6 Professional运行后提示这样的信息,怎么办?求助


各位大神,Compaq Visual Fortran v6.6 Professional运行后提示这样的信息,怎么办?求指导。
附上程序代码
C     *****                      TETRA3D             *****
C     ***  Three Dimensional Stress Analysis  ***
C     ***        Tetrahedral Elements         ***
      DIMENSION X(100,3),NOC(100,4),MAT(100),PM(10,3),NU(50),U(50)
      DIMENSION S(300,50),F(300),D(6,6),B(6,12),DB(6,12),QT(12)
      DIMENSION SE(12,12),STR(6),MPC(20,2),BT(20,3),DT(100)
      CHARACTER*16 FILE1, FILE2
      CHARACTER*81 DUMMY,TITLE      
      IMAX = 300
      PRINT *, '*******      PROGRAM TETRA3D        *******'
      PRINT *, '*    Three Dimensional Stress Analysis    *'
      PRINT *, '*          Tetrahedral Elements           *'
      PRINT *, '*   T.R.Chandrupatla and A.D.Belegundu    *'
      PRINT *, '*******************************************'
      PRINT *, 'File Name for Input Data '
      READ '(A)', FILE1
      LINP=10
      OPEN (UNIT = 10, FILE = FILE1, STATUS = 'OLD')
      PRINT *, 'Give Name of Output File '
      READ '(A)', FILE2
      READ(LINP,'(A)') DUMMY
      READ(LINP,'(A)') TITLE
      READ(LINP,'(A)') DUMMY
      READ(LINP,*) NN, NE, NM, NDIM, NEN, NDN
      READ(LINP,'(A)') DUMMY      
      READ(LINP,*) ND, NL, NMPC
C    --- Material properties E, Nu, Alpha
      NPR = 3
C     ----- Total dof is  NQ
      NQ = NDN * NN
C   ============  READ DATA FROM FILE  ===========
C     ----- Coordinates -----
      READ(LINP,'(A)') DUMMY
      DO 900 I = 1, NN
  900 READ (LINP, *) N, X(N,1), X(N,2), X(N,3)
C     ----- Connectivity, Material, Temp-change -----
      READ(LINP,'(A)') DUMMY
      DO 1000 I=1,NE
      READ (LINP, *) N,NOC(N,1),NOC(N,2),NOC(N,3),NOC(N,4),MAT(N),DT(N)
1000 CONTINUE
C    ----- Specified Displacements -----
      READ(LINP,'(A)') DUMMY
      DO 1010  I = 1, ND
1010 READ (LINP, *) NU(I), U(I)
C     ----- Component Loads -----
      READ(LINP,'(A)') DUMMY      
C     ----- First initialize and then read loads -----
      DO 1015 I=1, NQ
1015 F(I) = 0
      DO 1020  I = 1, NL
1020 READ (LINP, *) N, F(N)
C     ----- Material Properties -----
      READ(LINP,'(A)') DUMMY      
      DO 1030  I = 1, NM
1030        READ (LINP, *) N, (PM(N, J), J = 1, NPR)
C     ----- Multi-point Constraints B1*Qi+B2*Qj=B0
      IF (NMPC .GT. 0) THEN
        READ(LINP,'(A)') DUMMY
        DO 1040  I = 1, NMPC
1040        READ (LINP,*) BT(I,1),MPC(I,1),BT(I,2),MPC(I,2),BT(I,3)
      END IF
      CLOSE(LINP)
C     ----- Bandwidth Evaluation -----
      NBW = 0
      DO 1050 I = 1, NE
        NMIN = NOC(I, 1)
        NMAX = NOC(I, 1)
        DO 1045 J = 2, NEN
           IF (NMIN .GT. NOC(I, J)) NMIN = NOC(I, J)
           IF (NMAX .LT. NOC(I, J)) NMAX = NOC(I, J)
1045   CONTINUE
        NTMP = NDN * (NMAX - NMIN + 1)
        IF (NBW .LT. NTMP) NBW = NTMP
1050 CONTINUE
      DO 1060  I = 1, NMPC
        NABS = ABS(MPC(I, 1) - MPC(I, 2)) + 1
        IF (NBW .LT. NABS) NBW = NABS
1060 CONTINUE
      PRINT *, 'Bandwidth = ', NBW
C    ----- First initialize stiffness and Mass matrices
      DO 1070 I = 1, NQ
      DO 1070 J = 1, NBW
1070 S(I,J) = 0      
C  ----- Global Stiffness Matrix -----
      DO 1090 N = 1, NE
             PRINT *, 'Forming Stiffness Matrix of Element ', N
         CALL DBMAT(N,B,D,DB,MAT,PM,X,NOC,DJ,AL,PNU)
C     --- Element Stiffness
         DO 1072 I = 1, 12
         DO 1072 J = 1, 12
         SE(I, J) = 0
         DO 1072 K = 1, 6
            SE(I, J) = SE(I, J) + B(K, I) * DB(K, J) * ABS(DJ) / 6
1072    CONTINUE
C      --- Temperature Load Vector QT()
         C = AL * DT(N)
         DO 1074 I = 1, 12
            DSUM = DB(1, I) + DB(2, I) + DB(3, I)
            QT(I) = C * ABS(DJ) * DSUM / 6
1074    CONTINUE           
          PRINT *, '.... Placing in Global Locations'
         DO 1090  II = 1, NEN
           NRT = NDN * (NOC(N, II) - 1)
             DO 1090  IT = 1, NDN
              NR = NRT + IT
              I = NDN * (II - 1) + IT
              DO 1080  JJ = 1, NEN
                 NCT = NDN * (NOC(N, JJ) - 1)
                 DO 1080  JT = 1, NDN
                    J = NDN * (JJ - 1) + JT
                    NC = NCT + JT - NR + 1
                    IF (NC .GT. 0) THEN
                       S(NR, NC) = S(NR, NC) + SE(I, J)
                    END IF
1080           CONTINUE
              F(NR) = F(NR) + QT(I)
1090             CONTINUE
C     ----- Decide Penalty Parameter CNST -----
      CNST = 0
      DO 1100  I = 1, NQ
        IF (CNST .LT. S(I, 1)) CNST = S(I, 1)
1100 CONTINUE
      CNST = CNST * 10000
C    ----- Modify for Boundary Conditions -----
C    --- Displacement BC ---
      DO 1110  I = 1, ND
        N = NU(I)
        S(N, 1) = S(N, 1) + CNST
        F(N) = F(N) + CNST * U(I)
1110 CONTINUE
C    --- Multi-point Constraints ---
      DO 1120  I = 1, NMPC
        I1 = MPC(I, 1)
        I2 = MPC(I, 2)
        S(I1, 1) = S(I1, 1) + CNST * BT(I, 1) * BT(I, 1)
        S(I2, 1) = S(I2, 1) + CNST * BT(I, 2) * BT(I, 2)
        IR = I1
        IF (IR .GT.I2) IR = I2
        IC = ABS(I2 - I1) + 1
        S(IR, IC) = S(IR, IC) + CNST * BT(I, 1) * BT(I, 2)
        F(I1) = F(I1) + CNST * BT(I, 1) * BT(I, 3)
        F(I2) = F(I2) + CNST * BT(I, 2) * BT(I, 3)
1120 CONTINUE
C   ----- Equation Solving
      PRINT *, '.... Solving Equations'
      CALL BAND(S, F, IMAX, NBW, NQ)      
      LOUT = 11
      OPEN (UNIT = 11, FILE = FILE2)
      WRITE(LOUT,'(1X,2A)') 'Output for Input Data from File ', FILE1
      PRINT *, 'Output for Input Data from File ', FILE1
      WRITE(LOUT,'(1X,A)')  TITLE
      PRINT *, TITLE     
      PRINT *, 'Node#  X-Displ        Y-Displ        Z-Displ'
      WRITE(LOUT,'(1X,A)') 'Node#  X-Displ       Y-Displ       Z-Displ'
      WRITE(LOUT,'(1X,I4,3E15.4)') (I,F(3*I-2),F(3*I-1),F(3*I),I=1,NN)
      WRITE(*,'(1X,I4,3E15.4)') (I,F(3*I-2),F(3*I-1),F(3*I),I=1,NN)
C     ----- Reaction Calculation -----
      PRINT *, 'DOF#      Reaction'
      WRITE(LOUT,'(1X,A)')  'DOF#      Reaction'
      DO 1140  I = 1, ND
        N = NU(I)
        R = CNST * (U(I) - F(N))
        WRITE(*,'(1X,I4,E15.4)') N, R
        WRITE(LOUT,'(1X,I4,E15.4)') N, R
1140 CONTINUE            
C    --- Stress Calculations
      PI = 3.141593
      DO 1150 N = 1, NE
         CALL DBMAT(N,B,D,DB,MAT,PM,X,NOC,DJ,AL,PNU)
         CALL STRESS(F,AL,NOC,DT,N,D,DB,STR)
C    --- Principal Stress Calculations
         AI1 = STR(1) + STR(2) + STR(3)
         AI21 = STR(1) * STR(2) + STR(2) * STR(3) + STR(3) * STR(1)
         AI22 = STR(4) * STR(4) + STR(5) * STR(5) + STR(6) * STR(6)
         AI2 = AI21 - AI22
         AI31 = STR(1) * STR(2) * STR(3) + 2 * STR(4) * STR(5) * STR(6)
         AI32 = STR(1)*STR(4)**2 + STR(2)*STR(5)**2 + STR(3)*STR(6)**2
         AI3 = AI31 - AI32
         C1 = AI2 - AI1**2 / 3
         C2 = -2 * (AI1 / 3)**3 + AI1 * AI2 / 3 - AI3
         C3 = 2 * SQRT(-C1 / 3)
         TH = -3 * C2 / (C1 * C3)
         TH2 = ABS(1 - TH * TH)
         IF (TH .EQ. 0) TH = PI / 2
         IF (TH .GT. 0) TH = ATAN(SQRT(TH2) / TH)
         IF (TH .LT. 0) TH = PI - ATAN(SQRT(TH2) / TH)
         TH = TH / 3
C      --- Principal Stresses
         P1 = AI1 / 3 + C3 * COS(TH)
         P2 = AI1 / 3 + C3 * COS(TH + 2 * PI / 3)
         P3 = AI1 / 3 + C3 * COS(TH + 4 * PI / 3)
         WRITE(LOUT,*) ' ELEMENT NO. '
         WRITE(LOUT,'(I5)') N
         WRITE(LOUT,*) '      SX             SY             SZ'
         WRITE(LOUT,'(3E15.4)') STR(1), STR(2), STR(3)
         WRITE(LOUT,*) '     TYZ            TXZ            TXY'
         WRITE(LOUT,'(3E15.4)') STR(4), STR(5), STR(6)
         WRITE(LOUT,*) ' Principal Stresses'
         WRITE(LOUT,*) '      P1             P2             P3'
         WRITE(LOUT,'(3E15.4)') P1, P2, P3
1150  CONTINUE
      CLOSE(LOUT)
      PRINT *, 'Results are in the file ',FILE2
      END

      SUBROUTINE DBMAT(N,B,D,DB,MAT,PM,X,NOC,DJ,AL,PNU)
      DIMENSION X(100,3),NOC(100,4),MAT(100),PM(10,3)
      DIMENSION D(6,6),B(6,12),DB(6,12)      
C   ----- D(), B() and DB() matrices
C    --- First the D-Matrix
      M = MAT(N)
      E = PM(M, 1)
      PNU = PM(M, 2)
      AL = PM(M, 3)
      C4 = E / ((1 + PNU) * (1 - 2 * PNU))
      C1 = C4 * (1 - PNU)
      C2 = C4 * PNU
      C3 = .5 * E / (1 + PNU)
      DO 3000 I = 1, 6
      DO 3000 J = 1, 6
      D(I, J) = 0
3000 CONTINUE
      D(1, 1) = C1
      D(1, 2) = C2
      D(1, 3) = C2
      D(2, 1) = C2
      D(2, 2) = C1
      D(2, 3) = C2
      D(3, 1) = C2
      D(3, 2) = C2
      D(3, 3) = C1
      D(4, 4) = C3
      D(5, 5) = C3
      D(6, 6) = C3
C   --- Strain-Displacement Matrix B()
      I1 = NOC(N, 1)
      I2 = NOC(N, 2)
      I3 = NOC(N, 3)
      I4 = NOC(N, 4)
      X14 = X(I1, 1) - X(I4, 1)
      X24 = X(I2, 1) - X(I4, 1)
      X34 = X(I3, 1) - X(I4, 1)
      Y14 = X(I1, 2) - X(I4, 2)
      Y24 = X(I2, 2) - X(I4, 2)
      Y34 = X(I3, 2) - X(I4, 2)
      Z14 = X(I1, 3) - X(I4, 3)
      Z24 = X(I2, 3) - X(I4, 3)
      Z34 = X(I3, 3) - X(I4, 3)
      DJ1 = X14 * (Y24 * Z34 - Z24 * Y34)
      DJ2 = Y14 * (Z24 * X34 - X24 * Z34)
      DJ3 = Z14 * (X24 * Y34 - Y24 * X34)
      DJ = DJ1 + DJ2 + DJ3
      A11 = (Y24 * Z34 - Z24 * Y34) / DJ
      A21 = (Z24 * X34 - X24 * Z34) / DJ
      A31 = (X24 * Y34 - Y24 * X34) / DJ
      A12 = (Y34 * Z14 - Z34 * Y14) / DJ
      A22 = (Z34 * X14 - X34 * Z14) / DJ
      A32 = (X34 * Y14 - Y34 * X14) / DJ
      A13 = (Y14 * Z24 - Z14 * Y24) / DJ
      A23 = (Z14 * X24 - X14 * Z24) / DJ
      A33 = (X14 * Y24 - Y14 * X24) / DJ
C    ---  B Matrix
      DO 3010 I = 1, 6
      DO 3010 J = 1, 12
3010 B(I, J) = 0
      B(1, 1) = A11
      B(1, 4) = A12
      B(1, 7) = A13
      B(1, 10) = -A11 - A12 - A13
      B(2, 2) = A21
      B(2, 5) = A22
      B(2, 8) = A23
      B(2, 11) = -A21 - A22 - A23
      B(3, 3) = A31
      B(3, 6) = A32
      B(3, 9) = A33
      B(3, 12) = -A31 - A32 - A33
      B(4, 2) = A31
      B(4, 3) = A21
      B(4, 5) = A32
      B(4, 6) = A22
      B(4, 8) = A33
      B(4, 9) = A23
      B(4, 11) = B(3, 12)
      B(4, 12) = B(2, 11)
      B(5, 1) = A31
      B(5, 3) = A11
      B(5, 4) = A32
      B(5, 6) = A12
      B(5, 7) = A33
      B(5, 9) = A13
      B(5, 10) = B(3, 12)
      B(5, 12) = B(1, 10)
      B(6, 1) = A21
      B(6, 2) = A11
      B(6, 4) = A22
      B(6, 5) = A12
      B(6, 7) = A23
      B(6, 8) = A13
      B(6, 10) = B(2, 11)
      B(6, 11) = B(1, 10)
C   --- DB Matrix DB = D*B
      DO 3020 I = 1, 6
      DO 3020 J = 1, 12
      DB(I, J) = 0
      DO 3020 K = 1, 6
3020 DB(I, J) = DB(I, J) + D(I, K) * B(K, J)
      RETURN
      END
      
      SUBROUTINE STRESS(F,AL,NOC,DT,N,D,DB,STR)
      DIMENSION F(300),NOC(100,4),D(6,6),DB(6,12),QT(12),STR(6),DT(100)      
C --- Stress Evaluation (Element Nodal Displacements stored in QT() )
      DO 4000 I = 1, 4
         IN = 3 * (NOC(N, I) - 1)
         II = 3 * (I - 1)
         DO 4000 J = 1, 3
            QT(II + J) = F(IN + J)
4000 CONTINUE
            C1 = AL * DT(N)
            DO 4020 I = 1, 6
               STR(I) = 0
               DO 4010K = 1, 12
4010          STR(I) = STR(I) + DB(I, K) * QT(K)
4020       STR(I) = STR(I) - C1 * (D(I, 1) + D(I, 2) + D(I, 3))
      RETURN
      END
      
      SUBROUTINE BAND(A, B, IMAX, NBW, N)
C ----- Equation Solving Using Banded Storage
      DIMENSION A(IMAX,NBW), B(IMAX)
      N1 = N - 1
      PRINT *, '*** FORWARD ELIMINATION ***'
      DO 2100 K = 1, N1
      NK = N - K + 1
      IF (NK .GT. NBW) NK = NBW
      DO 2100 I = 2, NK
      C1 = A(K, I) / A(K, 1)
      I1 = K + I - 1
      DO 2000 J = I, NK
      J1 = J - I + 1
2000 A(I1, J1) = A(I1, J1) - C1 * A(K, J)
2100 B(I1) = B(I1) - C1 * B(K)
      PRINT *, '*** BACK SUBSTITUTION ***'
      B(N) = B(N) / A(N, 1)
      DO 2300 KK = 1, N1
      K = N - KK
      C1 = 1 / A(K, 1)
      B(K) = C1 * B(K)
      NK = N - K + 1
      IF (NK .GT. NBW) NK = NBW
      DO 2200 J = 2, NK
      B(K) = B(K) - C1 * A(K, J) * B(K + J - 1)
2200 CONTINUE
2300 CONTINUE
      RETURN
      END

Compaq Visual Fortran v6.6 Professional运行后提示这样的信息,怎么办?求助
QQ Photo20140427183700.jpg
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ju5200

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
应该是你的软件破解不成功吧
2楼2014-04-27 19:10:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kaen1989

铜虫 (初入文坛)

引用回帖:
2楼: Originally posted by ju5200 at 2014-04-27 19:10:41
应该是你的软件破解不成功吧

不是的,可以编写简单的,可以运行~但是编写有限元以后就不行了

[ 发自小木虫客户端 ]
3楼2014-04-27 22:42:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 kaen1989 的主题更新
信息提示
请填处理意见