看板 Fortran 關於我們 聯絡資訊
程式跑到掛掉 但小弟功力太弱找不到原因 懇請高手幫看指點 畫面顯示 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
janhon:sin函數 overflow 05/07 04:09
poiuy1203:大大說的問題沒錯 但OVERFLOW是什麼意思 該如何更改呢? 05/09 00:20
weichich:參考475篇^^" 05/09 01:27
janhon: 好像不是Stack overflow的問題 要讓sin爆掉大概帶到nan吧 05/09 02:58
poiuy1203:nan的意思是? 05/09 21:14
motoman:太大或太小就會顯示NAN 我記得一般是10^300以上就爆 05/09 22:11