Fortran77的编程问题,
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/06 07:51:11
Fortran77的编程问题,
C WATER HAMMER FINITE
DIMENSION V(100),H(100)
READ(5,1) DX,DT,C,HO,VO,TOL,IMAX
1 FORMAT(6F7.0,I4)
IMAX1=IMAX-1
V(I)=VO
2 H(I)=HO
T=0
N=0
100 T=T+DT
N=N+1
IF(T.GT.TOL) GO TO 3
SR=(TOL-T)/TOL
GO TO 4
3 SR=0
4 CONTINUE
V(IMAX)=SR*SQRT(2.*9.81*HO)
\x05 DO 5 I=2,IMAX1
5 V(I)=V(I)-9.81*DT*(H(I)-H(I-1))/DX
\x05 DO 6 I=2,IMAX1
6 H(I)=H(I)-DT*C**2/9.81*(V(I+1))-V(I)/DX
WRITE (6,11) T
11 FORMAT(F10.3)
\x05 WRITE(6,12) (V(I),I=1,IMAX)
\x05 WRITE(6,12) (H(I),I=1,IMAX)
12\x05 FORMAT (12F10.4)
\x05 IF(N.LT.200) GO TO 100
\x05 STOP
\x05 END
C WATER HAMMER FINITE
DIMENSION V(100),H(100)
READ(5,1) DX,DT,C,HO,VO,TOL,IMAX
1 FORMAT(6F7.0,I4)
IMAX1=IMAX-1
V(I)=VO
2 H(I)=HO
T=0
N=0
100 T=T+DT
N=N+1
IF(T.GT.TOL) GO TO 3
SR=(TOL-T)/TOL
GO TO 4
3 SR=0
4 CONTINUE
V(IMAX)=SR*SQRT(2.*9.81*HO)
\x05 DO 5 I=2,IMAX1
5 V(I)=V(I)-9.81*DT*(H(I)-H(I-1))/DX
\x05 DO 6 I=2,IMAX1
6 H(I)=H(I)-DT*C**2/9.81*(V(I+1))-V(I)/DX
WRITE (6,11) T
11 FORMAT(F10.3)
\x05 WRITE(6,12) (V(I),I=1,IMAX)
\x05 WRITE(6,12) (H(I),I=1,IMAX)
12\x05 FORMAT (12F10.4)
\x05 IF(N.LT.200) GO TO 100
\x05 STOP
\x05 END
没有说问题啊.
再问: 总是提示数组超出范围。
再答: 如果是数组越界,就根据错误提示检查一下各向量的下标表达。如果数据比较大,还有可能是栈溢出,那就要把栈开大一点。
再问: 总是提示数组超出范围。
再答: 如果是数组越界,就根据错误提示检查一下各向量的下标表达。如果数据比较大,还有可能是栈溢出,那就要把栈开大一点。