




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第一章 誤差的基本理論與預(yù)備知識一、內(nèi)容分析與教學(xué)建議本章內(nèi)容包括三個部分:課程介紹、誤差的基本概念、避免誤差危害的若干原則。(一)課程介紹“數(shù)值分析”是信息與計算科學(xué)專業(yè)的專業(yè)基礎(chǔ)課,是學(xué)習(xí)后續(xù)專業(yè)課的基礎(chǔ)。因此在緒論的講解過程中,注意闡明學(xué)習(xí)數(shù)值計算方法這門課程的目的、意義和重要性,本課程的主要內(nèi)容以及它在計算數(shù)學(xué)和科研過程中的地位,激發(fā)學(xué)生學(xué)習(xí)“數(shù)值分析”的積極性和興趣。(二)誤差的基本概念1、首先闡明誤差的來源和誤差的分類。明確計算數(shù)學(xué)研究的誤差主要是:截斷誤差和舍入誤差。2、講解絕對誤差和絕對誤差限,相對誤差和相對誤差限的定義,并通過具體的實例介紹為什么要引入相對誤差的概念。3、可結(jié)
2、合中學(xué)介紹過的有效數(shù)字的概念,介紹有效數(shù)字的嚴(yán)格定義及有效數(shù)字的位數(shù),有效數(shù)字與相對誤差限的關(guān)系,并通過具體的例子介紹如何求有效數(shù)字的位數(shù)。(三)避免誤差危害的若干原則按照教材中的例子可直觀地闡明避免誤差危害的主要原則: 避免兩個相近的數(shù)相減; 防止重要的小數(shù)被大數(shù)“吃掉”; 在除法的運算中避免出現(xiàn)除數(shù)的絕對值遠(yuǎn)遠(yuǎn)小于被除數(shù)的絕對值的情形; 簡化計算步驟; 注意算法的穩(wěn)定性。當(dāng)今科技領(lǐng)域中所提出的三大環(huán)節(jié)是:實驗、科學(xué)計算和理論分析和研究。由于計算機(jī)的出現(xiàn)和發(fā)展,使科學(xué)計算在科研與工程實際中越來越顯示出它的卓越作用。例如,在計算機(jī)上修改一個設(shè)計方案比在實地作修改要容易得多。為此,人們往往就用科
3、學(xué)計算來取代部分實驗;更何況有些課題是無法進(jìn)行實驗的,而只能通過科學(xué)計算去解決;(例如,計算機(jī)模擬核爆炸)。這種由實驗向計算的巨大轉(zhuǎn)變,也促使一些邊緣學(xué)科的相繼出現(xiàn),例如,計算物理、計算力學(xué)、計算化學(xué)、計算生物學(xué)以及計算經(jīng)濟(jì)學(xué)等等都應(yīng)運而生。有些理論證明往往也是通過計算去解決,例如,四色問題,吳文俊院士開創(chuàng)的機(jī)器證明等。也就是說,科學(xué)計算可以全部或部分地代替理論證明??茖W(xué)計算既然如此重要,那么數(shù)值分析在其中又處于一種什么地位呢?由下圖可知:數(shù)值分析是處于一種承上啟下的地位,它在科學(xué)計算中是重要的不可或缺的一環(huán)。程序設(shè)計建立數(shù)學(xué)模型實際問題數(shù)值分析提出算法分析結(jié)果并對實際問題進(jìn)行解釋說明編程上機(jī)
4、計算由實際問題建立數(shù)學(xué)模型一般要涉及多門學(xué)科的知識,本課程不做討論。由數(shù)學(xué)模型提出數(shù)值計算方法,直到編程上機(jī)計算求出結(jié)果,這一過程是計算數(shù)學(xué)的任務(wù),也是本課程研究的對象。計算數(shù)學(xué)是數(shù)學(xué)的一個重要分支,它主要研究用計算機(jī)求解各種數(shù)學(xué)問題的數(shù)值方法及其理論,以及軟件實現(xiàn)。數(shù)值計算方法(也稱數(shù)值分析或計算方法)是計算數(shù)學(xué)的一個主要部分,它不同于純數(shù)學(xué)那樣研究數(shù)學(xué)本身的理論,而是一門把數(shù)學(xué)理論與計算機(jī)緊密結(jié)合起來進(jìn)行研究的實用性很強的基礎(chǔ)學(xué)科,它主要研究用計算機(jī)解決數(shù)學(xué)模型的理論與方法。1 計算方法的基本要求一個可行、有效的算法必須滿足下列基本要求:(1) 符合計算機(jī)的要求我們知道計算機(jī)只能對有限位數(shù)
5、進(jìn)行加、減、乘、除與邏輯運算,因此對給定的數(shù)學(xué)模型提出的數(shù)值計算方法也只能包含上述五種運算。對于具體算法還要考慮計算機(jī)的內(nèi)存大小、數(shù)字字長、運算速度等。有的算法從純數(shù)學(xué)的觀點看不夠嚴(yán)格和完善,但通過實際計算、對比分析等手段證明是行之有效的也常被采用。特別地,隨著計算機(jī)的飛速發(fā)展,一些算法在老的計算機(jī)上無法實現(xiàn),而在新型計算機(jī)上卻可以實現(xiàn)??傊?,對于給定的數(shù)學(xué)模型,在構(gòu)造算法時要面向計算機(jī),符合計算機(jī)的要求。(2) 在理論上收斂、穩(wěn)定,在實際計算中精確度高由于計算機(jī)只能近似地表示實數(shù),不論計算機(jī)中的數(shù)是定點表示,還是浮點表示,它所表示的數(shù)的位數(shù)都是有限的,且任一算法只能在有限的時間內(nèi)通過有限次運
6、算來完成。這說明用計算機(jī)運算得到的結(jié)果都是近似的,因此需要考慮算法的精確度問題。在理論上我們還要研究用計算機(jī)運算得到的結(jié)果是否收斂到實際問題的解。此外,我們還要考慮算法的數(shù)值穩(wěn)定性問題。(3) 計算復(fù)雜性盡可能小從實際需要出發(fā),我們還需要考慮計算量的大小,即所謂計算復(fù)雜性問題。它是由以下兩個因素決定的:使用中央處理器(CPU)的時間,這主要由四則運算的次數(shù)決定;占用內(nèi)存儲器的空間,這主要由使用的數(shù)據(jù)量來決定。有時也稱之為時間與空間的復(fù)雜性,簡稱計算復(fù)雜性。例如,解線性方程組Ax = b,若detA0,則可用Cramer法則來解。設(shè)A為20階矩陣,計算一個20階行列式需要的乘法運算量為1920!
7、,需計算21個20階的行列式,總的乘法運算量為211920! 9.711020.若用10億次/ 秒的計算機(jī)來運算,則一年可完成的乘法運算量為109365243600 3.151016.解20階的方程組所需乘法運算的時間為9.711020(3.151016) 3.08104(年),即三萬零八百年,顯然這個運算時間在實際中是不可接受的。而在實際問題中,例如大型水利工程、天氣預(yù)報等,需要解的大型方程組的階數(shù)一般都遠(yuǎn)遠(yuǎn)大于20,若用上述方法顯然無法解決。這個例子說明解線性方程組的Cramer法則在理論上雖然可行,但在實際應(yīng)用中卻不可行。有人可能說,隨著計算機(jī)的發(fā)展,運算速度提高、內(nèi)存增大以及新結(jié)構(gòu)計算
8、機(jī)的涌現(xiàn),以前認(rèn)為過于復(fù)雜而不能求解的問題將會得到解決。但是,不論計算機(jī)如何發(fā)展,使用計算機(jī)的代價,即計算復(fù)雜性,都是要考慮的。對于給定的數(shù)學(xué)模型,可能有多種算法,應(yīng)通過計算機(jī)進(jìn)行數(shù)值試驗,進(jìn)行分析、比較來選定算法。對新提出的算法,有的在理論上雖然還未證明其收斂性,但可以從具體試驗中發(fā)現(xiàn)其規(guī)律,為理論證明提供線索??傊?,對于給定的數(shù)學(xué)模型所提出的可行、有效的算法應(yīng)該是符合計算機(jī)的要求,在理論上收斂、穩(wěn)定,在實際計算中精確度高,計算復(fù)雜性小,能通過試驗驗證的數(shù)值方法。2 誤差及有效數(shù)字一、誤差的來源1. 模型誤差:數(shù)學(xué)模型與實際問題之間的誤差稱為模型誤差。一般來說,生產(chǎn)和科研中遇到的實際問題是比
9、較復(fù)雜的,要用數(shù)學(xué)模型來描述,需要進(jìn)行必要的簡化,忽略一些次要的因素,這樣建立起來的數(shù)學(xué)模型與實際問題之間一定有誤差。它們之間的誤差就是模型誤差。2. 觀測誤差:實驗或觀測得到的數(shù)據(jù)與實際數(shù)據(jù)之間的誤差稱為觀測誤差或數(shù)據(jù)誤差。數(shù)學(xué)模型中通常包含一些由觀測(實驗)得到的數(shù)據(jù),例如用來描述初始速度為0的自由落體下落時距離和時間的關(guān)系,其中重力加速度是由實驗得到的,它和實際重力加速度之間是有出入的。其間的誤差就是觀測誤差。3. 截斷誤差:數(shù)學(xué)模型的精確解與數(shù)值方法得到的數(shù)值解之間的誤差稱為方法誤差或截斷誤差。例如,由Taylor公式得用近似代替,這時的截斷誤差為介于0與之間。4. 舍入誤差:對數(shù)據(jù)進(jìn)
10、行四舍五入后產(chǎn)生的誤差成為舍入誤差。在本課程中所涉及到的誤差,一般是指截斷誤差和舍入誤差。二、誤差的基本概念 1. 絕對誤差和絕對誤差限、相對誤差和相對誤差限定義1 設(shè)為準(zhǔn)確值,是的近似值,稱 (2.1)為近似值的絕對誤差,簡稱誤差。顯然誤差既可為正,也可為負(fù)。一般來說,準(zhǔn)確值是不知道的,因此誤差的準(zhǔn)確值無法求出。 不過在實際工作中,可根據(jù)相關(guān)領(lǐng)域的知識、經(jīng)驗及測量工具的精度,事先估計出誤差絕對值不超過某個正數(shù),即 (2.2)則稱為近似值的絕對誤差限,簡稱誤差限或精度。由(2.2)得.這表示準(zhǔn)確值在區(qū)間內(nèi),有時將準(zhǔn)確值寫成.例如用卡尺測量一個圓桿的直徑為毫米,它是圓桿直徑的近似值,由卡尺的精度
11、知道這個近似值的誤差不會超過半個毫米,則有(毫米).于是該圓桿的直徑為(毫米).用表示準(zhǔn)確值可以反映它的準(zhǔn)確程度,但不能說明近似值的好壞。例如,測量一根10厘米長的圓鋼時發(fā)生了0.5厘米的誤差,和測量一根10米長的圓鋼時發(fā)生了0.5厘米的誤差,其絕對誤差都是0.5厘米,但是,后者的測量結(jié)果顯然比前者要準(zhǔn)確得多。這說明決定一個量的近似值的好壞,除了要考慮絕對誤差的大小,還要考慮準(zhǔn)確值本身的大小,這就需要引入相對誤差的概念。定義2 設(shè)為準(zhǔn)確值,是的近似值,稱 (2.3)為近似值的相對誤差。在實際計算中,由于準(zhǔn)確值總是未知的,因此也把 (2.4)稱為近似值的相對誤差。在上面的例子中,前者的相對誤差是
12、,而后者的相對誤差是. 一般來說,相對誤差越小,表明近似程度越好。與絕對誤差一樣,近似值的相對誤差的準(zhǔn)確值也無法求出。仿絕對誤差限,稱相對誤差絕對值的上界為近似值的相對誤差限,即 (2.5)注 絕對誤差和絕對誤差限有量綱,而相對誤差和相對誤差限沒有量綱,通常用百分?jǐn)?shù)來表示。2. 有效數(shù)字、有效數(shù)字與相對誤差限的聯(lián)系用表示一個近似值,這在實際計算中很不方便。當(dāng)在實際運算中遇到的數(shù)的位數(shù)很多時,如,等,常常采用四舍五入的原則得到近似值,為此引進(jìn)有效數(shù)字的概念。定義3 設(shè)是的近似值,如果的誤差限是它的某一位的半個單位,那么稱準(zhǔn)確到這一位,并且從這一位起直到左邊第一個非零數(shù)字為止的所有數(shù)字稱為的有效數(shù)
13、字。具體來說,就是先將寫成規(guī)范化形式 , (2.6)其中是0到9之間的自然數(shù),為整數(shù)。如果的誤差限 , (2.7)那么稱近似值具有位有效數(shù)字。例1 設(shè),確定它的近似值,分別具有幾位有效數(shù)字?解 因為,(即的誤差限0.000069不超過的小數(shù)點后第3位的半個單位,即0.0005),所以,得. 故具有4位有效數(shù)字(即從的小數(shù)點后第3位數(shù)0起直到左邊第一個非零數(shù)字3為止的4個數(shù)字都是有效數(shù)字),而最后一位數(shù)字1不是有效數(shù)字。因為,(即的誤差限0.000031不超過的小數(shù)點后第4位的半個單位,即0.00005),所以,得. 故具有5位有效數(shù)字(即從的小數(shù)點后第4位數(shù)2起直到左邊第一個非零數(shù)字3為止的5
14、個數(shù)字都是有效數(shù)字)。因為,(即的誤差限0.000169不超過的小數(shù)點后第3位的半個單位,即0.0005),所以,得. 故具有4位有效數(shù)字(即從的小數(shù)點后第3位數(shù)0起直到左邊第一個非零數(shù)字3為止的4個數(shù)字都是有效數(shù)字)。因為,(即的誤差限0.000169不超過最后一位數(shù)字2的半個單位,即0.05),所以,得. 故具有2位有效數(shù)字(即的所有數(shù)字都是有效數(shù)字)。特別要指出的是,在例1中,有4位有效數(shù)字,而只有2位有效數(shù)字。從上面的討論可以看出,有效數(shù)字位數(shù)越多,絕對誤差限就越小。同樣的,有效數(shù)字位數(shù)越多,相對誤差限也就越小。下面闡述有效數(shù)字與相對誤差限的聯(lián)系。定理 設(shè)是的近似值,且其中是0到9之間
15、的自然數(shù),為整數(shù)。(1) 如果具有()位有效數(shù)字,那么的相對誤差限為.(2) 如果的相對誤差限為,那么至少具有位有效數(shù)字。證明 (1) 因為具有位有效數(shù)字,所以由定義3知.又因為, 所以.(2) 因為,所以 .故由定義3知至少具有位有效數(shù)字。證畢! 例2 設(shè)的近似值的相對誤差不超過0.1%,問至少具有幾位有效數(shù)字?解 設(shè)至少具有位有效數(shù)字,因為的第一個非零數(shù)字是2,即的第一位有效數(shù)字,根據(jù)題意及定理知,得,故取,即至少具有4位有效數(shù)字,即=2.236,其相對誤差不超過0.1%.3 避免誤差危害的若干原則在用計算機(jī)實現(xiàn)算法時,我們輸入計算機(jī)的數(shù)據(jù)一般是有誤差的(如觀測誤差等),計算機(jī)運算過程的每
16、一步又會產(chǎn)生舍入誤差,由十進(jìn)制轉(zhuǎn)化為機(jī)器數(shù)也會產(chǎn)生舍入誤差,這些誤差在迭代過程中還會逐步傳播和積累,因此我們必須研究這些誤差對計算結(jié)果的影響。但一個實際問題往往需要億萬次以上的計算,且每一步都可能產(chǎn)生誤差,因此我們不可能對每一步誤差進(jìn)行分析和研究,只能根據(jù)具體問題的特點進(jìn)行研究,提出相應(yīng)的誤差估計。特別地,如果我們在構(gòu)造算法的過程中注意了以下一些原則,那么將有效地減少和避免誤差的危害、控制誤差的傳播和積累。 一、要避免兩個相近的數(shù)相減在數(shù)值計算中兩個相近的數(shù)相減會造成有效數(shù)字的嚴(yán)重?fù)p失,從而導(dǎo)致誤差增大,影響計算結(jié)果的精度。例1 當(dāng)x10003時,計算的近似值。解 若使用6位十進(jìn)制浮點運算,運
17、算時取6位有效數(shù)字,結(jié)果只有一位有效數(shù)字,損失了5位有效數(shù)字,使得絕對誤差和相對誤差都變得很大,影響計算結(jié)果的精度。若改用.則其結(jié)果有6位有效數(shù)字,與精確值非常接近。 再如,求 .若使用6位十進(jìn)制浮點運算,運算時取6位有效數(shù)字,則 只有一位有效數(shù)字,損失了5位有效數(shù)字。若改用 ,則其結(jié)果有6位有效數(shù)字,與精確值非常接近。二、要防止重要的小數(shù)被大數(shù)“吃掉”在數(shù)值計算中,參加運算的數(shù)的數(shù)量級有時相差很大,而計算機(jī)的字長又是有限的,因此,如果不注意運算次序,那么就可能出現(xiàn)小數(shù)被大數(shù)“吃掉”的現(xiàn)象。這種現(xiàn)象在有些情況下是允許的,但在有些情況下,這些小數(shù)很重要,若它們被“吃掉”,就會造成計算結(jié)果的失真,
18、影響計算結(jié)果的可靠性。例2 求二次方程的根。解 用因式分解易得方程的二個根為. 但用求根公式編制程序,如果在只能將數(shù)表示到小數(shù)后8位的計算機(jī)上運算,那么首先要對階而計算機(jī)上只能達(dá)到8位,故計算機(jī)上不起作用,即視為0,于是類似地有,故所得兩個根為. 嚴(yán)重失真的原因是大數(shù)吃掉小數(shù)的結(jié)果。如果把的計算公式寫成,則.注 需要說明的是:大數(shù)吃小數(shù)在有些情況下是允許的,但在有些情況下卻會造成失真。再如,已知,求.如果按的次序來編程序,“吃掉”,而與互相抵消,其結(jié)果為零。若按的次序來編程序,其結(jié)果為7. 由此可見,如果事先大致估計一下計算方案中各數(shù)的數(shù)量級,編制程序時加以合理的安排,那么重要的小數(shù)就可以避免
19、被“吃掉”。此例還說明,用計算機(jī)作加減運算時,交換律和結(jié)合律往往不成立,不同的運算次序會得到不同的運算結(jié)果。三、在要避免出現(xiàn)除數(shù)的絕對值遠(yuǎn)遠(yuǎn)小于被除數(shù)絕對值的情形在用計算機(jī)實現(xiàn)算法的過程中,如果用絕對值很小的數(shù)作除數(shù),往往會使舍入誤差增大。即在計算時,若,則可能產(chǎn)生較大的舍入誤差,對計算結(jié)果帶來嚴(yán)重影響,應(yīng)盡量避免。例3 在4位浮點十進(jìn)制數(shù)下,用消去法解線性方程組.解 仿計算機(jī)實際計算,將上述方程組寫成(1)(注意:在第一步運算中出現(xiàn)了用很小的數(shù)作除數(shù)的情形,相應(yīng)地在第二步運算中出現(xiàn)了大數(shù)“吃掉”小數(shù)的情形),得解得,.而原方程組的準(zhǔn)確解為,. 顯然上述結(jié)果嚴(yán)重失真。如果反過來用第二個方程消去
20、第一個方程中含的項,那么就可以避免很小的數(shù)作除數(shù)的情形。即(2),得解得,.這是一組相當(dāng)好的近似解。四、簡化計算步驟同樣一個問題,如果能減少運算次數(shù),那么不但可以節(jié)省計算機(jī)的計算復(fù)雜性,而且還能減少舍入誤差。因此在構(gòu)造算法時,合理地簡化計算公式是一個非常重要的原則。例4 已知,計算多項式的值。解 若直接計算,即先計算,然后逐項相加,則一共需要做次乘法和次加法。若對采用秦九韶算法 (3.1)則只要次乘法和次加法,就可得到的值。而且秦九韶算法計算過程簡單、規(guī)律性強、適于編程,所占內(nèi)存也比前一種方法要小。此外,由于減少了計算步驟,相應(yīng)地也減少了舍入誤差及其積累傳播。此例說明合理地簡化計算公式在數(shù)值計算中是非常重要的。五、注意算法的數(shù)值穩(wěn)定性為了避免誤差在運算過程中的累積增大,我們在構(gòu)造算法時,還要考慮算法的穩(wěn)定性。首先介紹數(shù)值穩(wěn)定性的概念。定義4 一個算法如
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 消毒防疫合同范本
- 傳統(tǒng)保險合同范本
- 個人開戶合同范本
- 關(guān)于展會合同范本
- 出售掘進(jìn)臺車合同范本
- 中介入職合同范本
- 加工童裝合同范本模板
- 單價防水合同范本
- 代理、銷售合作合同范本
- 亞馬遜店鋪轉(zhuǎn)賣合同范本
- 第15課 第二次世界大戰(zhàn) 教學(xué)課件
- 陜西省榆林市2023-2024學(xué)年高二上學(xué)期1月期末語文試題 (解析版)
- 巖石破碎型泥水平衡頂管施工工法
- 無光纖傳輸技術(shù)Er:YAG激光口腔臨床應(yīng)用規(guī)范
- 醫(yī)療信息共享與互聯(lián)網(wǎng)醫(yī)療管理制度
- 人教版高中英語必修二詞匯表(默寫版)
- 汽車電器線束DFMEA范例
- 船模航模車模社團(tuán)教案
- 【基于上市公司數(shù)據(jù)的康芝藥業(yè)盈利能力探析(定量論文)11000字】
- 幼兒園小班學(xué)情分析案例及分析
- 2024年社區(qū)工作者考試題庫及答案
評論
0/150
提交評論