Fortran Coder

标题: 小白码完之后出现断点,按书上码的,求救 [打印本页]

作者: chaunceyyou    时间: 2018-5-13 22:41
标题: 小白码完之后出现断点,按书上码的,求救
[Fortran] 纯文本查看 复制代码
PROGRAM CBSAP
! STRUCTURAL ANALYSIS PROGRAM FOR CONTINUOUS BEAM
INTEGER NJ,IL,IR,NNE,I,J,K
REAL GC(20),GX(20),AMF(20,2),AM(20,2),P(21),AK(21,21),XG(20)
CHARACTER*80 TITLE
OPEN(2,FILE='CBSAP.IN')
OPEN(6,FILE='CBSAP.OUT')
READ(2,*)TITLE
WRITE(6,*)TITLE
READ(2,20)NJ,IL,IR
20 FORMAT(3I5)
WRITE(6,30)NJ,IL,IR
30 FORMAT(/3X,'NUMBER OF NODE='I2,5X,'BIND(L)='I1,2X,'BIND(R)='I1,3X,'1=FIXED 0=SIMPLY SUPPORTED')
NNE=NJ-1
READ(2,40)(GC(I),GX(I),(AMF(I,J),J=1,2),I=1,NNE)
40 FORMAT(4F10.3)
WRITE(6,50)(I,GC(I),GX(I),(AMF(I,J),J=1,2),I=1,NNE)
50 FORMAT(/3X,'NO.E',7X,'LENGHT',6X,'STIFFNESS',6X,'MOMENTENT(L)',6X,'MOMENT(R)'/(I5,4F15.4))
DO I=1,NNE
   XG(I)=GX(I)/GC(I)
END DO
P(1)=-AMF(1,1)
P(NJ)=-AMF(NNE,2)
DO J=2,NNE
   P(J)=-AMF(J-1,2)-AMF(J,1)
END DO
DO I=1,NJ
  DO J=1,NJ
     AK(I,J)=0
  END DO
END DO
AK(1,1)=4.0*XG(1)
AK(NJ,NJ)=4.0*XG(NNE)
DO J=2,NNE
   AK(J,J)=4.0*(XG(J-1)+XG(J))
END DO
DO J=2,NJ
   AK(J,J-1)=2.0*XG(J-1)
   AK(J-1,J)=2.0*XG(J-1)
END DO
IF(IL.EQ.1)THEN
   AK(1,1)=1.0
   AK(1,2)=0.0
   AK(2,1)=0.0
   P(1)=0.0
ELSE
END IF
IF(IR.EQ.0)THEN
   AK(NJ,NJ)=1.0
   AK(NNE,NJ)=0.0
   AK(NJ,NNE)=0.0
   P(NJ)=0.0
ELSE
END IF
DO K=1,NNE
   DO I=K+1,NJ
      C=AK(I,K)/AK(K,K)
      P(I)=P(I)-C*P(K)
      DO J=1,NJ
         AK(I,J)=AK(I,J)-C*AK(K,J)
      END DO
    END DO
END DO
P(NJ)=P(NJ)/AK(NJ,NJ)
DO I=NNE,1,-1
   DO J=I+1,NJ
      P(I)=P(I)-AK(I,J)*P(J)
   END DO
   P(I)=P(I)/AK(I,I)
END DO
WRITE(6,60) (I,P(I),I=1,NJ)
60 FORMAT(/10X,'ANGLE(RADIAN) OF ROTATION'//(5(I3,F10.4)))
DO I=1,NNE
   AM(I,1)=4.0*XG(I)*P(I)+2.0*XG(I)*P(I+1)+AMF(I,1)
   AM(I,2)=2.0*XG(I)*P(I)+4.0*XG(I)*P(I+1)+AMF(I,2)
END DO
WRITE(6,70)(I,(AM(I,J),J=1,2),I=1,NNE)
70 FORMAT(/17X,'MOMENTS OF BEAM ENDS'//3X,'NO.BEAM',6X,'1(LEFT)',5X,'2(RIGHT)'/(I8,2F16.4))
END PROGRAM CBSAP         



作者: 吉大渣渣-固体    时间: 2018-5-13 22:59
请上传文件CBSAP.IN;无此文件无法重现您所遇到的问题。
作者: chaunceyyou    时间: 2018-5-13 23:11
吉大渣渣-固体 发表于 2018-5-13 22:59
请上传文件CBSAP.IN;无此文件无法重现您所遇到的问题。

没这个文件,我看书上也没有,书上是程序运行直接输入的,不知道理解的偏差大不?
作者: 吉大渣渣-固体    时间: 2018-5-13 23:58
本帖最后由 吉大渣渣-固体 于 2018-5-14 00:00 编辑

那您需要自己制作一个文件读这个文件,或者在程序内使用语句赋值,或者在屏幕输入;总之这里的变量TITLE,NJ,IL,IR、数组GC,GX,AMF需要你初始化。
作者: chaunceyyou    时间: 2018-5-14 09:37
吉大渣渣-固体 发表于 2018-5-13 23:58
那您需要自己制作一个文件读这个文件,或者在程序内使用语句赋值,或者在屏幕输入;总之这里的变量TITLE,NJ ...

好的,谢谢你,我试试




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2