matlab在電氣中應(yīng)用_第1頁
matlab在電氣中應(yīng)用_第2頁
matlab在電氣中應(yīng)用_第3頁
matlab在電氣中應(yīng)用_第4頁
matlab在電氣中應(yīng)用_第5頁
已閱讀5頁,還剩307頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

matlab在電氣中應(yīng)用第一頁,共312頁。容易使用2.豐富的內(nèi)部函數(shù)3.強(qiáng)大的圖形和符號(hào)功能4.與其他軟件和語言有良好的對接性

MATLAB全稱為MatrixLaboratory,是一種功能強(qiáng)大的科學(xué)計(jì)算軟件

。同其他高級(jí)語言相比,其具有很多優(yōu)點(diǎn):1.1MATLAB簡介第二頁,共312頁。1、MATLAB允許用戶以數(shù)學(xué)形式的語言編寫程序,用戶在命令窗口中輸入命令即可直接得出結(jié)果。例1:

2+5=?

2+5

ans=7

Goback第三頁,共312頁。2、MATLAB的內(nèi)部函數(shù)庫提供了相當(dāng)豐富的函數(shù),這些函數(shù)可以解決許多基本問題,

除此以外,MATLAB還有各種工具箱。

MATLAB主工具箱符號(hào)數(shù)學(xué)工具箱

SIMULINK仿真工具箱控制系統(tǒng)工具箱信號(hào)處理工具箱圖象處理工具箱通訊工具箱系統(tǒng)辨識(shí)工具箱神經(jīng)元網(wǎng)絡(luò)工具箱金融工具箱Goback第四頁,共312頁。3、MATLAB具有強(qiáng)大的圖形處理功能,它本身帶有許多繪圖的庫函數(shù),可以很輕松地畫出各種復(fù)雜的二維和多維圖形。例2、繪制在0x6范圍內(nèi)的sin(2x)、sinx2、

sin2xplot(x,y1,x,y2,x,y3)x=linspace(0,6)y1=sin(2*x);y2=sin(x.^2);y3=(sin(x)).^2;第五頁,共312頁。第六頁,共312頁。1.2MATLAB啟動(dòng)與退出1.2.1MATLAB的啟動(dòng)方法一:雙擊matlab圖標(biāo)方法二:“開始”

“程序”“MATLAB”菜單

“MATLAB”第七頁,共312頁。MATLAB主體界面菜單欄工具欄第八頁,共312頁。主窗口

標(biāo)題欄

菜單欄

工具欄

Goback第九頁,共312頁。命令窗口(CommandWindow)各種MATLAB操作的最主要窗口

“>>”

運(yùn)算提示符

例:>>x1=2+5

x1=7>>

Goback第十頁,共312頁。歷史命令窗口(CommandHistory)

自動(dòng)保留自安裝起所有用過的命令的歷史記錄

雙擊歷史命令

清除這些歷史記錄

Goback第十一頁,共312頁。當(dāng)前目錄窗口(CurrentDirectory)

顯示或改變當(dāng)前目錄顯示當(dāng)前目錄下的文件

功能Goback第十二頁,共312頁。工作間管理窗口(Workspace)

顯示目前內(nèi)存中所有的MATLAB變量的變量名、取值以及類型

Goback第十三頁,共312頁。1.2.2MATLAB的退出1.利用MATLAB菜單退出單擊File菜單,從中選擇ExitMATLAB。2.使用quit/exit語句退出在指令窗口直接輸入quit/exit即可。3.使用熱鍵退出在MATLAB窗口中同時(shí)按下Ctrl+Q即可。4.單擊窗口可直接退出第十四頁,共312頁。1.3.1幫助窗口幫助窗口的起動(dòng)

(1)通過“help”菜單

(2)單擊工具欄上的問號(hào)按鈕

(3)在命令窗口中執(zhí)行helpwin、helpdesk或doc2.幫助窗口的內(nèi)容幫助主題(Contents)幫助索引(Index)幫助查詢(Search)聯(lián)機(jī)演示(Demos)1.3MATLAB幫助系統(tǒng)第十五頁,共312頁。1.3.2命令窗口查詢幫助

2.lookfor+關(guān)鍵字1.help+函數(shù)名例:helpsin

通過完整的或部分關(guān)鍵字來搜索要查找的內(nèi)容

lookforsin

尋找與正弦相關(guān)的所有指令第十六頁,共312頁。第2章MATLAB的基本使用方法基本概念基本運(yùn)算MATLAB的數(shù)據(jù)類型常用函數(shù)標(biāo)點(diǎn)符號(hào)的使用常用操作命令和鍵盤技巧第十七頁,共312頁。2.1基本概念在MATLAB中,經(jīng)常用到標(biāo)量、向量、矩陣和數(shù)組的概念。無論在MATLAB中變量賦何值,在內(nèi)存中均以矩陣的形式存在。標(biāo)量:是1×1矩陣,即只含有一個(gè)數(shù)的矩陣向量:是1×n或n×1的矩陣,即只有一行或一列的矩陣矩陣:是一個(gè)矩形數(shù)組,即二維數(shù)組,其中向量和標(biāo)量都是矩陣的特例,0×0矩陣為空矩陣數(shù)組:有序數(shù)據(jù)的集合,為矩陣的延伸,其中矩陣和向量都是數(shù)組的特例第十八頁,共312頁。2.2基本運(yùn)算

MATLAB最主要的功能便是數(shù)值計(jì)算,主要有以下基本運(yùn)算符號(hào):符號(hào)功能實(shí)例+加法2+3-減法2-3*乘法2*3/、\除法2/3、2\3^乘方2^3第十九頁,共312頁。1、MATLAB的求值次序:(1)算式從左到右執(zhí)行;(2)乘方的優(yōu)先級(jí)最高,乘、除次之,最后是加減,括號(hào)的優(yōu)先級(jí)別最高;(3)在有多層括號(hào)的情況下,從括號(hào)的最里面到最外面逐漸擴(kuò)展。第二十頁,共312頁。2、MATLAB語句有兩種常見的形式:(1)表達(dá)式>>1+2ans=3(2)變量=表達(dá)式

在第一種情況下,計(jì)算結(jié)果自動(dòng)賦給名為ans(answer)的變量;在第二種情況下,結(jié)果自動(dòng)賦給等號(hào)左邊的變量,“=”代表的是賦值操作。>>a=1+2a=3第二十一頁,共312頁。一個(gè)命令行輸入一條命令,命令行以回車結(jié)束>>a=2

一個(gè)命令行也可以輸入若干條命令,各命令之間以逗號(hào)或分號(hào)分隔。>>a=2,b=3;

>>a=2;b=3;

a=2a=2>>>>第二十二頁,共312頁。2.3MATLAB的數(shù)據(jù)類型1.常量在MATLAB中有一些特定的變量,已被預(yù)定義某個(gè)特定的值,因此這些變量被稱為常量。ans用作結(jié)果的默認(rèn)變量i、j復(fù)數(shù)單位beep“嘟”nargin函數(shù)輸入?yún)?shù)個(gè)數(shù)pi圓周率(π)nargout函數(shù)輸出參數(shù)個(gè)數(shù)eps浮點(diǎn)數(shù)相對誤差realmin最小正浮點(diǎn)數(shù)inf無窮大realmax最大正浮點(diǎn)數(shù)NaN、nan不定數(shù)bitmax最大正整數(shù)第二十三頁,共312頁。2.變量在程序執(zhí)行過程中其值可以變化的量為變量,變量在計(jì)算機(jī)中占有一定的存儲(chǔ)單元,在該單元內(nèi)存放該變量的值。一個(gè)變量應(yīng)該有一個(gè)名字,稱之為變量名。變量的命名規(guī)則:(1)MATLAB不需對變量進(jìn)行事先說明及指定類型;(2)變量名必須以英文字母開頭,可以包含字母、數(shù)字和下劃線,但不得出現(xiàn)空格和標(biāo)點(diǎn)符號(hào);(3)變量名最多可包含63個(gè)字符;(4)變量名區(qū)分大小寫;(5)關(guān)鍵字不能作為變量名。第二十四頁,共312頁。

與變量相關(guān)的指令:(1)who和whoswho和whos都用來列出matlab工作區(qū)中已駐留的變量清單,而whos還可以列出變量的維數(shù)和性質(zhì)。例:>>whoYourvariablesare:ab>>whosNameSizeBytesClassa1x8016408doublearrayb1x8016408doublearrayGrandtotalis1602elementsusing12816bytes注意:常量用who指令是查看不到的,只可隨時(shí)調(diào)用第二十五頁,共312頁。(2)clearclear用來清除工作空間中定義過的所有變量或部分變量。如果只要去除其中某幾個(gè)變量,應(yīng)在clear后面指明要?jiǎng)h除的變量名稱。>>a=1,b=2a=1b=2???Undefinedfunctionorvariable'a'.>>cleara>>a>>bb=2第二十六頁,共312頁。永久變量可以修改,通過clear可以恢復(fù)原值。

pi=2例:>>pi=2>>clear>>pians=3.1416第二十七頁,共312頁。3.復(fù)數(shù)

MATLAB的每一個(gè)元素都可以是復(fù)數(shù),實(shí)數(shù)是復(fù)數(shù)的特例。

MATLAB語言對復(fù)數(shù)的處理十分簡單,在處理復(fù)數(shù)問題時(shí),不需進(jìn)行其他任何附加操作。定義復(fù)數(shù)格式如下:

z=a+bi或z=a+bj >>

z=a+b*i或z=a+b*j

第二十八頁,共312頁。>>a=2+3ia=2.0000+3.0000i>>a=2+3ja=2.0000+3.0000i>>b=2+3*ib=2.0000+3.0000i>>b=2+3*jb=2.0000+3.0000i>>a=2a=2>>b=3b=3>>c=a+bi注意:只有數(shù)字才可以與i、j直接相連,表達(dá)式或矩陣則不可以,應(yīng)用*.???Undefinedfunctionorvariable'bi'.第二十九頁,共312頁。4.數(shù)據(jù)的輸出格式在MATLAB系統(tǒng)中,數(shù)據(jù)的存儲(chǔ)和計(jì)算都是以雙精度進(jìn)行的,但是用戶可以改變屏幕上顯示的格式,所用指令為format。formatformatshort小數(shù)點(diǎn)后4位數(shù)字,大于1000的實(shí)數(shù)用科學(xué)記數(shù)法表示formatlongg選擇15位定點(diǎn)和15位科學(xué)記數(shù)法中更好的進(jìn)行表示formatlong15位定點(diǎn)數(shù)表示formathex使用16進(jìn)制進(jìn)行表示formatshorte5位科學(xué)記數(shù)法表示formatbank用元、角、分進(jìn)行表示formatlonge15位科學(xué)記數(shù)法表示format+顯示大矩陣用,正、負(fù)、零分別用+、-、空格表示formatshortg選擇5位定點(diǎn)和5位科學(xué)記數(shù)法中更好的進(jìn)行表示formatrationalformatrat用分式表示第三十頁,共312頁。1、short:

顯示小數(shù)點(diǎn)后4位數(shù)字

0.00130.0333333

2、long:

顯示15位數(shù)字。

如果數(shù)值為整數(shù),則按原數(shù)顯示

0.03

(缺省設(shè)置)第三十一頁,共312頁。3、shorte:

對非整數(shù)值都按e方式顯示,顯示5位有效數(shù)字。如果數(shù)值為整數(shù),則按原數(shù)顯示

1.3333e-003

0.0333333

第三十二頁,共312頁。4、longe:

對非整數(shù)值都按e方式顯示,顯示15位有效數(shù)字。

1.33333333333333e-0030.0333333

如果數(shù)值為整數(shù),則按原數(shù)顯示

第三十三頁,共312頁。5、shortg:

從short和shorte中自動(dòng)選擇最佳記述方式0.0333333

6、longg:

0.03

從long和longe中自動(dòng)選擇最佳記述方式0.0013333第三十四頁,共312頁。7、hex:

十六進(jìn)制表示

3ff5555555555550.0333333

8、+

+

正、負(fù)、零分別用+、-、空格表示顯示大矩陣用第三十五頁,共312頁。9、bank:

0.0010、rat:

1/7500.0333333

第三十六頁,共312頁。輸出格式的控制

file法一:PreferencesCommandWindow法二:format

命令format

shorte

例:NumericFormat第三十七頁,共312頁。2.4MATLAB的常用函數(shù)

MATLAB提供了豐富的函數(shù),只要正確調(diào)用,便可獲得正確結(jié)果。sin正弦angle相角asin反正弦conj共軛復(fù)數(shù)cos余弦imag取復(fù)數(shù)虛部acos反余弦real取復(fù)數(shù)實(shí)部tan正切fix取整數(shù)atan反正切mod取余數(shù)exp指數(shù)運(yùn)算round四舍五入log自然對數(shù)sqrt平方根log10以10為底對數(shù)abs絕對值第三十八頁,共312頁。1、三角函數(shù)2、指數(shù)運(yùn)算函數(shù)3、復(fù)數(shù)運(yùn)算函數(shù)4、取整和求余函數(shù)第三十九頁,共312頁。sin三角函數(shù)sinhasincoscoshacostanatancotacotseccsc第四十頁,共312頁。注意:①小寫?、诤瘮?shù)應(yīng)該出現(xiàn)在等式的右邊。③后面表達(dá)式寫在()里,例sin(x),其他對它的運(yùn)算和數(shù)學(xué)一樣。④三角函數(shù)以弧度為單位計(jì)算。sin(1)表示的不是sin1°而是sin57.28578°例如:第四十一頁,共312頁。指數(shù)運(yùn)算函數(shù)exploglog10log2power(pow2)sqrt第四十二頁,共312頁。設(shè)a=5.67,b=7.8,求

>>exp(a+b)/log10(a+b)ans=6.2677e+005>>a=5.67;b=7.8;例1:

>>log(b-a)ans=0.7561第四十三頁,共312頁。例2:已知a=3,b=4;求:>>power(a,b)>>a=3;b=4;或者>>a^bans=81第四十四頁,共312頁。abs復(fù)數(shù)運(yùn)算函數(shù)anglerealimagconjcomplex構(gòu)造復(fù)數(shù)角度(弧度)模實(shí)部虛部共軛第四十五頁,共312頁。ans=1.1071

>>x=1+2i;>>abs(x)ans=2.2361>>angle(x)例:

ans=1ans=2>>real(x)>>imag(x)第四十六頁,共312頁。y=2.0000+3.0000i

ans=1.0000-2.0000i>>conj(x)>>y=complex(2,3)第四十七頁,共312頁。fix(舍小留整)取整求余函數(shù)round(四舍五入)floor(向下取整)ceil(向上取整)modremsign第四十八頁,共312頁。>>ceil(x)>>x=-9.8;>>fix(x)ans=-9>>round(x)ans=-10>>floor(x)ans=-10ans=-9第四十九頁,共312頁。ans=1>>x=9;y=2;>>rem(x,y)>>mod(x,y)ans=1ans=1>>x=9;y=-2;>>mod(x,y)ans=-1>>rem(x,y)第五十頁,共312頁。ans=-1ans=1>>mod(-9,2)>>rem(-9,2)第五十一頁,共312頁。rem(x,y)和mod(x,y)要求x,y必須為相同大小的實(shí)矩陣或同為標(biāo)量

注意:第五十二頁,共312頁。>>sign(0)>>sign(9)ans=-1

ans=1ans=0>>sign(-9)第五十三頁,共312頁。例:計(jì)算下式的結(jié)果,其中x=-3.5°,y=6.7°。>>x=-3.5*pi/180;>>y=6.7*pi/180;>>sin(abs(x)+abs(y))/sqrt(cos(abs(x+y)))ans=0.1772第五十四頁,共312頁。標(biāo)點(diǎn)符號(hào)定義標(biāo)點(diǎn)符號(hào)定義;區(qū)分行,取消運(yùn)行顯示等.小數(shù)點(diǎn)以及域訪問等,區(qū)分列,函數(shù)參數(shù)分隔符等…連接語句:在數(shù)組中應(yīng)用較多‘字符串的標(biāo)識(shí)符號(hào)()指定運(yùn)算優(yōu)先級(jí)等=賦值符號(hào)[]矩陣定義的標(biāo)志等!調(diào)用操作系統(tǒng)運(yùn)算{}用于構(gòu)成單元數(shù)組等%注釋語句的標(biāo)識(shí)2.5MATLAB的標(biāo)點(diǎn)符號(hào)

第五十五頁,共312頁。1、空格:數(shù)組行元素以及輸入變量之間的分隔符

a=123456

>>a=[123;456]第五十六頁,共312頁。2、逗號(hào)(,)

用于要顯示計(jì)算結(jié)果的命令與其它命令之間的分隔符>>a=1,b=2

用于數(shù)組行元素之間的分隔符a=123456

>>a=[1,2,3;4,5,6]第五十七頁,共312頁。3、點(diǎn)號(hào)

(.)用于數(shù)值中的小數(shù)點(diǎn)

2.56第五十八頁,共312頁。4、分號(hào)(;)用于不顯示計(jì)算結(jié)果命令行的結(jié)尾>>a=2;

用于不顯示計(jì)算結(jié)果命令與其它命令之間的分隔符>>a=1;b=2

用于矩陣元素行之間的分隔符>>a=[123;456]第五十九頁,共312頁。5、冒號(hào)

(:)用于生成等間隔的向量

a=1:1:4

a=

1:4用作矩陣的下標(biāo),部分地選擇矩陣元素A=123456ans=36>>A(:,3)第六十頁,共312頁。6、百分號(hào)(%)

注釋符

x=1:0.1:10;%給出自變量x

的定義域7、單引號(hào)(‘’)

用于括住字符串

>>a=‘1+2’a=1+2第六十一頁,共312頁。8、方括號(hào)([])

用于構(gòu)成向量和矩陣

>>A=[1,2,3;4,5,6]9、續(xù)行號(hào)(…)

表示一行未完,在下一行繼續(xù)輸入

s=1-1/2+1/3-1/4+1/5-1/6+…+1/7-1/8+1/9-1/10第六十二頁,共312頁。2.6常用操作命令和鍵盤技巧在使用MATLAB編制程序時(shí),掌握一些常用的操作命令和鍵盤操作技巧,可以起到事半功倍的效果。常用操作指令cd顯示或改變當(dāng)前工作目錄clf清除圖形窗口clc清除工作窗dir顯示當(dāng)前目錄下文件常用鍵盤操作和快捷鍵↑(Ctrl+p)調(diào)用上一行Home(Ctrl+a)光標(biāo)置于行首↓(Ctrl+n)調(diào)用下一行End(Ctrl+e)光標(biāo)置于行尾Ctrl+←光標(biāo)左移一單詞Alt+BackSpace回復(fù)上一次刪除Ctrl+→光標(biāo)右移一單詞Ctrl+c終止當(dāng)前指令第六十三頁,共312頁。第3章MATLAB的數(shù)值計(jì)算矩陣的構(gòu)建矩陣元素矩陣運(yùn)算矩陣的關(guān)系運(yùn)算和邏輯運(yùn)算多項(xiàng)式運(yùn)算第六十四頁,共312頁。3.1矩陣的構(gòu)建3.1.1直接輸入法創(chuàng)建矩陣最簡單的方法就是直接輸入矩陣元素,輸入格式有以下的要求:

1.整個(gè)矩陣以“[]”作為首尾;

2.每行中的元素用“,”或空格分隔;

3.行與行之間用分號(hào)“;”或回車鍵分隔;

4.矩陣中的元素可以是數(shù)字或者表達(dá)式;

5.如果矩陣中沒有元素,這樣的矩陣稱為空陣(EmptyMatrix)。第六十五頁,共312頁。注意:

MATLAB中所有的矩陣事先都不必定義維數(shù)大小,系統(tǒng)會(huì)根據(jù)用戶的輸入自動(dòng)配置,并在運(yùn)算中自動(dòng)調(diào)整矩陣的維數(shù)。第六十六頁,共312頁。>>a=[123;456;789]a=123456789>>b=[1sin(pi/6)sqrt(9)3+560]b=1.00000.50003.00008.00006.00000>>a=[1+5i2+6i;3+7i4+8i]或>>a=[12;34]+i*[56;78]第六十七頁,共312頁。3.1.2利用內(nèi)部函數(shù)產(chǎn)生矩陣?yán)脙?nèi)部函數(shù)可以很容易產(chǎn)生一些常見的特殊矩陣,常用函數(shù)如下:eye(m,n)產(chǎn)生單位矩陣zeros(m,n)產(chǎn)生元素全為0的矩陣ones(m,n)產(chǎn)生元素全為1的矩陣rand(m,n)產(chǎn)生均勻分布的隨機(jī)元素矩陣,范圍0~1randn(m,n)產(chǎn)生正態(tài)分布的隨機(jī)元素矩陣diag(x)產(chǎn)生矩陣x的對角陣magic(m)產(chǎn)生魔術(shù)矩陣說明:當(dāng)eye、zeros、ones、rand、randn函數(shù)只有一個(gè)參數(shù)n時(shí),則產(chǎn)生n×n的方陣。第六十八頁,共312頁。>>eye(3)ans=100010001>>eye(3,4)ans=100001000010>>zeros(3)ans=000000000>>ones(3,4)ans=111111111111>>a=magic(3)a=816357492>>diag(a)ans=852第六十九頁,共312頁。>>x=ones(3)x=111111111>>tril(x)ans=100110111>>triu(x)ans=111011001tril:產(chǎn)生下三角矩陣triu:產(chǎn)生上三角矩陣第七十頁,共312頁。3.1.3數(shù)組的構(gòu)建在MATLAB中數(shù)組可以看作行向量,即只有一行的矩陣,

MATLAB創(chuàng)建數(shù)組可用以下特殊命令:1.冒號(hào)生成法(初值:步長:終值)>>0:0.4:2ans=

00.40000.80001.20001.60002.0000步長若省略,默認(rèn)間隔1>>0:0.3:1.3ans=00.30000.60000.9000

1.2000初值=0,終值=2,步長=0.4第七十一頁,共312頁。>>a=1:4;b=1:2:7;>>c=[a;b]%利用向量生成矩陣c=12341357>>d=[a910]%在a的基礎(chǔ)上擴(kuò)展d=1234910注意:a,b的長度一樣!第七十二頁,共312頁。2.linspace函數(shù)

linspace(a,b,n)

差值=(b-a)/(n-1)>>a=linspace(0,1,4)a=00.33330.66671.0000初值=0,終值=1,元素個(gè)數(shù)=43.logspace函數(shù)

logspace(a,b,n)

公比=10^((b-a)/(n-1))>>logspace(0,2,5)ans=1.00003.162310.000031.6228100.0000初值=100,終值=102,元素個(gè)數(shù)=5,公比=100.5第七十三頁,共312頁。3.2矩陣的元素3.2.1矩陣元素的下標(biāo)表示

1.全下標(biāo)表示一個(gè)m×n矩陣A的第i行,第j列元素表示為A(i,j),即由行下標(biāo)和列下標(biāo)表示,行列數(shù)從1開始。注意:當(dāng)給元素賦值時(shí),如果超出矩陣范圍,則自動(dòng)擴(kuò)充矩陣;當(dāng)取值時(shí),若超出矩陣范圍,則提示錯(cuò)誤。>>a=[12;34];>>a(1,2)=9;>>a(2,3)=8;>>a(2,4)???Indexexceedsmatrixdimensions.>>aa=190348第七十四頁,共312頁。2.單下標(biāo)表示將矩陣的所有列按從左到右的順序接成“一維長列”,然后對元素進(jìn)行編號(hào)。一個(gè)m×n矩陣A的元素A(i,j)對應(yīng)的下標(biāo)為(j-1)*m+i。>>a=[123;456];>>a(1,2)ans=2>>a(3)ans=2>>a(5)=10a=1210456第七十五頁,共312頁。3.2.2子矩陣

1.全下標(biāo)表示(1)a([ij],[kl]):行數(shù)為i、j,列數(shù)為k、l的元素構(gòu)成子矩陣;(2)a(i:j,k:l):取行數(shù)為i~j,列數(shù)為k~l的元素構(gòu)成的子矩陣(3)a(i:j,:):取行數(shù)為i~j,所有列的元素構(gòu)成的子矩陣(4)a(end,k:j):取行數(shù)最大值,列數(shù)為k~j的元素構(gòu)成的子矩陣2.單下標(biāo)表示a([ij;kl]):取單下標(biāo)為i、j、k、l的元素構(gòu)成子矩陣。第七十六頁,共312頁。>>a=magic(5)a=17241815235714164613202210121921311182529>>a([12],[34])ans=18714>>a(1:2,3:5)ans=181571416>>a(1:2,:)ans=1724181523571416>>a(end,1:2)ans=1118>>a([13;45])ans=1741011第七十七頁,共312頁。3.2.3矩陣元素的刪除刪除矩陣元素可以簡單的將該元素賦值為空矩陣(用[]表示)。>>a=rand(3,4)a=0.89130.01850.61540.73820.76210.82140.79190.17630.45650.44470.92180.4057>>a(2)=[]a=Columns1through80.89130.45650.01850.82140.44470.61540.79190.9218Columns9through110.73820.17630.4057第七十八頁,共312頁。3.2.4矩陣元素的數(shù)量1.numel函數(shù)

n=numel(a):計(jì)算矩陣a中元素的總數(shù)2.size函數(shù)d=size(a):d=[mn],m為a的行數(shù),n為a的列數(shù)[mn]=size(a):m為a的行數(shù),n為a的列數(shù)m=size(a,dim):m為矩陣a的第dim維的大小>>a=rand(2,3)a=0.28440.06480.58280.46920.98830.4235>>d=size(a)d=23>>m=size(a,2)m=3>>numel(a)ans=6第七十九頁,共312頁。3.3矩陣與數(shù)組運(yùn)算MATLAB算術(shù)運(yùn)算矩陣算術(shù)運(yùn)算數(shù)組算術(shù)運(yùn)算矩陣算術(shù)運(yùn)算:按照線性代數(shù)運(yùn)算法則定義數(shù)組算術(shù)運(yùn)算:按照元素逐個(gè)執(zhí)行第八十頁,共312頁。3.3.1矩陣的運(yùn)算

+加法-減法*乘法^冪\左除/右除’轉(zhuǎn)置1.矩陣的加減法矩陣的加減法是對應(yīng)元素的加減法,只有當(dāng)兩個(gè)矩陣維數(shù)相同或者其中一個(gè)為標(biāo)量時(shí),才可以進(jìn)行加減法運(yùn)算。>>a=[12;34];>>b=[56;78];>>a+bans=681012>>3+aans=4567>>b-3ans=2345第八十一頁,共312頁。2.矩陣的乘法矩陣的乘法使用“*”運(yùn)算符,兩個(gè)矩陣要相乘,只有當(dāng)前一矩陣的列數(shù)與后一矩陣行數(shù)相等或者其中一個(gè)為標(biāo)量時(shí)才能進(jìn)行。>>a=[12;34];>>b=[567;8910];>>a*bans=212427475461>>b*a???Errorusing==>*Innermatrixdimensionsmustagree.>>3*aans=36912第八十二頁,共312頁。3.矩陣的除法矩陣的除法有左除和右除兩種,分別用“\”和“/”表示。通常矩陣除法可以用來求未知矩陣。若A*X=B,則X=A\B

若X*A=B,則X=B/A注意:①若A、B都為矩陣時(shí),這兩個(gè)結(jié)果是不同的,即A\B≠B/A。②若A、B中有一個(gè)為標(biāo)量,設(shè)A為標(biāo)量,則這兩個(gè)結(jié)果是相同的,即A\B=B/A。第八十三頁,共312頁。>>a=[12;34];>>b=[56;89];>>c=a*bc=21244754>>c/aans=-69-1320>>a\cans=5.00006.00008.00009.0000>>a=2;>>c=a*b>>a\cans=5689>>c/aans=5689c=10121618第八十四頁,共312頁。例:求解以下方程>>A=[132;223;311]A=132223311>>B=[1;10;7]B=1107>>A\Bans=2-34第八十五頁,共312頁。4.矩陣的乘方矩陣的乘方使用“^”運(yùn)算符,如A^P,當(dāng)P為整數(shù)時(shí),該指令運(yùn)算結(jié)果可做如下解釋:(1)當(dāng)P>0,表示方陣A直接自乘P次;(2)當(dāng)P<0,表示A的逆陣自乘|P|次后的結(jié)果,或者A自乘|P|次后的逆陣;(3)當(dāng)P=0,表示與A維數(shù)相同的單位陣。>>a=[12;34]a=1234>>a^2ans=7101522>>a^0ans=1001>>a^(-2)ans=5.5000-2.5000-3.75001.7500第八十六頁,共312頁。5.矩陣的轉(zhuǎn)置矩陣的轉(zhuǎn)置使用“’”運(yùn)算符,矩陣的轉(zhuǎn)置就是將第i行第j列的元素和第j行第i列的元素進(jìn)行互換。

對于有復(fù)數(shù)元素的矩陣A,A’為共軛轉(zhuǎn)置,A.’為非共軛轉(zhuǎn)置。>>a=[12;34]a=1234>>a'ans=1324>>a=[1+i2+i;3+i4+i];>>a'ans=1.0000-1.0000i3.0000-1.0000i2.0000-1.0000i4.0000-1.0000i>>a.'ans=1.0000+1.0000i3.0000+1.0000i2.0000+1.0000i4.0000+1.0000i第八十七頁,共312頁。6.矩陣的逆在MATLAB中,使用函數(shù)inv計(jì)算矩陣的逆矩陣。A是可逆矩陣的充分必要條件是|A|≠0,即可逆矩陣是非奇異方陣。>>a=magic(3)a=816357492>>inv(a)ans=0.1472-0.14440.0639-0.06110.02220.1056-0.01940.1889-0.1028>>a*inv(a)ans=1.00000.0000-0.0000-0.00001.00000.00000.00000.00001.0000>>a^(-2)ans=0.0293-0.0124-0.0124-0.01240.0293-0.0124-0.0124-0.01240.0293>>inv(a^2)ans=0.0293-0.0124-0.0124-0.01240.0293-0.0124-0.0124-0.01240.0293第八十八頁,共312頁。7.方陣的行列式

在MATLAB中,求方陣的行列式的函數(shù)是det,用法:

det(a)。

>>a=magic(3)a=816357492>>det(a)ans=-360第八十九頁,共312頁。8.矩陣的特征值如果AX=λX存在非零解向量,則稱λ為A的一個(gè)特征值,相應(yīng)的非零解向量X稱為與λ相對應(yīng)的特征向量。在MATLAB中,以函數(shù)eig計(jì)算矩陣的特征值。用法一:eig(a),把它的特征值以列向量的形式顯示出來。用法二:[v,d]=

eig(a),v為特征向量,第九十頁,共312頁。>>G=[120;25-1;410-1];>>eig(G)ans=3.73210.26791.0000>>[v,d]=eig(G)v=-0.2440-0.91070.4472-0.33330.3333-0.0000-0.9107-0.24400.8944d=3.73210000.26790001.0000第九十一頁,共312頁。9.矩陣的特征多項(xiàng)式設(shè)A為n階方陣,如果λ和n維非零列向量X使關(guān)系式AX=λX成立,那么(A-λE)X=0稱為矩陣A的特征方程,|A-λE|稱為方陣A的特征多項(xiàng)式。在MATLAB中,以函數(shù)poly計(jì)算矩陣的特征多項(xiàng)式。

>>a=[-211;020;-413];>>poly(a)ans=1-304>>poly2sym(poly(a))%把系數(shù)矩陣轉(zhuǎn)為符號(hào)表達(dá)式ans=x^3-3*x^2+4第九十二頁,共312頁。10.矩陣的秩設(shè)在矩陣A中存在一個(gè)不等于0的r階子式D,且所有(r+1)階子式全為0,那么稱D為方陣A的最高階非零子式,r為矩陣A的秩。在MATLAB中,以函數(shù)rank計(jì)算矩陣的秩。

>>a=magic(4)a=16231351110897612414151>>rank(a)ans=3>>det(a)ans=0第九十三頁,共312頁。3.3.2數(shù)組的運(yùn)算數(shù)組運(yùn)算符與矩陣運(yùn)算符的區(qū)別便是多一個(gè)小黑點(diǎn)。.+加法.-減法.*乘法.^冪.\左除./右除.’轉(zhuǎn)置數(shù)組的運(yùn)算操作都是對元素逐個(gè)進(jìn)行的。>>a=ones(3);>>b=magic(3)b=816357492>>a*bans=151515151515151515>>a.*bans=816357492>>b^2ans=916767679167676791>>b.^2ans=641369254916814第九十四頁,共312頁。>>a=[123];>>b=[456];>>a.*bans=41018>>a.^2ans=149>>a.\bans=4.00002.50002.0000>>a=[1+j2+j3+j]a=1.0000+1.0000i2.0000+1.0000i3.0000+1.0000i>>a.'ans=1.0000+1.0000i2.0000+1.0000i3.0000+1.0000i第九十五頁,共312頁。3.4矩陣關(guān)系運(yùn)算與邏輯運(yùn)算說明:(1)表達(dá)式輸入:非0—“邏輯真”,0—“邏輯假”(2)表達(dá)式輸出:1—“邏輯真”,0—“邏輯假”3.4.1關(guān)系運(yùn)算兩個(gè)維數(shù)相同的矩陣進(jìn)行比較:相對應(yīng)元素進(jìn)行比較,結(jié)果為一個(gè)同維數(shù)矩陣;矩陣和標(biāo)量進(jìn)行比較:標(biāo)量和矩陣中的每一個(gè)元素進(jìn)行比較,結(jié)果為同維數(shù)矩陣。第九十六頁,共312頁。關(guān)系操作符<小于>=大于等于>大于==等于<=小于等于~=不等于>>a=[12;34];>>b=[13;44];>>a<bans=0110>>a>bans=0000>>a==bans=1001>>a==2ans=0100>>a<=bans=1111

<、<=、>、>=僅比較實(shí)部,而==、~=同時(shí)比較實(shí)部和虛部。第九十七頁,共312頁。3.4.2邏輯運(yùn)算如果A和B是維數(shù)相同的矩陣,或者其中一個(gè)是標(biāo)量,則可以對矩陣進(jìn)行邏輯運(yùn)算。與A&B或and(A,B)或A|B或or(A,B)非~A或not(A)異或xor(a,b)>>a=[0101];>>b=[0110];>>and(a,b)ans=0100>>a&bans=0100>>a|bans=0111>>xor(a,b)ans=0011>>a&1ans=0101第九十八頁,共312頁。3.5各種運(yùn)算符的優(yōu)先級(jí)

MATLAB對各種運(yùn)算的優(yōu)先級(jí)別做了規(guī)定。計(jì)算時(shí),遵守的規(guī)定是較高優(yōu)先級(jí)先于較低優(yōu)先級(jí),相同優(yōu)先級(jí)遵從從左到右原則。優(yōu)先級(jí)運(yùn)算符最高()↓.’、’、.^、^↓~↓.*、*、./、/、.\、\↓+、-↓:↓<、<=、>、>=、~=、==↓&最低|第九十九頁,共312頁。>>x=5;y=3;z=2;>>X=ones(3);>>Y=magic(3)Y=816357492>>Z=zeros(3);>>a=x^2*(X'+Y)+za=2275217710215220212725277>>b=Y&Z+xb=111111111>>c=Y~=Z+X>=Y*xc=000000000第一百頁,共312頁。3.6基本統(tǒng)計(jì)處理3.6.1查最大值(max)1.C=max(A)

返回矩陣A各列的最大值;若A為向量,返回該向量的最大值。2.[C,I]=

max(A)

將矩陣A各列中的最大元素值及其該元素的位置賦予行向量C與I;當(dāng)A是向量時(shí),C、I是標(biāo)量。3.[C,I]=

max(A,[],dim)

按矩陣A的第dim維的方向查取最大的元素及其該元素的位置賦予向量C與I。若dim=1,按列操作(默認(rèn));若dim=2,按行操作。第一百零一頁,共312頁。>>x=[247483];>>m=max(x)m=8>>[m,n]=max(x)m=8n=5>>x=[351;946];>>max(x)ans=956>>[m,n]=max(x)m=956n=212>>[m,n]=max(x,[],1)m=956n=212>>[m,n]=max(x,[],2)m=59n=21第一百零二頁,共312頁。4、2個(gè)向量或矩陣對應(yīng)元素的比較y=max(a,b)注意:若a、b(維數(shù)相同)都為矩陣,則對應(yīng)元素分別進(jìn)行比較,返回一個(gè)最大值,結(jié)果為一個(gè)同維數(shù)矩陣;若其中一個(gè)為標(biāo)量,則矩陣中每一個(gè)位置的元素和該標(biāo)量進(jìn)行比較,返回一個(gè)最大值,結(jié)果為同維數(shù)矩陣。>>a=[5630;3721;2918]a=563037212918>>b=ones(3,4)*4b=444444444444>>

y=max(a,b)y=564447444948>>

y=max(a,4)y=564447444948第一百零三頁,共312頁。3.6.2查取最小值(min)

min函數(shù)用來求取數(shù)據(jù)序列中的最小值,使用方法和max函數(shù)相同。3.6.3求中值(median)1.Y=median(X):返回矩陣X各列元素的中值賦予行向量Y;若X為向量,Y為標(biāo)量。2.Y=median(X,dim):將數(shù)組X的第dim維方向的元素求其中值賦予向量Y;若dim=1,按列操作(默認(rèn)),若dim=2,按行操作。第一百零四頁,共312頁。>>x=[351;946;243]x=351946243>>median(x,2)ans=363>>a=[12342];>>median(a)ans=2>>a=[5630;1429;2918;3947];>>median(a)ans=2.50007.50002.50007.5000>>median(x)ans=343第一百零五頁,共312頁。3.6.4求平均值(mean)1.Y=mean(X):返回矩陣X各列元素的平均值賦予行向量Y;若X為向量,Y為標(biāo)量。2.Y=mean(X,dim):將數(shù)組X的第dim維方向的元素的平均值賦予向量Y;若dim=1,按列操作(默認(rèn)),

若dim=2,按行操作。>>a=[123;456]a=123456>>mean(a)ans=2.50003.50004.5000>>mean(a,2)ans=25第一百零六頁,共312頁。3.6.5求和(sum)1.Y=sum(X):返回矩陣X各列元素的和賦予行向量Y;若X為向量,Y為標(biāo)量。2.Y=sum(X,dim):將數(shù)組X的第dim維方向的元素的和賦予向量Y;若dim=1,按列操作(默認(rèn)),若dim=2,按行操作。>>x=[351;946];>>sum(x)ans=1297>>sum(ans)ans=28>>sum(x,1)ans=1297>>sum(x,2)ans=919第一百零七頁,共312頁。3.6.6求積(prod)1.Y=prod(X):返回矩陣X各列元素的積賦予行向量Y;若X為向量,Y為標(biāo)量。2.Y=prod(X,dim):將數(shù)組X的第dim維方向的元素的積賦予向量Y;若dim=1,按列操作(默認(rèn)),

若dim=2,按行操作。>>a=[123;456]a=123456>>prod(a)ans=41018>>prod(a,2)ans=6120第一百零八頁,共312頁。3.6.7排序(sort)1.Y=sort(X):將矩陣X的各列元素升序排列。2.Y=sort(X,dim):將矩陣X的第dim維元素升序排列;若dim=1,按列操作(默認(rèn)),

若dim=2,按行操作。3.Y=sort(X,dim,mode):按照mode模式對矩陣X進(jìn)行排列,若mode為’ascend’表示升序排列,若mode為’descend’表示降序排列。>>x=[375;683;042];>>sort(x)ans=042373685>>sort(x,2)ans=357368024>>sort(x,2,'descend')ans=753863420第一百零九頁,共312頁。3.7多項(xiàng)式運(yùn)算多項(xiàng)式是形如p(x)=a0xn+a1xn-1+…+an-1x+an的式子,在MATLAB中,多項(xiàng)式用行向量表示P=[a0a1…an-1an]。3.7.1多項(xiàng)式的創(chuàng)建1.直接輸入系數(shù)直接輸入向量,MATLAB將按降冪自動(dòng)將向量的元素分配給多項(xiàng)式各項(xiàng)的系數(shù),該向量可以是行向量或列向量。>>P=[3501012];>>y=poly2sym(P)y=3*x^5+5*x^4+x^2+12第一百一十頁,共312頁。2.由多項(xiàng)式的根逆推多項(xiàng)式若已知某多項(xiàng)式的根,可用poly函數(shù)反推出與其相對應(yīng)的多項(xiàng)式。>>roots=[12];>>p=poly(roots)p=1-32>>poly2sym(p)ans=x^2-3*x+2第一百一十一頁,共312頁。3.7.2多項(xiàng)式的運(yùn)算1.多項(xiàng)式的求值(1)代數(shù)多項(xiàng)式求值:polyval函數(shù)

Y=polyval(P,X)計(jì)算向量P為系數(shù)的多項(xiàng)式在點(diǎn)X的值,如果X是矩陣或者向量,該命令對X的每個(gè)元素都進(jìn)行計(jì)算。(2)矩陣多項(xiàng)式求值:polyvalm函數(shù)

Y=polyvalm(P,X)計(jì)算向量P為系數(shù)的多項(xiàng)式在矩陣X的值,X必須為方陣。Y=P(1)×Xn+P(2)×Xn-1+…+P(N)×X+P(N+1)×I第一百一十二頁,共312頁。>>p=[123];>>poly2sym(p)ans=

x^2+2*x+3>>polyval(p,2)

ans=

11>>a=[12;34];>>polyval(p,a)ans=6111827>>polyvalm(p,a)ans=12142133>>b=[123;456];>>polyvalm(p,b)???Errorusing==>polyvalmMatrixmustbesquare.第一百一十三頁,共312頁。2.多項(xiàng)式的根求多項(xiàng)式的根,即多項(xiàng)式為零的值。設(shè)多項(xiàng)式由行向量p表示,其系數(shù)按降冪排列,使用roots函數(shù)計(jì)算多項(xiàng)式的根,格式為roots(p)。例:計(jì)算多項(xiàng)式x4+3x2+12x-7的根。>>p=[10312-7]p=10312-7>>roots(p)ans=0.7876+2.4351i0.7876-2.4351i-2.08720.5121>>polyval(p,ans)ans=1.0e-013*-0.0178+0.8793i-0.0178-0.8793i0.19540第一百一十四頁,共312頁。3.多項(xiàng)式的四則運(yùn)算(1)加法和減法如果兩個(gè)多項(xiàng)式的向量階數(shù)相同,可直接進(jìn)行加減法計(jì)算;如果向量階數(shù)不同,不能直接進(jìn)行運(yùn)算,需要在低階多項(xiàng)式的前面補(bǔ)0,使其具有相同的階數(shù)。第一百一十五頁,共312頁。>>a=[8228];b=[6161];>>poly2sym(a)ans=8*x^3+2*x^2+2*x+8>>poly2sym(b)ans=6*x^3+x^2+6*x+1>>c=a+bc=14389>>poly2sym(c)ans=14*x^3+3*x^2+8*x+9>>d=a-bd=21-47>>poly2sym(d)ans=2*x^3+x^2-4*x+7>>e=[245];>>d+e???Errorusing==>plusMatrixdimensionsmustagree.>>d+[0e]ans=23012>>poly2sym(ans)ans=2*x^3+3*x^2+12第一百一十六頁,共312頁。(2)乘法使用conv函數(shù)對多項(xiàng)式進(jìn)行乘法計(jì)算,其格式為conv(a,b)例:計(jì)算(x3+2x2+3x+4)(5x3+6x2+7x+8)>>a=[1234];b=[5678];>>poly2sym(a)ans=x^3+2*x^2+3*x+4>>poly2sym(b)ans=5*x^3+6*x^2+7*x+8>>conv(a,b)ans=5163460615232>>poly2sym(ans)ans=5*x^6+16*x^5+34*x^4+60*x^3+61*x^2+52*x+32第一百一十七頁,共312頁。(3)除法使用deconv函數(shù)對多項(xiàng)式進(jìn)行除法計(jì)算。

[q,r]=deconv(v,u):用多項(xiàng)式v除以多項(xiàng)式u,商賦予q,余數(shù)賦予r。

deconv是conv的逆運(yùn)算,v=conv(u,q)+r。>>a=[1234];b=[5678];>>c=conv(a,b);>>[q,r]=deconv(c,a)q=5678r=0000000>>c=c+[0004321];>>[q,r]=deconv(c,a)q=56712r=0000-5-10-15第一百一十八頁,共312頁。(4)求導(dǎo)polyder①

polyder(P):對多項(xiàng)式P求導(dǎo),并返回求導(dǎo)結(jié)果②polyder(P,Q):相當(dāng)于polyder(P*Q)③[p,q]=polyder(P,Q)

求P/Q的導(dǎo)數(shù),導(dǎo)數(shù)的分子存入p,分母存入q。例:計(jì)算多項(xiàng)式(3x2-2x+1)(4x2+5x+6)的導(dǎo)數(shù)>>a=[3-21];b=[456];>>polyder(a,b)ans=482124-7所以所求結(jié)果為:48x3+21x2+24x-7第一百一十九頁,共312頁。例:計(jì)算有理分式1/(x2+5)的導(dǎo)數(shù)>>a=[1];b=[105];>>[p,q]=polyder(a,b)p=-20q=1010025所以結(jié)果為:-2x/(x4+10x2+25)第一百二十頁,共312頁。(5)多項(xiàng)式積分polyint

polyint(p,k):表示對多項(xiàng)式p求積分,常數(shù)項(xiàng)為k(默認(rèn)值為0)。例:計(jì)算>>a=[3-21];>>polyint(a)ans=1-110>>polyint(a,3)ans=1-113所以,計(jì)算結(jié)果為x3-x2+x+k。

溫馨提示

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

評(píng)論

0/150

提交評(píng)論