mnewt.for
来自「Numerical Recipes一书中例子的源码所用到的函数集,William」· FOR 代码 · 共 29 行
FOR
29 行
SUBROUTINE mnewt(ntrial,x,n,tolx,tolf)
INTEGER n,ntrial,NP
REAL tolf,tolx,x(n)
PARAMETER (NP=15)
CU USES lubksb,ludcmp,usrfun
INTEGER i,k,indx(NP)
REAL d,errf,errx,fjac(NP,NP),fvec(NP),p(NP)
do 14 k=1,ntrial
call usrfun(x,n,NP,fvec,fjac)
errf=0.
do 11 i=1,n
errf=errf+abs(fvec(i))
11 continue
if(errf.le.tolf)return
do 12 i=1,n
p(i)=-fvec(i)
12 continue
call ludcmp(fjac,n,NP,indx,d)
call lubksb(fjac,n,NP,indx,p)
errx=0.
do 13 i=1,n
errx=errx+abs(p(i))
x(i)=x(i)+p(i)
13 continue
if(errx.le.tolx)return
14 continue
return
END
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?