《matlab課程設(shè)計(jì)》報(bào)告MATLAB的基本運(yùn)算與繪圖
《《matlab課程設(shè)計(jì)》報(bào)告MATLAB的基本運(yùn)算與繪圖》由會(huì)員分享,可在線閱讀,更多相關(guān)《《matlab課程設(shè)計(jì)》報(bào)告MATLAB的基本運(yùn)算與繪圖(45頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、武漢理工大學(xué)《matlab課程設(shè)計(jì)》報(bào)告 課程設(shè)計(jì)任務(wù)書(shū) 學(xué)生姓名: 專業(yè)班級(jí): 通信0903班 指導(dǎo)教師: 江雪梅 工作單位: 信息工程學(xué)院 題 目: MATLAB的基本運(yùn)算與繪圖 初始條件: 1. Matlab實(shí)驗(yàn)軟件 2. 實(shí)驗(yàn)程序 要求完成的主要任務(wù): 1. 采用MATLAB選用適當(dāng)?shù)暮瘮?shù)或矩陣進(jìn)行如下計(jì)算 (1) 極限的計(jì)算、微分的計(jì)算、積分的計(jì)算、級(jí)數(shù)的計(jì)算、求解代數(shù)方程、求解常微分方程;
2、(2) 矩陣的最大值、最小值、均值、方差、轉(zhuǎn)置、逆、行列式、特征值的計(jì)算、矩陣的相乘、右除、左除、冪運(yùn)算; (3) 多項(xiàng)式加減乘除運(yùn)算、多項(xiàng)式求導(dǎo)、求根和求值運(yùn)算、多項(xiàng)式的部分分式展開(kāi)、多項(xiàng)式的擬合、插值運(yùn)算。 2. MATLAB的繪圖 (1) 繪制四個(gè)不同的一維函數(shù)y=f(x)。把四個(gè)函數(shù)用不同曲線、不同標(biāo)識(shí)符顯示在同一幅圖中;用同一種曲線、同一種標(biāo)識(shí)符把四個(gè)函數(shù)顯示在同一界面的不同窗口;要求顯示網(wǎng)格、有圖形標(biāo)題、有坐標(biāo)軸標(biāo)志、有圖形標(biāo)注函數(shù)。 (2) 選擇合適的二維函數(shù)z= f(x,y)分別繪制其空間曲線圖、三維網(wǎng)線圖和三維曲面圖 (3) 選擇一幅圖像,畫(huà)出圖像的頻譜圖。 (4
3、) 對(duì)圖像加入噪聲,再畫(huà)出圖像的頻譜圖。 時(shí)間安排: 1.第15周排任務(wù),分組 2.16—17周設(shè)計(jì)仿真,撰寫(xiě)報(bào)告 3.第18周完成設(shè)計(jì),提交報(bào)告,答辯 指導(dǎo)教師簽名: 年 月 日 系主任(或責(zé)任教師)簽名: 年 月 日 摘要 MATLAB既是一種直觀、高效的計(jì)算機(jī)語(yǔ)言,同時(shí)又是一個(gè)科學(xué)計(jì)算平臺(tái)。它為數(shù)據(jù)分析和數(shù)據(jù)可視化、算法和應(yīng)用程序開(kāi)發(fā)提供了最核心的數(shù)學(xué)和高級(jí)圖形工具。根據(jù)
4、它提供的500多個(gè)數(shù)學(xué)和工程函數(shù),工程技術(shù)人員和科學(xué)工作者可以在它的集成環(huán)境中交互或編程以完成各自的計(jì)算。作為一個(gè)功能強(qiáng)大的工具軟件,MATLAB具有很強(qiáng)的圖形處理功能,提供了大量的二維、三維圖形函數(shù)。由于系統(tǒng)采用面向?qū)ο蟮募夹g(shù)和豐富的矩陣運(yùn)算,所以在圖形處理方面即常方便又高效。 本文基于MATLAB的基本運(yùn)算和繪圖,利用各種具體實(shí)例對(duì)相應(yīng)的函數(shù)的功能進(jìn)行驗(yàn)證,并對(duì)其調(diào)用方法進(jìn)行說(shuō)明演示,加深對(duì)MATLAB語(yǔ)言的熟悉程度,為今后使用MATLAB軟件奠定基礎(chǔ)。 關(guān)鍵詞:MATLAB,繪圖 Abstract MATLAB is both an int
5、uitive and efficient computer language, but it is also a scientific computing platforms. It for data analysis and data visualization, algorithm and application development provides the most core of math and advanced graphical tool. According to provide it with the more than 500 math and engineering
6、function, engineering and technical personnel and scientific workers may in its integration environment interactive or programming to complete their calculations. As a powerful tool software Matlab strong graphics functions, provided a lot of 2d and 3d graphics functions. Due to the system USES obje
7、ct-oriented technology and rich matrix, so in graphics processing aspect is often convenient and efficiently. Based on the basic operations and MATLAB graphics, using a variety of specific examples of the functions of the corresponding functions for authentication, and invoke the method described d
8、emonstration, deepen familiarity with MATLAB language, to lay the foundation for the future use of MATLAB software Key word:MATLAB Drawing 3 武漢理工大學(xué)《matlab課程設(shè)計(jì)》報(bào)告 目錄 摘要 III Abstract IV 1. MATLAB基本介紹 1 2.MATLAB的基本運(yùn)算 1 2.1微積分計(jì)算 1 2.1.1計(jì)算極限 1 2.1.
9、2 微分的計(jì)算 2 2.1.3 積分的計(jì)算 3 2.1.4 級(jí)數(shù)的計(jì)算 3 2.1.5 求解代數(shù)方程 4 2.1.6 求解常微分方程 4 2.2 矩陣的基本計(jì)算 5 2.2.1 矩陣的最大值、最小值 6 2.2.2 矩陣的均值、方差 7 2.2.3 矩陣的轉(zhuǎn)置 8 2.2.4 矩陣的逆、行列式 9 2.2.5 矩陣特征值的計(jì)算 10 2.2.6 矩陣的相乘 11 2.2.7 矩陣右除和左除 11 2.2.8 矩陣的冪運(yùn)算 12 2.3 多項(xiàng)式的基本運(yùn)算 13 2.3.1 多項(xiàng)式的四則運(yùn)算 14 2.3.2 多項(xiàng)式的求導(dǎo)、求根、求值 15 2.3.3 多項(xiàng)式的部
10、分分式展開(kāi) 16 2.3.4 多項(xiàng)式的擬合 17 2.3.5 多項(xiàng)式插值運(yùn)算 18 3.二維繪圖 20 3.1二維繪圖基礎(chǔ)指令 20 3.1.1 plot函數(shù) 20 3.1.3圖形的標(biāo)注 20 3.1.4圖形對(duì)比函數(shù) 21 3.2繪制四條不同曲線 21 2.2.1文件代碼 21 3.2.2生成結(jié)果 22 3.3同界面不同窗口曲線 22 3.3.1文件代碼 23 3.3.2生成結(jié)果 23 4.三維繪圖 24 4.1基本函數(shù)介紹 24 4.1.1 meshgrid函數(shù) 24 4.1.2 plot函數(shù) 24 4.1.3 mesh與surf函數(shù) 25 4.2
11、空間曲線圖 25 4.2.2生成結(jié)果 25 4.3三維網(wǎng)線圖 26 4.3.1三維網(wǎng)線圖文件代碼 26 4.3.2 生成結(jié)果 27 4.4三維曲面圖 27 4.4.1文件代碼 27 4.4.2生成結(jié)果 28 5. 圖像的頻譜圖 28 5.1 基本函數(shù)介紹 28 5.2圖像頻譜圖 29 5.2.1 程序代碼 29 5.2.2生成結(jié)果 29 5.3加噪圖像頻譜分析 30 5.3.1 模擬噪聲函數(shù) 30 5.3.2程序代碼 30 5.2.3生成結(jié)果 31 6. 總結(jié) 31 7.參考文獻(xiàn) 32 3 1. MATLAB
12、基本介紹 MATLAB是矩陣實(shí)驗(yàn)室(Matrix Laboratory)的簡(jiǎn)稱,是美國(guó)MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,用于算法開(kāi)發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計(jì)算的高級(jí)技術(shù)計(jì)算語(yǔ)言和交互式環(huán)境,主要包括MATLAB和Simulink兩大部分。 MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式十分相似,故用MATLAB來(lái)解算問(wèn)題要比用C,F(xiàn)ORTRAN等語(yǔ)言完成相同的事情簡(jiǎn)捷得多,并且mathwork也吸收了像Maple等軟件的優(yōu)點(diǎn),使MATLAB成為一個(gè)強(qiáng)大的數(shù)學(xué)軟件。在新的版本中也加入了對(duì)C,F(xiàn)ORTRAN,C++ ,JAVA的支持??梢灾苯诱{(diào)用,用
13、戶也可以將自己編寫(xiě)的實(shí)用程序?qū)氲組ATLAB函數(shù)庫(kù)中方便自己以后調(diào)用,此外許多的MATLAB愛(ài)好者都編寫(xiě)了一些經(jīng)典的程序,用戶可以直接進(jìn)行下載就可以用。 2.MATLAB的基本運(yùn)算 2.1微積分計(jì)算 微積分的計(jì)算可以說(shuō)是數(shù)學(xué)的基礎(chǔ),關(guān)于基礎(chǔ)的微機(jī)分計(jì)算主要有求函數(shù)的極限,微分運(yùn)算,積分運(yùn)算,級(jí)數(shù)的計(jì)算,代數(shù)的求解,以及常微分方程的求解,下面分別介紹。 2.1.1計(jì)算極限 MATLAB中極限函數(shù)limit格式如下: limit(F,x,a) ;limit(F,a);limit(F);limit(F,x,a,right);limit(F,x,a,left) 其中F表示的是函數(shù)式
14、,x表示求極限的變量,a表示的是變量取的值,left或right表示是取左極限還是右極限。 例:求 分析:這是一個(gè)典型的求極限的題目,題目中涉及了兩個(gè)變量,故在程序開(kāi)始應(yīng)該先定義兩個(gè)變量,然后直接利用函數(shù)limit編程計(jì)算。 示例程序如下: >> syms x y; >> y=limit(sin(x)/x,x,0) 運(yùn)行結(jié)果如下: 2.1.2 微分的計(jì)算 MATLAB中微分函數(shù)diff格式如下: Y = diff(X);Y = diff(X,n); 其中X表示待微分的變量,n表示n次微分,n=1時(shí)n可以省略 例:求的微分; 分析:微分運(yùn)算能直觀的顯示函數(shù)
15、值的變化快慢,在平時(shí)計(jì)算中常常反映變量的變化對(duì)函數(shù)值的影響大小這是一個(gè)簡(jiǎn)單的一階微分式子,可以直接寫(xiě)定義變量然后求結(jié)果。 示例程序如下: syms x y dy; y= sin(3x); dy=diff(y) 運(yùn)行結(jié)果如下: 2.1.3 積分的計(jì)算 MATLAB中積分常用函數(shù)為int,格式如下: int(f,x,a,b) 其中f表示待積分的函數(shù),x表示積分變量,而a,b則分別表示積分起始終止點(diǎn)。 例:求下列變上限積分 分析:積分運(yùn)算大量運(yùn)用于求面積體積等,此處選用的是一個(gè)變上限積分,屬于有些典型的積分例子,但任然是根據(jù)函數(shù)格式就可以寫(xiě)出程序。 示例程序如下:
16、 syms y x; y=x^2-2; f=int(y,x,2,5) 運(yùn)行結(jié)果如下: 2.1.4 級(jí)數(shù)的計(jì)算 MATLAB中級(jí)數(shù)常用函數(shù)為symsum,格式如下: r = symsum(s);r = symsum(s,v);r = symsum(s,a,b);r = symsum(s,v,a,b) 函數(shù)表達(dá)的意義是表達(dá)式s關(guān)于變量v從a到b求和。 例: 計(jì)算級(jí)數(shù) 的值, 示例程序如下: syms n; t=symsum(1/n,1,6) 運(yùn)行結(jié)果如下: 2.1.5 求解代數(shù)方程 多項(xiàng)式方程的根的求解可調(diào)用MATLAB符號(hào)工具箱中的solve( )
17、函數(shù), MATLAB中求解代數(shù)方程常用函數(shù)solve格式如下: [x,…]=solve(eqn1,eqn2,…,eqnn,’x,…’) 其中eqn表示的是式子,x等表示的是變量。 例:求解方程2x+8=11 示例程序如下: syms x; [x]=solve(2*x+8=11,x) 運(yùn)行結(jié)果如下: 2.1.6 求解常微分方程 未知的函數(shù)以及它的某些階的導(dǎo)數(shù)連同自變量都由一已知方程聯(lián)系在一起的方程稱為微分方程。MATLAB中主要用dsolve求符號(hào)解析解。 dsolve的基本格式是: s=dsolve(‘方程1’, ‘方程2’,…,’初始條件1’,’初始條件2’ …
18、,’自變量’) 例:求解微分方程 求解析解。 示例程序如下: syms y t s=dsolve(dy=-2*y+t+1,y(0)=2,t); simplify(s) 運(yùn)行結(jié)果如下: 2.2 矩陣的基本計(jì)算 矩陣計(jì)算是線性代數(shù)中的核心內(nèi)容,其對(duì)于整個(gè)數(shù)學(xué)系統(tǒng)的計(jì)算方面的意義是十分巨大的,集中它的基本運(yùn)算包括最大值、最小值、均值、方差、轉(zhuǎn)置、逆、行列式、特征值的計(jì)算、矩陣的相乘、右除、左除、冪運(yùn)算等等,下面將具體介紹。 矩陣的運(yùn)算都是要以矩陣為基礎(chǔ)的,本報(bào)告中決定選用一組矩陣來(lái)完成幾乎全部可以完成的計(jì)算,那么首先就得生成矩陣了。 矩陣的定義和分配可以 有多種方法。最簡(jiǎn)
19、單的方法是有方括號(hào)[]包圍的逐行給定元素。若定義一個(gè)標(biāo)量,則方括號(hào)就不需要了。 相同行中的元素是由一行或多個(gè)空格‘’或一個(gè)逗號(hào)‘, ’分隔,列由分號(hào)‘; ’或回車(chē)鍵分隔。沒(méi)有結(jié)尾分號(hào)的每個(gè)命令在屏幕上顯示出其結(jié)果。若結(jié)尾帶分號(hào),就執(zhí)行計(jì)算,但計(jì)算結(jié)果并不顯示。 如定義33矩陣如下: 則在命令窗口輸入: A=[2,1,4;6,3,7;8,5,9] 屏幕顯示結(jié)果為: 2.2.1 矩陣的最大值、最小值 MATLAB中max函數(shù)可以表示求每一列的最大值,那么經(jīng)過(guò)分析可以知道,先求出每一列的最大值然后求出這些最大值里面的最大值,下面以A矩陣為例。 示例程序如下:
20、y=max(A) x=max(y) 運(yùn)行結(jié)果如下: 對(duì)比A中數(shù)值發(fā)現(xiàn)結(jié)果是正確的。 MATLAB中求最小值的函數(shù)為min,求解思路與求最大值思路類(lèi)似,仍然以矩陣A為例。 示例程序如下: y=min(A) x=min(y) 運(yùn)行結(jié)果如下: 對(duì)比A中數(shù)值發(fā)現(xiàn)結(jié)果是正確的。 2.2.2 矩陣的均值、方差 MATLAB中求解矩陣均值的函數(shù)是mean,它的具體用法如下: mean(A,1)表示對(duì)列取平均,mean(A,2)表示對(duì)行取平均,mean(A)則默認(rèn)為mean(A,1)。 下面以矩陣A分別舉例,程序示例如下: a=mean(A) b=
21、mean(A,2) 運(yùn)行結(jié)果如下: 觀察可知,a,b分別顯示出了矩陣行列的均值。如果想求矩陣的均值可以進(jìn)行2次操作。 示例程序如下: c=mean(a) 運(yùn)行結(jié)果如下: 可以觀察到c的值就是矩陣A所有值的均值。 MATLAB中求解矩陣方差的函數(shù)是var,它的常用格式是V = var(X),如果X是一個(gè)矩陣,var(X)返回一個(gè)包含矩陣X每一列方差的行向量。 下面還是以矩陣A來(lái)示例,程序如下: d=var(var(A)) 運(yùn)行結(jié)果如下: 2.2.3 矩陣的轉(zhuǎn)置 矩陣的一個(gè)重要的運(yùn)算是轉(zhuǎn)置,如果A是一個(gè)實(shí)數(shù)矩陣,那么它被轉(zhuǎn)置時(shí),第1行變成第1列,
22、第2行變成第2列,依此類(lèi)推,一個(gè)mn矩陣變?yōu)橐粋€(gè)nm矩陣。如果矩陣是方陣,那么這個(gè)矩陣在主對(duì)角線反映出來(lái)。 MATLAB中求轉(zhuǎn)置的函數(shù)是“’”,以A為例,編程如下: e=A’ 運(yùn)行結(jié)果如下: 轉(zhuǎn)置矩陣e 2.2.4 矩陣的逆、行列式 實(shí)際中求矩陣的逆跟行列式均要求矩陣是方陣,MATLAB中求逆的函數(shù)是inv,格式為Y = inv(X), 求矩陣的函數(shù)是det,格式為Y = det(X)。 下面仍以矩陣A 為例來(lái)編程示例,如下: f=inv(A) 運(yùn)行結(jié)果如下: 編程如下: c=det(A) 運(yùn)行結(jié)果: 2.2.5 矩陣特征值的計(jì)算 矩陣的特征值
23、的求解,就是找到方程組的解: 其中λ是一個(gè)標(biāo)量,x是一個(gè)長(zhǎng)度為n的列向量。標(biāo)量λ是A的特征值,x是相對(duì)應(yīng)的特征向量。對(duì)于實(shí)數(shù)矩陣A來(lái)說(shuō),特征值和特征向量可能是復(fù)數(shù)。一個(gè) nn的矩陣有n個(gè)特征值,表示為。 求矩陣的特征值和特征向量可用eig函數(shù)。Eig(A)求包含矩陣A的特征值的向量。 [V,D] =eig(A)產(chǎn)生一個(gè)矩陣A的特征值在對(duì)角線上的對(duì)角矩陣D和矩陣 V,它的列是相應(yīng)的特征向量,滿足AV=VD,下面以矩陣A為例來(lái)演示。 編程如下: [V,D] =eig(A) 運(yùn)行結(jié)果如下 2.2.6 矩陣的相乘 假定有兩個(gè)矩陣A和B,若A為mn矩陣,B為np矩
24、陣,則C=AB為mp矩陣。元素是A的第i行和B的第j列的點(diǎn)積。對(duì)于方陣,也定義了積B A,但其結(jié)果通常與A B不同。 MATLAB中求矩陣的乘積直接用符號(hào)*即可,下面以A、B矩陣為例來(lái)分別演示AB與BA區(qū)別。 示例程序如下: >> A=[2,1,4;6,3,7;8,5,9];B=[1,2,3;4,5,6;7,8,9]; >> c=A*B; d=B*A 運(yùn)行結(jié)果如下: 對(duì)比可以知道,AB與BA的結(jié)果是有區(qū)別的。 2.2.7 矩陣右除和左除 在MATLAB中,有兩個(gè)矩陣除法的符號(hào),左除“ \”和右除“/”。如果A是一個(gè)非奇異方陣,那么A \ B和B / A對(duì)應(yīng)A的逆與B
25、的左乘和右乘,即分別等價(jià)于命令 inv(A)*B和B*inv(A)??墒?,MATLAB執(zhí)行它們時(shí)是不同的,且在MATLAB中求解一個(gè)系統(tǒng)用左除比用逆和乘法所需的運(yùn)算次數(shù)要少。 令R=B/A, L=A\B , 下面仍然以A、B為例來(lái)演示。 示例程序如下: R=B/A L=A\B 運(yùn)行結(jié)果如下: 2.2.8 矩陣的冪運(yùn)算 對(duì)于二維方陣,A的p次乘方可以用A^p實(shí)現(xiàn)。如果p是一個(gè)正整數(shù),那么這個(gè)冪可以由許多矩陣乘法運(yùn)算定義。對(duì)于 p= 0,得到與A維數(shù)相同的同一個(gè)矩陣;當(dāng) p< 0時(shí),如果A- 1存在,可定義A ^p,它是與inv(A)^(-p)相同。 A0=A^3,A1=
26、A.^3,A2=A^-3 Ap0為3個(gè)A矩陣相乘,Ap1中的元素為A矩陣中相應(yīng)元素的立方,矩陣Ap2為矩陣A的逆矩陣的乘積,A3為A0的逆矩陣。 以矩陣A為例,分別編程實(shí)例如下: A0=A^3 %3個(gè)A矩陣相乘 A1=A.^3 % A矩陣中相應(yīng)元素的立方 A2=A^-3 %A的逆矩陣的乘積 A3=A0^-1 % A0的逆矩陣 運(yùn)行結(jié)果如下: 對(duì)比可以知道A0與A1顯示了矩陣運(yùn)算與元素運(yùn)算的區(qū)別,A2跟A3是相同的,說(shuō)明先逆后立方與先立方后逆效果一樣。 2.3 多項(xiàng)式的基本運(yùn)算 多項(xiàng)式的運(yùn)算,主要包括多項(xiàng)式加減乘除、多項(xiàng)式求導(dǎo)、求根和求
27、值運(yùn)算、多項(xiàng)式的部分分式展開(kāi)、多項(xiàng)式的擬合、插值運(yùn)算。為方面計(jì)算,我選用兩個(gè)典型的式子f(x)=4x^3+x^2+2x+6,g(x)=7x^2+4x+7.下文分別以f和g來(lái)代替它們。 2.3.1 多項(xiàng)式的四則運(yùn)算 多項(xiàng)式的四則運(yùn)算就是包括加減乘除,其中加減運(yùn)算可以直接用+、-來(lái)運(yùn)算,它們的運(yùn)算規(guī)則中注意要滿足向量的長(zhǎng)度相同,而乘除就得用函數(shù)了,其中乘法的計(jì)算函數(shù)是conv,除法運(yùn)算是相乘的逆運(yùn)算,但會(huì)有余子式。 示例編程如下: f=[4,1,2,6]; g=[7,4,7]; a=f+[0,g] %因?yàn)閮蓚€(gè)向量長(zhǎng)度不同,而加運(yùn)算要求長(zhǎng)度相同,所以要補(bǔ)0 b=f-[0,g] %減
28、法運(yùn)算 c=conv(f,g)%乘法運(yùn)算 [d,r]=deconv(c,f)%除法運(yùn)算,因?yàn)檫€有余子式,所以選用相乘的結(jié)果除,使得結(jié)果干凈 運(yùn)行結(jié)果如下: 2.3.2 多項(xiàng)式的求導(dǎo)、求根、求值 多項(xiàng)式的求導(dǎo)、求根、求值運(yùn)算是多項(xiàng)式運(yùn)算的又一大板塊,其中多項(xiàng)式求導(dǎo)數(shù)的函數(shù)是polyder,調(diào)用格式是e=polyder(c),其中c表示的是待求導(dǎo)的函數(shù)式,然后求根運(yùn)算的函數(shù)是roots或poly,其中roots是根據(jù)函數(shù)求多項(xiàng)式的根,它的調(diào)用格式是h=roots(c),c代表待求根的函數(shù)式,而poly函數(shù)是根據(jù)根求函數(shù),格式是i=poly(h),表示根據(jù)h求函數(shù)i,然后求值運(yùn)算的
29、函數(shù)是polyval,將多項(xiàng)式的自變量賦予值z(mì),則調(diào)用格式是j=polyval(f,z),表示當(dāng)變量是1時(shí),函數(shù)f的結(jié)果。下面編程演示。 示例編程如下: e=polyder(c)%求函數(shù)c的導(dǎo)數(shù) h=roots(c)%求函數(shù)c的根 i=poly(h)%根據(jù)所求的根求函數(shù) j=polyval(c,1)%當(dāng)變量值為1時(shí),函數(shù)c的值 運(yùn)行結(jié)果如下: 2.3.3 多項(xiàng)式的部分分式展開(kāi) 函數(shù)residue可以將多項(xiàng)式之比用部分分式展開(kāi),也可以將一個(gè)部分分式表示為多項(xiàng)式之比。其調(diào)用格式如下: [r,p,k]=residue(a,b)返回多項(xiàng)式之比a/b的部分分式展開(kāi),參照下面公式
30、。 [a,b]=residue(r,p,k)返回部分分式的多項(xiàng)式向量。 示例程序如下: a=[2 3 -4 1]; b=[1 -3 2]; [r,p,k]=residue(a,b)%返回多項(xiàng)式之比a/b的部分分式展開(kāi) [c,d]=residue(r,p,k)%f返回部分分式的多項(xiàng)式向量 運(yùn)行結(jié)果如下: 2.3.4 多項(xiàng)式的擬合 多項(xiàng)式擬合用polyfit(x,y,n)來(lái)實(shí)現(xiàn),n是擬合多項(xiàng)式的階次。調(diào)用函數(shù)polyfit常用格式為p = polyfit(x,y,n),x為變量,y為函數(shù),n為階數(shù)。為了能形象說(shuō)明問(wèn)題,我采用繪圖來(lái)演示。 示例程序如下: x=linspac
31、e(0,2*pi,200);%定義向量,從0到2π分為200份 y=sin(x);%定義函數(shù) t=polyfit(x,y,16);%8次擬合 y1=polyval(t,x);%根據(jù)擬合的結(jié)果求多項(xiàng)式的值 subplot(2,1,1), plot(x,y,go,x,y1,b--)%作圖 s=polyfit(x,y,4);%4次擬合 y2=polyval(s,x);%根據(jù)擬合的結(jié)果求多項(xiàng)式的值 subplot(2,1,2),plot(x,y,go,x,y2,b--)%作圖運(yùn)行結(jié)果如下: 對(duì)比可以知道高次擬合的效果要好一些。 2.3.5 多項(xiàng)式插值運(yùn)算 插值函數(shù)
32、通常是分段的,,插值數(shù)據(jù)通過(guò)給定的數(shù)據(jù)點(diǎn)x,y。插值函數(shù)一般地可表示為yi=interpi(x,y,xi,’method’)其中i代表幾維插值可取1、2,xi為插值范圍內(nèi)的任意點(diǎn)集的x坐標(biāo),yi是插值后對(duì)應(yīng)數(shù)據(jù)點(diǎn)集的坐標(biāo),method為插值函數(shù)的類(lèi)型選項(xiàng),有l(wèi)inear為線性,也是缺省項(xiàng),cubic和cubic spline為三次樣條等三樣。 例: 假設(shè)有一組分度系數(shù)的“海底深度測(cè)量數(shù)據(jù)”,由以下一段程序生成: randn(state,2); x=-5:5;y=-5:5;[X,Y]=meshgrid(x,y); Z=-500+1.2*exp(-((X-1).^2+(Y-2).^
33、2))-0.7*exp(-(exp(X+2).^2+(Y+1).^2)); surf(X,Y,Z),view(-25,25) 試由插值方式繪制海底形狀圖。 示例程序如下: xi=linspace(-5,5,50); yi=linspace(-5,5,50); [XI,YI]=meshgrid(xi,yi); ZI=interp2(X,Y,Z,XI,YI,*cubic); surf(XI,YI,ZI) view(-25,25) 運(yùn)行結(jié)果如下: 三維圖像顯示出了所求各點(diǎn)的分布狀況。 3.二維繪圖 3.1二維繪圖基礎(chǔ)指令 3.1.1 plot函數(shù) Plot函數(shù)是繪制曲線
34、的基本函數(shù),在調(diào)用用此函數(shù)之前,我們需先定義曲線上每一點(diǎn)的x及y座標(biāo)。 調(diào)用格式為:plot(x,y) %以向量x、y為軸,繪制曲線。 實(shí)例:x=0:pi/100:2*pi; y=sin(x); plot(x,y) 若要畫(huà)出多條曲線,只需將座標(biāo)對(duì)依次放入plot函數(shù)即可: plot(x, sin(x), x, cos(x)); 若要改變顏色,在座標(biāo)對(duì)后面加上相關(guān)字串即可: plot(x, sin(x), c, x, cos(x), r); 若要同時(shí)改變顏色及圖線型態(tài)(Line style),也是在座標(biāo)對(duì)后面加上相關(guān)字串即可: plot(x, sin(x), co
35、, x, cos(x), g*); 3.1.2圖形的修飾 色彩字符顏色線型字符線型格式標(biāo)記符號(hào)數(shù)據(jù)點(diǎn)形式標(biāo)記符號(hào)數(shù)據(jù)點(diǎn)形式 d"Dj"kHi 顏色參數(shù)為:y 黃色 k 黑色 w 白色 b 藍(lán)色 g 綠色 r 紅色 c 青色 m 洋紅色 線型參數(shù)為:- 實(shí)線 : 點(diǎn)線 -. 點(diǎn)虛線 -- 虛線 3.1.3圖形的標(biāo)注 MATLAB 軟件為用戶提供了一些特殊的圖形函數(shù),用于修飾已經(jīng)繪制好的圖形。 .2u .p -h,7_k4`grid on (/off) 給當(dāng)前圖形標(biāo)記添加(取消)網(wǎng)絡(luò) u\ tp xlable(‘
36、string’) 標(biāo)記橫坐標(biāo) ih>}M
37、圖形繪制,將重新產(chǎn)生一個(gè)圖 5 0 武漢理工大學(xué)《matlab課程設(shè)計(jì)》報(bào)告 W+ejd形窗口。但有時(shí)希望后續(xù)的圖形能夠和前面所繪制的圖形進(jìn)行比較。一般來(lái)說(shuō)有兩種方法: _s6gPdC,>e?8ug !6 一是采用hold on(/off)命令,將新產(chǎn)生的圖形曲線疊加到已有的圖形上;二是采用 pwt m2Usubplot(m,n,k)函數(shù),將圖形窗口分隔成n m 個(gè)子圖,并選擇第k 個(gè)子圖作為當(dāng)前圖形 QQ 1 武漢理工大學(xué)《matlab課程設(shè)計(jì)》報(bào)告 m:Ab ,然 T5jwk UG后在同一個(gè)視圖窗口中畫(huà)出多個(gè)小圖形 3.
38、2繪制四條不同曲線 繪制四個(gè)不同的一維函數(shù)y=f(x)。把四個(gè)函數(shù)用不同曲線、不同標(biāo)識(shí)符顯示在同一幅圖中; 2.2.1文件代碼 x=-5:0.5:5; axis([-5,5,-1,3]); y1=45*x; y2=x.^2; y3=2*x.^3; y4=4*x.^4+2*x; plot(x,y1,r.:,x,y2,bx-,x,y3,k--,x,y4,go-); grid on; title(同一幅圖顯示四曲線); xlabel(x); ylabel(y); legend(y1,y2,y3,y4) 3.2.2生成結(jié)果 3.3同界面不同窗口曲線 要求:用
39、同一種曲線、同一種標(biāo)識(shí)符把四個(gè)函數(shù)顯示在同一界面的不同窗口; 4 武漢理工大學(xué)《matlab課程設(shè)計(jì)》報(bào)告 3.3.1文件代碼 close all; x=-5:0.5:5; subplot(2,2,1);%區(qū)域分割函數(shù) plot(x,45*x); xlabel(x); ylabel(y); h = legend(45*x,1); set(h,Interpreter,none) grid on; subplot(2,2,2); plot(x,x.^2); xlabel(x); ylabel(y); h = legend(x.
40、^2,1); set(h,Interpreter,none) grid on; subplot(2,2,3); plot(x,2*x.^3); xlabel(x); ylabel(y); h = legend(2*x.^3,1); set(h,Interpreter,none) grid on; subplot(2,2,4); plot(x,4*x.^4+2*x); xlabel(x); ylabel(y); h = legend(4*x.^4+2*x,1); set(h,Interpreter,none) grid on; 3
41、.3.2生成結(jié)果 4.三維繪圖 4.1基本函數(shù)介紹 4.1.1 meshgrid函數(shù) 函數(shù)功能:用數(shù)據(jù)X和Y生成三維圖形 使用方法: [X,Y] = meshgrid(x,y):把由x和y向量所指定的域變換為矩陣X和Y,得到的矩陣可用來(lái)計(jì)算兩個(gè)變量的函數(shù)和繪制三維網(wǎng)格/面圖。輸出數(shù)組X中的行向量相當(dāng)于向量x, 輸出數(shù)組Y中的列向量相當(dāng)于向量y。 [X,Y,Z] = meshgrid(x,y,z):用三個(gè)變量x,y,z生成三維圖形。 4.1.2 plot函數(shù) 功能介紹:繪制三維線條圖 使用方法:plot3函數(shù)用來(lái)顯示一組數(shù)據(jù)點(diǎn)的三維圖形。 plot3(X1,Y1,Z
42、1,...):利用X1、Y1、Z1中點(diǎn)的坐標(biāo)在三維空間中繪制一條或多條線條,其中X1、Y1、Z1為向量或矩陣。 4.1.3 mesh與surf函數(shù) mesh函數(shù)用于繪制三維網(wǎng)線圖,它與surf函數(shù)用法差不多。surf函數(shù)是繪制著色表面圖。用法如下: surf(x,y,Z): x,y向量的長(zhǎng)度分別等于矩陣Z的列數(shù)和行數(shù)。 surf(X,Y,Z): X,Y利用分格函數(shù)[X,Y]=meshgrid(x,y)。 4.2 空間曲線圖 x = 0:0.1:10*pi; y=exp(-0.1*x).*cos(x); z=exp(-0.1*x).*sin(x); plot3(x,y,z);
43、 title(空間三維曲線圖); xlabel(x); ylabel(y=exp(-0.1x)*cosx); zlabel(z=exp(-0.1x)*sinx); grid on; 4.2.2生成結(jié)果 4.3三維網(wǎng)線圖 4.3.1三維網(wǎng)線圖文件代碼 繪圖函數(shù):z = x.* exp(sin(x)+cos(y)) 繪圖代碼: [x,y] = meshgrid(-4:0.2:4,-4:0.2:4); z = exp(-0.2*(x.^2+y.^1)); mesh(x,y,z); title(三維網(wǎng)線圖); xlabel(x); ylabel(y); z
44、label(z); grid on; 4.3.2 生成結(jié)果 4.4三維曲面圖 ( 5 武漢理工大學(xué)《matlab課程設(shè)計(jì)》報(bào)告 `8Gw U% 4.4.1文件代碼 [x,y] = meshgrid(-4:0.2:4,-4:0.2:4); z = exp(-0.2*(x.^2+y.^1)); surf(x,y,z); shading interp;%去掉網(wǎng)線 title(三維網(wǎng)線圖); xlabel(x); ylabel(y); zlabel(z); grid on; 4.4.2生成結(jié)果 5. 圖像
45、的頻譜圖 5.1 基本函數(shù)介紹 函數(shù)FFT可以實(shí)現(xiàn)一維DFT算法,調(diào)用格式如下: A=fft(X,N,DIM) 其中,X 表示輸入圖像;N 表示采樣間隔點(diǎn),如果 X 小于該數(shù)值,那么 Matlab 將會(huì)對(duì) X 進(jìn)行零填充,否則將進(jìn)行截取,使之長(zhǎng)度為 N ;DIM 表示要進(jìn)行離散傅立葉變換 讀取圖像函數(shù)imread()和屏幕顯示函數(shù)imshow() 5.2圖像頻譜圖 5.2.1 程序代碼 subplot(1,2,1); i= imread(F:\111.jpg); imshow(i); title(原圖像) subplot(1,2,2); j=fft2(i); ims
46、how(j); title(二維頻譜圖) 5.2.2生成結(jié)果 5.3加噪圖像頻譜分析 5.3.1 模擬噪聲函數(shù) imnoise:用于對(duì)圖像生成模擬噪聲,如: i=imread(104_8.tif); j=imnoise(i,gaussian,0,0.02);%模擬高斯噪聲 5.3.2程序代碼 subplot(1,2,1); i= imread(F:\111.jpg); j=fft2(i); imshow(j); title(二維頻譜圖); subplot(1,2,2); y=imnoise(i,gaussian,0,0.02);%加高斯噪聲 imshow
47、(y); title(加噪頻譜圖); 5.2.3生成結(jié)果 6. 總結(jié) 通過(guò)強(qiáng)化訓(xùn)練,我認(rèn)識(shí)到了MATLAB功能非常的強(qiáng)大,使得我們?cè)谑褂玫臅r(shí)候用戶直接調(diào)用這些庫(kù)函數(shù)并賦予實(shí)際參數(shù)就能解決實(shí)際問(wèn)題,具有極高的變成效率。我也熟悉了MATLAB的工作環(huán)境,可以很熟練的對(duì)MATLAB進(jìn)行常規(guī)的操作,快速進(jìn)行程序編輯和仿真。 7.參考文獻(xiàn) [1] 王洪元主編.《MATLAB語(yǔ)言以及在電子信息工程中的應(yīng)用》.清華出版社. 2004.12 [2] 李文鋒編著.《圖形圖像處理與應(yīng)用》.中國(guó)標(biāo)準(zhǔn)出版社.2006.06 [3] 賀興華等著.《MATLAB7.X圖像處理》.人民郵電出版社.2006.11.01 [4] 劉文耀編著.《數(shù)字圖像采集與處理》.電子工業(yè)出版社.2007.08.01 [5] 陳懷琛主編. 《數(shù)字信號(hào)處理教程——MATLAB釋義與實(shí)現(xiàn)》.電子工業(yè)出版社. 2004.06 [6] 徐建華編著.《圖像處理與分析》.科學(xué)出版社.1994.05 [7] 趙樹(shù)杰編著.《數(shù)字圖像處理》.西安電子科技大學(xué)出版社.2000
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識(shí)競(jìng)賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫(kù)試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫(kù)試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫(kù)試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識(shí)測(cè)試題庫(kù)及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測(cè)工種技術(shù)比武題庫(kù)含解析
- 1 礦山應(yīng)急救援安全知識(shí)競(jìng)賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案