mullter.m
来自「这是非线性方程(组)的数值解法」· M 代码 · 共 29 行
M
29 行
function [x,n]=Mullter(f,x1,x2,x3,eps)
if nargin==4
eps=1e-5;
end
r=(x3-x2)/(x2-x1);
d=1+r;
a=f(x1)*r^2+f(x2)*r*d+f(x3)*r;
b=f(x1)*r^2-f(x2)*d^2+f(x3)*(r+d);
c=f(x3)*d;
r4=-2*c/(b+sign(b)*sqrt(b^2-4*a*c));
x4=x3+r4*(x3-x2);
n=1;
while abs(r4*(x3-x2))>eps
x1=x2;
x2=x3;
x3=x4;
n=n+1;
r=(x3-x2)/(x2-x1);
d=1+r;
a=f(x1)*r^2+f(x2)*r*d+f(x3)*r;
b=f(x1)*r^2-f(x2)*d^2+f(x3)*(r+d);
c=f(x3)*d;
r4=-2*c/(b+sign(b)*sqrt(b^2-4*a*c));
x4=x3+r4*(x3-x2);
end
x(1,1)=x4;
x(2,1)=conj(x4);
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?