Fortran Coder

标题: 数组越界 [打印本页]

作者: Escaliborc    时间: 2020-7-9 16:07
标题: 数组越界
运行老程序出错,stres数组大小为(11,2),查看95行程序,数组初始化感觉也没问题,不知道哪里数组越界,基础太差,实在是不明白错在哪,请指点
作者: Escaliborc    时间: 2020-7-9 16:08
forrtl: severe (408): fort: (3): Subscript #2 of the array STRES has value -858993460 which is less than the lower bound of 1
作者: Escaliborc    时间: 2020-7-9 16:09
      COMMON/UNIM1/NPOIN,NELEM,NBOUN,NLOAD,NLAYR,NPROP,NNODE,IINCS,
     .             IITER,KRESL,NCHEK,TOLER,NALGO,NSVAB,NDOFN,
     .             NINCS,NEVAB,NITER,NOUTP,FACTO,PVALU
      COMMON/UNIM2/PROPS(1,17),COORD(11),LNODS(10,2),IFPRE(22),
     .             FIXED(22),TLOAD(10,4),RLOAD(10,4),ELOAD(10,4),
     .             MATNO(10),STRES(10,2),PLAST(10),XDISP(22),
     .             TDISP(11,2),TREAC(11,2),ASTIF(22,22),ASLOD(22),
     .             REACT(22),FRESV(230),PEFIX(22),ESTIF(4,4),
     .             STRSL(6,2)
      DO 20 IELEM=1,NELEM
      PLAST(IELEM)=0.0
      DO 10 ID0FN=1,NDOFN
10    STRES(IELEM,IDOFN)=0.0
      DO 20 IEVAB=1,NEVAB
      ELOAD(IELEM,IEVAB)=0.0
20    TLOAD(IELEM,IEVAB)=0.0
      DO 30 IPOIN=1,NPOIN
      DO 30 IDOFN=1,NDOFN
      TDISP(IPOIN,IDOFN)=0.0
30    TREAC(IPOIN,IDOFN)=0.0
作者: Transpose    时间: 2020-7-9 16:31
打错了
[Fortran] 纯文本查看 复制代码
DO 10 ID0FN=1,NDOFN

这一句是IDOFN,打成了ID0FN
作者: Escaliborc    时间: 2020-7-9 16:35
Transpose 发表于 2020-7-9 16:31
打错了

这一句是IDOFN,打成了ID0FN ...

我太粗心了,谢谢
作者: vvt    时间: 2020-7-9 18:20
可见,implicit none 是多么重要
作者: vvt    时间: 2020-7-9 18:25
此外,难以置信,楼主新写的代码,还在用这种1970年的代码风格。




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