MATLAB與通信仿真.ppt_第1頁
MATLAB與通信仿真.ppt_第2頁
MATLAB與通信仿真.ppt_第3頁
MATLAB與通信仿真.ppt_第4頁
MATLAB與通信仿真.ppt_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、MATLAB與通信仿真主講人:潘蔚,中國西部師范大學(xué)計算機學(xué)院通信專業(yè)系列課程,MATLAB編程,第三章,符號數(shù)學(xué)基礎(chǔ),Matlab編程,在Matlab中,數(shù)值和數(shù)值變量用于數(shù)值存儲和各種數(shù)值計算。符號對象是一種數(shù)據(jù)結(jié)構(gòu),包括符號常量、符號變量和符號表達式。符號常數(shù)、符號變量、符號函數(shù)、符號運算等。用于形成符號表達式,嚴格按照代數(shù)、微積分等課程中的規(guī)則和公式進行計算,并盡可能給出解析表達式的結(jié)果。數(shù)值表達式的變量必須事先賦值。符號對象還需要定義基本符號對象,然后才能執(zhí)行符號操作。Matlab有一個符號數(shù)學(xué)工具箱,它把Maple內(nèi)核作為符號運算的引擎。Matlab編程,建立符號表達式第一節(jié),創(chuàng)建

2、符號常數(shù)sym(常數(shù))例題:a=sym(sin(2) Sym(常數(shù),參數(shù)),Matlab編程,例題:a1=2 * sqrt(5)pia 2=Sym(2 * sqrt(5)pi)a3=Sym(2 * sqrt(5)pi)a4=Sym(2 * sqrt(5)pi,d)a31=a3-a1a 5=2 * sqrt(5)Sym(x,實數(shù))Sym(1) flagv)%將字符串變量定義為符號變量syms arg1 arg2,flagv sym(a,b,c x syms (a,b,c,x) f=sym(表達式)z=sym(x iy),并創(chuàng)建符號變量和c,d)syms A b c d A=A b; c d B=

3、a bC d C=sym(B)、創(chuàng)建符號矩陣、MATLAB編程、數(shù)值計算對象、符號計算對象和字符串是Matlab中最常見的數(shù)據(jù)對象。它們遵循不同的算法,但有時它們在外觀上非常相似。為了便于管理和使用,MATLAB提供了一些指令來識別不同的數(shù)據(jù)對象,如類、isa、whos等。識別對象類別的指令、Matlab編程,以及基本運算符“、-”、“*”、“、“/”、“分別實現(xiàn)矩陣的加、減、乘、左除、右除和求冪運算。操作員?!?、“”,”/和。分別實現(xiàn)“元素對元素”的數(shù)組乘法、左除法、右除法和冪運算。運算符“”和“”。分別實現(xiàn)矩陣的共軛轉(zhuǎn)置和非共軛轉(zhuǎn)置。關(guān)系運算符“=”和“=”分別將運算符兩側(cè)的對象與“相等

4、”和“不等”進行比較。當(dāng)事實為“真”時,比較結(jié)果用1表示;當(dāng)事實為“假”時,比較結(jié)果用0表示。在第二節(jié)中,符號表達式的代數(shù)運算、Matlab程序設(shè)計、三角函數(shù)、雙曲函數(shù)及其反函數(shù)除了atan2只能用于數(shù)值計算外,其他三角函數(shù)(如sin)、雙曲函數(shù)(如cosh)及其反函數(shù)(如asin、acosh)都以同樣的方式用于數(shù)值計算和符號計算。在數(shù)值和符號計算中,Exp、Exp和expm的用法是相同的。對于對數(shù)函數(shù),在符號計算中只有自然對數(shù)(一般教科書中使用ln),而在數(shù)值計算中沒有對數(shù)2和對數(shù)10。Matlab編程中,復(fù)函數(shù)涉及復(fù)數(shù)的共軛共軛共軛、實部、虛部和模abs函數(shù),它們在符號和數(shù)值計算中以同樣的

5、方式使用。然而,應(yīng)該注意的是,在符號計算中,MATLAB不提供計算相角的指令。矩陣代數(shù)指令在符號計算中,MATLAB提供的常用矩陣代數(shù)指令有:diag、triu、tril、inv、det、rank、rref、null、colspace、poly、expm、EIG、SVD。它們的用法幾乎與數(shù)值計算中的用法完全相同,只是奇異值分解略有不同。Matlab編程中,復(fù)函數(shù)涉及復(fù)數(shù)的共軛共軛共軛、實部、虛部和模abs函數(shù),它們在符號和數(shù)值計算中以同樣的方式使用。然而,應(yīng)該注意的是,在符號計算中,MATLAB不提供計算相角的指令。矩陣代數(shù)指令在符號計算中,MATLAB提供的常用矩陣代數(shù)指令有:diag、tr

6、iu、tril、inv、det、rank、rref、null、colspace、poly、expm、EIG、SVD。它們的用法幾乎與數(shù)值計算中的用法完全相同,只是奇異值分解略有不同。Matlab編程,缺省符號變量的確定,findsym(EXPR)確認所有“自由”符號“變量”,findsym (EXPR,n)確認表達式表達式中最接近x的n個獨立變量。注意:EXPR可以是一個符號矩陣。此時,指令確認整個矩陣的自由變量,而不是逐個確認矩陣元素。第三節(jié),符號對象的運算和轉(zhuǎn)換,Matlab編程,自由變量的確定規(guī)則,小寫字母I和J不能作為自由變量;如果符號表達式有多個字符變量,請按以下順序選擇自由變量:x

7、;按字母順序最接近x的字符變量;如果距離與x相同,則x后面的距離優(yōu)先。大寫字母比小寫字母低。Matlab編程,有多種形式的符號表達式編寫:多項式表達式,因子表達式,嵌套表達式,以及符號運算中的許多操作指令,如收集(合并相似項),展開(展開指定項),因子(分解或分解),霍納(轉(zhuǎn)換成嵌套形式),紐登(提取公共因子),簡化(恒等式)注意:EXPR可以是符號表達式或矩陣。在這種情況下,這些指令將對矩陣的元素逐一進行操作。Matlab編程,置換運算,子表達式置換運算RS,ssub=子表達式(S,ssub)%用符號變量ssub替換子表達式,并將S重寫為RS。替換原則:只替換較長的子表達式;對于較短的子表達

8、式,即使它們重復(fù)出現(xiàn),也不會被替換。一般替換指令RES=subs(ES,old,new)%用新的RES=subs (es,new)替換ES中的舊的后生成RES %用新的替換ES中的自由變量后生成RES,MATLAB編程,求解反函數(shù)和復(fù)合函數(shù),finverse(f,v)%有理數(shù)類型:楓樹的精確符號運算;VPA類型:楓樹的任意精確操作。使用數(shù)字和vpa命令可以實現(xiàn)任意精度的VPA型運算。數(shù)字(n)%設(shè)置默認精度S=vpa(s,n)%,并將S表示為具有n個有效數(shù)字的符號對象,可以是數(shù)值或符號對象;當(dāng)省略n時,精度由數(shù)字指定。注意:vpa不會改變?nèi)謹?shù)字參數(shù)。Matlab編程、符號對象與其他數(shù)據(jù)對象的

9、轉(zhuǎn)換、數(shù)值、符號和字符是MATLAB中三種不同的數(shù)據(jù)類型。MATLAB為每種數(shù)據(jù)類型提供了具體的生成指令和操作指令。為了實現(xiàn)不同數(shù)據(jù)類型的交互,MATLAB提供了一系列的轉(zhuǎn)換指令。Matlab編程,第4節(jié)符號演算,與數(shù)值計算相比,符號計算一般消耗更多的計算機資源,但這并不意味著符號計算是可有可無的。在某些場合,符號計算的逆數(shù)值計算更簡單、更快。Matlab編程,符號極限,極限(F,x,a)在xa條件下計算符號表達式F的極限(F,a)當(dāng)默認自變量趨向于a (f)時計算符號表達式F的極限,當(dāng)默認自變量趨向于0時計算極限(F,x,a)保存v時,獨立變量將由findsym自動確認;默認為n,默認為n=

10、1。注:在數(shù)值計算中,指令diff用于查找差異。Matlab編程,符號積分,intf=int(f,v)給出了f到指定變量v的不定積分(沒有積分常數(shù))Intf=int(f,v,a,b)給出了f到指定變量v的定積分-與數(shù)值積分相比,符號積分指令簡單且適應(yīng)性強,但對機器來說可能需要很長時間。-有時符號整合可能會給出一個相當(dāng)長且不熟悉的“封閉”符號表達,有時可能不會給出一個“封閉”的解決方案。當(dāng)MATLAB求積不能給出“封閉”解時,int運行時會給出警告提示和積分公式。Matlab編程,符號序列的求和,對于數(shù)學(xué)上的一般求和問題,可以用MATLAB的求和指令來解決。S=symsum(f,v,a,b)當(dāng)指

11、定變量v取a和b中的所有整數(shù)時,求通式f的和。注意:當(dāng)f是一個矩陣時,元素的和是一個接一個進行的,但獨立變量是在整個矩陣上定義的。當(dāng)v省時,f中的自變量由findsym自動識別;b可以是有限整數(shù)或無窮大,Matlab編程,泰勒級數(shù)展開,泰勒(f)計算符號表達式f的5階泰勒級數(shù)展開式,其中缺省獨立變量等于0,泰勒(f,n,v)計算符號表達式f的n階泰勒級數(shù)展開式,其中指定變量v=0,Matlab編程,第5節(jié)符號代數(shù)方程和微分方程,求解一般代數(shù)方程S=求解(方程1,方程2,方程n,v1,v2,VN)找到關(guān)于指定變量的方程的解(推薦格式注意:方程可以是不帶等號的符號表達式。此時,它指的是等式=0的等

12、式。當(dāng)省略V時,默認情況下,等式中的自由變量輸出結(jié)果是一個結(jié)構(gòu)數(shù)組。Matlab編程,求解符號微分方程,s=d求解(eq1,eq2,con1,con2,v1,v2),最完整和通用的指令調(diào)用格式。請注意, Eq是微分方程級別,con是初始條件,可以省略;v是指定的變量,如果省略,則默認為X或T;輸出結(jié)果是一個結(jié)構(gòu)數(shù)組;在微分方程中,y的一階導(dǎo)數(shù)Dy/dx表示為Dy;y的n階導(dǎo)數(shù)表示為Dny;Con應(yīng)以y (a)=b,dy (c)=d的格式書寫。當(dāng)初始條件的數(shù)目小于微分方程的數(shù)目時,任何常數(shù)C1和C2將出現(xiàn)在所獲得的解中。例1:求微分方程dx/dt=y,dy/dt=-x的解.2.求解兩點邊值問題:xy-3y=x2,y(1)=0,y(5)=0。Matlab編程,在-2pi,2pi獨立變量范圍內(nèi)的ezplot(F):在指定的獨立變量范圍內(nèi)繪制F曲線ezplot(F,xmin,xmax):在由fig指定的圖形窗口中繪制F曲線ezplot(F,xmin,xmax,fig):繪制F曲線ezplot 3 (x,y,z,tmin,tmax,animate)繪制三維曲線,第5節(jié):符號函數(shù)的可視化,Matlab編程,函數(shù)的簡單指令這些指令的特點是:無需數(shù)據(jù)準備,直接繪制字符串函數(shù)或符號函數(shù)的圖形。這一系列指令名稱的前兩個字符被標記為“ez”,意思是“易于”。Matlab編程,思維:1。觀察

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論