Matlab與通信仿真第一章Matlab基礎(chǔ)知識_第1頁
Matlab與通信仿真第一章Matlab基礎(chǔ)知識_第2頁
Matlab與通信仿真第一章Matlab基礎(chǔ)知識_第3頁
Matlab與通信仿真第一章Matlab基礎(chǔ)知識_第4頁
Matlab與通信仿真第一章Matlab基礎(chǔ)知識_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第第2-2-1 1頁頁matlab與通信仿真與通信仿真主講教師:李莉 通信基礎(chǔ)實驗教學(xué)中心第第2-2-2 2頁頁內(nèi)容提要內(nèi)容提要matlabmatlab基礎(chǔ)知識基礎(chǔ)知識1matlabmatlab計算結(jié)果可視化和確知信號分析計算結(jié)果可視化和確知信號分析23模擬調(diào)制模擬調(diào)制matlabmatlab實現(xiàn)實現(xiàn)4模擬信號的數(shù)字傳輸模擬信號的數(shù)字傳輸5數(shù)字頻帶傳輸系統(tǒng)數(shù)字頻帶傳輸系統(tǒng)6通信系統(tǒng)仿真綜合實驗通信系統(tǒng)仿真綜合實驗7隨機(jī)信號和數(shù)字基帶仿真隨機(jī)信號和數(shù)字基帶仿真第第2-2-3 3頁頁本章目標(biāo) 了解matlab 程序設(shè)計語言的基本特點,熟悉matlab軟件運行環(huán)境 掌握創(chuàng)建、保存、打開m文件及函數(shù)的

2、方法 掌握變量等有關(guān)概念,具備初步的將一般數(shù)學(xué)問題轉(zhuǎn)化為對應(yīng)的計算機(jī)模型并進(jìn)行處理的能力。第第2-2-4 4頁頁1.1 matlab基礎(chǔ)知識 matlab,matrix laboratory縮寫; mathworks公司開發(fā),具有強(qiáng)大的矩陣運算能力; matlab包括:主包、simulink和toolbox; 其最基本的數(shù)據(jù)結(jié)構(gòu)是矩陣,即操作對象以矩陣為單位第第2-2-5 5頁頁matlab系統(tǒng) matlab系統(tǒng)由5個主要部分構(gòu)成1) matlab語言2) matlab工作環(huán)境3) matlab數(shù)學(xué)函數(shù)庫4) matlab圖形處理系統(tǒng)5) matlab應(yīng)用程序接口第第2-2-6 6頁頁matl

3、ab語言 面向?qū)ο蟮母呒壵Z言 有自己獨特的數(shù)據(jù)結(jié)構(gòu)、輸入輸出功能、流程控制語句、函數(shù)。第第2-2-7 7頁頁matlab工作環(huán)境 包括以下幾部分: 命令窗口 m文件編譯調(diào)試器(f5) matlab工作空間 在線幫助文檔第第2-2-8 8頁頁第第2-2-9 9頁頁1.1 matlab基礎(chǔ)知識(1)菜單欄在matlab主窗口的菜單欄,共包含file、edit、view、web、window和help 6個菜單項。file菜單項:file菜單項實現(xiàn)有關(guān)文件的操作;edit菜單項:edit菜單項用于命令窗口的編輯操作;view菜單項:view菜單項用于設(shè)置matlab集成環(huán)境的顯示方式;web菜單項:

4、web菜單項用于設(shè)置matlab的web操作;window菜單項:主用于關(guān)閉所有打開的編輯器窗口;help菜單項:help菜單項用于提供幫助信息。第第2-2-1010頁頁(2)工具欄matlab主窗口的工具欄共提供了10個命令按鈕。這些命令按鈕均有對應(yīng)的菜單命令,但比菜單命令使用起來更快捷、方便。(3)命令行區(qū)command window第第2-2-1111頁頁(4)幫助系統(tǒng)(1)幫助命令(help)如:help sin;(2)lookfor命令可以從鍵入的關(guān)鍵字列出所有相關(guān)的題材;(3)幫助窗口(help window)提供與幫助命令相同的信息,但幫助窗口界面更為方便直接;(4)幫助桌面(h

5、elp desk)通過在命令窗口中選擇幫助菜單的“help desk”選項或鍵入helpdesk命令即可進(jìn)入幫助桌面;(5)在線幫助頁是幫助桌面的在線幫助均有相應(yīng)的pdf格式文件;(6)mathworks網(wǎng)站,。第第2-2-1212頁頁1.2 matlab數(shù)值計算功能 數(shù)值計算 符號計算 如何處理矩陣? 一個標(biāo)量:1*1矩陣 n維向量:n*1矩陣 一個長度為n的數(shù)組:1*n矩陣第第2-2-1313頁頁1、matlab矩陣生成(1)矩陣的建立直接輸入法:將矩陣的元素用方括號方括號括起來,按矩陣行的順序輸入各元素,同一行同一行的各元素之間用空格空格或逗號分隔,不同行不同行的元素之間用分號分號分隔;

6、m文件建立矩陣:對于比較大且比較復(fù)雜的矩陣復(fù)雜的矩陣,可以為它專門建立一個m文件;冒號表達(dá)式建立行向量:e1:e2:e3,其中e1為初始值,e2為步長,e3為終止值;(a=1:1:5)建立大矩陣:大矩陣可由方括號中的小矩陣或向量方括號中的小矩陣或向量建立起來。第第2-2-1414頁頁(2)矩陣的拆分矩陣元素矩陣元素a=1,2,3;4,5,6;a(1,2)ans=2b=1,2,3;4,5,6;b(3)ans=2顯然在matlab中矩陣是按列存儲的。注:“;”在每條語句結(jié)束后可以出現(xiàn),此時的作用是在command window中不顯示運行結(jié)果,如果語句后沒有“;”則在command window中

7、顯示運行結(jié)果。第第2-2-1515頁頁矩陣拆分矩陣拆分1) 利用冒號表達(dá)式獲得子矩陣 a(:,j)表示取a矩陣的第j列全部元素;a(i,:)表示a矩陣第i行的全部元素;a(i,j)表示取a矩陣第i行、第j列的元素。a=1 2 3;4 5 6;7 8 9a(2,:) a(2,:)= ans=4 5 6 a=1 2 3 7 8 9 a=1 2 3;4 5 6a(2,3)ans=6第第2-2-1616頁頁矩陣拆分矩陣拆分 a(i:i+m,:)表示取a矩陣第ii+m行的全部元素;a(:,k:k+m)表示取a矩陣第kk+m列的全部元素,a(i:i+m,k:k+m)表示取a矩陣第ii+m行內(nèi),并在第kk+

8、m列中的所有元素。2) 利用空矩陣刪除矩陣的元素在matlab中,定義 為空矩陣。給變量x賦空矩陣的語句為x= 。注意,x= 與clear x不同,clear是將x從工作空間中刪除,而空矩陣則存在于工作空間中,只是維數(shù)為0。第第2-2-1717頁頁 除用戶自定義矩陣之外,matlab提供產(chǎn)生特殊矩陣的函數(shù)zeros:產(chǎn)生全0矩陣(零矩陣)。 ans=0ones:產(chǎn)生全1矩陣(幺矩陣)。eye(n):產(chǎn)生n階單位矩陣。rand(m,n):產(chǎn)生m*n隨機(jī)矩陣,數(shù)值范圍01。randn:產(chǎn)生均值為0,方差為1的標(biāo)準(zhǔn)正態(tài)分布隨機(jī)矩陣。第第2-2-1818頁頁矩陣元素操作函數(shù) fliplr(a) :矩陣

9、左右翻轉(zhuǎn) flipud(a):矩陣上下翻轉(zhuǎn) rot90(a,k):矩陣逆時針旋轉(zhuǎn)k*90度 diag(a,k):取矩陣對角線元素 tril(a,k):取矩陣的下三角部分 triu(a,k):取矩陣的上三角部分第第2-2-1919頁頁 a=1 2 ;3 4;5 6 fliplr(a) ans=2 1 3 4 5 6 rot90(a) ans= 2 4 6 1 3 5 rot90(a,3) %逆時針旋轉(zhuǎn)3*90度 ans= 5 3 1 6 4 2第第2-2-2020頁頁1.2 matlab數(shù)值計算功能2、matlab內(nèi)部特殊變量和常數(shù)變量ans:指示當(dāng)前未定義變量名的答案;常數(shù)eps:表示浮點相對

10、精度,2-52;常數(shù)inf:表示無窮大;虛數(shù)單位i j:表示不定型值,是由0/0運算產(chǎn)生;常數(shù)pi:表示圓周率。第第2-2-2121頁頁3、變量類型(1)變量命名規(guī)則變量名可以由字母、數(shù)字和下劃線混合組成,但必須以字母開頭;字符長度不能大于31;變量命名區(qū)分大小寫。(2)局部變量和全局變量局部變量是指那些每個函數(shù)體內(nèi)自己定義的,不能從其他函數(shù)和matlab工作空間訪問的變量;全局變量是指用關(guān)鍵字“global”聲明的變量。全局變量名應(yīng)盡量大寫,全局變量的名字體現(xiàn)其代表的含義。第第2-2-2222頁頁4、內(nèi)存變量管理(1)內(nèi)存變量的刪除與修改clear命令用于刪除工作空間(workspace)中

11、的變量;clc命令用于清空命令窗口(command window)中的變量;who命令在command window中顯示出駐留變量的名稱;whos在給出變量名的同時,還給出它們的大小、所占字節(jié)數(shù)及數(shù)據(jù)類型等信息。(2)內(nèi)存變量文件利用mat文件可以把當(dāng)前matlab工作空間中的一些有用變量長久地保留下來,擴(kuò)展名是.mat。mat文件的生成和裝入由save和load命令來完成。常用格式為:文件名 變量名表 -append-asciiload 文件名 變量名表 -ascii第第2-2-2323頁頁5、matlab常用數(shù)學(xué)函數(shù)三角函數(shù)以弧度為單位計算,如:sin、cos等;abs函數(shù)可以求實數(shù)的絕

12、對值、復(fù)數(shù)的模、字符串的ascii碼值;用于取整的函數(shù)有:fix(向0取整)、floor(向下取整)、ceil(向上取整)、round(四舍五入);a=fix(2.3) a=fix(-2.3)a=2 a=-2a=floor(2.3) a=floor(-2.3) a=ceil(2.3) a=ceil(-2.3)a=2 a=-3 a=3 a=-2a=round(2.5) a=round(-2.5)a=3 a=-3第第2-2-2424頁頁 rem與mod求余函數(shù)。 當(dāng)x和y的同號時,兩個函數(shù)結(jié)果相同; 當(dāng)x和y異號時,rem函數(shù)結(jié)果與x同號,而mod和y同號。 如:a= rem(10,-3) a=m

13、od(10,-3) a=1 a=-2 mod不能整除時,其值=除數(shù)(整商+1)-被除數(shù)第第2-2-2525頁頁例1-1分別建立33、32和與矩陣a同樣大小的零矩陣。(1) 建立一個33零矩陣。(2) 建立一個32零矩陣。(3) 設(shè)a為23矩陣,建立一個與矩陣a同樣大小零矩陣。clc,clear;a=zeros(3)b=zeros(3,2)a=1 2 3;4 5 6; %產(chǎn)生一個23階矩陣ac=zeros(size(a) %產(chǎn)生一個與矩陣a同樣大小的零矩陣第第2-2-2626頁頁例1-2建立隨機(jī)矩陣:(1) 在區(qū)間20,50內(nèi)均勻分布的5階隨機(jī)矩陣。(2) 均值為0.6、方差為0.1的5階正態(tài)分

14、布隨機(jī)矩陣。clc,clear;x=20+(50-20)*rand(5)y=0.6+sqrt(0.1)*randn(5)第第2-2-2727頁頁6、matlab矩陣運算 (1)算術(shù)運算1) 矩陣加減運算:由a+b和a-b實現(xiàn)矩陣的加減運算,要求a和b矩陣的維數(shù)必須相同;2) 矩陣乘法:假定有兩個矩陣a和b,若a為mn矩陣,b為np矩陣,則c=a*b為mp矩陣;3) 矩陣除法:在matlab中,有兩種矩陣除法運算分別表示為左除“”和右除“/”。如果a矩陣是非奇異方陣,則ab和b/a運算可以實現(xiàn),即:ab=inv(a)*b,b/a=b*inv(a)。對于矩陣運算,一般abb/a。對于含有標(biāo)量的運算

15、,兩種除法運算的結(jié)果相同;4) 矩陣乘方:一個矩陣的乘方運算可以表示成ax,要求a為方陣,x為標(biāo)量;5) 點運算:在matlab中,點運算符有.*、./、.和.。兩矩陣進(jìn)行點運算是指它們的對應(yīng)元素進(jìn)行相關(guān)運算,要求兩矩陣的維參數(shù)相同。第第2-2-2828頁頁(2)關(guān)系運算matlab提供了6種關(guān)系運算符:(大于)、=(大于或等于)、=(等于)、=(不等于)。當(dāng)兩個比較量是標(biāo)量時,直接比較兩數(shù)的大小。若關(guān)系成立,關(guān)系表達(dá)式結(jié)果為1,否則為0。當(dāng)參與比較的量是兩個維數(shù)相同的矩陣時,比較是對兩矩陣相同位置的元素按標(biāo)量關(guān)系運算規(guī)則逐個進(jìn)行,并給出元素比較結(jié)果。最終的關(guān)系運算的結(jié)果是一個維數(shù)與原矩陣相同

16、的矩陣,它的元素由0或1組成。當(dāng)參與比較的一個是標(biāo)量,而另一個是矩陣時,則把標(biāo)量與矩陣的每一個元素按標(biāo)量關(guān)系運算規(guī)則逐個比較,并給出元素比較結(jié)果。最終的關(guān)系運算的結(jié)果是一個維數(shù)與原矩陣相同的矩陣,它的元素由0或1組成。第第2-2-2929頁頁例1-3產(chǎn)生5階隨機(jī)方陣a,其元素為10,90區(qū)間的隨機(jī)整數(shù),然后判斷a的元素是否能被3整除。(1) 生成5階隨機(jī)方陣a。(2) 判斷a的元素是否可以被3整除。clc,clear;a=fix(90-10+1)*rand(5)+10)p=rem(a,3)=0第第2-2-3030頁頁(3)邏輯運算matlab提供了3種邏輯運算符:&(與)、|(或)和(

17、非)。在邏輯運算中,非零元素為真,用1表示,零元素為假,用0表示。設(shè)參與邏輯運算的是兩個標(biāo)量a和b,那么,a&b a,b全為非零時,運算結(jié)果為1,否則為0。a|b a,b中只要有一個非零,運算結(jié)果為1。a 當(dāng)a是零時,運算結(jié)果為1;當(dāng)a非零時,運算結(jié)果為0。若參與邏輯運算的是兩個同維矩陣,那么運算將對矩陣相同位置上的元素按標(biāo)量規(guī)則逐個進(jìn)行。最終運算結(jié)果是一個與原矩陣同維的矩陣,其元素由1或0組成。若參與邏輯運算的一個是標(biāo)量,一個是矩陣,那么運算將在標(biāo)量與矩陣中的每個元素之間按標(biāo)量規(guī)則逐個進(jìn)行。最終運算結(jié)果是一個與矩陣同維的矩陣,其元素由1或0組成。邏輯非是單目運算符,也服從矩陣運算規(guī)則

18、。在算術(shù)、關(guān)系、邏輯運算中,算術(shù)運算優(yōu)先級最高,邏輯運算優(yōu)先級最低。第第2-2-3131頁頁例1-4 建立矩陣a,然后找出大于4的元素的位置。clc,clear;a=4,-65,-54,0,6;56,0,67,-45,0find(a4)第第2-2-3232頁頁7、matlab中的矩陣分析(1)矩陣的轉(zhuǎn)置:轉(zhuǎn)置運算符是單撇號,如:a。(2)矩陣的旋轉(zhuǎn):利用函數(shù)rot90(a,k)將矩陣a旋轉(zhuǎn)90的k倍,當(dāng)k為1時可省略。(3)矩陣的逆:對于一個方陣a,如果存在一個與其同階方陣b,使得:ab=ba=i (i為單位矩陣)則稱b為a的逆矩陣,求方陣a的逆矩陣可調(diào)用函數(shù)inv(a)。(4)方陣的行列式:

19、求方陣a所對應(yīng)的行列式的值的函數(shù)是det(a)。(5)矩陣的秩:矩陣線性無關(guān)的行數(shù)與列數(shù)稱為矩陣的秩,求矩陣秩的函數(shù)是rank(a)。第第2-2-3333頁頁1.3 matlab程序設(shè)計1、 m文件用matlab語言編寫的程序,稱為m文件。m文件可以根據(jù)調(diào)用方式的不同分為兩類:命令文件(script file)和函數(shù)文件(function file)。(1)建立新的m文件啟動matlab文本編輯器有3種方法:菜單操作。從matlab主窗口的file菜單中選擇new菜單項,再選擇m-file命令,屏幕上將出現(xiàn)matlab 文本編輯器窗口。命令操作。在matlab命令窗口輸入命令edit,啟動ma

20、tlab文本編輯器后,輸入m文件的內(nèi)容并存盤。命令按鈕操作。單擊matlab主窗口工具欄上的new m-file命令按鈕,啟動matlab文本編輯器后,輸入m文件的內(nèi)容并存盤。第第2-2-3434頁頁(2)打開已有的m文件菜單操作。從matlab主窗口的file菜單中選擇open命令,則屏幕出現(xiàn)open對話框,在open對話框中選中所需打開的m文件。在文檔窗口可以對打開的m文件進(jìn)行編輯修改,編輯完成后,將m文件存盤。命令操作。在matlab命令窗口輸入命令:edit 文件名,則打開指定的m文件。命令按鈕操作。單擊matlab主窗口工具欄上的open file命令按鈕,再從彈出的對話框中選擇所需

21、打開的m文件。第第2-2-3535頁頁例1-5 分別建立命令文件和函數(shù)文件,將華氏溫度f轉(zhuǎn)換為攝氏溫度c。clc;clear; %清除工作空間中的變量f=input(input fahrenheit temperature:);c=5*(f-32)/9function c=f2c(f)c=5*(f-32)/9;clc,clear;y=input(input fahrenheit temperature:);x=f2c(y)第第2-2-3636頁頁2、程序控制結(jié)構(gòu)(1)順序結(jié)構(gòu)數(shù)據(jù)的輸入,該函數(shù)的調(diào)用格式為:a=input(提示信息,選項);數(shù)據(jù)的輸出,disp(輸出項);程序的暫??梢允褂胮a

22、use函數(shù),若要強(qiáng)行中止程序的運行可使用ctrl+c命令。第第2-2-3737頁頁(2)選擇結(jié)構(gòu)if語句1) 單分支if語句:if 條件 語句組 end當(dāng)條件成立時,則執(zhí)行語句組,執(zhí)行完之后繼續(xù)執(zhí)行if語句的后繼語句,若條件不成立,則直接執(zhí)行if語句的后繼語句。2) 雙分支if語句:if 條件 語句組1 else 語句組2 end當(dāng)條件成立時,執(zhí)行語句組1,否則執(zhí)行語句組2,語句組1或語句組2執(zhí)行后,再執(zhí)行if語句的后繼語句。第第2-2-3838頁頁3) 多分支if語句:if 條件1 語句組1 elseif 條件2 語句組2 elseif 條件m 語句組m else 語句組n end語句用于實

23、現(xiàn)多分支選擇結(jié)構(gòu)。第第2-2-3939頁頁例1-6 計算分段函數(shù)的值。clc,clear;x=input(請輸入x的值:);if x=a & c=a& c=0& c=9 disp(abs(c)-abs(0);else disp(c);end第第2-2-4141頁頁switch語句 switch語句根據(jù)表達(dá)式的取值不同,分別執(zhí)行不同的語句,其語句格式為: switch 表達(dá)式 case 表達(dá)式1 語句組1 case 表達(dá)式2 語句組2 case 表達(dá)式m 語句組m otherwise 語句組n end當(dāng)表達(dá)式的值等于表達(dá)式1的值時,執(zhí)行語句組1,當(dāng)表達(dá)式的值等于表達(dá)式2的值時,執(zhí)行語句組2,當(dāng)表達(dá)式的值等于表達(dá)式m的值時,執(zhí)行語句組m,當(dāng)表達(dá)式的值不等于case所列的表達(dá)式的值時,執(zhí)行語句組n。當(dāng)任意一個分支的語句執(zhí)行完后,直接執(zhí)行switch語句的下一句。第第2-2-4242頁頁例1-8 某商場對顧客所購買的商品實行打折銷售,標(biāo)準(zhǔn)如下(商品價格用price來表示): price200 沒有折扣 200price500

溫馨提示

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

最新文檔

評論

0/150

提交評論