您好,登錄后才能下訂單哦!
這篇文章主要介紹matlab如何實現二分法方程求根,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
假設函數 在區間 上連續,并且 ,此時就可以用二分法求解。
求解偽代碼:
a1 = a;
b1 = b;
計算中點
如果 ,那么方程的解為 ,終止
如果
如果 ,
如果 ,
重復上述步驟2到4,直到滿足誤差,停止迭代。
, 是第n次迭代的結果,p為真實解。
方程 在區間【0,2】上的近似解。
;
所以區間縮放到【1,2】,
利用matlab計算如下:
% -------------- inputs -------------------f = @(x) 3*x^2-x-3;a = 0;b = 2;% tolerance / max iterTOL = 1e-4; NI = 50;% -------------------------------------------------------% STEP 1: initializationi = 1;fa = f(a);converge = false; % convergence flag% STEP 2: iterationwhile i<=NI% STEP 3: compute p at the i's stepp = a+(b-a)/2;fp = f(p);% STEP 4: check if meets the stopping criteriaif (abs(fp)<eps || (b-a)/2 < TOL) % eps is Matlab-machine zeroconverge = true; % bisection method converged!break; % exit out of while loopelse% STEP 5i = i+1;% STEP 6if fa*fp > 0a = p; fa = fp;elseb = p;endendend
以上是“matlab如何實現二分法方程求根”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。