【发布时间】:2015-01-12 19:33:51
【问题描述】:
我正在尝试做某种二分法程序,通过绘制所有内容来展示我如何得到最终答案。 你知道为什么在我的文件中我不能在另一个 m 文件中绘制函数数据吗? 有那个错误:
mainhazia 27 end 找不到精确(区分大小写)的匹配项 “根”
最接近的匹配是:根在 C:\Program 文件\MATLAB\R2012b\toolbox\matlab\polyfun\roots.m
mainhazia 中的错误(第 23 行) plot(Roots,f(Roots),'.');
我的代码:
主要:
f=@(x)x.^2-1;
XR=2;
xL=-2;
XL=xL ;
eps=0.001;
ezplot(f);
hold on ;
plot(XR,f(XR),'r*');
plot(xL,f(xL),'r*');
for df=xL:0.15:XR
if f(xL)*f(df)<= 0
xR=df;
BisectionM(f,xR,xL,eps);
plot(Roots,f(Roots),'.');
xL=df;
xR=XR;
end
end
二等分:
function Roots = BisectionM(f,xR,xL,eps)
while abs(xR - xL) > eps
xM = (xR + xL) / 2;
if (f(xL))*(f(xM)) > 0
xL = xM;
plot(xL,f(xL),'*');
else
xR = xM;
plot(xR,f(xR),'*');
end
Roots = xM;
end
end
对不起,我的英语不是我的母语。
【问题讨论】: