单点弦截法,顾名思义即有一个端点固定不动,另一个端点在变化,他的公式就是由初高中学的两点确定一条直线的公式推导而来的。公式为:X=b-f (b)(b-a)/ (fb-fa)
看下面这个例题:
用单点弦截法解非线性方程4x3+x-1=0 ,要求精度达到10-3
(初值取0.6)
syms x;
f=input("请输入函数f=");
xo=input("请输入初值xo=");
x1=input("请输入另一界限x1=");
exp=input("请输入精度:");
while(true)
x2=x1-subs(f,'x',x1)*(x1-xo)/(subs(f,'x',x1)-subs(f,'x',xo));
if(abs(subs(f,'x',x1)-subs(f,'x',x2))<=exp)
break;
end
x1=x2;
end
fprintf('结果为:%f',x2);
结果截图: