matlab全套教程-西電_第1頁(yè)
matlab全套教程-西電_第2頁(yè)
matlab全套教程-西電_第3頁(yè)
matlab全套教程-西電_第4頁(yè)
matlab全套教程-西電_第5頁(yè)
已閱讀5頁(yè),還剩335頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、MMATLABATLAB 語(yǔ)言及其應(yīng)用 Application of Matlab Language 2022-5-4Application of Matlab Language2 n 課程的作用課程的作用n 課程的目的課程的目的n 課程的特點(diǎn)課程的特點(diǎn)n 課程安排課程安排 2022-5-4Application of Matlab Language3 課程的作用課程的作用 在歐美各在歐美各高等學(xué)校高等學(xué)校,MatlabMatlab成為線性代數(shù)、自動(dòng)控制理論、成為線性代數(shù)、自動(dòng)控制理論、數(shù)字信號(hào)處理、時(shí)間序列分析、動(dòng)態(tài)系統(tǒng)仿真、圖像處理等數(shù)字信號(hào)處理、時(shí)間序列分析、動(dòng)態(tài)系統(tǒng)仿真、圖像處理等諸多

2、課程的基本教學(xué)工具,成為諸多課程的基本教學(xué)工具,成為本科生、碩士生和博士生的本科生、碩士生和博士生的必須掌握的基本技能。必須掌握的基本技能。 在在設(shè)計(jì)研究單位和工業(yè)部門設(shè)計(jì)研究單位和工業(yè)部門,MatlabMatlab已被廣泛地用于研究已被廣泛地用于研究和和解決各種具體的工程問(wèn)題解決各種具體的工程問(wèn)題。 可以預(yù)見(jiàn),可以預(yù)見(jiàn),MatlabMatlab將在我國(guó)科學(xué)研究和工程應(yīng)用中發(fā)揮越將在我國(guó)科學(xué)研究和工程應(yīng)用中發(fā)揮越來(lái)越大的作用。來(lái)越大的作用。 2022-5-4Application of Matlab Language4 講授講授MATLABMATLAB語(yǔ)言基礎(chǔ)入門知識(shí)語(yǔ)言基礎(chǔ)入門知識(shí),介紹,介

3、紹MATLABMATLAB產(chǎn)品的體系、產(chǎn)品的體系、MATLABMATLAB桌面工具桌面工具的使用方法,的使用方法,重點(diǎn)介紹重點(diǎn)介紹MATLABMATLAB的數(shù)據(jù)可視化、數(shù)值計(jì)算的基本步驟的數(shù)據(jù)可視化、數(shù)值計(jì)算的基本步驟以及以及如何使如何使用用MATLABMATLAB語(yǔ)言編寫整潔、高效、規(guī)范的程序。語(yǔ)言編寫整潔、高效、規(guī)范的程序。并涉及到一些具體的并涉及到一些具體的專業(yè)應(yīng)用工專業(yè)應(yīng)用工具箱具箱(如:信號(hào)處理工具箱、圖像處理工具箱等)。(如:信號(hào)處理工具箱、圖像處理工具箱等)。 通過(guò)本課程的學(xué)習(xí),通過(guò)本課程的學(xué)習(xí),了解、熟悉、掌握了解、熟悉、掌握 MATLABMATLAB的基本編程方法的基本編程方

4、法,并具有初并具有初步的利用計(jì)算機(jī)處理、解決實(shí)際問(wèn)題的能力步的利用計(jì)算機(jī)處理、解決實(shí)際問(wèn)題的能力,為進(jìn)一步學(xué)習(xí)后續(xù)的專業(yè)課程做,為進(jìn)一步學(xué)習(xí)后續(xù)的專業(yè)課程做好準(zhǔn)備。好準(zhǔn)備。本課程的目的本課程的目的( Objectives of This CourseObjectives of This Course ) 本課程的特點(diǎn)本課程的特點(diǎn)( Features of This CourseFeatures of This Course ) 交叉性課程,是交叉性課程,是計(jì)算機(jī)技術(shù)計(jì)算機(jī)技術(shù)、數(shù)學(xué)理論數(shù)學(xué)理論知識(shí)以及諸多知識(shí)以及諸多工程理論工程理論知識(shí)的綜合。知識(shí)的綜合。 實(shí)踐性課程。實(shí)踐性課程。 內(nèi)容多,課

5、時(shí)少,要求同學(xué)上課認(rèn)真聽(tīng)講,要充分利用上機(jī)實(shí)踐消化、理解、內(nèi)容多,課時(shí)少,要求同學(xué)上課認(rèn)真聽(tīng)講,要充分利用上機(jī)實(shí)踐消化、理解、 掌握課上講解內(nèi)容。掌握課上講解內(nèi)容。 2022-5-4Application of Matlab Language5 課程安排課程安排n課堂教學(xué):共課堂教學(xué):共2424學(xué)時(shí);學(xué)時(shí);(1-121-12周)周)n上機(jī)試驗(yàn):共上機(jī)試驗(yàn):共2424學(xué)時(shí)。學(xué)時(shí)。 (2-132-13周,周二周,周二7-87-8節(jié),九實(shí)節(jié),九實(shí)401401、402402、403403)p學(xué)習(xí)成績(jī):學(xué)習(xí)成績(jī): 1)上機(jī)實(shí)驗(yàn)成績(jī)占上機(jī)實(shí)驗(yàn)成績(jī)占30%;30%; 2)考勤考勤 10% ;10% ; 3)

6、 考試考試60% 60% (隨堂考試)(隨堂考試)。主要參考書(shū)主要參考書(shū)精通精通MATLAB 6.5MATLAB 6.5張志涌張志涌 等編著,北航出版,等編著,北航出版,20032003年年高等應(yīng)用數(shù)學(xué)問(wèn)題的高等應(yīng)用數(shù)學(xué)問(wèn)題的MatlabMatlab求解求解 薛定宇等著,清華大學(xué)出薛定宇等著,清華大學(xué)出版社,版社,20042004年年MatlabMatlab程序設(shè)計(jì)與應(yīng)用程序設(shè)計(jì)與應(yīng)用 劉衛(wèi)國(guó)主編,高等教育出版社劉衛(wèi)國(guó)主編,高等教育出版社 2022-5-4Application of Matlab Language6 授課宗旨授課宗旨 講授講授MATLAB的通用功能。的通用功能。 寓教于例,由

7、淺入深。寓教于例,由淺入深。 關(guān)于科學(xué)計(jì)算,著重強(qiáng)調(diào)理論概念、算法和實(shí)際計(jì)算三者關(guān)于科學(xué)計(jì)算,著重強(qiáng)調(diào)理論概念、算法和實(shí)際計(jì)算三者之間的關(guān)系。之間的關(guān)系。 2022-5-4Application of Matlab Language7 第一講第一講 Matlab概述n 前言前言n MatlabMatlab軟件概述軟件概述n MatlabMatlab的桌面環(huán)境及入門知識(shí)的桌面環(huán)境及入門知識(shí) 2022-5-4Application of Matlab Language8 1 Matlab1 Matlab概述概述n 內(nèi)容內(nèi)容n MatlabMatlab發(fā)展歷史發(fā)展歷史n MatlabMatlab產(chǎn)品

8、家族產(chǎn)品家族( (MatlabMatlab family of productsfamily of products) )體系體系n Matlab Matlab 語(yǔ)言的特點(diǎn)。語(yǔ)言的特點(diǎn)。n 目的目的n 全面了解全面了解 MatlabMatlab軟件包軟件包n 激發(fā)對(duì)激發(fā)對(duì)MatlabMatlab軟件的學(xué)習(xí)興趣。軟件的學(xué)習(xí)興趣。 2022-5-4Application of Matlab Language9 1.1 MATLAB的歷史及影響的歷史及影響 7070年代中期年代中期,Cleve MolerCleve Moler博土及其同事在美國(guó)國(guó)家基金會(huì)博土及其同事在美國(guó)國(guó)家基金會(huì)的幫助下,開(kāi)發(fā)了的

9、幫助下,開(kāi)發(fā)了LINPACKLINPACK和和EISPACKEISPACK的的FORTRANFORTRAN語(yǔ)言語(yǔ)言子程序庫(kù),子程序庫(kù),這兩個(gè)程序庫(kù)代表了當(dāng)時(shí)矩陣運(yùn)算的最高水平。這兩個(gè)程序庫(kù)代表了當(dāng)時(shí)矩陣運(yùn)算的最高水平。到了到了7070年代后期年代后期,身為美國(guó)新墨西哥州大學(xué)計(jì)算機(jī)系系主,身為美國(guó)新墨西哥州大學(xué)計(jì)算機(jī)系系主任的任的CIeve MolerCIeve Moler,在給學(xué)生上線性代數(shù)課時(shí),為了讓學(xué)生,在給學(xué)生上線性代數(shù)課時(shí),為了讓學(xué)生能使用這兩個(gè)子程序庫(kù),同時(shí)又不用在編程上花費(fèi)過(guò)多的能使用這兩個(gè)子程序庫(kù),同時(shí)又不用在編程上花費(fèi)過(guò)多的時(shí)間,開(kāi)始著手用時(shí)間,開(kāi)始著手用FORTRANFORT

10、RAN語(yǔ)言為學(xué)生編寫使用語(yǔ)言為學(xué)生編寫使用LINPACKLINPACK和和EISPACKEISPACK的接口程序,他將這個(gè)程序取名為的接口程序,他將這個(gè)程序取名為MATLABMATLAB,其名稱是由其名稱是由MATrixMATrix和和 LABoratoryLABoratory(矩陣實(shí)驗(yàn)室)(矩陣實(shí)驗(yàn)室)兩個(gè)單詞的前三個(gè)字母所合成兩個(gè)單詞的前三個(gè)字母所合成。在在19781978年年,MalabMalab就面世了。這個(gè)程序獲得了很大的成功,就面世了。這個(gè)程序獲得了很大的成功,受到了學(xué)生的廣泛歡迎。在以后的幾年里,受到了學(xué)生的廣泛歡迎。在以后的幾年里,MatlabMatlab在多所在多所大學(xué)里作為

11、教學(xué)輔助軟件使用,并作為面向大眾的免費(fèi)軟大學(xué)里作為教學(xué)輔助軟件使用,并作為面向大眾的免費(fèi)軟件廣為流傳。件廣為流傳。Cleve Moler 2022-5-4Application of Matlab Language10 將將MATLABMATLAB商品化的不是商品化的不是Cleve MolerCleve Moler, ,而是一個(gè)名叫而是一個(gè)名叫Jack LittleJack Little的人。當(dāng)免費(fèi)的的人。當(dāng)免費(fèi)的MATLABMATLAB軟件到軟件到StanfordStanford大學(xué),大學(xué),Jack LittleJack Little正在該正在該校主修校主修控制控制,便接觸到了當(dāng)時(shí),便接觸到

12、了當(dāng)時(shí)MATLABMATLAB,直覺(jué)告訴他,這是一個(gè),直覺(jué)告訴他,這是一個(gè)具有巨大發(fā)展?jié)摿Φ能浖?。因此他在畢業(yè)沒(méi)多久,就開(kāi)始具有巨大發(fā)展?jié)摿Φ能浖?。因此他在畢業(yè)沒(méi)多久,就開(kāi)始用用C C語(yǔ)語(yǔ)言重新編寫了言重新編寫了MATLABMATLAB的核心。的核心。在在MolerMoler的協(xié)助下,于的協(xié)助下,于19841984年成年成立立MathWorksMathWorks公司,首次推出公司,首次推出MATLABMATLAB商用版。在其商用版推出商用版。在其商用版推出的初期,的初期,MATLABMATLAB就以其優(yōu)秀的品質(zhì)(就以其優(yōu)秀的品質(zhì)(高效的數(shù)據(jù)計(jì)算能力和開(kāi)高效的數(shù)據(jù)計(jì)算能力和開(kāi)放的體系結(jié)構(gòu)放的體系

13、結(jié)構(gòu))占據(jù)了大部分?jǐn)?shù)學(xué)計(jì)算軟件的市場(chǎng),原來(lái)應(yīng)用于)占據(jù)了大部分?jǐn)?shù)學(xué)計(jì)算軟件的市場(chǎng),原來(lái)應(yīng)用于控制領(lǐng)域里的一些封閉式數(shù)學(xué)計(jì)算軟件包(如英國(guó)的控制領(lǐng)域里的一些封閉式數(shù)學(xué)計(jì)算軟件包(如英國(guó)的UMISTUMIST、瑞、瑞典的典的LUNDLUND和和SIMNONSIMNON、德國(guó)的、德國(guó)的KEDDCKEDDC)就紛紛被淘汰或在)就紛紛被淘汰或在MATLABMATLAB上重建。上重建。Jack Little 2022-5-4Application of Matlab Language11 Cleve MolerCleve Moler至今仍是該公司的首席科學(xué)家至今仍是該公司的首席科學(xué)家,他以,他以6060多

14、歲的高齡,還常常親自進(jìn)行撰寫多歲的高齡,還常常親自進(jìn)行撰寫程序的工作,非常令人佩服。如果你有數(shù)值運(yùn)算方面的高水平問(wèn)題,寄到程序的工作,非常令人佩服。如果你有數(shù)值運(yùn)算方面的高水平問(wèn)題,寄到 MathWorks MathWorks 后,后,大部份還是會(huì)由大部份還是會(huì)由 Cleve MolerCleve Moler親自回答。在親自回答。在19941994年,年,PentiumPentium芯片曾發(fā)生芯片曾發(fā)生FdivFdiv的的bugbug, 當(dāng)時(shí)當(dāng)時(shí)Cleve MolerCleve Moler是第一個(gè)以軟件方式解決此是第一個(gè)以軟件方式解決此 bugbug的人,曾一時(shí)膾炙人口。的人,曾一時(shí)膾炙人口。

15、 在公司初創(chuàng)的五年,在公司初創(chuàng)的五年,Jack LittleJack Little非常辛苦,常常身兼數(shù)職(董事長(zhǎng)、總經(jīng)理、推銷、非常辛苦,常常身兼數(shù)職(董事長(zhǎng)、總經(jīng)理、推銷、程序開(kāi)發(fā)等),但公司一直穩(wěn)定發(fā)展,從當(dāng)初的一人公司,到程序開(kāi)發(fā)等),但公司一直穩(wěn)定發(fā)展,從當(dāng)初的一人公司,到19931993年的年的200200人,到人,到20002000年的年的 500500余人,到余人,到20052005年公司員工達(dá)到了年公司員工達(dá)到了13001300人,不但打敗其他競(jìng)爭(zhēng)軟件,而且前景一片欣欣向人,不但打敗其他競(jìng)爭(zhēng)軟件,而且前景一片欣欣向榮。根據(jù)榮。根據(jù)Jack LittleJack Little個(gè)人

16、說(shuō)法,個(gè)人說(shuō)法,MATLABMATLAB早期成功的兩大因素是:選用了早期成功的兩大因素是:選用了C C語(yǔ)言及選定語(yǔ)言及選定PCPC為主為主要平臺(tái),這似乎和微軟的成功有相互呼應(yīng)之妙。要平臺(tái),這似乎和微軟的成功有相互呼應(yīng)之妙。 MathWorksMathWorks公司,目前仍然是私人企業(yè),并未上市,這和公司,目前仍然是私人企業(yè),并未上市,這和Jack LittleJack Little個(gè)人理念有關(guān),個(gè)人理念有關(guān),他認(rèn)為他認(rèn)為MATLABMATLAB的設(shè)計(jì)方向應(yīng)該一直是以顧客的需求與軟件的完整性為首要目標(biāo)的設(shè)計(jì)方向應(yīng)該一直是以顧客的需求與軟件的完整性為首要目標(biāo),而不是以盈,而不是以盈利為主要目的,因

17、此利為主要目的,因此MATLABMATLAB一直是在穩(wěn)定中求進(jìn)步,而不會(huì)因?yàn)樯鲜卸馐芄蓶|左右其發(fā)展一直是在穩(wěn)定中求進(jìn)步,而不會(huì)因?yàn)樯鲜卸馐芄蓶|左右其發(fā)展方向。這也是為什么方向。這也是為什么MATLABMATLAB新版本總是姍姍來(lái)遲的原因,因?yàn)樗麄儾粫?huì)因?yàn)槭袌?chǎng)的需求而推新版本總是姍姍來(lái)遲的原因,因?yàn)樗麄儾粫?huì)因?yàn)槭袌?chǎng)的需求而推出不成熟的產(chǎn)品。此外,由于出不成熟的產(chǎn)品。此外,由于Jack LittleJack Little保守的個(gè)性,也使得保守的個(gè)性,也使得MathWorksMathWorks不曾跨足不曾跨足MATLAB/SimulinkMATLAB/Simulink以外的行業(yè),當(dāng)前商場(chǎng)上紛紛擾

18、擾的并購(gòu)或分家,以外的行業(yè),當(dāng)前商場(chǎng)上紛紛擾擾的并購(gòu)或分家,MathWorksMathWorks完全是絕緣體。完全是絕緣體。 2022-5-4Application of Matlab Language12 1992 1992年,支持年,支持Windows 3.xWindows 3.x的的MATLAB 4.0MATLAB 4.0版本推出,增加了版本推出,增加了SimulinkSimulink,ControlControl,Neural NetworkNeural Network,Signal ProcessingSignal Processing等專用工具箱。等專用工具箱。 1993 1993

19、年年1111月,月,MathWorksMathWorks公司推出了公司推出了Matlab 4.1Matlab 4.1,其中主要增加了符號(hào)運(yùn)算功能。,其中主要增加了符號(hào)運(yùn)算功能。當(dāng)升級(jí)至當(dāng)升級(jí)至Matlab 4.2cMatlab 4.2c,這一功能在用戶中得到廣泛應(yīng)用。,這一功能在用戶中得到廣泛應(yīng)用。 1997 1997年,年,Matlab 5.0Matlab 5.0版本問(wèn)世了版本問(wèn)世了, ,實(shí)現(xiàn)了真正的實(shí)現(xiàn)了真正的3232位運(yùn)算,加快數(shù)值計(jì)算,圖形表現(xiàn)位運(yùn)算,加快數(shù)值計(jì)算,圖形表現(xiàn)有效。有效。 2001 2001年初,年初,MathWorksMathWorks公司推出了公司推出了Matlab

20、6.0Matlab 6.0(R12R12)。)。 2002 2002年年7 7月,推出了月,推出了Matlab 6.5(R13)Matlab 6.5(R13),在這一版本中,在這一版本中SimulinkSimulink升級(jí)到了升級(jí)到了5.05.0,性能有,性能有了很大提高,另一大特點(diǎn)是推出了了很大提高,另一大特點(diǎn)是推出了JITJIT程序加速器,程序加速器,MatlabMatlab的計(jì)算速度有了明顯的的計(jì)算速度有了明顯的提高。提高。 2005 2005年年9 9月,推出了月,推出了MAILAB 7.1(Release14 SP3)MAILAB 7.1(Release14 SP3),在這一版本中,

21、在這一版本中SimulinkSimulink升級(jí)到了升級(jí)到了6.36.3,軟件性能有了新的提高,用戶界面更加友好。值得說(shuō)明的是,軟件性能有了新的提高,用戶界面更加友好。值得說(shuō)明的是,Matlab V7.1Matlab V7.1版版采用了更先進(jìn)的數(shù)學(xué)程序庫(kù),即采用了更先進(jìn)的數(shù)學(xué)程序庫(kù),即“LAPACK”LAPACK”和和“BLAS”BLAS”。 目前,目前,MatlabMatlab軟件支持多種系統(tǒng)平臺(tái),如常見(jiàn)的軟件支持多種系統(tǒng)平臺(tái),如常見(jiàn)的WindowsNT/XPWindowsNT/XP、UNIXUNIX、LinuxLinux等。等。Matlab版本的發(fā)展版本的發(fā)展 2022-5-4Applic

22、ation of Matlab Language13 MATLABMATLAB就是這樣經(jīng)過(guò)了近就是這樣經(jīng)過(guò)了近3030年的專門打造、年的專門打造、2020多年的千錘百煉,它以高性能多年的千錘百煉,它以高性能的的數(shù)組運(yùn)算(包括矩陣運(yùn)算)數(shù)組運(yùn)算(包括矩陣運(yùn)算)為基礎(chǔ),不僅實(shí)現(xiàn)了大多數(shù)數(shù)學(xué)算法的為基礎(chǔ),不僅實(shí)現(xiàn)了大多數(shù)數(shù)學(xué)算法的高效運(yùn)行函高效運(yùn)行函數(shù)數(shù)和和數(shù)據(jù)可視化數(shù)據(jù)可視化,而且提供了非常高效的,而且提供了非常高效的計(jì)算機(jī)高級(jí)編程語(yǔ)言計(jì)算機(jī)高級(jí)編程語(yǔ)言,在用戶可參與的,在用戶可參與的情況下,情況下,各種專業(yè)領(lǐng)域的工具箱各種專業(yè)領(lǐng)域的工具箱不斷開(kāi)發(fā)和完善,不斷開(kāi)發(fā)和完善,MATLABMATLAB取

23、得了巨大的成功,已取得了巨大的成功,已廣泛應(yīng)用于廣泛應(yīng)用于科學(xué)研究、工程應(yīng)用,用于數(shù)值計(jì)算分析、系統(tǒng)建模與仿真科學(xué)研究、工程應(yīng)用,用于數(shù)值計(jì)算分析、系統(tǒng)建模與仿真。 早在早在2020世紀(jì)世紀(jì)9090年代初年代初,歐美等發(fā)達(dá)國(guó)家的大學(xué)就將,歐美等發(fā)達(dá)國(guó)家的大學(xué)就將MATLABMATLAB列為一種必須掌握列為一種必須掌握的編程語(yǔ)言。近幾年來(lái),國(guó)內(nèi)的很多大學(xué)也將的編程語(yǔ)言。近幾年來(lái),國(guó)內(nèi)的很多大學(xué)也將MATLABMATLAB列為了本科生必修課程。列為了本科生必修課程。 與與MapleMaple、MathematicaMathematica數(shù)學(xué)計(jì)算軟件相比,數(shù)學(xué)計(jì)算軟件相比,MATLABMATLAB以

24、數(shù)值計(jì)算見(jiàn)長(zhǎng),而以數(shù)值計(jì)算見(jiàn)長(zhǎng),而MapleMaple等以符號(hào)運(yùn)算見(jiàn)長(zhǎng),能給出解析解和任意精度解,而處理大量數(shù)據(jù)的能力遠(yuǎn)不如等以符號(hào)運(yùn)算見(jiàn)長(zhǎng),能給出解析解和任意精度解,而處理大量數(shù)據(jù)的能力遠(yuǎn)不如MATLABMATLAB。 MATLABMATLAB軟件功能之強(qiáng)大、應(yīng)用之廣泛,已成為為軟件功能之強(qiáng)大、應(yīng)用之廣泛,已成為為2121世紀(jì)最為重要的科學(xué)計(jì)算世紀(jì)最為重要的科學(xué)計(jì)算語(yǔ)言語(yǔ)言??梢?jiàn)學(xué)習(xí)掌握這一工具的重要性??梢?jiàn)學(xué)習(xí)掌握這一工具的重要性。 2022-5-4Application of Matlab Language14 MATLABMATLAB產(chǎn)品由若干模塊組成,不同的模塊完成不同的功能,其中有

25、:產(chǎn)品由若干模塊組成,不同的模塊完成不同的功能,其中有: 實(shí)際上實(shí)際上MATLABMATLAB本身就是一個(gè)極其豐富的資源庫(kù),那么應(yīng)該從哪一部分開(kāi)始著手、學(xué)本身就是一個(gè)極其豐富的資源庫(kù),那么應(yīng)該從哪一部分開(kāi)始著手、學(xué)習(xí)使用習(xí)使用MATLABMATLAB呢?這就有必要了解這一軟件產(chǎn)品的體系結(jié)構(gòu)呢?這就有必要了解這一軟件產(chǎn)品的體系結(jié)構(gòu) 。MATLAB CompilerMATLAB Compiler這種編譯器可以將這種編譯器可以將MATLABMATLAB程程序文件編譯生成標(biāo)準(zhǔn)的序文件編譯生成標(biāo)準(zhǔn)的C/C+C/C+語(yǔ)言文件,而生成語(yǔ)言文件,而生成的標(biāo)準(zhǔn)的的標(biāo)準(zhǔn)的C/C+C/C+文件可以被任何一種文件可以

26、被任何一種C/C+C/C+編譯編譯器編譯生成函數(shù)庫(kù)或可執(zhí)行文件,以提高程序的器編譯生成函數(shù)庫(kù)或可執(zhí)行文件,以提高程序的運(yùn)行效率。運(yùn)行效率。1.2 MATLAB1.2 MATLAB產(chǎn)品的體系結(jié)構(gòu)產(chǎn)品的體系結(jié)構(gòu) MATLABMATLABMATLAB ToolboxesMATLAB ToolboxesMATLAB CompilerMATLAB CompilerSimulinkSimulinkSimulink BlocksetsSimulink BlocksetsReal-Time Workshop (RTW)Real-Time Workshop (RTW)StateflowStateflowStat

27、eflow CoderStateflow Coder由這些模塊產(chǎn)品之間的關(guān)系可以圖由這些模塊產(chǎn)品之間的關(guān)系可以圖1.11.1表示。表示。圖1.1 MATLAB產(chǎn)品體系結(jié)構(gòu)圍繞著圍繞著MATLABMATLAB這個(gè)計(jì)算核心,形成了諸多針對(duì)不同這個(gè)計(jì)算核心,形成了諸多針對(duì)不同應(yīng)用領(lǐng)域的算法程序包,被稱為專用工具箱應(yīng)用領(lǐng)域的算法程序包,被稱為專用工具箱(ToolboxToolbox),這些工具箱的列表以及每個(gè)工具箱的使),這些工具箱的列表以及每個(gè)工具箱的使用詳見(jiàn)用詳見(jiàn)MATLABMATLAB在線幫助文檔。在線幫助文檔。MATLABMATLAB本身所提供本身所提供的工具箱大概有的工具箱大概有4040多個(gè)

28、,另外還有其他公司或研究單多個(gè),另外還有其他公司或研究單位開(kāi)發(fā)提供的工具箱,這些工具箱的總數(shù)已有位開(kāi)發(fā)提供的工具箱,這些工具箱的總數(shù)已有100100多個(gè),多個(gè),而且新的工具箱還在不斷增加。如果你有特別的應(yīng)用而且新的工具箱還在不斷增加。如果你有特別的應(yīng)用領(lǐng)域,可以首先到網(wǎng)上查找是否已有相關(guān)的工具箱,領(lǐng)域,可以首先到網(wǎng)上查找是否已有相關(guān)的工具箱,很可能已有人將你要做的應(yīng)用程序作成工具箱了。很可能已有人將你要做的應(yīng)用程序作成工具箱了。SimulinkSimulink是窗口圖形方式的、專門用于連續(xù)時(shí)是窗口圖形方式的、專門用于連續(xù)時(shí)間或離散時(shí)間的動(dòng)態(tài)系統(tǒng)建模、分析和仿真間或離散時(shí)間的動(dòng)態(tài)系統(tǒng)建模、分析和

29、仿真的核心。的核心。Real-Time WorkshopReal-Time Workshop是一種實(shí)時(shí)代碼生成工具,它能夠根據(jù)是一種實(shí)時(shí)代碼生成工具,它能夠根據(jù)SimulinkSimulink模型生成程序源代碼,并打包、編譯所生成的源代碼生模型生成程序源代碼,并打包、編譯所生成的源代碼生成實(shí)時(shí)應(yīng)用程序。成實(shí)時(shí)應(yīng)用程序。 從現(xiàn)有的從現(xiàn)有的Simulink Simulink 和和StateflowStateflow自動(dòng)生成自動(dòng)生成C C語(yǔ)言程序代碼的功能、語(yǔ)言程序代碼的功能、定點(diǎn)運(yùn)算模塊集(定點(diǎn)運(yùn)算模塊集(Fixed-point BlocksetFixed-point Blockset)與)與C

30、C語(yǔ)言程序代碼到語(yǔ)言程序代碼到VHDLVHDL(Very High Speed Integrated Circuit Hardware Description LanguageVery High Speed Integrated Circuit Hardware Description Language,一,一種標(biāo)準(zhǔn)的硬件電路設(shè)計(jì)語(yǔ)言種標(biāo)準(zhǔn)的硬件電路設(shè)計(jì)語(yǔ)言 )的自動(dòng)轉(zhuǎn)換功能,可以看出,高級(jí)的)的自動(dòng)轉(zhuǎn)換功能,可以看出,高級(jí)的系統(tǒng)仿真或低級(jí)的芯片算法設(shè)計(jì),都可用系統(tǒng)仿真或低級(jí)的芯片算法設(shè)計(jì),都可用MATLABMATLAB、SimulinkSimulink、StateflowStateflow及

31、相關(guān)的工具箱來(lái)完成。及相關(guān)的工具箱來(lái)完成。StateflowStateflow是基于有限狀態(tài)機(jī)理論針對(duì)復(fù)雜是基于有限狀態(tài)機(jī)理論針對(duì)復(fù)雜的事件驅(qū)動(dòng)系統(tǒng)進(jìn)行建模、仿真的工具。的事件驅(qū)動(dòng)系統(tǒng)進(jìn)行建模、仿真的工具。Stateflow CoderStateflow Coder是基于是基于StateflowStateflow狀態(tài)圖生成狀態(tài)圖生成高效、優(yōu)化的程序代碼。高效、優(yōu)化的程序代碼。圍繞著圍繞著SimulinkSimulink仿真核心所開(kāi)發(fā)的應(yīng)用程序包,仿真核心所開(kāi)發(fā)的應(yīng)用程序包,稱為模塊集(稱為模塊集(BlocksetsBlocksets),MATLAB,MATLAB產(chǎn)品提供許多產(chǎn)品提供許多專用模塊

32、集,如專用模塊集,如Communication BlocksetCommunication Blockset、DSP DSP BlocksetBlockset、SimPowerSystem BlocksetSimPowerSystem Blockset、Signal Signal Processing BlocksetProcessing Blockset等,詳見(jiàn)等,詳見(jiàn)MATLABMATLAB在線幫助文在線幫助文檔。檔。MATLABMATLAB是是MATLABMATLAB產(chǎn)品家族的計(jì)算產(chǎn)品家族的計(jì)算核心與基礎(chǔ),是集高性能數(shù)值計(jì)算與核心與基礎(chǔ),是集高性能數(shù)值計(jì)算與數(shù)據(jù)可視化于一體的高效編程語(yǔ)言

33、。數(shù)據(jù)可視化于一體的高效編程語(yǔ)言。 2022-5-4Application of Matlab Language15 1.3 1.3 MATLABMATLAB編程語(yǔ)言的特點(diǎn)編程語(yǔ)言的特點(diǎn) 語(yǔ)法規(guī)則簡(jiǎn)單語(yǔ)法規(guī)則簡(jiǎn)單。尤其內(nèi)定的編程規(guī)則,與其他編程語(yǔ)言(如尤其內(nèi)定的編程規(guī)則,與其他編程語(yǔ)言(如C C、FortranFortran等)相比更接等)相比更接近于常規(guī)數(shù)學(xué)表示。對(duì)于數(shù)組變量的使用,不需類型聲明,無(wú)需事先申請(qǐng)內(nèi)存空間。近于常規(guī)數(shù)學(xué)表示。對(duì)于數(shù)組變量的使用,不需類型聲明,無(wú)需事先申請(qǐng)內(nèi)存空間。MATLABMATLAB語(yǔ)言主要有以下幾個(gè)特點(diǎn):語(yǔ)言主要有以下幾個(gè)特點(diǎn): MATLAB基本的語(yǔ)言環(huán)境提

34、供了數(shù)以千計(jì)的計(jì)算函數(shù)基本的語(yǔ)言環(huán)境提供了數(shù)以千計(jì)的計(jì)算函數(shù),極大的提高了用戶的編程效率。極大的提高了用戶的編程效率。如,一個(gè)如,一個(gè)fftfft函數(shù)即可完成對(duì)指定數(shù)據(jù)的快速傅里葉變換,這一任務(wù)如果用函數(shù)即可完成對(duì)指定數(shù)據(jù)的快速傅里葉變換,這一任務(wù)如果用C C語(yǔ)言來(lái)編程語(yǔ)言來(lái)編程實(shí)現(xiàn)的話,至少要用幾十條實(shí)現(xiàn)的話,至少要用幾十條C C語(yǔ)言才能完成。語(yǔ)言才能完成。 因此,因此,MATLABMATLAB是一個(gè)簡(jiǎn)單易用、功能強(qiáng)大的高效編程語(yǔ)言。是一個(gè)簡(jiǎn)單易用、功能強(qiáng)大的高效編程語(yǔ)言。 平臺(tái)無(wú)關(guān)性(可移植性)平臺(tái)無(wú)關(guān)性(可移植性)。MATLABMATLAB軟件可以運(yùn)行在很多不同的計(jì)算機(jī)系統(tǒng)平臺(tái)上,如軟件

35、可以運(yùn)行在很多不同的計(jì)算機(jī)系統(tǒng)平臺(tái)上,如Windows Me/NT/2000/XPWindows Me/NT/2000/XP、很多不同版本的、很多不同版本的UNIXUNIX以及以及LinuxLinux。無(wú)論你在哪一個(gè)平臺(tái)上編。無(wú)論你在哪一個(gè)平臺(tái)上編寫的程序都可以運(yùn)行在其它平臺(tái)上,對(duì)于寫的程序都可以運(yùn)行在其它平臺(tái)上,對(duì)于MATLABMATLAB數(shù)據(jù)文件也一樣,是平臺(tái)無(wú)關(guān)的。極數(shù)據(jù)文件也一樣,是平臺(tái)無(wú)關(guān)的。極大保護(hù)了用戶的勞動(dòng)、方便了用戶。大保護(hù)了用戶的勞動(dòng)、方便了用戶。其繪圖功能也是平臺(tái)無(wú)關(guān)的其繪圖功能也是平臺(tái)無(wú)關(guān)的。無(wú)論任何系統(tǒng)平臺(tái),。無(wú)論任何系統(tǒng)平臺(tái),只要只要MATLABMATLAB能夠運(yùn)行

36、,其圖形功能命令就能正常運(yùn)行。能夠運(yùn)行,其圖形功能命令就能正常運(yùn)行。 MATLAB是一種腳本式是一種腳本式(scripted)的解釋型語(yǔ)言的解釋型語(yǔ)言,無(wú)論是命令、函數(shù)或變量,只要無(wú)論是命令、函數(shù)或變量,只要在命令窗口的提示符下鍵入,并在命令窗口的提示符下鍵入,并“回車(回車(EnterEnter)”,MATLABMATLAB都予以解釋執(zhí)行。都予以解釋執(zhí)行。 2022-5-4Application of Matlab Language16 n功能強(qiáng)大功能強(qiáng)大n數(shù)值運(yùn)算優(yōu)勢(shì)數(shù)值運(yùn)算優(yōu)勢(shì)n符號(hào)運(yùn)算優(yōu)勢(shì)符號(hào)運(yùn)算優(yōu)勢(shì)(Maple)(Maple)n強(qiáng)大的強(qiáng)大的2D2D、3D3D數(shù)據(jù)可視化功能數(shù)據(jù)可視化功

37、能n許多具有算法自適應(yīng)能力的功能函數(shù)許多具有算法自適應(yīng)能力的功能函數(shù) 2022-5-4Application of Matlab Language17 n語(yǔ)言簡(jiǎn)單、內(nèi)涵豐富語(yǔ)言簡(jiǎn)單、內(nèi)涵豐富n語(yǔ)言及其書(shū)寫形式非常接近于常規(guī)數(shù)學(xué)書(shū)寫形式;語(yǔ)言及其書(shū)寫形式非常接近于常規(guī)數(shù)學(xué)書(shū)寫形式;n其操作和功能函數(shù)指令就是常用的計(jì)算機(jī)和數(shù)學(xué)書(shū)上的一些簡(jiǎn)單其操作和功能函數(shù)指令就是常用的計(jì)算機(jī)和數(shù)學(xué)書(shū)上的一些簡(jiǎn)單英文單詞表達(dá)的,如:英文單詞表達(dá)的,如:helphelp、clearclear等;等;n完備的幫助系統(tǒng),易學(xué)易用。完備的幫助系統(tǒng),易學(xué)易用。n擴(kuò)充能力、可開(kāi)發(fā)能力較強(qiáng)擴(kuò)充能力、可開(kāi)發(fā)能力較強(qiáng)nMATLABM

38、ATLAB完全成了一個(gè)開(kāi)放的系統(tǒng)完全成了一個(gè)開(kāi)放的系統(tǒng)n用戶可以開(kāi)發(fā)自己的工具箱用戶可以開(kāi)發(fā)自己的工具箱n可以方便地與可以方便地與FortranFortran、C C等語(yǔ)言接口等語(yǔ)言接口 n編程易、效率高編程易、效率高 nMatlabMatlab以數(shù)組為基本計(jì)算單元以數(shù)組為基本計(jì)算單元n具有大量的算法優(yōu)化的功能函數(shù)具有大量的算法優(yōu)化的功能函數(shù) 2022-5-4Application of Matlab Language18 2 MATLAB2 MATLAB的桌面環(huán)境及入門知識(shí)的桌面環(huán)境及入門知識(shí)n啟動(dòng)與退出啟動(dòng)與退出MATLAB MATLAB n命令窗口及使用命令窗口及使用n數(shù)值表示、變量、表

39、達(dá)式數(shù)值表示、變量、表達(dá)式n命令歷史窗口命令歷史窗口n工作空間工作空間n獲取在線幫助獲取在線幫助 2022-5-4Application of Matlab Language19 2.1 2.1 啟動(dòng)與退出啟動(dòng)與退出MATLABMATLABn啟動(dòng)啟動(dòng)MATLABMATLABn直接用鼠標(biāo)雙擊桌面上直接用鼠標(biāo)雙擊桌面上MATLAB7.1MATLAB7.1圖標(biāo)圖標(biāo)n或或WindowsWindows桌面的桌面的“開(kāi)始開(kāi)始”“所有程所有程序序”“MATLAB7.1” “MATLAB7.1” “MATLAB7.1”“MATLAB7.1”。n退出退出MATLABMATLABn關(guān)閉關(guān)閉MATLABMATLAB

40、桌面桌面n在命令窗口執(zhí)行在命令窗口執(zhí)行quitquit或或exitexit命令命令nMATLABMATLAB缺省桌面(見(jiàn)下頁(yè))缺省桌面(見(jiàn)下頁(yè)) 2022-5-4Application of Matlab Language20 菜單欄菜單欄工具欄工具欄文件編輯窗口文件編輯窗口工作空間工作空間歷史命令歷史命令窗口窗口Start Start 菜單菜單命令窗口命令窗口命令提示符命令提示符2.1 2.1 啟動(dòng)與退出啟動(dòng)與退出MATLAB MATLAB (續(xù))(續(xù)) 2022-5-4Application of Matlab Language21 2.2 2.2 命令窗口的使用命令窗口的使用激活命令窗口

41、。激活命令窗口。“” ” 與閃爍的光標(biāo)一起表明系統(tǒng)就緒,等待輸入。與閃爍的光標(biāo)一起表明系統(tǒng)就緒,等待輸入。命令窗口脫離命令窗口脫離MATLABMATLAB桌面。桌面。 n簡(jiǎn)單計(jì)算簡(jiǎn)單計(jì)算【例例2.2-12.2-1】計(jì)算計(jì)算(1 1)在)在MATLABMATLAB命令窗口輸入命令窗口輸入 以下內(nèi)容:以下內(nèi)容:(12+2(12+2* *(7-4)/32(7-4)/32(2 2)按)按【EnterEnter】鍵,指令執(zhí)行。鍵,指令執(zhí)行。(3 3)返回的計(jì)算結(jié)果:)返回的計(jì)算結(jié)果:ans= 2 2122743 2022-5-4Application of Matlab Language22 2.2 2

42、.2 命令窗口命令窗口 (續(xù))(續(xù))說(shuō)明說(shuō)明l在命令窗口在命令窗口【EnterEnter】鍵提交命令執(zhí)行。鍵提交命令執(zhí)行。lMatlabMatlab所用運(yùn)算符(如所用運(yùn)算符(如+ +、- -、 等)是各種計(jì)算程序中等)是各種計(jì)算程序中常見(jiàn)的。常見(jiàn)的。l計(jì)算結(jié)果中的計(jì)算結(jié)果中的“ans”ans”是英文是英文“answer”answer”的一種縮寫,的一種縮寫,其含義就是其含義就是“運(yùn)算答案運(yùn)算答案”。ansans是是MatlabMatlab的一個(gè)預(yù)定義的一個(gè)預(yù)定義變量。變量。 2022-5-4Application of Matlab Language23 2.2 2.2 命令窗口命令窗口 (續(xù)

43、)(續(xù))n簡(jiǎn)單計(jì)算(續(xù))【例例2.2-22.2-2】計(jì)算計(jì)算sin(45sin(45? ) )sin(45sin(45* *pi/180)pi/180)l Matalb中正弦函數(shù)中正弦函數(shù)sin就是常見(jiàn)的正弦函數(shù)。就是常見(jiàn)的正弦函數(shù)。l 它的參數(shù)值是以它的參數(shù)值是以“弧度弧度”為單位的。為單位的。l pi也是也是Matalb的預(yù)定義變量。的預(yù)定義變量。l pi=3.14159l Matlab對(duì)字母大小寫是敏感的。對(duì)字母大小寫是敏感的。【例例2.2-32.2-3】計(jì)算計(jì)算 的值,其中的值,其中x=4.92x=4.92。 0.521xesqrt(2sqrt(2* *exp(4.92+0.5)+1)

44、exp(4.92+0.5)+1)l Matalb中開(kāi)平方中開(kāi)平方sqrt(x),是英文是英文square root的縮寫的縮寫 。l Matalb中指數(shù)函數(shù)中指數(shù)函數(shù)exp(x),常見(jiàn)的表達(dá)方式常見(jiàn)的表達(dá)方式。ans= 0.7071ans= 21.2781 2022-5-4Application of Matlab Language24 2.2 2.2 命令窗口命令窗口 (續(xù))(續(xù))7 “clcclc”清除窗口顯示內(nèi)容的命令清除窗口顯示內(nèi)容的命令?!纠?.2-42.2-4】計(jì)算計(jì)算 的值。的值。 2sin 0.315yy=2y=2* *sin(0.3sin(0.3* *pi)/(1+sqrt

45、(5)pi)/(1+sqrt(5)y= 0.5000【例例2.2-52.2-5】計(jì)算計(jì)算 的值。的值。 2cos 0.315yy=2*cos(0.3*pi)/(1+sqrt(5)y= 0.3633% 命令行編輯l “”鍵調(diào)回已輸入過(guò)命令。l 修改。 2022-5-4Application of Matlab Language25 2.2 2.2 命令窗口命令窗口 (續(xù))(續(xù))【例例2.2-52.2-5】計(jì)算半徑為計(jì)算半徑為5.2m5.2m的圓的周長(zhǎng)和面積。的圓的周長(zhǎng)和面積。radius=5.2; %radius=5.2; %圓的半徑圓的半徑area=piarea=pi* *5.22,5.22,

46、 circle_len=2circle_len=2* *pi pi* *5.25.2area = 84.9487circle_len = 32.6726l 以上兩例,命令行中用到了等號(hào)以上兩例,命令行中用到了等號(hào)“=”。l 計(jì)算結(jié)果不再賦給計(jì)算結(jié)果不再賦給“ans”,而是賦給,而是賦給用戶指定的變量用戶指定的變量y、area、circle_len。l 無(wú)論是預(yù)定義變量還是用戶自定義變量無(wú)論是預(yù)定義變量還是用戶自定義變量都被存儲(chǔ)在系統(tǒng)的工作空間內(nèi),即系統(tǒng)都被存儲(chǔ)在系統(tǒng)的工作空間內(nèi),即系統(tǒng)定義的一個(gè)存儲(chǔ)窗口變量的內(nèi)存空間。定義的一個(gè)存儲(chǔ)窗口變量的內(nèi)存空間。l Who、whos命令用來(lái)顯示工作空間的

47、命令用來(lái)顯示工作空間的變量變量l clear命令用來(lái)清除工作空間的變量。命令用來(lái)清除工作空間的變量。 2022-5-4Application of Matlab Language26 2.2 2.2 命令窗口命令窗口 (續(xù))(續(xù))whowhosYour variables are:ans circle_len y area radius Name Size Bytes Class ans 1x1 8 double array area 1x1 8 double array circle_len 1x1 8 double array radius 1x1 8 double array y 1x1

48、 8 double arrayGrand total is 5 elements using 40 bytes 2022-5-4Application of Matlab Language27 2.2 2.2 命令窗口命令窗口 (續(xù))(續(xù))clear ywhoYour variables are:ans circle_len area radius clear ans areawhosYour variables are:Name Size Bytes Class circle_len 1x1 8 double array radius 1x1 8 double arrayGrand tota

49、l is 2 elements using 16 bytes 2022-5-4Application of Matlab Language28 2.2 2.2 命令窗口命令窗口 (續(xù))(續(xù))n數(shù)值顯示格式設(shè)置數(shù)值顯示格式設(shè)置n缺省顯示格式:簡(jiǎn)潔的短(缺省顯示格式:簡(jiǎn)潔的短(short gshort g)格式)格式n窗口命令及語(yǔ)法格式:窗口命令及語(yǔ)法格式:format format 顯示格式關(guān)鍵字顯示格式關(guān)鍵字 如:如:format long %15format long %15位數(shù)字顯示位數(shù)字顯示n常見(jiàn)通用命令常見(jiàn)通用命令命令命令含義含義clcclc清除命令窗口的顯示內(nèi)容清除命令窗口的顯示內(nèi)容

50、clearclear 清除清除MatlabMatlab工作空間中保存的變量工作空間中保存的變量whowho或或whoswhos顯示顯示MatlabMatlab工作空間中的變量信息工作空間中的變量信息dirdir顯示當(dāng)前工作目錄的文件和子目錄清單顯示當(dāng)前工作目錄的文件和子目錄清單cdcd顯示或設(shè)置當(dāng)前工作目錄顯示或設(shè)置當(dāng)前工作目錄typetype顯示指定顯示指定m m文件的內(nèi)容文件的內(nèi)容helphelp或或docdoc獲取在線幫助獲取在線幫助quitquit或或exitexit關(guān)閉關(guān)閉/ /推出推出MATALBMATALB 2022-5-4Application of Matlab Langua

51、ge29 2.3 2.3 工作空間工作空間n查看工作空間內(nèi)存變量,可以由查看工作空間內(nèi)存變量,可以由whowho、whos whos 。n命名新變量。命名新變量。n修改變量名修改變量名n刪除變量刪除變量n繪圖繪圖n保存變量數(shù)據(jù)保存變量數(shù)據(jù)n裝入數(shù)據(jù)裝入數(shù)據(jù) 2022-5-4Application of Matlab Language30 2.4 2.4 歷史窗口歷史窗口n歷史窗口:歷史窗口:n首先首先記錄每次啟動(dòng)時(shí)間記錄每次啟動(dòng)時(shí)間n并并記錄在命令窗口輸入命令記錄在命令窗口輸入命令,此次運(yùn)行期間,此次運(yùn)行期間,輸入的所有命令被記錄為一組,并以此次啟動(dòng)時(shí)輸入的所有命令被記錄為一組,并以此次啟動(dòng)時(shí)

52、間為標(biāo)志。間為標(biāo)志。n使用歷史窗口:使用歷史窗口:n可以查看命令窗口輸入過(guò)的命令或語(yǔ)句可以查看命令窗口輸入過(guò)的命令或語(yǔ)句n可以選擇一條或多條命令執(zhí)行拷貝、執(zhí)行、創(chuàng)可以選擇一條或多條命令執(zhí)行拷貝、執(zhí)行、創(chuàng)建建MM文件等。文件等。 要清除歷史記錄,可以選擇要清除歷史記錄,可以選擇Edit菜單中的菜單中的Clear Command History 命令命令 2022-5-4Application of Matlab Language31 2.5 2.5 當(dāng)前目錄窗口和搜索路徑當(dāng)前目錄窗口和搜索路徑當(dāng)前目錄窗口:當(dāng)前目錄窗口:指指Matlab運(yùn)行時(shí)的工作目錄。運(yùn)行時(shí)的工作目錄。l只有在當(dāng)前目錄和搜索路

53、徑下的文件、函數(shù)才可以被只有在當(dāng)前目錄和搜索路徑下的文件、函數(shù)才可以被運(yùn)行和調(diào)用。運(yùn)行和調(diào)用。l如果沒(méi)有特殊指明,數(shù)據(jù)文件也將存放在當(dāng)前目錄下;如果沒(méi)有特殊指明,數(shù)據(jù)文件也將存放在當(dāng)前目錄下;l用戶可以將自己的工作目錄設(shè)置成當(dāng)前目錄,從而使用戶可以將自己的工作目錄設(shè)置成當(dāng)前目錄,從而使得所有操作都在當(dāng)前目錄中進(jìn)行。得所有操作都在當(dāng)前目錄中進(jìn)行。 2022-5-4Application of Matlab Language32 搜索路徑:搜索路徑:指指Matlab執(zhí)行過(guò)程中對(duì)變量、函數(shù)和文件執(zhí)行過(guò)程中對(duì)變量、函數(shù)和文件進(jìn)行搜索的路徑。進(jìn)行搜索的路徑。l在在File菜單中選擇菜單中選擇Set Pa

54、th命令或在命令窗口輸入命令或在命令窗口輸入pathtool命令,出現(xiàn)搜索路徑設(shè)置對(duì)話框:命令,出現(xiàn)搜索路徑設(shè)置對(duì)話框:!修改完搜索路徑后,!修改完搜索路徑后,需要進(jìn)行保存。需要進(jìn)行保存。 2022-5-4Application of Matlab Language33 2.6 獲取在線幫助獲取在線幫助nMATLAB提供的幫助信息有兩類提供的幫助信息有兩類n簡(jiǎn)單純文本幫助信息簡(jiǎn)單純文本幫助信息 help lookfor(條件比較寬松)(條件比較寬松)例:例:inversen窗口式綜合幫助信息(文字、公式、圖形)窗口式綜合幫助信息(文字、公式、圖形) doc helpwin 2022-5-4Ap

55、plication of Matlab Language34 【功能演示功能演示-1 -1】求方程求方程xxxx53223719130的全部根。的全部根。p = 2,0,-3,71,-9,13;建立多項(xiàng)式系數(shù)向量建立多項(xiàng)式系數(shù)向量x = roots(p);求根求根x = -3.4914 1.6863 + 2.6947i 1.6863 - 2.6947i 0.0594 + 0.4251i 0.0594 - 0.4251i 2022-5-4Application of Matlab Language35 【功能演示功能演示-2 -2】求解線性方程組求解線性方程組xyzxyzxyz 23282344

56、53923a = 2,3,-1;8,2,3;45,3,9;建立系數(shù)矩陣建立系數(shù)矩陣ab = 2;4;23;建立列向量建立列向量bx = inv(a)*bx = 0.5531 0.2051 -0.2784 2022-5-4Application of Matlab Language36 符號(hào)計(jì)算符號(hào)計(jì)算syms x y z 建立符號(hào)變量建立符號(hào)變量x,y,z=solve(2*x+3*y-z-2,8*x+2*y+3*z-4,45*x+3*y+9*z-23)x = 151/273 y = 8/39 z = -76/273 2022-5-4Application of Matlab Language3

57、7 【功能演示功能演示-3 -3】求解定積分求解定積分 求解求解 I=quad(x.*log(1+x),0,1)ans = 0.250或或syms xnt(x*log(1+x),0,1)ans = 1/4ln()xx dx 101 2022-5-4Application of Matlab Language38 【功能演示功能演示-4 -4】多項(xiàng)式曲線擬合多項(xiàng)式曲線擬合考慮如下考慮如下 x-y x-y 一組實(shí)驗(yàn)數(shù)據(jù):一組實(shí)驗(yàn)數(shù)據(jù):x=1, 2, 3, 4, 5, 6, 7, 8, 9, 10y=1.2, 3, 4, 4, 5, 4.7, 5, 5.2, 6, 7.2注:注:n一次多項(xiàng)式擬合:一

58、次多項(xiàng)式擬合:p1 = polyfit(x,y,1)n三次多項(xiàng)式擬合:三次多項(xiàng)式擬合:p3 = polyfit(x,y,3)nplot plot 原始數(shù)據(jù)、一次擬合曲線和三次擬合曲線原始數(shù)據(jù)、一次擬合曲線和三次擬合曲線x2=1:0.1:10;y1=polyval(p1,x2)y3=polyval(p3,x2)plot( x, y, *, x2, y1, :, x2, y3)321205(25)y xxxIn MAByTLA 2022-5-4Application of Matlab Language39 擬合曲線圖擬合曲線圖由圖可見(jiàn),三次擬合結(jié)果較好。由圖可見(jiàn),三次擬合結(jié)果較好。 2022-5

59、-4Application of Matlab Language40 2.3 數(shù)值表示、變量及表達(dá)式n數(shù)值的記述數(shù)值的記述 MatlabMatlab的數(shù)只采用習(xí)慣的十進(jìn)制表示,可以帶小數(shù)點(diǎn)的數(shù)只采用習(xí)慣的十進(jìn)制表示,可以帶小數(shù)點(diǎn)和負(fù)號(hào)和負(fù)號(hào); ;其缺省的數(shù)據(jù)類型為雙精度浮點(diǎn)型其缺省的數(shù)據(jù)類型為雙精度浮點(diǎn)型(doubledouble)。)。 例如:例如:3 -10 0.001 1.3e10 1.256e-63 -10 0.001 1.3e10 1.256e-6n變量命令規(guī)則變量命令規(guī)則l變量名、函數(shù)名對(duì)字母的大小寫是敏感的。如變量名、函數(shù)名對(duì)字母的大小寫是敏感的。如myVarmyVar與與myv

60、armyvar表示兩個(gè)不同的變量。表示兩個(gè)不同的變量。l變量名第一個(gè)字母必須是英文字母。變量名第一個(gè)字母必須是英文字母。l變量名可以包含英文字母、下劃線和數(shù)字。變量名可以包含英文字母、下劃線和數(shù)字。l變量名不能包含空格、標(biāo)點(diǎn)。變量名不能包含空格、標(biāo)點(diǎn)。l變量名最多可包含變量名最多可包含6363個(gè)字符(個(gè)字符(6.56.5及以后的版本)。及以后的版本)。 2022-5-4Application of Matlab Language41 2.3 2.3 數(shù)值表示、變量及表達(dá)式數(shù)值表示、變量及表達(dá)式 (續(xù))(續(xù))nMatlabMatlab預(yù)定義的變量預(yù)定義的變量變量名變量名意義意義ans最近的計(jì)算結(jié)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論