Fortran Coder

查看: 194|回复: 6

[求助] 数组越界

[复制链接]

4

帖子

1

主题

0

精华

新人

F 币
19 元
贡献
10 点
发表于 2020-7-9 16:07:44 | 显示全部楼层 |阅读模式
运行老程序出错,stres数组大小为(11,2),查看95行程序,数组初始化感觉也没问题,不知道哪里数组越界,基础太差,实在是不明白错在哪,请指点
回复

使用道具 举报

4

帖子

1

主题

0

精华

新人

F 币
19 元
贡献
10 点
 楼主| 发表于 2020-7-9 16:08:33 | 显示全部楼层
forrtl: severe (408): fort: (3): Subscript #2 of the array STRES has value -858993460 which is less than the lower bound of 1

4

帖子

1

主题

0

精华

新人

F 币
19 元
贡献
10 点
 楼主| 发表于 2020-7-9 16:09:07 | 显示全部楼层
      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

15

帖子

0

主题

0

精华

熟手

Vim

F 币
190 元
贡献
92 点
发表于 2020-7-9 16:31:31 | 显示全部楼层
打错了
[Fortran] 纯文本查看 复制代码
DO 10 ID0FN=1,NDOFN

这一句是IDOFN,打成了ID0FN

4

帖子

1

主题

0

精华

新人

F 币
19 元
贡献
10 点
 楼主| 发表于 2020-7-9 16:35:11 | 显示全部楼层
Transpose 发表于 2020-7-9 16:31
打错了

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

我太粗心了,谢谢

835

帖子

0

主题

0

精华

宗师

F 币
1331 元
贡献
744 点

规矩勋章元老勋章新人勋章水王勋章

QQ
发表于 2020-7-9 18:20:55 | 显示全部楼层
可见,implicit none 是多么重要

835

帖子

0

主题

0

精华

宗师

F 币
1331 元
贡献
744 点

规矩勋章元老勋章新人勋章水王勋章

QQ
发表于 2020-7-9 18:25:51 | 显示全部楼层
此外,难以置信,楼主新写的代码,还在用这种1970年的代码风格。
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

QQ|捐赠本站|Archiver|关于我们 About Us|群聊|Fcode

GMT+8, 2020-8-14 21:45

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表