need check for Bisection Method
1 回表示 (過去 30 日間)
古いコメントを表示
%bisection_method
f='func31'
Nmax=100;
tol=0.000001;
a=-10
b=10
if feval(f,a)*feval(f,b)>0
disp('no sol')
else
a0=a; b0=b;
for n=1:Nmax
p=(a+b)/2
if (b-p)/(b0-a0)<tol <------------------------------------------------------------is this right?? b-p? not a b-a?
break
else
if feval(f,a)*feval(f,p)<=0
a=a;
b=p;
else
a=p
b=b
end
end
end
================================
made an expression from relative error
i wrote it down at the class
but there are difference with books
is it
b-p or b-a?
0 件のコメント
採用された回答
Alan Stevens
2020 年 9 月 30 日
When you are close to the solution it won't much matter if you use b-p or b-a. However, you shoud probably use
abs((b-p)/(b0-a0))<tol
その他の回答 (0 件)
参考
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!