日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MATLAB命令大全和矩阵操作大全

發布時間:2023/12/14 编程问答 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MATLAB命令大全和矩阵操作大全 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、矩陣的表示
在MATLAB中創建矩陣有以下規則:

a、矩陣元素必須在”[ ]”內;

b、矩陣的同行元素之間用空格(或”,”)隔開;

c、矩陣的行與行之間用”;”(或回車符)隔開;

d、矩陣的元素可以是數值、變量、表達式或函數;

e、矩陣的尺寸不必預先定義。

二,矩陣的創建:

1、直接輸入法

最簡單的建立矩陣的方法是從鍵盤直接輸入矩陣的元素,輸入的方法按照上面的規則。建立向量的時候可以利用冒號表達式,冒號表達式可以產生一個行向量,一般格式是: e1:e2:e3,其中e1為初始值,e2為步長,e3為終止值。還可以用linspace函數產生行向量,其調用格式為:linspace(a,b,n) ,其中a和b是生成向量的第一個和最后一個元素,n是元素總數。

?

2、利用MATLAB函數創建矩陣

基本矩陣函數如下:

(1) ones()函數:產生全為1的矩陣,ones(n):產生n*n維的全1矩陣,ones(m,n):產生m*n維的全1矩陣;

(2) zeros()函數:產生全為0的矩陣;

(3) rand()函數:產生在(0,1)區間均勻分布的隨機陣;

(4) eye()函數:產生單位陣;

(5) randn()函數:產生均值為0,方差為1的標準正態分布隨機矩陣。

3、利用文件建立矩陣

當矩陣尺寸較大或為經常使用的數據矩陣,則可以將此矩陣保存為文件,在需要時直接將文件利用load命令調入工作環境中使用即可。同時可以利用命令reshape對調入的矩陣進行重排。reshape(A,m,n),它在矩陣總元素保持不變的前提下,將矩陣A重新排成m*n的二維矩陣。

二、矩陣的簡單操作
1.獲取矩陣元素

可以通過下標(行列索引)引用矩陣的元素,如 Matrix(m,n)。

也可以采用矩陣元素的序號來引用矩陣元素。

矩陣元素的序號就是相應元素在內存中的排列順序。

在MATLAB中,矩陣元素按列存儲。

序號(Index)與下標(Subscript )是一一對應的,以m*n矩陣A為例,矩陣元素A(i,j)的序號為(j-1)*m+i。

其相互轉換關系也可利用sub2ind和ind2sub函數求得。

2.矩陣拆分

利用冒號表達式獲得子矩陣:

(1) A(:,j)表示取A矩陣的第j列全部元素;A(i,:)表示A矩陣第i行的全部元素;A(i,j)表示取A矩陣第i行、第j列的元素。

(2) A(i:i+m,:)表示取A矩陣第i~i+m行的全部元素;A(:,k:k+m)表示取A矩陣第k~k+m列的全部元素,A(i:i+m,k:k+m)表示取A矩陣第i~i+m行內,并在第k~k+m列中的所有元素。此外,還可利用一般向量和end運算符來表示矩陣下標,從而獲得子矩陣。end表示某一維的末尾元素下標。

利用空矩陣刪除矩陣的元素:

在MATLAB中,定義[]為空矩陣。給變量X賦空矩陣的語句為X=[]。注意,X=[]與clear X不同,clear是將X從工作空間中刪除,而空矩陣則存在于工作空間中,只是維數為0。

3、特殊矩陣

(1) 魔方矩陣魔方矩陣有一個有趣的性質,其每行、每列及兩條對角線上的元素和都相等。對于n階魔方陣,其元素由1,2,3,…,n2共n2個整數組成。MATLAB提供了求魔方矩陣的函數magic(n),其功能是生成一個n階魔方陣。

(2) 范得蒙矩陣范得蒙(Vandermonde)矩陣最后一列全為1,倒數第二列為一個指定的向量,其他各列是其后列與倒數第二列的點乘積。可以用一個指定向量生成一個范得蒙矩陣。在MATLAB中,函數vander(V)生成以向量V為基礎向量的范得蒙矩陣。

(3) 希爾伯特矩陣在MATLAB中,生成希爾伯特矩陣的函數是hilb(n)。使用一般方法求逆會因為原始數據的微小擾動而產生不可靠的計算結果。MATLAB中,有一個專門求希爾伯特矩陣的逆的函數invhilb(n),其功能是求n階的希爾伯特矩陣的逆矩陣。

(4) 托普利茲矩陣托普利茲(Toeplitz)矩陣除第一行第一列外,其他每個元素都與左上角的元素相同。生成托普利茲矩陣的函數是toeplitz(x,y),它生成一個以x為第一列,y為第一行的托普利茲矩陣。這里x, y均為向量,兩者不必等長。toeplitz(x)用向量x生成一個對稱的托普利茲矩陣。

(5) 伴隨矩陣 MATLAB生成伴隨矩陣的函數是compan(p),其中p是一個多項式的系數向量,高次冪系數排在前,低次冪排在后。

(6) 帕斯卡矩陣我們知道,二次項(x+y)n展開后的系數隨n的增大組成一個三角形表,稱為楊輝三角形。由楊輝三角形表組成的矩陣稱為帕斯卡(Pascal)矩陣。函數pascal(n)生成一個n階帕斯卡矩陣。

三、矩陣的運算

1、算術運算

MATLAB的基本算術運算有:+(加)、-(減)、*(乘)、/(右除)、\(左除)、^(乘方)、’(轉置)。運算是在矩陣意義下進行的,單個數據的算術運算只是一種特例。

(1) 矩陣加減運算假定有兩個矩陣A和B,則可以由A+B和A-B實現矩陣的加減運算。運算規則是:若A和B矩陣的維數相同,則可以執行矩陣的加減運算,A和B矩陣的相應元素相加減。如果A與B的維數不相同,則MATLAB將給出錯誤信息,提示用戶兩個矩陣的維數不匹配。

(2) 矩陣乘法 假定有兩個矩陣A和B,若A為m*n矩陣,B為n*p矩陣,則C=A*B為m*p矩陣。

(3) 矩陣除法在MATLAB中,有兩種矩陣除法運算:\和/,分別表示左除和右除。如果A矩陣是非奇異方陣,則A\B和B/A運算可以實現。A\B等效于A的逆左乘B矩陣,也就是inv(A)*B,而B/A等效于A矩陣的逆右乘B矩陣,也就是B*inv(A)。對于含有標量的運算,兩種除法運算的結果相同。對于矩陣來說,左除和右除表示兩種不同的除數矩陣和被除數矩陣的關系,一般A\B≠B/A。

(4) 矩陣的乘方 一個矩陣的乘方運算可以表示成A^x,要求A為方陣,x為標量。

(5) 矩陣的轉置 對實數矩陣進行行列互換,對復數矩陣,共軛轉置,特殊的,操作符.’共軛不轉置(見點運算);

(6) 點運算在MATLAB中,有一種特殊的運算,因為其運算符是在有關算術運算符前面加點,所以叫點運算。點運算符有.*、./、.\和.^。兩矩陣進行點運算是指它們的對應元素進行相關運算,要求兩矩陣的維參數相同。

2、關系運算

MATLAB提供了6種關系運算符:<(小于)、<=(小于或等于)、>(大于)、>=(大于或等于)、==(等于)、~=(不等于)。關系運算符的運算法則為:

(1) 當兩個比較量是標量時,直接比較兩數的大小。若關系成立,關系表達式結果為1,否則為0;

(2) 當參與比較的量是兩個維數相同的矩陣時,比較是對兩矩陣相同位置的元素按標量關系運算規則逐個進行,并給出元素比較結果。最終的關系運算的結果是一個維數與原矩陣相同的矩陣,它的元素由0或1組成;

(3) 當參與比較的一個是標量,而另一個是矩陣時,則把標量與矩陣的每一個元素按標量關系運算規則逐個比較,并給出元素比較結果。最終的關系運算的結果是一個維數與原矩陣相同的矩陣,它的元素由0或1組成。

3、邏輯運算

MATLAB提供了3種邏輯運算符:&(與)、|(或)和~(非)。 邏輯運算的運算法則為:

(1) 在邏輯運算中,確認非零元素為真,用1表示,零元素為假,用0表示;

(2) 設參與邏輯運算的是兩個標量a和b,那么,a&b a,b全為非零時,運算結果為1,否則為0。 a|b a,b中只要有一個非零,運算結果為1。~a 當a是零時,運算結果為1;當a非零時,運算結果為0。

(3) 若參與邏輯運算的是兩個同維矩陣,那么運算將對矩陣相同位置上的元素按標量規則逐個進行。最終運算結果是一個與原矩陣同維的矩陣,其元素由1或0組成;

(4) 若參與邏輯運算的一個是標量,一個是矩陣,那么運算將在標量與矩陣中的每個元素之間按標量規則逐個進行。最終運算結果是一個與矩陣同維的矩陣,其元素由1或0組成;

(5) 邏輯非是單目運算符,也服從矩陣運算規則;

(6) 在算術、關系、邏輯運算中,算術運算優先級最高,邏輯運算優先級最低。

四、矩陣分析

1、對角陣

(1) 對角陣只有對角線上有非0元素的矩陣稱為對角矩陣,對角線上的元素相等的對角矩陣稱為數量矩陣,對角線上的元素都為1的對角矩陣稱為單位矩陣。

(1) 提取矩陣的對角線元素設A為m*n矩陣,diag(A)函數用于提取矩陣A主對角線元素,產生一個具有min(m,n)個元素的列向量。diag(A)函數還有一種形式diag(A,k),其功能是提取第k條對角線的元素。

(2) 構造對角矩陣設V為具有m個元素的向量,diag(V)將產生一個m*m對角矩陣,其主對角線元素即為向量V的元素。diag(V)函數也有另一種形式diag(V,k),其功能是產生一個n*n(n=m+k)對角陣,其第m條對角線的元素即為向量V的元素。

2、三角陣

三角陣又進一步分為上三角陣和下三角陣,所謂上三角陣,即矩陣的對角線以下的元素全為0的一種矩陣,而下三角陣則是對角線以上的元素全為0的一種矩陣。

(1) 上三角矩陣 求矩陣A的上三角陣的MATLAB函數是triu(A)。 triu(A)函數也有另一種形式triu(A,k),其功能是求矩陣A的第k條對角線以上的元素。

(2) 下三角矩陣在MATLAB中,提取矩陣A的下三角矩陣的函數是tril(A)和tril(A,k),其用法與提取上三角矩陣的函數triu(A)和triu(A,k)完全相同。

3、矩陣的轉置與旋轉

(1) 矩陣的轉置 轉置運算符是單撇號(’)。

(2) 矩陣的旋轉 利用函數rot90(A,k)將矩陣A旋轉90o的k倍,當k為1時可省略。

4、矩陣的翻轉

對矩陣實施左右翻轉是將原矩陣的第一列和最后一列調換,第二列和倒數第二列調換,…,依次類推。矩陣A實施左右翻轉的函數是fliplr(A),對矩陣A實施上下翻轉的函數是flipud(A)。

5、矩陣的逆與偽逆

(1) 矩陣的逆 對于一個方陣A,如果存在一個與其同階的方陣B,使得:AB=BA=I (I為單位矩陣) 則稱B為A的逆矩陣,當然,A也是B的逆矩陣。求方陣A的逆矩陣可調用函數inv(A)。

(2) 矩陣的偽逆如果矩陣A不是一個方陣,或者A是一個非滿秩的方陣時,矩陣A沒有逆矩陣,但可以找到一個與A的轉置矩陣A’同型的矩陣B,使得:ABA=A,BAB=B 此時稱矩陣B為矩陣A的偽逆,也稱為廣義逆矩陣。在MATLAB中,求一個矩陣偽逆的函數是pinv(A)。

6、方陣的行列式

把一個方陣看作一個行列式,并對其按行列式的規則求值,這個值就稱為矩陣所對應的行列式的值。在MATLAB中,求方陣A所對應的行列式的值的函數是det(A)。

7、矩陣的秩與跡

(1) 矩陣的秩 矩陣線性無關的行數與列數稱為矩陣的秩。在MATLAB中,求矩陣秩的函數是rank(A)。

(2) 矩陣的跡矩陣的跡等于矩陣的對角線元素之和,也等于矩陣的特征值之和。在MATLAB中,求矩陣的跡的函數是trace(A)。

8、向量和矩陣的范數

矩陣或向量的范數用來度量矩陣或向量在某種意義下的長度。范數有多種方法定義,其定義不同,范數值也就不同。

(1) 向量的3種常用范數及其計算函數 在MATLAB中,求向量范數的函數為:

a、norm(V)或norm(V,2):計算向量V的2-范數;

b、norm(V,1):計算向量V的1-范數;

c、norm(V,inf):計算向量V的∞-范數。

(2) 矩陣的范數及其計算函數 MATLAB提供了求3種矩陣范數的函數,其函數調用格式與求向量的范數的函數完全相同。

(3) 矩陣的條件數 在MATLAB中,計算矩陣A的3種條件數的函數是:

a、cond(A,1) 計算A的1-范數下的條件數;

b、cond(A)或cond(A,2) 計算A的2-范數數下的條件數;

c、cond(A,inf) 計算A的 ∞-范數下的條件數。

9、 矩陣的特征值與特征向量

在MATLAB中,計算矩陣A的特征值和特征向量的函數是eig(A),常用的調用格式有3種:

(1) E=eig(A):求矩陣A的全部特征值,構成向量E。

(2) [V,D]=eig(A):求矩陣A的全部特征值,構成對角陣D,并求A的特征向量構成V的列向量。

(3) [V,D]=eig(A,’nobalance’):與第2種格式類似,但第2種格式中先對A作相似變換后求矩陣A的特征值和特征向量,而格式3直接求矩陣A的特征值和特征向量。

五、字符串

在MATLAB中,字符串是用單撇號括起來的字符序列。MATLAB將字符串當作一個行向量,每個元素對應一個字符,其標識方法和數值向量相同。也可以建立多行字符串矩陣。字符串是以ASCII碼形式存儲的。abs和double函數都可以用來獲取字符串矩陣所對應的ASCII碼數值矩陣。相反,char函數可以把ASCII碼矩陣轉換為字符串矩陣。與字符串有關的另一個重要函數是eval,其調用格式為: eval_r(t) 其中t為字符串。它的作用是把字符串的內容作為對應的MATLAB語句來執行。

六、其他

查看矩陣非零元素的分布spy(A);

第二部分 矩陣的應用

一、稀疏矩陣

對于一個 n 階矩陣,通常需要 n2 的存儲空間,當 n 很大時,進行矩陣運算時會占用大量的內存空間和運算時間。在許多實際問題中遇到的大規模矩陣中通常含有大量0元素,這樣的矩陣稱為稀疏矩陣。Matlab支持稀疏矩陣,只存儲矩陣的非零元素。由于不存儲那些”0″元素,也不對它們進行操作,從而節省內存空間和計算時間,其計算的復雜性和代價僅僅取決于稀疏矩陣的非零元素的個數,這在矩陣的存儲空間和計算時間上都有很大的優點。

矩陣的密度定義為矩陣中非零元素的個數除以矩陣中總的元素個數。對于低密度的矩陣,采用稀疏方式存儲是一種很好的選擇。

1、稀疏矩陣的創建

(1) 將完全存儲方式轉化為稀疏存儲方式函數A=sparse(S)將矩陣S轉化為稀疏存儲方式的矩陣A。當矩陣S是稀疏存儲方式時,則函數調用相當于A=S。 sparse函數還有其他一些調用格式: sparse(m,n):生成一個m*n的所有元素都是0的稀疏矩陣。 sparse(u,v,S)--:u,v,S是3個等長的向量。S是要建立的稀疏矩陣的非0元素,u(i)、v(i)分別是S(i)的行和列下標,該函數建立一個max(u)行、max(v)列并以S為稀疏元素的稀疏矩陣。此外,還有一些和稀疏矩陣操作有關的函數。full(A):返回和稀疏存儲矩陣A對應的完全存儲方式矩陣。

(2) 直接創建稀疏矩陣 S=sparse(i,j,s,m,n),其中i 和j 分別是矩陣非零元素的行和列指標向量,s 是非零元素值向量,m,n 分別是矩陣的行數和列數。

(3) 從文件中創建稀疏矩陣利用load和spconvert函數可以從包含一系列下標和非零元素的文本文件中輸入稀疏矩陣。例:設文本文件 T.txt 中有三列內容,第一列是一些行下標,第二列是列下標,第三列是非零元素值。load T.txt S=spconvert(T)。

(4) 稀疏帶狀矩陣的創建 S=spdiags(B,d,m,n) 其中m 和n 分別是矩陣的行數和列數;d是長度為p的整數向量,它指定矩陣S的對角線位置;B是全元素矩陣,用來給定S對角線位置上的元素,行數為min(m,n),列數為p 。

(5) 其它稀疏矩陣創建函數

S=speye(m,n)

S=speye(size(A)) % has the same size as A

S=buchy % 一個內置的稀疏矩陣(鄰接矩陣)

等等

2、稀疏矩陣的運算

稀疏存儲矩陣只是矩陣的存儲方式不同,它的運算規則與普通矩陣是一樣的,可以直接參與運算。所以,Matlab中對滿矩陣的運算和函數同樣可用在稀疏矩陣中。結果是稀疏矩陣還是滿矩陣,取決于運算符或者函數。當參與運算的對象不全是稀疏存儲矩陣時,所得結果一般是完全存儲形式。

3、其他

(1) 非零元素信息

nnz(S) % 返回非零元素的個數

nonzeros(S) % 返回列向量,包含所有的非零元素

nzmax(S) % 返回分配給稀疏矩陣中非零項的總的存儲空間

(2) 查看稀疏矩陣的形狀 spy(S)

(3) find函數與稀疏矩陣

[i,j,s]=find(S)

[i,j]=find(S)

返回 S 中所有非零元素的下標和數值,S 可以是稀疏矩陣或滿矩陣。

?

?

MATLAB命令大全

管理命令和函數?
? ? help ? ? ?在線幫助文件?
? ? doc ? ? ?裝入超文本說明?
? ? what ? ? ?M、MAT、MEX文件的目錄列表?
? ? type ? ? ?列出M文件?
? ? lookfor ? ? ?通過help條目搜索關鍵字?
? ? which ? ? ?定位函數和文件?
? ? Demo ? ? ?運行演示程序?
? ? Path ? ? ?控制MATLAB的搜索路徑?
管理變量和工作空間?
? ? Who ? ? ?列出當前變量?
? ? Whos ? ? ?列出當前變量(長表)?
? ? Load ? ? ?從磁盤文件中恢復變量?
? ? Save ? ? ?保存工作空間變量?
? ? Clear ? ? ?從內存中清除變量和函數?
? ? Pack ? ? ?整理工作空間內存?
? ? Size ? ? ?矩陣的尺寸?
? ? Length ? ? ?向量的長度?
? ? disp ? ? ?顯示矩陣或?
與文件和*作系統有關的命令?
? ? cd ? ? ?改變當前工作目錄?
? ? Dir ? ? ?目錄列表?
? ? Delete ? ? ?刪除文件?
? ? Getenv ? ? ?獲取環境變量值?
? ? ! ? ? ?執行DOS*作系統命令?
? ? Unix ? ? ?執行UNIX*作系統命令并返回結果?
? ? Diary ? ? ?保存MATLAB任務?
控制命令窗口?
? ? Cedit ? ? ?設置命令行編輯?
? ? Clc ? ? ?清命令窗口?
? ? Home ? ? ?光標置左上角?
? ? Format ? ? ?設置輸出格式?
? ? Echo ? ? ?底稿文件內使用的回顯命令?
? ? more ? ? ?在命令窗口中控制分頁輸出?
啟動和退出MATLAB?
? ? Quit ? ? ?退出MATLAB?
? ? Startup ? ? ?引用MATLAB時所執行的M文件?
? ? Matlabrc ? ? ?主啟動M文件?
一般信息?
? ? Info ? ? ?MATLAB系統信息及Mathworks公司信息?
? ? Subscribe ? ? ?成為MATLAB的訂購用戶?
? ? hostid ? ? ?MATLAB主服務程序的識別代號?
? ? Whatsnew ? ? ?在說明書中未包含的新信息?
? ? Ver ? ? ?版本信息?
*作符和特殊字符?
? ? + ? ? ?加?
? ? — ? ? ?減?
? ? * ? ? ?矩陣乘法?
? ? .* ? ? ?數組乘法?
? ? ^ ? ? ?矩陣冪?
? ? .^ ? ? ?數組冪?
? ? \ ? ? ?左除或反斜杠?
? ? / ? ? ?右除或斜杠?
? ? ./ ? ? ?數組除?
? ? Kron ? ? ?Kronecker張量積?
? ? : ? ? ?冒號?
? ? ( ) ? ? ?圓括號?
? ? [ ] ? ? ?方括號?
? ? . ? ? ?小數點?
? ? .. ? ? ?父目錄?
? ? … ? ? ?繼續?
? ? , ? ? ?逗號?
? ? ; ? ? ?分號?
? ? % ? ? ?注釋?
? ? ! ? ? ?感嘆號?
? ? ‘ ? ? ?轉置或引用?
? ? = ? ? ?賦值?
? ? = = ? ? ?相等?
? ? < > ? ? ?關系*作符?
? ? & ? ? ?邏輯與?
? ? | ? ? ?邏輯或?
? ? ~ ? ? ?邏輯非?
? ? xor ? ? ?邏輯異或?
邏輯函數?
? ? Exist ? ? ?檢查變量或函數是否存在?
? ? Any ? ? ?向量的任一元為真,則其值為真?
? ? All ? ? ?向量的所有元為真,則其值為真?
? ? Find ? ? ?找出非零元素的索引號?
三角函數?
? ? Sin ? ? ?正弦?
? ? Sinh ? ? ?雙曲正弦?
? ? Asin ? ? ?反正弦?
? ? Asinh ? ? ?反雙曲正弦?
? ? Cos ? ? ?余弦?
? ? Cosh ? ? ?雙曲余弦?
? ? Acos ? ? ?反余弦?
? ? Acosh ? ? ?反雙曲余弦?
? ? Tan ? ? ?正切?
? ? Tanh ? ? ?雙曲正切?
? ? Atan ? ? ?反正切?
? ? Atan2 ? ? ?四象限反正切?
? ? Atanh ? ? ?反雙曲正切?
? ? Sec ? ? ?正割?
? ? Sech ? ? ?雙曲正割?
? ? Asech ? ? ?反雙曲正割?
? ? Csc ? ? ?余割?
? ? Csch ? ? ?雙曲余割?
? ? Acsc ? ? ?反余割?
? ? Acsch ? ? ?反雙曲余割?
? ? Cot ? ? ?余切?
? ? Coth ? ? ?雙曲余切?
? ? Acot ? ? ?反余切?
? ? Acoth ? ? ?反雙曲余切?
指數函數?
? ? Exp ? ? ?指數?
? ? Log ? ? ?自然對數?
? ? Log10 ? ? ?常用對數?
? ? Sqrt ? ? ?平方根?
復數函數?
? ? Abs ? ? ?絕對值?
? ? Argle ? ? ?相角?
? ? Conj ? ? ?復共軛?
? ? Image ? ? ?復數虛部?
? ? Real ? ? ?復數實部?
數值函數?
? ? Fix ? ? ?朝零方向取整?
? ? Floor ? ? ?朝負無窮大方向取整?
? ? Ceil ? ? ?朝正無窮大方向取整?
? ? Round ? ? ?朝最近的整數取整?
? ? Rem ? ? ?除后取余?
? ? Sign ? ? ?符號函數?
基本矩陣?
? ? Zeros ? ? ?零矩陣?
? ? Ones ? ? ?全“1”矩陣?
? ? Eye ? ? ?單位矩陣?
? ? Rand ? ? ?均勻分布的隨機數矩陣?
? ? Randn ? ? ?正態分布的隨機數矩陣?
? ? Logspace ? ? ?對數間隔的向量?
? ? Meshgrid ? ? ?三維圖形的X和Y數組?
? ? : ? ? ?規則間隔的向量?
特殊變量和常數?
? ? Ans ? ? ?當前的答案?
? ? Eps ? ? ?相對浮點精度?
? ? Realmax ? ? ?最大浮點數?
? ? Realmin ? ? ?最小浮點數?
? ? Pi ? ? ?圓周率?
? ? I,j ? ? ?虛數單位?
? ? Inf ? ? ?無窮大?
? ? Nan ? ? ?非數值?
? ? Flops ? ? ?浮點運算次數?
? ? Nargin ? ? ?函數輸入變量數?
? ? Nargout ? ? ?函數輸出變量數?
? ? Computer ? ? ?計算機類型?
? ? Isieee ? ? ?當計算機采用IEEE算術標準時,其值為真?
? ? Why ? ? ?簡明的答案?
? ? Version ? ? ?MATLAB版本號?
時間和日期?
? ? Clock ? ? ?掛鐘?
? ? Date ? ? ?日歷?
? ? Etime ? ? ?計時函數?
? ? Tic ? ? ?秒表開始計時?
? ? Toc ? ? ?計時函數?
? ? Cputime ? ? ?CPU時間(以秒為單位)?
矩陣*作?
? ? Diag ? ? ?建立和提取對角陣?
? ? Fliplr ? ? ?矩陣作左右翻轉?
? ? Flipud ? ? ?矩陣作上下翻轉?
? ? Reshape ? ? ?改變矩陣大小?
? ? Rot90 ? ? ?矩陣旋轉90度?
? ? Tril ? ? ?提取矩陣的下三角部分?
? ? Triu ? ? ?提取矩陣的上三角部分?
? ? : ? ? ?矩陣的索引號,重新排列矩陣?
? ? Compan ? ? ?友矩陣?
? ? Hadamard ? ? ?Hadamard矩陣?
? ? Hankel ? ? ?Hankel矩陣?
? ? Hilb ? ? ?Hilbert矩陣?
? ? Invhilb ? ? ?逆Hilbert矩陣?
? ? Kron ? ? ?Kronecker張量積?
? ? Magic ? ? ?魔方矩陣?
? ? Toeplitz ? ? ?Toeplitz矩陣?
? ? Vander ? ? ?Vandermonde矩陣?
矩陣分析 ? ? ??
? ? Cond ? ? ?計算矩陣條件數?
? ? Norm ? ? ?計算矩陣或向量范數?
? ? Rcond Linpack ? ? ?逆條件值估計?
? ? Rank ? ? ?計算矩陣秩?
? ? Det ? ? ?計算矩陣行列式值?
? ? Trace ? ? ?計算矩陣的跡?
? ? Null ? ? ?零矩陣?
? ? Orth ? ? ?正交化?
線性方程?
? ? \和/ ? ? ?線性方程求解?
? ? Chol ? ? ?Cholesky分解?
? ? Lu ? ? ?高斯消元法求系數陣?
? ? Inv ? ? ?矩陣求逆?
? ? Qr ? ? ?正交三角矩陣分解(QR分解)?
? ? Pinv ? ? ?矩陣偽逆?
特征值和奇異值?
? ? Eig ? ? ?求特征值和特征向量?
? ? Poly ? ? ?求特征多項式?
? ? Hess ? ? ?Hessberg形式?
? ? Qz ? ? ?廣義特征值?
? ? Cdf2rdf ? ? ?變復對角矩陣為實分塊對角形式?
? ? Schur ? ? ?Schur分解?
? ? Balance ? ? ?矩陣均衡處理以提高特征值精度?
? ? Svde ? ? ?奇異值分解?
矩陣函數?
? ? Expm ? ? ?矩陣指數?
? ? Expm1 ? ? ?實現expm的M文件?
? ? Expm2 ? ? ?通過泰勒級數求矩陣指數?
? ? Expm3 ? ? ?通過特征值和特征向量求矩陣指數?
? ? Logm ? ? ?矩陣對數?
? ? Sqrtm ? ? ?矩陣開平方根?
? ? Funm ? ? ?一般矩陣的計算?
泛函——非線性數值方法?
? ? Ode23 ? ? ?低階法求解常微分方程?
? ? Ode23p ? ? ?低階法求解常微分方程并繪出結果圖形?
? ? Ode45 ? ? ?高階法求解常微分方程?
? ? Quad ? ? ?低階法計算數值積分?
? ? Quad8 ? ? ?高階法計算數值積分?
? ? Fmin ? ? ?單變量函數的極小變化?
? ? Fmins ? ? ?多變量函數的極小化?
? ? Fzero ? ? ?找出單變量函數的零點?
? ? Fplot ? ? ?函數繪圖?
多項式函數?
? ? Roots ? ? ?求多項式根?
? ? Poly ? ? ?構造具有指定根的多項式?
? ? Polyvalm ? ? ?帶矩陣變量的多項式計算?
? ? Residue ? ? ?部分分式展開(留數計算)?
? ? Polyfit ? ? ?數據的多項式擬合?
? ? Polyder ? ? ?微分多項式?
? ? Conv ? ? ?多項式乘法?
? ? Deconv ? ? ?多項式除法?
建立和控制圖形窗口?
? ? Figure ? ? ?建立圖形?
? ? Gcf ? ? ?獲取當前圖形的句柄?
? ? Clf ? ? ?清除當前圖形?
? ? Close ? ? ?關閉圖形?
建立和控制坐標系?
? ? Subplot ? ? ?在標定位置上建立坐標系?
? ? Axes ? ? ?在任意位置上建立坐標系?
? ? Gca ? ? ?獲取當前坐標系的句柄?
? ? Cla ? ? ?清除當前坐標系?
? ? Axis ? ? ?控制坐標系的刻度和形式?
? ? Caxis ? ? ?控制偽彩色坐標刻度?
? ? Hold ? ? ?保持當前圖形?
句柄圖形對象?
? ? Figure ? ? ?建立圖形窗口?
? ? Axes ? ? ?建立坐標系?
? ? Line ? ? ?建立曲線?
? ? Text ? ? ?建立文本串?
? ? Patch ? ? ?建立圖形填充塊?
? ? Surface ? ? ?建立曲面?
? ? Image ? ? ?建立圖像?
? ? Uicontrol ? ? ?建立用戶界面控制?
? ? Uimen ? ? ?建立用戶界面菜單?
句柄圖形*作?
? ? Set ? ? ?設置對象?
? ? Get ? ? ?獲取對象特征?
? ? Reset ? ? ?重置對象特征?
? ? Delete ? ? ?刪除對象?
? ? Newplot ? ? ?預測nextplot性質的M文件?
? ? Gco ? ? ?獲取當前對象的句柄?
? ? Drawnow ? ? ?填充未完成繪圖事件?
? ? Findobj ? ? ?尋找指定特征值的對象?
打印和存儲?
? ? Print ? ? ?打印圖形或保存圖形?
? ? Printopt ? ? ?配置本地打印機缺省值?
? ? Orient ? ? ?設置紙張取向?
? ? Capture ? ? ?屏幕抓取當前圖形?
基本X—Y圖形?
? ? Plot ? ? ?線性圖形?
? ? Loglog ? ? ?對數坐標圖形?
? ? Semilogx ? ? ?半對數坐標圖形(X軸為對數坐標)?
? ? Semilogy ? ? ?半對數坐標圖形(Y軸為對數坐標)?
? ? Fill ? ? ?繪制二維多邊形填充圖?
特殊X—Y圖形?
? ? Polar ? ? ?極坐標圖?
? ? Bar ? ? ?條形圖?
? ? Stem ? ? ?離散序列圖或桿圖?
? ? Stairs ? ? ?階梯圖?
? ? Errorbar ? ? ?誤差條圖?
? ? Hist ? ? ?直方圖?
? ? Rose ? ? ?角度直方圖?
? ? Compass ? ? ?區域圖?
? ? Feather ? ? ?箭頭圖?
? ? Fplot ? ? ?繪圖函數?
? ? Comet ? ? ?星點圖?
圖形注釋?
? ? Title ? ? ?圖形標題?
? ? Xlabel ? ? ?X軸標記?
? ? Ylabel ? ? ?Y軸標記?
? ? Text ? ? ?文本注釋?
? ? Gtext ? ? ?用鼠標放置文本?
? ? Grid ? ? ?網格線?
MATLAB編程語言?
? ? Function ? ? ?增加新的函數?
? ? Eval ? ? ?執行由MATLAB表達式構成的字串?
? ? Feval ? ? ?執行由字串指定的函數?
? ? Global ? ? ?定義全局變量?
程序控制流?
? ? If ? ? ?條件執行語句?
? ? Else ? ? ?與if命令配合使用?
? ? Elseif ? ? ?與if命令配合使用?
? ? End ? ? ?For,while和if語句的結束?
? ? For ? ? ?重復執行指定次數(循環)?
? ? While ? ? ?重復執行不定次數(循環)?
? ? Break ? ? ?終止循環的執行?
? ? Return ? ? ?返回引用的函數?
? ? Error ? ? ?顯示信息并終止函數的執行?
交互輸入?
? ? Input ? ? ?提示用戶輸入?
? ? Keyboard ? ? ?像底稿文件一樣使用鍵盤輸入?
? ? Menu ? ? ?產生由用戶輸入選擇的菜單?
? ? Pause ? ? ?等待用戶響應?
? ? Uimenu ? ? ?建立用戶界面菜單?
? ? Uicontrol ? ? ?建立用戶界面控制?
一般字符串函數?
? ? Strings ? ? ?MATLAB中有關字符串函數的說明?
? ? Abs ? ? ?變字符串為數值?
? ? Setstr ? ? ?變數值為字符串?
? ? Isstr ? ? ?當變量為字符串時其值為真?
? ? Blanks ? ? ?空串?
? ? Deblank ? ? ?刪除尾部的空串?
? ? Str2mat ? ? ?從各個字符串中形成文本矩陣?
? ? Eval ? ? ?執行由MATLAB表達式組成的串?
字符串比較?
? ? Strcmp ? ? ?比較字符串?
? ? Findstr ? ? ?在一字符串中查找另一個子串?
? ? Upper ? ? ?變字符串為大寫?
? ? Lower ? ? ?變字符串為小寫?
? ? Isletter ? ? ?當變量為字母時,其值為真?
? ? Isspace ? ? ?當變量為空白字符時,其值為真?
字符串與數值之間變換?
? ? Num2str ? ? ?變數值為字符串?
? ? Int2str ? ? ?變整數為字符串?
? ? Str2num ? ? ?變字符串為數值?
? ? Sprintf ? ? ?變數值為格式控制下的字符串?
? ? Sscanf ? ? ?變字符串為格式控制下的數值?
十進制與十六進制數之間變換?
? ? Hex2num ? ? ?變十六進制為IEEE標準下的浮點數?
? ? Hex2dec ? ? ?變十六制數為十進制數?
? ? Dec2hex ? ? ?變十進制數為十六進制數?
建模?
? ? Append ? ? ?追加系統動態特性?
? ? Augstate ? ? ?變量狀態作為輸出?
? ? Blkbuild ? ? ?從方框圖中構造狀態空間系統?
? ? Cloop ? ? ?系統的閉環?
? ? Connect ? ? ?方框圖建模?
? ? Conv ? ? ?兩個多項式的卷積?
? ? Destim ? ? ?從增益矩陣中形成離散狀態估計器?
? ? Dreg ? ? ?從增益矩陣中形成離散控制器和估計器?
? ? Drmodel ? ? ?產生隨機離散模型?
? ? Estim ? ? ?從增益矩陣中形成連續狀態估計器?
? ? Feedback ? ? ?反饋系統連接?
? ? Ord2 ? ? ?產生二階系統的A、B、C、D?
? ? Pade ? ? ?時延的Pade近似?
? ? Parallel ? ? ?并行系統連接?
? ? Reg ? ? ?從增益矩陣中形成連續控制器和估計器?
? ? Rmodel ? ? ?產生隨機連續模型?
? ? Series ? ? ?串行系統連接?
? ? Ssdelete ? ? ?從模型中刪除輸入、輸出或狀態?
? ? ssselect ? ? ?從大系統中選擇子系統?
模型變換?
? ? C2d ? ? ?變連續系統為離散系統?
? ? C2dm ? ? ?利用指定方法變連續為離散系統?
? ? C2dt ? ? ?帶一延時變連續為離散系統?
? ? D2c ? ? ?變離散為連續系統?
? ? D2cm ? ? ?利用指定方法變離散為連續系統?
? ? Poly ? ? ?變根值表示為多項式表示?
? ? Residue ? ? ?部分分式展開?
? ? Ss2tf ? ? ?變狀態空間表示為傳遞函數表示?
? ? Ss2zp ? ? ?變狀態空間表示為零極點表示?
? ? Tf2ss ? ? ?變傳遞函數表示為狀態空間表示?
? ? Tf2zp ? ? ?變傳遞函數表示為零極點表示?
? ? Zp2tf ? ? ?變零極點表示為傳遞函數表示?
? ? Zp2ss ? ? ?變零極點表示為狀態空間表示?
模型簡化?
? ? Balreal ? ? ?平衡實現?
? ? Dbalreal ? ? ?離散平衡實現?
? ? Dmodred ? ? ?離散模型降階?
? ? Minreal ? ? ?最小實現和零極點對消?
? ? Modred ? ? ?模型降階?
模型實現?
? ? Canon ? ? ?正則形式?
? ? Ctrbf ? ? ?可控階梯形?
? ? Obsvf ? ? ?可觀階梯形?
? ? Ss2ss ? ? ?采用相似變換?
模型特性?
? ? Covar ? ? ?相對于白噪聲的連續協方差響應?
? ? Ctrb ? ? ?可控性矩陣?
? ? Damp ? ? ?阻尼系數和固有頻率?
? ? Dcgain ? ? ?連續穩態(直流)增益?
? ? Dcovar ? ? ?相對于白噪聲的離散協方差響應?
? ? Ddamp ? ? ?離散阻尼系數和固有頻率?
? ? Ddcgain ? ? ?離散系統增益?
? ? Dgram ? ? ?離散可控性和可觀性?
? ? Dsort ? ? ?按幅值排序離散特征值?
? ? Eig ? ? ?特征值和特征向量?
? ? Esort ? ? ?按實部排列連續特征值?
? ? Gram ? ? ?可控性和可觀性?
? ? Obsv ? ? ?可觀性矩陣?
? ? Printsys ? ? ?按格式顯示系統?
? ? Roots ? ? ?多項式之根?
? ? Tzero ? ? ?傳遞零點?
? ? Tzero2 ? ? ?利用隨機擾動法傳遞零點?
時域響應?
? ? Dimpulse ? ? ?離散時間單位沖激響應?
? ? Dinitial ? ? ?離散時間零輸入響應?
? ? Dlsim ? ? ?任意輸入下的離散時間仿真?
? ? Dstep ? ? ?離散時間階躍響應?
? ? Filter ? ? ?單輸入單輸出Z變換仿真?
? ? Impulse ? ? ?沖激響應?
? ? Initial ? ? ?連續時間零輸入響應?
? ? Lsim ? ? ?任意輸入下的連續時間仿真?
? ? Ltitr ? ? ?低級時間響應函數?
? ? Step ? ? ?階躍響應?
? ? Stepfun ? ? ?階躍函數?
頻域響應?
? ? Bode ? ? ?Bode圖(頻域響應)?
? ? Dbode ? ? ?離散Bode圖?
? ? Dnichols ? ? ?離散Nichols圖?
? ? Dnyquist ? ? ?離散Nyquist圖?
? ? Dsigma ? ? ?離散奇異值頻域圖?
? ? Fbode ? ? ?連續系統的快速Bode圖?
? ? Freqs ? ? ?拉普拉斯變換頻率響應?
? ? Freqz ? ? ?Z變換頻率響應?
? ? Ltifr ? ? ?低級頻率響應函數?
? ? Margin ? ? ?增益和相位裕度?
? ? Nichols ? ? ?Nichols圖?
? ? Ngrid ? ? ?畫Nichols圖的柵格線?
? ? Nyquist ? ? ?Nyquist圖?
? ? Sigma ? ? ?奇異值頻域圖?
根軌跡?
? ? Pzmap ? ? ?零極點圖?
? ? Rlocfind ? ? ?交互式地確定根軌跡增益?
? ? Rlocus ? ? ?畫根軌跡?
? ? Sgrid ? ? ?在網格上畫連續根軌跡?
? ? Zgrid ? ? ?在網格上畫離散根軌跡?
增益選擇?
? ? Acker ? ? ?單輸入單輸出極點配置?
? ? Dlqe ? ? ?離散線性二次估計器設計?
? ? Dlqew ? ? ?離散線性二次估計器設計?
? ? Dlqr ? ? ?離散線性二次調節器設計?
? ? Dlqry ? ? ?輸出加權的離散調節器設計?
? ? Lqe ? ? ?線性二次估計器設計?
? ? Lqed ? ? ?基于連續代價函數的離散估計器設計?
? ? Lqe2 ? ? ?利用Schur法設計線性二次估計器?
? ? Lqew ? ? ?一般線性二次估計器設計?
? ? Lqr ? ? ?線性二次調節器設計?
? ? Lqrd ? ? ?基于連續代價函數的離散調節器設計?
? ? Lqry ? ? ?輸出加權的調節器設計?
? ? Lqr2 ? ? ?利用Schur法設計線性二次調節器?
? ? Place ? ? ?極點配置?
方程求解?
? ? Are ? ? ?代數Riccati方程求解?
? ? Dlyap ? ? ?離散Lyapunov方程求解?
? ? Lyap ? ? ?連續Lyapunov方程求解?
? ? Lyap2 ? ? ?利用對角化求解Lyapunov方程?
演示示例?
? ? Ctrldemo ? ? ?控制工具箱介紹?
? ? Boildemo ? ? ?鍋爐系統的LQG設計?
? ? Jetdemo ? ? ?噴氣式飛機偏航阻尼的典型設計?
? ? Diskdemo ? ? ?硬盤控制器的數字控制?
? ? Kalmdemo ? ? ?Kalman濾波器設計和仿真?
實用工具?
? ? Abcdchk ? ? ? 檢測(A、B、C、D)組的一致性?
? ? Chop ? ? ?取n個重要的位置?
? ? Dexresp ? ? ?離散取樣響應函數?
? ? Dfrqint ? ? ?離散Bode圖的自動定范圍的算法?
? ? Dfrqint2 ? ? ?離散Nyquist圖的自動定范圍的算法?
? ? Dmulresp ? ? ?離散多變量響應函數?
? ? Distsl ? ? ?到直線間的距離?
? ? Dric ? ? ?離散Riccati方程留數計算?
? ? Dsigma2 ? ? ?DSIGMA實用工具函數?
? ? Dtimvec ? ? ?離散時間響應的自動定范圍算法?
? ? Exresp ? ? ?取樣響應函數?
? ? Freqint ? ? ?Bode圖的自動定范圍算法?
? ? Freqint2 ? ? ?Nyquist圖的自動定范圍算法?
? ? Freqresp ? ? ?低級頻率響應函數?
? ? Givens ? ? ?旋轉?
? ? Housh ? ? ?構造Householder變換?
? ? Imargin ? ? ?利用內插技術求增益和相位裕度?
? ? Lab2ser ? ? ?變標號為字符串?
? ? Mulresp ? ? ?多變量響應函數?
? ? Nargchk ? ? ?檢測M文件的變量數?
? ? Perpxy ? ? ?尋找最近的正交點?
? ? Poly2str ? ? ?變多項式為字符串?
? ? Printmat ? ? ?帶行列號打印矩陣?
? ? Ric ? ? ?Riccati方程留數計算?
? ? Schord ? ? ?有序Schwr分解?
? ? Sigma2 ? ? ?SIGMA使用函數?
? ? Tfchk ? ? ?檢測傳遞函數的一致性?
? ? Timvec ? ? ?連續時間響應的自動定范圍算法?
? ? Tzreduce ? ? ?在計算過零點時簡化系統?
? ? Vsort ? ? ?匹配兩根軌跡的向量

?

?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?MATLAB常見問題和常用命令參考

Q1:matlab有沒有監視內存的方法?
A: 用函數whos。

Q2:如何解決matlab7.0命令窗口跳出一大堆java錯誤...
A: 換matlab 7的sp2。

Q3:自從安裝matlab,一開機就在進程里有matlab。
????能不能開機的時候進程就不運行matlab?
A: 開始-->控制面板-->管理工具-->服務
????把MATLAB Server的屬性改成“手動”就行了。

Q4:退出matlab7程序運行的快捷鍵。
A:??ctrl+q

Q5:matlab7遠程控制是否有限制?
A: 不能遠程控制,不過你可以先在你的remote機器上打開,然后就可以用了。

Q6:Matlab占用資源太多怎么辦?
A: 用matlab -nojvm啟動(如果不需要圖形界面)。

Q7:怎樣給matlab添加新的toolbox?
A:??在matlab的文件菜單里邊添加路徑,選set path。

Q8:請問matlab有沒有命令可以調出歷史輸入啊?
A:??command history 窗口。

Q9:matlab 7.0 不能在64位的cpu下運行?
A: matlab 應該是依賴于自己的虛擬機的
????但是好像這個虛擬機是在 IA32 里面作出來的,所以,應該找個帶 64 位的
????java 虛擬機替換原來的,不過不一定能行 or so,記不清了)

Q10:matlab有沒有注釋一段的功能?
A:??選中一段代碼,ctrl r就是區段注釋
?????選中一段代碼,ctrl t取消區段注釋

Q11:今有WINDOWS版MATLAB7,啟動時只出現版權畫面,然后進程結束。
A:???用matlab -nojvm可以啟動,但是報了OpenGL錯誤的信息,估計是顯卡比較
?????差或驅動程序不好。在顯示屬性里關閉硬件加速即可。


1、學會用help和doc函數。

2、輸入輸出文件:save/load
???在屏幕上顯示文件:type

3、解線性方程組AX=B:X=A/B

4、作圖時兩張曲線合并:hold on或者subplot作子圖

5、程序計算時間:tic,toc或者clock

6、變量顯示方式更改:format long/short/bank...

7、數組元素求和:sum

8、求數組長度:length
???求矩陣維數:size或者ndims??矩陣元素個數:numel

9、函數作圖:
???餅圖:pie/pie3????誤差圖:errorbar?????散點圖:scatter/scatter3
???直方圖:hist??????函數圖:fplot????????動畫:movie

10、矩陣分析:
????左右翻轉:fliplr????上下翻轉:flipud????轉置:transpose
????矩陣求逆:inv???????矩陣范數:norm??????條件數:cond
????初等變換:rref??????特征值:eig/eigs

11、特殊矩陣:
????元素全為1的矩陣:ones??????????元素全為0的矩陣:zeros
????單位陣:eye????????????????????魔方陣:magic
????線性變化數組:linspace?????????聚合矩陣:cat/horzcat/vertcat

12、隨機數:
????創建一個元素服從均勻分布的隨機數數組:rand
????創建一個元素服從正態分布的隨機數數組:randn
????二項分布:binornd??指數分布:exprnd???????F分布:frnd
????幾何分布:geornd???超幾何分布:hygernd????泊松分布:poissrnd
????正態分布:normrnd??離散均勻分布:unidrnd??連續均勻分布:unifrnd

13、清屏:clc??清理內存:clear

14、字體顯示變更等:preferences

15、得到一個文件夾的所有文件名:ls

16、語句太長的話可以再句末加...換行。

更多的具體:https://blog.csdn.net/chl033/category_478784.html

總結

以上是生活随笔為你收集整理的MATLAB命令大全和矩阵操作大全的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。