秋霞电影网午夜鲁丝片无码,真人h视频免费观看视频,囯产av无码片毛片一级,免费夜色私人影院在线观看,亚洲美女综合香蕉片,亚洲aⅴ天堂av在线电影猫咪,日韩三级片网址入口

《Matlab程序設(shè)計(jì)》PPT課件

上傳人:san****019 文檔編號(hào):20300476 上傳時(shí)間:2021-03-05 格式:PPT 頁(yè)數(shù):56 大?。?85.31KB
收藏 版權(quán)申訴 舉報(bào) 下載
《Matlab程序設(shè)計(jì)》PPT課件_第1頁(yè)
第1頁(yè) / 共56頁(yè)
《Matlab程序設(shè)計(jì)》PPT課件_第2頁(yè)
第2頁(yè) / 共56頁(yè)
《Matlab程序設(shè)計(jì)》PPT課件_第3頁(yè)
第3頁(yè) / 共56頁(yè)

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

14.9 積分

下載資源

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

資源描述:

《《Matlab程序設(shè)計(jì)》PPT課件》由會(huì)員分享,可在線閱讀,更多相關(guān)《《Matlab程序設(shè)計(jì)》PPT課件(56頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、第七節(jié) Matlab的程序設(shè)計(jì) Matlab語(yǔ)言稱(chēng)為第四 代編程語(yǔ)言,程序簡(jiǎn)潔、可 讀性很強(qiáng)而且調(diào)試十分容易 , 是 Matlab的重要組成部分。 m文件簡(jiǎn)介 用戶(hù)如想靈活應(yīng)用 Matlab去解決實(shí)際問(wèn)題, 充分調(diào)用 Matlab的科學(xué)技術(shù)資源,就需要編 輯 m文件。 包含 Matlab語(yǔ)言代碼的文件稱(chēng)為 m文件,其 擴(kuò)展名為 m。 編輯 m文件可使用各種文本編輯器。 一、 Matlab的工作模式 指令驅(qū)動(dòng)模式 通常 Matlab以指令驅(qū)動(dòng)模式工作,即在 Matlab 窗口下當(dāng)用戶(hù)輸入單行指令時(shí), Matlab 立即處理 這條指令,并顯示結(jié)果,這就是 Matlab命令行方 式。 命令行操作時(shí),

2、 Matlab窗口只允許一次執(zhí)行一 行上的一個(gè)或幾個(gè)語(yǔ)句。 例如: x1=0:10 x1 = 0 1 2 3 4 5 6 7 8 9 10 x2=0:3:11 x2 = 0 3 6 9 x3=11.5:-3:0 x3 = 11.5000 8.5000 5.5000 2.5000 x1=0:10,x2=0:3:11,x3=11.5:-3:0 x1 = 0 1 2 3 4 5 6 7 8 9 10 x2 = 0 3 6 9 x3 = 11.5000 8.5000 5.5000 2.5000 在 Matlab窗口輸入數(shù)據(jù)和命令進(jìn)行計(jì)算時(shí), 當(dāng)處理復(fù)雜問(wèn)題和大量數(shù)據(jù)時(shí)是不方便的。 因此應(yīng)編輯 m文件。

3、 命令行方式程序可讀性差,而且不能存儲(chǔ), 對(duì)于復(fù)雜的問(wèn)題,應(yīng)編寫(xiě)成能存儲(chǔ)的程序文 件。 m文件模式 將 Matlab語(yǔ)句構(gòu)成的程序存儲(chǔ)成以 m為擴(kuò)展名 的文件,然后再執(zhí)行該程序文件,這種工作 模式稱(chēng)為程序文件模式。 程序文件不能在指令窗口下建立,因?yàn)橹噶?窗口只允許一次執(zhí)行一行上的一個(gè)或幾個(gè)語(yǔ) 句。 二、 m文件的創(chuàng)建 m文件的類(lèi)型是普通的文本文件,我們可以 使用系統(tǒng)認(rèn)可的文本文件編輯器來(lái)建立 m文件。 具體的創(chuàng)建方法: 1. 在 Matlab命令窗 口點(diǎn)擊 file 菜單 new m-file 2. 點(diǎn)擊 file Save File As 將編輯器中的內(nèi)容存 入文件 *.m。 3. 編輯器

4、 用系統(tǒng)自帶的記事本或者 word可 以打開(kāi)編輯 m文件,也可以使用專(zhuān)業(yè)的編輯工 具,例如: UltraEdit。當(dāng)然更好的選擇是用 matlab自帶的編輯器編寫(xiě) m文件。 注意:所創(chuàng)建的 m文件必須納入 Matlab搜索路 徑后,才能在 Matlab命令窗口運(yùn)行。 Matlab搜索路徑的設(shè)置 1. path(path,c:toolsgoodstuff) 2.用 pathtool路徑瀏覽器設(shè)定當(dāng)前目錄。 可以在命令行輸入 pathtool, 也可以在 file set path中加入文件夾或文件。 三、 Matlab文件的類(lèi)型 1. 數(shù)據(jù)文件 .mat mat文件是 Matlab以標(biāo)準(zhǔn)二進(jìn)制格

5、式保存的 數(shù)據(jù)文件,可將工作空間中有用的數(shù)據(jù)變量 保存下來(lái)。 mat文件的生成和調(diào)用是由函數(shù) save和 load 完成的。 例如: load gatlin image(X) colormap(gray);axis equal;axis(off) 100 200 300 400 500 600 50 100 150 200 250 300 350 400 450 2. m文件 m文件的語(yǔ)法類(lèi)似于 c語(yǔ)言,但又有其自身特 點(diǎn),后綴為 m。它只是一個(gè)簡(jiǎn)單的 ASCII碼文 本文件,執(zhí)行程序時(shí)逐行解釋運(yùn)行程序, Matlab是解釋性的編程語(yǔ)言。 m文件有兩類(lèi): 獨(dú)立的 m文件 稱(chēng)命令文件 (腳本 s

6、cript) 可調(diào)用 m文件 稱(chēng)函數(shù)文件 (function) (1) 命令文件 簡(jiǎn)單的 m文件 命令文件實(shí)際上是一串指令的集合,與在命令 窗口逐行執(zhí)行文件中的所有指令,其結(jié)果是一 樣的。 命令文件的特點(diǎn): 命令文件沒(méi)有輸入輸出參數(shù)。 命令文件運(yùn)行中可以調(diào)用工作空間的數(shù)據(jù),運(yùn) 行中產(chǎn)生的所有變量為全局變量。 命令文件可以直接運(yùn)行。 命令文件包括兩部分:注釋文件和程序文件 %RANK Number of linearly independent rows or columns. % K = RANK(X) is the number of singular values of X % that

7、are larger than MAX(SIZE(X) * NORM(X) * EPS. % K = RANK(X,tol) is the number of singular values of X that % are larger than tol. % Copyright (c) 1984-94 by The MathWorks, Inc. s = svd(x); if (nargin = 1) tol = max(size(x) * max(s) * eps; end r = sum(s tol); 程序部分 如何有效加注釋 % 最常用的操作,但是效率慢。如果是對(duì)大段 的代碼進(jìn)行注釋

8、,可使用下面三種方法: 選中大段代碼 ,鼠標(biāo)右鍵 comment ,如果要取 消大段代碼的注釋?zhuān)瑯邮髽?biāo)右鍵 uncomment 快捷鍵:加注釋是選中代碼按 Ctrl+r,取消注釋 是選中代碼按 Ctrl+t。 if(0) 大段的代碼 end (2) Matlab內(nèi)置函數(shù)文件 Matlab自定義的函數(shù)文件稱(chēng)內(nèi)置函數(shù)文件 調(diào)用內(nèi)置函數(shù)的方法: 使用函數(shù)名并給出相 應(yīng)的入口、出口參數(shù)即可。 例如: sin.m函數(shù) 用 type sin查不到。 返回為: sin is a built-in function. 實(shí)際應(yīng)用中可以直接調(diào)用 x=0:2*pi/180:2*pi; y=sin(2*x) plo

9、t(x,y) 又如 sqrt(x) 求 x的平方根 abs(x) 求 x的絕對(duì)值 det(a) 求行列式的值 等等。 Matlab擁有大量的內(nèi)置數(shù)學(xué)函數(shù),供我們?cè)跀?shù) 值運(yùn)算和符號(hào)運(yùn)算中調(diào)用。 (3)函數(shù) m文件 需要輸入變量,返回輸出變量 Matlab用戶(hù)可以根據(jù)需要編輯自己的 m文件,它們可 以像庫(kù)函數(shù)一樣方便的調(diào)用,從而極大地?cái)U(kuò)展了 Matlab 的能力。 對(duì)于某一類(lèi)特殊問(wèn)題,如創(chuàng)建了許多 m函數(shù)文件, 則可形成新的工具箱。 這種用 Matlab語(yǔ)言創(chuàng)建定義新的 Matlab函數(shù)的功 能,正體現(xiàn)了 Matlab語(yǔ)言強(qiáng)大的擴(kuò)展功能。 函數(shù) m文件的格式: (1)函數(shù)定義行: function

10、 返回變量、參數(shù) =函數(shù)名 (輸入變量、參數(shù) ) (2) 函數(shù)說(shuō)明,就是函數(shù)注釋。 (3) 函數(shù)體:程序語(yǔ)句段,完成函數(shù)的功能。 特定規(guī)則: 1. 函數(shù) m文件第一行必須以單詞 function作為引 導(dǎo)詞,必須遵循如下形式: function 因變量 =函數(shù)名 (自變量 ) 2. m文件的文件名必須是 .m。 3. 程序中的變量均為局部變量,不保存在工作 空間中,也不能調(diào)用工作空間的數(shù)據(jù),其變 量只在函數(shù)運(yùn)行期間有效。 4. 不能直接運(yùn)行,只能調(diào)用。因?yàn)橄到y(tǒng)無(wú)法確 定輸入變量。 5. 只能在當(dāng)前目錄運(yùn)行。 (4) 系統(tǒng)文件 s函數(shù) 用于描述系統(tǒng)運(yùn)動(dòng)的專(zhuān)用函數(shù),是特殊的 m 文件。 s 函數(shù)有

11、 3類(lèi): 由 simulink結(jié)構(gòu)圖自動(dòng)創(chuàng)建 可用 c語(yǔ)言程序設(shè)計(jì) mex文件直 接定義 用函數(shù) m文件編寫(xiě) s函數(shù)一旦創(chuàng)建,即可在框圖中使用,也可在 文件中調(diào)用。 S函數(shù)的調(diào)用格式 sys, x0=sfunction( t, x, u, flag) S函數(shù)與函數(shù) m文件類(lèi)似,只是輸入、輸出 變量是限定的。 系統(tǒng)狀態(tài) 狀態(tài)初值 用戶(hù)定義的系統(tǒng) 當(dāng)前時(shí)刻 當(dāng)前狀態(tài)值 當(dāng)前輸入值 標(biāo)志量 matlab的函數(shù)類(lèi)型 simple 未加載的內(nèi)部函數(shù)、 m文件 overloaded 加載的內(nèi)部函數(shù)、 m文件 subfunction 子函數(shù) constructor matlab類(lèi)的創(chuàng)建函數(shù) private

12、局部函數(shù) Matlab自動(dòng)備份文件 Matlab的程序文件中除了后綴是 m, mat外,還 有 asv。它沒(méi)有任何作用,只是像 Word一樣備 份文件,可以刪除。 也可以設(shè)置不備份文件,方法是: 在 file/Preferences里面在“ Editor/Debugger”菜 單里面找到 Autosave,把勾選去掉。 四、 matlab的程序結(jié)構(gòu) matlab語(yǔ)言的程序結(jié)構(gòu)與其它高級(jí)語(yǔ)言是一致 的,分為順序結(jié)構(gòu),循環(huán)結(jié)構(gòu),分支結(jié)構(gòu)。 (1).順序結(jié)構(gòu) 依次順序執(zhí)行程序的各條語(yǔ)句 (2).循環(huán)結(jié)構(gòu) 被重復(fù)執(zhí)行的一組語(yǔ)句,循環(huán) 是計(jì)算機(jī)解決問(wèn)題的主要手段。 循環(huán)語(yǔ)句主要有: for end (硬

13、循環(huán)語(yǔ)句或無(wú)條件循環(huán) ) 語(yǔ)法為: for i = 表達(dá)式 (表達(dá)式為一個(gè)向量) 可執(zhí)行語(yǔ)句 end 例:利用 for循環(huán)求 1! +2! +3! + +5!的值 sum=0; for i=1:5 pdr=1; for k=1:i pdr=pdr*k; end sum=sum+pdr; end sum = 153 while end 循環(huán) (當(dāng) 就 ) while循環(huán)將循環(huán)體中的語(yǔ)句循環(huán)執(zhí)行不定 次數(shù)。 語(yǔ)法為: while 表達(dá)式 循環(huán)體語(yǔ)句 end 表達(dá)式一般是由邏輯運(yùn)算和關(guān)系運(yùn)算以及一 般運(yùn)算組成的,以判斷循環(huán)的進(jìn)行和停止; 只要表達(dá)式的值 非 0,繼續(xù)循環(huán);直到表達(dá)式 值為 0,循環(huán)停

14、止。 例:用 while循環(huán)求 1100間整數(shù)的和 sum=0; i=1; while i, ,=, = =, = 等 邏輯操作符 % 隨機(jī)生成 300 x300的矩陣 inv(a); %求逆矩陣 toc etime(t1,t2)來(lái)計(jì)算 t1,t2之間的時(shí)間差來(lái)完成計(jì)時(shí), 其中時(shí)差 t1-t2 。 例如: t0=clock a=rand(300); inv(a); elapsed_time=etime(clock,t0) %elapsed_time指流逝過(guò)的時(shí)間 同理可以使用 cputime來(lái)計(jì)時(shí) t=cputime; your_operation; cputime-t 七、程序代碼優(yōu)化 1.

15、盡量不要使用循環(huán),而使用矩陣結(jié)構(gòu)來(lái)進(jìn)行運(yùn)算。 例: t0=cputime n=100000; sum=0; for i=1:n sum=sum+1/i end sum t1=cputime-t0 而如果使用向量、矩陣和系統(tǒng)內(nèi)部函數(shù) tic n=100000; a=1:n; total=cumsum(1./a) toc %cumsum函數(shù)實(shí)現(xiàn)累計(jì)求和 八、文件操作 matlab文件輸入、輸出( I/O)函數(shù)允許把其它 格式的數(shù)據(jù)文件直接讀進(jìn) matlab,它是以 c 語(yǔ)言文件 I/O函數(shù)為基礎(chǔ)的。 文件數(shù)據(jù)格式有兩種形式,一是二進(jìn)制文件, 二是文本文件。在打開(kāi)文件時(shí)需要進(jìn)一步指 定文件格式類(lèi)型,

16、即指定是二進(jìn)制文件還是 文本文件。 1. 打開(kāi)和關(guān)閉文件( fopen, fclose) 格式: fid=fopen(數(shù)據(jù)文件名 , 打開(kāi)方式 ) r 表示對(duì)打開(kāi)的文件 讀 數(shù)據(jù) w 表示對(duì)打開(kāi)的文件 寫(xiě) 數(shù)據(jù) a 表示在打開(kāi)的文件末尾 添加 數(shù)據(jù) fid用于存儲(chǔ)文件句柄值,句柄值用來(lái)標(biāo)識(shí)該 數(shù)據(jù)文件,其他函數(shù)可以利用它對(duì)該數(shù)據(jù) 文件進(jìn)行操作。 文件一旦打開(kāi),即可進(jìn)行讀寫(xiě)操作,操作完 后 應(yīng)及時(shí)關(guān)閉,使用 fclose函數(shù) 。 sta=fclose(fid) 關(guān)閉上述打開(kāi)文件 該函數(shù)關(guān)閉 fid所表示的文件。 sta表示關(guān) 閉文件操作的返回代碼,若關(guān)閉成功,返回 0, 否則返回 1。 sta=

17、fclose(all) 關(guān)閉所有打開(kāi)的文件 2. 讀寫(xiě)二進(jìn)制數(shù)據(jù)文件 fread, fwrite 可讀寫(xiě)數(shù)據(jù)文件,文本文件。 例: fid=fopen(user.dat,r) a=fread(fid,50) sta=fclose(fid) 其中 fread的調(diào)用格式為: A,COUNT=fread(fid, size, precision) 其中 A用于存放讀取的數(shù)據(jù), COUNT返回所讀取的數(shù) 據(jù)元素個(gè)數(shù), fid為文件句柄, size為可選項(xiàng),若不 選用則讀取整個(gè)文件內(nèi)容,若選用則它的值可以是 下列值: (1) N表示讀取 N個(gè)元素到一個(gè)列向量。 (2) Inf表示讀取整個(gè)文件。 (3)

18、M,N表示讀數(shù)據(jù)到 M N的矩陣中,數(shù)據(jù)按列 存放。 precision代表讀寫(xiě)數(shù)據(jù)的類(lèi)型 2寫(xiě)二進(jìn)制文件 fwrite 函數(shù)按照指定的數(shù)據(jù)類(lèi)型將矩陣中的元素寫(xiě) 入到文件中。其調(diào)用格式為: COUNT=fwrite (fid, A, precision) 其中 COUNT返回所寫(xiě)的數(shù)據(jù)元素個(gè)數(shù), fid為文件 句柄, A用來(lái)存放寫(xiě)入文件的數(shù)據(jù), precision用于控 制所寫(xiě)數(shù)據(jù)的類(lèi)型,其形式與 fread函數(shù)相同。 例: 建立一數(shù)據(jù)文件 magic5.dat,用于存放 5 階魔方陣。 程序如下: fid=fopen(magic5.dat,w); cnt=fwrite(fid,magic(5

19、),int32); fclose(fid); 也可以直接導(dǎo)入數(shù)據(jù) txt文件 file/import data./next/finish 例如: work目錄下建立一個(gè) hello.txt,復(fù)制如下數(shù)據(jù): 你好 歡迎來(lái)到 太原理工大學(xué) 請(qǐng)?jiān)L問(wèn)如下網(wǎng)址: 1 11 111 1111 2 22 222 2222 3 33 333 3333 4 44 444 4444 5 55 555 5555 九、應(yīng)用程序接口 應(yīng)用程序接口 是 matlab的附加組件。是一個(gè) 由相關(guān)函數(shù)組成的接口函數(shù)庫(kù),可實(shí)現(xiàn)與外部程 序的交互。 MEX文件:是 matlab環(huán)境下調(diào)用 C、 FORTRAN 語(yǔ)言編寫(xiě)的應(yīng)用程序

20、模塊。 matlab 計(jì)算引擎:在使用 C、 FORTRAN編程時(shí) 可調(diào)用 matlab函數(shù)庫(kù)進(jìn)行計(jì)算。 MAT文件:實(shí)現(xiàn) matlab與 C、 FORTRAN語(yǔ)言程序間的 數(shù)據(jù)交換 十、 matlab編譯 matlab編譯的原因: 1. 提高運(yùn)算速度 2. 隱藏特定算法 3. 可產(chǎn)生獨(dú)立的 m文件 matlab編譯函數(shù): mcc MCC -options fun fun2 . mexfile1 . mlibfile1 . 如何關(guān)掉 matlabserver.exe 有時(shí)候,用戶(hù)為了節(jié)省計(jì)算機(jī)內(nèi)存,或者是提高啟 動(dòng)速度,會(huì)禁止 matlab server服務(wù)。 在控制面板 -管理工具 -服務(wù)

21、中 matlab server 的服務(wù)改 為禁用,手動(dòng)啟動(dòng), matlabserver.exe就不運(yùn)行了。 或者這樣操作 (這是卸載 MATLAB Server) : 打開(kāi)一個(gè) dos窗口 cd /webserver/bin/win32 matlabserver -remove 注: 指的是安裝目錄 小 結(jié) 本節(jié)主要介紹了 matlab語(yǔ)言程序設(shè) 計(jì)基礎(chǔ)。相對(duì)來(lái)說(shuō), matlab 編程簡(jiǎn) 單,容易掌握。 通過(guò)學(xué)習(xí),要求同學(xué)們 應(yīng)能編寫(xiě)簡(jiǎn) 單程序。 結(jié) 束 語(yǔ) 本課程基于 matlab語(yǔ)言基礎(chǔ),想繼續(xù) 深入學(xué)習(xí),要多看其他文獻(xiàn),相互討 論,并能多上手練習(xí)。 希望大家今后都能成為 matlab高手。

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