Fortran Coder

标题: 朋友们,这个 WEGSTEIN法解方程的错误怎么解决 [打印本页]

作者: ASPEC11    时间: 2024-5-13 14:03
标题: 朋友们,这个 WEGSTEIN法解方程的错误怎么解决
本帖最后由 kyra 于 2024-5-16 10:28 编辑

   朋友们,我想解(x-1)²的值,用WEGSTEIN法,但解出来结果是负的1.78x10的8次方,这儿的写法有什么错误吗

[Fortran] 纯文本查看 复制代码
   program main
      T=1.
C 这儿给个初值
      K=0
10    K=K+1
      F=T*T+4*T+4
C 公式
      CALL WEGSTEIN(T,F,E,K)
      IF(E.GT.1E-5) GOTO 10
      WRITE(*,*)X
      STOP
      END program main

      SUBROUTINE WEGSTEIN(X,FX,ERROR,K)
      COMMON/ITER/X0,F0
      IF(K.LE.1) THEN
      DX=FX-X
      ELSE
      DX=(X-X0) * (FX-X)/(X-X0-FX+F0)
      ENDIF
      ERROR=ABS(DX)/(ABS(X)+1.)
      X0=X
      F0=FX
      X=X+DX
      RETURN
      END







欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2