secant.m

来自「calculating fiber eigen modes」· M 代码 · 共 22 行

M
22
字号
%割线法求根的程序

function[p1,err,k,y]=secant(p0,p1,wl,l)
delta=0.5e-6;
epsilon=7e-6;
maxl=10;

format long;
for k=1:maxl
    g=@two;
    p2=p1-feval(g,wl,l,p1).*(p1-p0)./(feval(g,wl,l,p1)-feval(g,wl,l,p0));
    err=abs(p2-p1);
    relerr=2.*err./(abs(p2)+delta);
    p0=p1;
    p1=p2;
    y=feval(g,wl,l,p1);
    if(err<delta)|(relerr<delta)|(abs(y)<epsilon)
        break
    end
end
p1
  

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?