《MATLAB語言及其應(yīng)用》全套課件(清華大學(xué))

上傳人:good****022 文檔編號(hào):119667808 上傳時(shí)間:2022-07-15 格式:PPT 頁數(shù):340 大?。?.65MB
收藏 版權(quán)申訴 舉報(bào) 下載
《MATLAB語言及其應(yīng)用》全套課件(清華大學(xué))_第1頁
第1頁 / 共340頁
《MATLAB語言及其應(yīng)用》全套課件(清華大學(xué))_第2頁
第2頁 / 共340頁
《MATLAB語言及其應(yīng)用》全套課件(清華大學(xué))_第3頁
第3頁 / 共340頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《MATLAB語言及其應(yīng)用》全套課件(清華大學(xué))》由會(huì)員分享,可在線閱讀,更多相關(guān)《《MATLAB語言及其應(yīng)用》全套課件(清華大學(xué))(340頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、MATLAB 語言及其應(yīng)用,授課教師:李欣 單位:清華大學(xué),2,課程的作用 課程的目的 課程的特點(diǎn) 課程安排,3,課程的作用,在歐美各高等學(xué)校,Matlab成為線性代數(shù)、自動(dòng)控制理論、數(shù)字信號(hào)處理、時(shí)間序列分析、動(dòng)態(tài)系統(tǒng)仿真、圖像處理等諸多課程的基本教學(xué)工具,成為本科生、碩士生和博士生的必須掌握的基本技能。 在設(shè)計(jì)研究單位和工業(yè)部門,Matlab已被廣泛地用于研究和解決各種具體的工程問題。 可以預(yù)見,Matlab將在我國科學(xué)研究和工程應(yīng)用中發(fā)揮越來越大的作用。,4,講授MATLAB語言基礎(chǔ)入門知識(shí),介紹MATLAB產(chǎn)品的體系、MATLAB桌面工具的使用方法,重點(diǎn)介紹MATLAB的數(shù)據(jù)可視化、數(shù)

2、值計(jì)算的基本步驟以及如何使用MATLAB語言編寫整潔、高效、規(guī)范的程序。并涉及到一些具體的專業(yè)應(yīng)用工具箱(如:信號(hào)處理工具箱、圖像處理工具箱等)。 通過本課程的學(xué)習(xí),了解、熟悉、掌握 MATLAB的基本編程方法,并具有初步的利用計(jì)算機(jī)處理、解決實(shí)際問題的能力,為進(jìn)一步學(xué)習(xí)后續(xù)的專業(yè)課程做好準(zhǔn)備。,本課程的目的( Objectives of This Course ),本課程的特點(diǎn)( Features of This Course ) 交叉性課程,是計(jì)算機(jī)技術(shù)、數(shù)學(xué)理論知識(shí)以及諸多工程理論知識(shí)的綜合。 實(shí)踐性課程。 內(nèi)容多,課時(shí)少,要求同學(xué)上課認(rèn)真聽講,要充分利用上機(jī)實(shí)踐消化、理解、 掌握課上講

3、解內(nèi)容。,5,課程安排,課堂教學(xué):共24學(xué)時(shí);(1-12周) 上機(jī)試驗(yàn):共24學(xué)時(shí)。 (2-13周,周二7-8節(jié),九實(shí)401、402、403) 學(xué)習(xí)成績: 1)上機(jī)實(shí)驗(yàn)成績占30%; 2)考勤 10% ; 3) 考試60% (隨堂考試)。 主要參考書 精通MATLAB 6.5張志涌 等編著,北航出版,2003年 高等應(yīng)用數(shù)學(xué)問題的Matlab求解 薛定宇等著,清華大學(xué)出版社,2004年 Matlab程序設(shè)計(jì)與應(yīng)用 劉衛(wèi)國主編,高等教育出版社,6,授課宗旨,講授MATLAB的通用功能。 寓教于例,由淺入深。 關(guān)于科學(xué)計(jì)算,著重強(qiáng)調(diào)理論概念、算法和實(shí)際計(jì)算三者之間的關(guān)系。,7,第一講 Matlab

4、概述,前言 Matlab軟件概述 Matlab的桌面環(huán)境及入門知識(shí),8,1 Matlab概述,內(nèi)容 Matlab發(fā)展歷史 Matlab產(chǎn)品家族(Matlab family of products)體系 Matlab 語言的特點(diǎn)。 目的 全面了解 Matlab軟件包 激發(fā)對(duì)Matlab軟件的學(xué)習(xí)興趣。,9,1.1 MATLAB的歷史及影響,70年代中期,Cleve Moler博土及其同事在美國國家基金會(huì)的幫助下,開發(fā)了LINPACK和EISPACK的FORTRAN語言子程序庫,這兩個(gè)程序庫代表了當(dāng)時(shí)矩陣運(yùn)算的最高水平。 到了70年代后期,身為美國新墨西哥州大學(xué)計(jì)算機(jī)系系主任的CIeve Mole

5、r,在給學(xué)生上線性代數(shù)課時(shí),為了讓學(xué)生能使用這兩個(gè)子程序庫,同時(shí)又不用在編程上花費(fèi)過多的時(shí)間,開始著手用FORTRAN語言為學(xué)生編寫使用LINPACK和EISPACK的接口程序,他將這個(gè)程序取名為MATLAB,其名稱是由MATrix和 LABoratory(矩陣實(shí)驗(yàn)室)兩個(gè)單詞的前三個(gè)字母所合成。 在1978年,Malab就面世了。這個(gè)程序獲得了很大的成功,受到了學(xué)生的廣泛歡迎。在以后的幾年里,Matlab在多所大學(xué)里作為教學(xué)輔助軟件使用,并作為面向大眾的免費(fèi)軟件廣為流傳。,Cleve Moler,10,將MATLAB商品化的不是Cleve Moler,而是一個(gè)名叫Jack Little的人。

6、當(dāng)免費(fèi)的MATLAB軟件到Stanford大學(xué),Jack Little正在該校主修控制,便接觸到了當(dāng)時(shí)MATLAB,直覺告訴他,這是一個(gè)具有巨大發(fā)展?jié)摿Φ能浖?。因此他在畢業(yè)沒多久,就開始用C語言重新編寫了MATLAB的核心。在Moler的協(xié)助下,于1984年成立MathWorks公司,首次推出MATLAB商用版。在其商用版推出的初期,MATLAB就以其優(yōu)秀的品質(zhì)(高效的數(shù)據(jù)計(jì)算能力和開放的體系結(jié)構(gòu))占據(jù)了大部分?jǐn)?shù)學(xué)計(jì)算軟件的市場(chǎng),原來應(yīng)用于控制領(lǐng)域里的一些封閉式數(shù)學(xué)計(jì)算軟件包(如英國的UMIST、瑞典的LUND和SIMNON、德國的KEDDC)就紛紛被淘汰或在MATLAB上重建。,Jack L

7、ittle,11,Cleve Moler至今仍是該公司的首席科學(xué)家,他以60多歲的高齡,還常常親自進(jìn)行撰寫程序的工作,非常令人佩服。如果你有數(shù)值運(yùn)算方面的高水平問題,寄到 MathWorks 后,大部份還是會(huì)由 Cleve Moler親自回答。在1994年,Pentium芯片曾發(fā)生Fdiv的bug, 當(dāng)時(shí)Cleve Moler是第一個(gè)以軟件方式解決此 bug的人,曾一時(shí)膾炙人口。,在公司初創(chuàng)的五年,Jack Little非常辛苦,常常身兼數(shù)職(董事長、總經(jīng)理、推銷、程序開發(fā)等),但公司一直穩(wěn)定發(fā)展,從當(dāng)初的一人公司,到1993年的200人,到2000年的 500余人,到2005年公司員工達(dá)到了

8、1300人,不但打敗其他競爭軟件,而且前景一片欣欣向榮。根據(jù)Jack Little個(gè)人說法,MATLAB早期成功的兩大因素是:選用了C語言及選定PC為主要平臺(tái),這似乎和微軟的成功有相互呼應(yīng)之妙。,MathWorks公司,目前仍然是私人企業(yè),并未上市,這和Jack Little個(gè)人理念有關(guān),他認(rèn)為MATLAB的設(shè)計(jì)方向應(yīng)該一直是以顧客的需求與軟件的完整性為首要目標(biāo),而不是以盈利為主要目的,因此MATLAB一直是在穩(wěn)定中求進(jìn)步,而不會(huì)因?yàn)樯鲜卸馐芄蓶|左右其發(fā)展方向。這也是為什么MATLAB新版本總是姍姍來遲的原因,因?yàn)樗麄儾粫?huì)因?yàn)槭袌?chǎng)的需求而推出不成熟的產(chǎn)品。此外,由于Jack Little保守

9、的個(gè)性,也使得MathWorks不曾跨足MATLAB/Simulink以外的行業(yè),當(dāng)前商場(chǎng)上紛紛擾擾的并購或分家,MathWorks完全是絕緣體。,12,1992年,支持Windows 3.x的MATLAB 4.0版本推出,增加了Simulink,Control,Neural Network,Signal Processing等專用工具箱。,1993年11月,MathWorks公司推出了Matlab 4.1,其中主要增加了符號(hào)運(yùn)算功能。當(dāng)升級(jí)至Matlab 4.2c,這一功能在用戶中得到廣泛應(yīng)用。,1997年,Matlab 5.0版本問世了,實(shí)現(xiàn)了真正的32位運(yùn)算,加快數(shù)值計(jì)算,圖形表現(xiàn)有效。

10、,2001年初,MathWorks公司推出了Matlab 6.0(R12)。,2002年7月,推出了Matlab 6.5(R13),在這一版本中Simulink升級(jí)到了5.0,性能有了很大提高,另一大特點(diǎn)是推出了JIT程序加速器,Matlab的計(jì)算速度有了明顯的提高。,2005年9月,推出了MAILAB 7.1(Release14 SP3),在這一版本中Simulink升級(jí)到了6.3,軟件性能有了新的提高,用戶界面更加友好。值得說明的是,Matlab V7.1版采用了更先進(jìn)的數(shù)學(xué)程序庫,即“LAPACK”和“BLAS”。 目前,Matlab軟件支持多種系統(tǒng)平臺(tái),如常見的WindowsNT/XP

11、、UNIX、Linux等。,Matlab版本的發(fā)展,13,MATLAB就是這樣經(jīng)過了近30年的專門打造、20多年的千錘百煉,它以高性能的數(shù)組運(yùn)算(包括矩陣運(yùn)算)為基礎(chǔ),不僅實(shí)現(xiàn)了大多數(shù)數(shù)學(xué)算法的高效運(yùn)行函數(shù)和數(shù)據(jù)可視化,而且提供了非常高效的計(jì)算機(jī)高級(jí)編程語言,在用戶可參與的情況下,各種專業(yè)領(lǐng)域的工具箱不斷開發(fā)和完善,MATLAB取得了巨大的成功,已廣泛應(yīng)用于科學(xué)研究、工程應(yīng)用,用于數(shù)值計(jì)算分析、系統(tǒng)建模與仿真。 早在20世紀(jì)90年代初,歐美等發(fā)達(dá)國家的大學(xué)就將MATLAB列為一種必須掌握的編程語言。近幾年來,國內(nèi)的很多大學(xué)也將MATLAB列為了本科生必修課程。 與Maple、Mathemati

12、ca數(shù)學(xué)計(jì)算軟件相比,MATLAB以數(shù)值計(jì)算見長,而Maple等以符號(hào)運(yùn)算見長,能給出解析解和任意精度解,而處理大量數(shù)據(jù)的能力遠(yuǎn)不如MATLAB。 MATLAB軟件功能之強(qiáng)大、應(yīng)用之廣泛,已成為為21世紀(jì)最為重要的科學(xué)計(jì)算語言??梢妼W(xué)習(xí)掌握這一工具的重要性。,14,MATLAB產(chǎn)品由若干模塊組成,不同的模塊完成不同的功能,其中有:,實(shí)際上MATLAB本身就是一個(gè)極其豐富的資源庫,那么應(yīng)該從哪一部分開始著手、學(xué)習(xí)使用MATLAB呢?這就有必要了解這一軟件產(chǎn)品的體系結(jié)構(gòu) 。,MATLAB Compiler這種編譯器可以將MATLAB程序文件編譯生成標(biāo)準(zhǔn)的C/C+語言文件,而生成的標(biāo)準(zhǔn)的C/C+文件

13、可以被任何一種C/C+編譯器編譯生成函數(shù)庫或可執(zhí)行文件,以提高程序的運(yùn)行效率。,1.2 MATLAB產(chǎn)品的體系結(jié)構(gòu),MATLAB,MATLAB Toolboxes,MATLAB Compiler,Simulink,Simulink Blocksets,Real-Time Workshop (RTW),Stateflow,Stateflow Coder,由這些模塊產(chǎn)品之間的關(guān)系可以圖1.1表示。,圖1.1 MATLAB產(chǎn)品體系結(jié)構(gòu),圍繞著MATLAB這個(gè)計(jì)算核心,形成了諸多針對(duì)不同應(yīng)用領(lǐng)域的算法程序包,被稱為專用工具箱(Toolbox),這些工具箱的列表以及每個(gè)工具箱的使用詳見MATLAB在線幫

14、助文檔。MATLAB本身所提供的工具箱大概有40多個(gè),另外還有其他公司或研究單位開發(fā)提供的工具箱,這些工具箱的總數(shù)已有100多個(gè),而且新的工具箱還在不斷增加。如果你有特別的應(yīng)用領(lǐng)域,可以首先到網(wǎng)上查找是否已有相關(guān)的工具箱,很可能已有人將你要做的應(yīng)用程序作成工具箱了。,Simulink是窗口圖形方式的、專門用于連續(xù)時(shí)間或離散時(shí)間的動(dòng)態(tài)系統(tǒng)建模、分析和仿真的核心。,Real-Time Workshop是一種實(shí)時(shí)代碼生成工具,它能夠根據(jù)Simulink模型生成程序源代碼,并打包、編譯所生成的源代碼生成實(shí)時(shí)應(yīng)用程序。,從現(xiàn)有的Simulink 和Stateflow自動(dòng)生成C語言程序代碼的功能、定點(diǎn)運(yùn)算

15、模塊集(Fixed-point Blockset)與C語言程序代碼到VHDL(Very High Speed Integrated Circuit Hardware Description Language,一種標(biāo)準(zhǔn)的硬件電路設(shè)計(jì)語言 )的自動(dòng)轉(zhuǎn)換功能,可以看出,高級(jí)的系統(tǒng)仿真或低級(jí)的芯片算法設(shè)計(jì),都可用MATLAB、Simulink、Stateflow及相關(guān)的工具箱來完成。,Stateflow是基于有限狀態(tài)機(jī)理論針對(duì)復(fù)雜的事件驅(qū)動(dòng)系統(tǒng)進(jìn)行建模、仿真的工具。,Stateflow Coder是基于Stateflow狀態(tài)圖生成高效、優(yōu)化的程序代碼。,圍繞著Simulink仿真核心所開發(fā)的應(yīng)用程序包

16、,稱為模塊集(Blocksets),MATLAB產(chǎn)品提供許多專用模塊集,如Communication Blockset、DSP Blockset、SimPowerSystem Blockset、Signal Processing Blockset等,詳見MATLAB在線幫助文檔。,MATLAB是MATLAB產(chǎn)品家族的計(jì)算核心與基礎(chǔ),是集高性能數(shù)值計(jì)算與數(shù)據(jù)可視化于一體的高效編程語言。,15,1.3 MATLAB編程語言的特點(diǎn),語法規(guī)則簡單。尤其內(nèi)定的編程規(guī)則,與其他編程語言(如C、Fortran等)相比更接近于常規(guī)數(shù)學(xué)表示。對(duì)于數(shù)組變量的使用,不需類型聲明,無需事先申請(qǐng)內(nèi)存空間。,MATLAB

17、語言主要有以下幾個(gè)特點(diǎn):,MATLAB基本的語言環(huán)境提供了數(shù)以千計(jì)的計(jì)算函數(shù),極大的提高了用戶的編程效率。如,一個(gè)fft函數(shù)即可完成對(duì)指定數(shù)據(jù)的快速傅里葉變換,這一任務(wù)如果用C語言來編程實(shí)現(xiàn)的話,至少要用幾十條C語言才能完成。,因此,MATLAB是一個(gè)簡單易用、功能強(qiáng)大的高效編程語言。,平臺(tái)無關(guān)性(可移植性)。MATLAB軟件可以運(yùn)行在很多不同的計(jì)算機(jī)系統(tǒng)平臺(tái)上,如Windows Me/NT/2000/XP、很多不同版本的UNIX以及Linux。無論你在哪一個(gè)平臺(tái)上編寫的程序都可以運(yùn)行在其它平臺(tái)上,對(duì)于MATLAB數(shù)據(jù)文件也一樣,是平臺(tái)無關(guān)的。極大保護(hù)了用戶的勞動(dòng)、方便了用戶。其繪圖功能也是平

18、臺(tái)無關(guān)的。無論任何系統(tǒng)平臺(tái),只要MATLAB能夠運(yùn)行,其圖形功能命令就能正常運(yùn)行。,MATLAB是一種腳本式(scripted)的解釋型語言,無論是命令、函數(shù)或變量,只要在命令窗口的提示符下鍵入,并“回車(Enter)”,MATLAB都予以解釋執(zhí)行。,16,功能強(qiáng)大 數(shù)值運(yùn)算優(yōu)勢(shì) 符號(hào)運(yùn)算優(yōu)勢(shì)(Maple) 強(qiáng)大的2D、3D數(shù)據(jù)可視化功能 許多具有算法自適應(yīng)能力的功能函數(shù),17,語言簡單、內(nèi)涵豐富 語言及其書寫形式非常接近于常規(guī)數(shù)學(xué)書寫形式; 其操作和功能函數(shù)指令就是常用的計(jì)算機(jī)和數(shù)學(xué)書上的一些簡單英文單詞表達(dá)的,如:help、clear等; 完備的幫助系統(tǒng),易學(xué)易用。 擴(kuò)充能力、可開發(fā)能力較

19、強(qiáng) MATLAB完全成了一個(gè)開放的系統(tǒng) 用戶可以開發(fā)自己的工具箱 可以方便地與Fortran、C等語言接口 編程易、效率高 Matlab以數(shù)組為基本計(jì)算單元 具有大量的算法優(yōu)化的功能函數(shù),18,2 MATLAB的桌面環(huán)境及入門知識(shí),啟動(dòng)與退出MATLAB 命令窗口及使用 數(shù)值表示、變量、表達(dá)式 命令歷史窗口 工作空間 獲取在線幫助,19,2.1 啟動(dòng)與退出MATLAB,啟動(dòng)MATLAB 直接用鼠標(biāo)雙擊桌面上MATLAB7.1圖標(biāo) 或Windows桌面的“開始”“所有程序”“MATLAB7.1” “MATLAB7.1”。 退出MATLAB 關(guān)閉MATLAB桌面 在命令窗口執(zhí)行quit或exit命令 MATLAB缺省桌面(見下頁),20,菜單欄,工具欄,文件編輯窗口,工作空間,歷史命令 窗口,Start 菜單,命令窗口,命令提示符,2.1 啟動(dòng)與退出MATLAB (續(xù)),21,2.2 命令窗口的使用,激活命令窗口。 “” 與閃爍的光標(biāo)一起表明系統(tǒng)就緒,等待輸入。 命令窗口脫離MATLAB桌面。 簡單計(jì)算 【例2.2-1】計(jì)算 (1)在MATLAB命令窗口輸入 以下內(nèi)容: (12+2*(7-4)/32 (2)按【Enter】鍵,指令執(zhí)行。 (3)返回的計(jì)算結(jié)果: ans= 2,22,2.2 命令窗口 (續(xù)),說明 在命令窗口【* 次數(shù):1357533 已用完,請(qǐng)聯(lián)系開發(fā)者*

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!