国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

二分法求解單變量非線性方程及其應(yīng)用與實(shí)現(xiàn)

2009-03-30 06:23戚興龍
商情 2009年33期
關(guān)鍵詞:二分法誤差

戚興龍

【摘要】在科學(xué)研究與工程技術(shù)中常會(huì)遇到求解非線性方程f(x)=0的問題。而方程f(x)是多項(xiàng)式或超越函數(shù)又分為代數(shù)方程或超越方程。對(duì)于不高于四次的代數(shù)方程已有求根公式,而高于四次的代數(shù)方程則無精確的求根公式,至于超越方程就更無法求其精確解了。因此,如何求得滿足一定精度要求的方程的近似根也就成為了我們迫切需要解決的問題。近年來,隨著數(shù)學(xué)科學(xué)研究的不斷進(jìn)展,又更新了許多方程求解的方法。我們知道,對(duì)于單變量非線性方程f(x)=0,一般都可采用迭代法求根,由此產(chǎn)生了二分法。

【關(guān)鍵詞】二分法 單變量 非線性方程收斂性 誤差

一、引言

在科學(xué)研究與工程技術(shù)中常會(huì)遇到求解非線性方程f(x)=0的問題。而方程f(x)是多項(xiàng)式或超越函數(shù)又分為代數(shù)方程或超越方程。對(duì)于不高于四次的代數(shù)方程已有求根公式,而高于四次的代數(shù)方程則無精確的求根公式,至于超越方程就更無法求其精確解了。因此,如何求得滿足一定精度要求的方程的近似根也就成為了我們迫切需要解決的問題。近年來,隨著數(shù)學(xué)科學(xué)研究的不斷進(jìn)展,又更新了許多方程求解的方法。我們知道,對(duì)于單變量非線性方程f(x)=0,一般都可采用迭代法求根,由此產(chǎn)生了二分法。

二、二分法

一般地,對(duì)于函數(shù)f(x),如果存在實(shí)數(shù)c,當(dāng)x=c時(shí)f(c)=0,那么把x=c叫做函數(shù)f(x)的零點(diǎn)。

解方程即要求f(x)的所有零點(diǎn)。

先找到a、b,使f(a),f(b)異號(hào),說明在區(qū)間(a,b)內(nèi)一定有零點(diǎn),然后求f[(a+b)/2],現(xiàn)在假設(shè)f(a)<0,f(b)>0,a

①如果f[(a+b)/2]=0,該點(diǎn)就是零點(diǎn),

如果f[(a+b)/2]<0,則在區(qū)間((a+b)/2,b)內(nèi)有零點(diǎn),(a+b)/2=>a,從①開始繼續(xù)使用中點(diǎn)函數(shù)值判斷。

如果f[(a+b)/2]>0,則在區(qū)間(a,(a+b)/2)內(nèi)有零點(diǎn),(a+b)/2=>b,從①開始繼續(xù)使用中點(diǎn)函數(shù)值判斷。

這樣就可以不斷接近零點(diǎn)。

通過每次把f(x)的零點(diǎn)所在小區(qū)間收縮一半的方法,使區(qū)間的兩個(gè)端點(diǎn)逐步迫近函數(shù)的零點(diǎn),以求得零點(diǎn)的近似值,這種方法叫做二分法。

給定精確度ξ,用二分法求函數(shù)f(x)零點(diǎn)近似值的步驟如下:

1.確定區(qū)間[a,b],驗(yàn)證f(a)?f(b)<0,給定精確度ξ.

2.求區(qū)間(a,b)的中點(diǎn)c.

3.計(jì)算f(c).

(1)若f(c)=0,則c就是函數(shù)的零點(diǎn);

(2)若f(a)?f(c)<0,則令b=c;

(3)若f(c)?f(b)<0,則令a=c.

4.判斷是否達(dá)到精確度ξ:即若┃a-b┃<ξ,則得到零點(diǎn)近似值a(或b),否則重復(fù)2-4.

由于計(jì)算過程的具體運(yùn)算復(fù)雜,但每一步的方式相同,所以可通過編寫程序來運(yùn)算。

三、實(shí)例引入

二分法求解單變量非線性方程的例子很多,僅以此例進(jìn)行分析:

求方程f(x)=x3-x-1=0在區(qū)間[1.0,1.5]內(nèi)的一個(gè)實(shí)根,要求準(zhǔn)確到小數(shù)點(diǎn)后第2位。

四、問題分析

對(duì)于以上單變量非線性方程,已知a=1.0,b=1.5,采用二分法求解。首先我們根據(jù)二分法所允許的誤差范圍求得應(yīng)迭代次數(shù)。

二分法允許的誤差公式:|x*- | ( - )/2=(b-a)/0.005,

其中k為二分次數(shù)。

所以求得本題應(yīng)二分6次達(dá)到預(yù)定的精度。

五、解題過程

這里a=1.0,b=1.5,而f(a)<0,f(b)>0。[a,b]的中點(diǎn)x0=1.25,將區(qū)間二等分。由于f(x0)<0,即f(x0)與f(a)同號(hào),故所求根x*必在x0右側(cè),這是應(yīng)令a1=1.25,b1=1.5,得到新的有根區(qū)間[a1,b1].如此反復(fù)二分6次,結(jié)果如下:

K/二分次數(shù) /區(qū)間

左邊界值 /右邊界值 F( )的符號(hào)

六、基本二分法的matlab實(shí)現(xiàn)與C語言實(shí)現(xiàn)

6.1 %二分法的算法及MATLAB實(shí)現(xiàn)

function [c, err, yc] = bisect(f, a, b, delta)

% f是所要求解的函數(shù)

% a和 b分別是有根區(qū)間的左右限

% delta是允許的誤差界

% c為所求的近似解

% yc為函數(shù) f在 c上的值

% err是 c的誤差估計(jì)

if nargin < 4

delta = 1e -5;

end

ya = feval (f, a);

yb = feval (f, b);

if yb == 0, c = b, return

end

if ya * yb > 0

disp((a, b)不是有根區(qū)間);

return

end

max1 = 1 + round((log(b - a) - log(delta))/log(2));

for k = 1:max1

c = (a + b)/2;

yc = fevel(f, c);

if yc == 0 a = c; b = c; break,

elseif yb * yc > 0

b = c; yb = yc;

else

a = c; ya = c;

end

if (b - a) < delta, break

end

猜你喜歡
二分法誤差
用“二分法”看七年級(jí)學(xué)生數(shù)學(xué)應(yīng)用題的審題
隧道橫向貫通誤差估算與應(yīng)用
隧道橫向貫通誤差估算與應(yīng)用
熱老化箱溫度指示誤差校準(zhǔn)結(jié)果的不確定度評(píng)定
熱老化箱溫度指示誤差校準(zhǔn)結(jié)果的不確定度評(píng)定
“二等分點(diǎn)”還是“三等分點(diǎn)”
精確與誤差
壓力表非線性誤差分析與調(diào)整
“二分法”教學(xué)中的幾個(gè)問題
用二分法的原理巧解題
鄂州市| 桐梓县| 亳州市| 长泰县| 镶黄旗| 昭苏县| 麻栗坡县| 临猗县| 清远市| 长治县| 闽侯县| 东方市| 白河县| 南涧| 连云港市| 勐海县| 炉霍县| 连平县| 文昌市| 揭东县| 枣阳市| 安溪县| 龙江县| 手游| 旺苍县| 株洲县| 枞阳县| 疏附县| 秭归县| 晋州市| 湖南省| 石楼县| 安陆市| 玛多县| 海安县| 水城县| 应用必备| 南城县| 鲁山县| 金堂县| 全州县|