- 积分
- 5664
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2016-3-18
- 最后登录
- 1970-1-1
|
发表于 2016-5-7 10:47:16
|
显示全部楼层
我能请教一个问题吗?我用了这个EOF程序,根据自己的数据修改了数组(数据有2401行,有27列,即27年):
parameter(m=2401,n=27,mnl=20,ks=-1)
real x(m,n),y(m,n),egvt(m,mnl),ecof(mnl,n),er(mnl,4)
open(1,file='1lev200.txt')
do i=1,m
read(1,*)(x(i,j),j=1,n)
enddo
程序在运行的时候才报错,说是数组超出边界,我检查了程序,发现报错的地方是子程序:
subroutine tcoeff(m,n,mnl,f,s,er,egvt,ecof)
具体报错的地方是这个子程序中的这些语句:
do js=1,mnl
do i=1,m
egvt(i,js)=s(i,js)
enddo
enddo
我查看了数组s的大小只有s(mnl,mnl),现在循环do i=1,m就超出了s数组的边界,但是这个问题我问过老师,说不要改子程序。现在运行报错,弄不了。
能不能帮帮我一下? |
|