作者poiuy1203 (po)
看板Fortran
标题[问题] 程式发生错误 找很久了 高手能帮帮忙吗?
时间Wed May 5 18:29:57 2010
程式跑到挂掉
但小弟功力太弱找不到原因
恳请高手帮看指点
画面显示
run-time error M6203: MATH
-csin:OVERFLOW error
跑到L=2,M=3,N=4时会挂掉
下面附上程式码:
SUBROUTINE IILMN(IL,ML1,NN)
COMPLEX*16 II(6,5,80),K(6,5,80),Q(6,5,80),AX(6,5),AZ(6,5),DZZ,CI
REAL*8 DX(6),Z(6,5)
DIMENSION ML1(6),NN(6)
COMMON / DAT2 / DX,Z
COMMON / DAT4 / AX,AZ
COMMON / DAT5 / K,Q
COMMON / DAT22 / II
CI=CMPLX(0.0,1.0)
DO 1,L=1,IL
DO 2,N=1,NN(L)
II(L,2,N)=1.0
2 CONTINUE
1 CONTINUE
DO 3,L=1,IL
ML1L=ML1(L)
IF(ML1L.EQ.2) GO TO 3
DO 4,M=3,ML1L
DZZ=(Z(L,M-1)-Z(L,M))*AX(L,M)/AZ(L,M)
WRITE(*,*)'ML1L',ML1L
DO 5,N=1,NN(L)
DZZ=DZZ*K(L,M,N)
II(L,M,N)=II(L,M-1,N)*(COS(DZZ)+CI*Q(L,M,N)*SIN(DZZ))
WRITE(*,*)L,M,N
5 CONTINUE
4 CONTINUE
3 CONTINUE
RETURN
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.117.98.63
1F:推 janhon:sin函数 overflow 05/07 04:09
2F:→ poiuy1203:大大说的问题没错 但OVERFLOW是什麽意思 该如何更改呢? 05/09 00:20
3F:→ weichich:参考475篇^^" 05/09 01:27
4F:推 janhon: 好像不是Stack overflow的问题 要让sin爆掉大概带到nan吧 05/09 02:58
5F:→ poiuy1203:nan的意思是? 05/09 21:14
6F:→ motoman:太大或太小就会显示NAN 我记得一般是10^300以上就爆 05/09 22:11