- 积分
- 0
- 注册时间
- 2006-12-18
- 仿真币
-
- 最后登录
- 1970-1-1
|
一个小程序,编译和连接的时候都没错误,但在执行的时候出现错误,请高手帮忙看看, 谢谢了
dimension SB1(100000),SB2(100000)
NB=1
S1=0.0
S2=1.0
NI=2
C CALL DRRANGE(DAMFUNC_SAQ,S1,S2,NI,SB1,SB2,NB)
CALL DRRANGE(S1,S2,NI,SB1,SB2,NB)
write(*,*) SB1,SB2
END
SUBROUTINE DRRANGE(X1,X2,NI,XB1,XB2,NB)
dimension XB1(100000),XB2(100000),FUNC(100000)
B=0.06
ALFA=1.0
SMAX=10
SMISE=8.0
P=3.5
q=3.5
DAM=0.7
DT=0.5
FUNC(X)=B*(ALFA*SMAX+(1.0-ALFA)*SMISE)**P/((1-
$ (DAM+X/2))**q)-X/DT
DO I=1,5
NBB=0
X=X1
NI2=NI*10**(I-1)
DX=(X2-X1)/NI2
FP=FUNC(X)
DO J=1,NI2
X=X+DX
FC=FUNC(X)
IF(FC*FP.LT.0)THEN
NBB=NBB+1
XB1(NBB)=X-DX
XB2(NBB)=X
IF(NBB.EQ.NB) goto 80
END IF
FP=FC
END DO
END DO
80 CONTINUE
NB=NBB
IF(NB.EQ.0) THEN
WRITE(6,*) 'DRRANGE DOESN FIND2 ANY ROOT IN THE INTERVAL'
STOP
END IF
END |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
×
|