2015科學計算與Matlab1-緒論_第1頁
2015科學計算與Matlab1-緒論_第2頁
2015科學計算與Matlab1-緒論_第3頁
2015科學計算與Matlab1-緒論_第4頁
2015科學計算與Matlab1-緒論_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、科學計算與MATLAB,主講:唐建國,葉凌英 中南大學材料科學與工程學院 2015.3,第一章 緒 論,3,內容提要,1、課程的簡介與學習方法 課程的內容 課程的要求 課程的學習與考核 教材與主要參考書 2、科學計算 數值計算的定義 數值計算的研究過程 數值計算的誤差分析 數值計算的穩(wěn)定性與收斂性 3、MATLAB簡介 MATLAB的類別 MATLAB的概述 小結,4,1、課程的簡介與學習方法,1.1 課程的介紹 科學計算與MATLAB是材料科學與工程專業(yè)的一門選修課,本課程是根據高水平人才培養(yǎng)發(fā)展的需要和課程改革的要求應運而生,它是其他各門專業(yè)課的基礎課程,為學生學習后續(xù)專業(yè)課程和進行科學研

2、究奠定基礎。與之配套下半學期開設了必修實踐課程MATLAB課程實踐。,5,1.2 課程的內容 1.2.1 講授內容 第一講 概述 第二講 基礎知識(數值、符號計算) 第三講 基礎知識(圖形、程序設計) 第四講 插值法 第五講 函數逼近與擬合法 第六講 數值積分與微分 第七講 常微分方程數值解法 第八講 方程求根 第九講 解線性方程組的直接解法,6,第十講 解線性方程組的迭代解法 第十一講 解非線性方程組的直接解法 第十二講 解非線性方程組的符號解法 第十三講 矩陣的特征值問題 第十四講 概率統(tǒng)計中的應用(數字特征、統(tǒng)計分布量) 第十五講 概率統(tǒng)計中的應用( 方差分析、統(tǒng)計分布圖) 第十六講 最

3、優(yōu)化問題中的應用(線性優(yōu)化、二次優(yōu)化),7,1.2.2 需要上機強化學習的內容 第一講 基礎知識 第二講 數值處理 插值、擬合、積分、微分 第三講 模型求解 (常微分、偏微分)方程(組),概率統(tǒng)計,8,1.3 課程的要求 、掌握編程方法; 、理解數值分析方法的原理,并能進行簡單的計算; 、掌握基本數值分析方法的命令使用。,1.4 課程的學習與考核 學習:以課堂授課和自學上機實踐相結合,講授22次。 聽課加自學;重在理解而不在記憶;不是為考試而學。 考核:平時占30%(期中考試20%+出勤10%);期終考試占70%,采用計算機考試。,9,教材與主要參考書,MATLAB數值計算 Cleve B.M

4、oler著 喻文健譯 機械工業(yè)出版社 與科學計算 王沫然 編 電子工業(yè)出版社 精通科學計算 王正林 編 電子工業(yè)出版社 數值分析(第四版) 李慶揚 編 清華大學出版社,教學資源:,10,2、科學計算,2.1 數值計算 定義一:以數值計算機為主要工具,由于受到計算機字長的限制,將無限小數截取有限位,轉化為計算機能表示出的近似值,并進行這些近似值之間的運算。 定義二:數值分析是研究各種數學問題求解的計算方法,即數值計算。利用計算尺、電子計算機等計算工具來求出數學問題得到數值解的全過程,稱為數值計算。,11,2.2 數值計算的研究過程,模型:被研究系統(tǒng)本質方面的表達,它以各種可用的形式(數學或者物理

5、)提供被研究系統(tǒng)的信息,它具有與系統(tǒng)相似的數學描述或者物理屬性。 計算機模型:建立反映了系統(tǒng)模型和計算機之間的關系,它的主要任務是設計一種算法,以便使系統(tǒng)模型能為計算機接收并能在計算機上運行,顯然和這樣就存在著誤差。,12,算法(數值計算方法):是指將所欲求解的數學模型(數學問題)簡化成一系列算術運算和邏輯運算,以便在計算機上求出問題的數值解,并對算法的收斂性和誤差進行分析、計算。這里所說的“算法”,不只是單純得數學公式,而且是指由基本的運算和運算順序的規(guī)定所組成的整個解題方案和步驟。一般可以通過框圖(流程圖)來較直觀地描述算法的全貌。 數值計算研究的對象:算法及其理論(算法收斂性、穩(wěn)定性,計

6、算復雜性,誤差分析等等),13,例題:數值計算的C語言實現(xiàn),對于給定的X求解下列n多項式的值 P(x)=a0+a1x+a2X2+anxn 算法:直接逐項求和 tk=xk Uk= a0+a1x+a2x2+a(k-1)x(k-1)+akxk tk=x t(k-1) Uk=u(k-1)+aktk 初值:t0=x u0=a0,14,算法分析:秦九韶算法 P(x)=a0+a1x+a2X2+anxn P(x)=(anx+an-1)x+an-2)x +a1)x+a0 If, vk= (anx+an-1)x+an-2)x+an-k +1)x+an-k Vk=Vk-1x+an-k V0=an k=1,2,n,1

7、5,開始,讀入x,n,an-v K-1,讀入ai,K=n,Vx+an-kv,K+1-k,輸出V,結束,16,C語言程序為: Void readata(float a, int n) int i; For(i=0;i=n;i+) Scanf(“%f”,Printf(“enter the arrayof an:”); Readdata (a,n); V=an; K=1; While (k0時近似值偏大,叫強近似值;當e(x) 0時近似值偏小,叫弱近似值。,26,由于x*通常無法確定,只能估計其絕對誤差值不超過某整數(x),即 則稱 (x) 為絕對誤差限。 由上式得 可知x*的范圍?;蛴洖?27,由

8、于誤差e(x)并不足以刻劃x的精度,考慮精度時除看誤差大小外,還應考慮精確值本身的大小,故引入相對誤差概念。 定義:設x*為某一數據的準確值,x為x*的一個近似值,稱 為近似值x的相對誤差。 實際計算時,由于x*不知,通常取,28,如果存在一適當小的正數r ,使得 則稱r為相對誤差限。 例:x=15, (x) =2; r(x)=2/15=13.33% y=1000,(y)=5 , r(y)=5/1000=0.5%,29,2.有效數字: 定義:若近似值x的誤差限是某一位的半個單位,該位到x的第一位非零數字共有n位,就說x有n位有效數字,x可表示為 其中,a10.且 a1, a2, , an 都是

9、 0 9 中的任一整數。 其絕對誤差限滿足:,30,如:x*=3.14159265 取x3.14,則m=1, 即n=3,有三位有效數字; 取x=3.1416,則m=1, 即n=5,有5位有效數字。,31,例. 測量一物體的長度為954cm,問測量數據的相對誤差限多大? 解:因實際問題所截取的近似數,其絕對誤差限一般不超過最小刻度的半個單位,故當x=954cm時,有(x)0.5cm, 而x的相對誤差 er(x) 0.5/954=0.0005241.0.00053=0.053 % 故r(x)=0.053 %.,32,3、數值運算的誤差估計 函數運算的誤差估計: 設y=f(x)為一元函數,自變量準確

10、值x*,對應函數準確值y*=f(x*),x誤差為e(x),誤差限為(x),函數近似值誤差e(y),誤差限為(y)。則(可由Taylor公式推得),33,對于多元函數 設準確值 由多元函數Taylor公式,可得誤差估計: 相對誤差限為:,34,算術運算的誤差估計: 兩個近似數x1,x2,其誤差限分別為(x1), (x2),它們進行加、減、乘、除運算得到的誤差限分別為:,35,2.4 數值計算的穩(wěn)定性與收斂性 誤差的傳播與積累: 例:蝴蝶效應 紐約的一只蝴蝶翅膀一拍,風和日麗的北京就刮起臺風來了?! 該問題是一病態(tài)問題。,36,穩(wěn)定性:可知同一問題當選用不同的算法時,它們所得到的結果有時會相差很大

11、,這是因為運算的舍入誤差在運算過程中的傳播常隨算法而異。凡一種算法的計算結果受舍入誤差的影響小者稱它為數值穩(wěn)定的算法。,37,收斂性:計算機上解決數學問題常用逼近方法,當誤差上限太大,不可接受時,往往采用修正目前估計值的方法加以改善,直到滿足要求為止,這樣就會產生一系列逼近值,當趨向于無窮大時,的極限逼近真值,則稱之為上述修正算法為收斂。,例:計算,公式一:,注意此公式精確成立,?,?,? !,! !,What happened?!,考察第n步的誤差, 公式二,注意此公式與公式一 在理論上等價。,方法:先估計一個IN ,再反推要求的In ( n N )。,可取,取,考察反推一步的誤差:,以此類

12、推,對 n N 有:,誤差逐步遞減, 這樣的算法稱為穩(wěn)定的算法,在我們今后的討論中,誤差將不可回避, 算法的穩(wěn)定性是一個非常重要的課題。,42,3、MATLAB簡介,3.1 MATALB類別,數學類,工程類,數值計算型:,等,特點:對于大批量數據具有較強的管理、計算和可視化能力、運算效率高。,數學分析型:、等,特點:以符號計算見長,并可以得到解析符號解和任意精度解,但是處理大量數據時運行效率低。,:定位于教學和辦公。在對待數值計算、符號分析、文字處理和圖形開發(fā)上,不專業(yè),而是盡量繼承各種功能于一體。,機械設計:pro/E, unigraphics, solidedge, solidworks,

13、 Ideas, autocad 等,有限元(FEA): 德國ASKA,英國PAFEC,法國SYSTUS,美國NASTRAN,ABQUS,ASINA,ANSYS,MARC 等,2020/6/22,43,3.2 MATLAB概述,MATLAB 為 Matrix Laboratory 的縮寫,是一種用于算法開發(fā)、數據可視化、數據分析以及數值計算的高級技術計算語言和交互式環(huán)境。在國際學術界,MATLAB已經被確認為準確、可靠的科學計算標準軟件。,MATLAB發(fā)展概況 1984年Mathworks推出 2000-2003年 MATLAB 6.X 2004年 MATLAB 7.X 目前 MATLAB 8.X(R2012a),44,Matlab軟件包,45,MATLAB 的主要特點,1 編程效率高,易學易懂

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論