練習題matlab是matrix laboratory (矩陣實驗室 ) 的縮寫,是由美國mathworks公司20世紀80年代初開發的一套以矩陣計算為基礎的科學和工程計算軟體.
它將數值計算、視覺化和程式設計功能整合在非常便於使用的環境中,並具有方便的繪圖功能和為解決各種特殊的科學和工程計算問題提供的許多任務具箱(toolbox),具有計算功能強、程式設計效率高、使用簡便、易於擴充等特點,目前已經發展成為國際上最優秀的高效能科學和工程計算軟體之一.以下給出matlab簡要的使用說明,要了解更多的內容請使用matlab**幫助系統或參考有關書籍.
先大致介紹一下matlab的工作介面和經常使用的各種視窗.假定在您的計算機裡已經安裝了matlab 6.5.1或以上版本的軟體,則在windows系統
圖1a mtalab的初始介面(6.5版)
圖1b mtalab的初始介面(7.6版(2008a))
下啟動matlab軟體將在螢幕上看到如圖1所示的matlab的主視窗(桌面).在該主視窗中,除了windows應用程式一般應該具有的選單和工具欄外,還包括了右邊的命令視窗和左邊的工作區/當前目錄視窗、命令歷史視窗,以及工具欄後邊的顯示和修改當前目錄名的小視窗等.命令視窗下的提示符為「>> 」,表示matlab已經準備好,可以接受使用者在此輸入行命令,命令和程式執行的結果也顯示在這個視窗;過去執行過的命令名則依次顯示在命令歷史視窗中,可以備查.工作區視窗內用於顯示當前記憶體中變數的資訊(包括變數名、維數、具體取值等),初始時這部分資訊為空;當在該視窗中選擇「當前目錄」(current directory)選項卡時,該視窗可以切換成當前目錄視窗,顯示當前目錄下的檔案資訊.此外,在matlab中經常會使用到的還有另外兩個視窗:乙個是顯示和編輯matlab源程式檔案的編輯視窗,另乙個是開啟**幫助系統時的幫助檔案顯示視窗.
matlab的主要資料物件是矩陣,標量、行向量(陣列)、列向量都是它的特例,最基本的功能是進行矩陣運算,但matlab對於矩陣有一些特殊規定的操作、運算方式.
矩陣輸入有多種辦法,如
直接輸入每個元素;
由語句或函式生成;
在m檔案(以後介紹)中生成等.
matlab中直接輸入矩陣時不用描述矩陣的型別和維數,它們由輸入的格式和內容決定.小規模的矩陣可以用排列各個元素的方法輸入,元素放在方括號中,同一行元素用逗號或空格分開,不同行的元素用分號或回車分開.如在命令視窗中鍵入( >> 表示在命令視窗中的提示符下鍵入,表示回車,下同).
>> a=[1,2,3;4,5,6]
或>> a=[1 2 3;4 5 6]
或>> a=[1 2 3
4 5 6]
都輸入了乙個2×3矩陣a,螢幕上顯示的輸出為
a = 1 2 3
4 5 6
矩陣中的元素可以用它的行、列數(放在圓括號中)進行訪問,例如(以下在回車符後直接給出螢幕上顯示的輸出)
>> a=a(2,1) (matlab區分大小寫字母,a和a是不同的變數)
a = 4
或者不指定輸出變數,matlab將回應ans(answer的縮寫),如
>> a(2,3)
ans =
6矩陣中的元素也可以僅用乙個下標來訪問,此時元素是按列優先排序的,例如
>> b=a(3)
b = 2
>> a(4)
ans =
5a輸入後一直儲存在記憶體工作區(工作空間,workspace)中,也會顯示在工作區視窗內(包括變數名、維數、具體取值等).工作區內的變數可隨時直接呼叫,除非被清除或替代.
可以直接修改矩陣的元素,如
>> a(2,1)=7
a = 1 2 3
7 5 6
>> a(3,4)=1
a = 1 2 3 0
7 5 6 0
0 0 0 1
原來的a沒有3行4列,matlab自動增加行列數,對未輸入的元素賦值0.
matlab提供了一些函式來構造特殊矩陣,如
>> w=zeros(2,32×3零矩陣)
w = 0 0 0
0 0 0
>> u=ones(3) (3×3全1矩陣, 方陣只需輸入行數, 這幾個矩陣生成函式均如此)
u = 1 1 1
1 1 1
1 1 1
>> v=eye(3,4) (對角線為1的3×4矩陣)
v = 1 0 0 0
0 1 0 0
0 0 1 0
>> x=rand(1,3) (1×3的(0, 1)均勻分布隨機矩陣)
x = 0.9501 0.2311 0.6068
矩陣生成函式還有
m×n的標準正態分佈矩陣生成函式randn(m,n);
n階hilbert矩陣 hilb(n);
n階幻方矩陣 magic(n);
n階pascal矩陣 pascal(n)
等,請讀者不妨試試.
從乙個矩陣中取出若干行(列)構成新矩陣稱為裁剪,matlab中 「:」 是非常重要的裁剪工具,如
>> a(3a的第3行)
ans =
0 0 0 1
>> a(:,2a的第2列)
ans =
250>> b=a(1:2a的第1~2行)
b = 1 2 3 0
7 5 6 0
>> c=b(:,2:4b的第2~4列)
c = 2 3 0
5 6 0
>> d=a(2:end,[2,4]) (a的第2行至最後行,第2,4列;)
dend表示最後可能的下標值)
5 0等價於a(2:3,[2,4]) 或a([2,3],[2,4]) )
0 1
>> d(:,1刪除d的第1列,[ ]為空集符號)
d =01將幾個矩陣接在一起稱為拼接,左右拼接時行數要相同,上下拼接時列數要相同,如
>> e=[c,ones(2,3)]
e =2 3 0 1 1 1
5 6 0 1 1 1
>> f=[a(1:2,:);eye(1,4)]
f =1 2 3 0
7 5 6 0
1 0 0 0
>> g=[c,zeros(2);9,f(2,:)]
g =2 3 0 0 0
5 6 0 0 0
9 7 5 6 0
>> h=cc按列拼接成一列向量)
h =253600matlab中提供了下列矩陣運算子:
+ 加法;- 減法;' 轉置;* 乘法;^ 乘冪;\ 左除;/ 右除.
它們要符合矩陣運算的規律,如果矩陣的行列數不符合運算子的要求,將產生錯誤資訊.這裡只將左除和右除的用法敘述如下:
設a是可逆矩陣,ax = b的解是a左除b,即x = a\b (當b為列向量時,得到方程組的解);xa = b的解是a右除b,即x = b/a.
還應注意標量與矩陣進行上述運算的含義,請看
>> e=e+3 (e的每個元素加3,即)
e標量3相當於元素全為3的與e同維數的矩陣)
5 6 3 4 4 4
8 9 3 4 4 4
>> cc=c(:,1:2)*(1+i) (c的1,2列的每個元素乘以複數(1+i))
cc =
2.0000 + 2.0000i 3.0000 + 3.0000i
5.0000 + 5.0000i 6.0000 + 6.0000i
>> c1=cc' (對複數矩陣,矩陣的轉置是共軛轉置)
c1 =
2.0000 - 2.0000i 5.0000 - 5.0000i
3.0000 - 3.0000i 6.0000 - 6.0000i
matlab為矩陣提供了下面的特殊「點」運算:
.'「點」轉置;.*「點」乘法;.^「點」乘冪;
.\「點」左除;./「點」右除.
「點」轉置是複數矩陣的非共軛轉置.如
>> c2=cc.' (矩陣的非共軛轉置,請與上面c1的結果比較)
c2 =
2.0000 + 2.0000i 5.0000 + 5.0000i
3.0000 + 3.0000i 6.0000 + 6.0000i
後四個「點」運算實際上是對相同維數的矩陣的對應元素進行相應的運算.如
>> a=[1,0,2;3,4,0] (對a重新賦值)
a = 1 0 2
3 4 0
>> b=e(:,1:3對b重新賦值)
e = 5 6 3
8 9 3
>> a.*b
ans =
5 0 6
24 36 0
>> b.^a
ans =
5 1 9
512 6561 1
>> a.\b與b./a的結果相同)
ans =
5.0000 inf 1.5000 (inf表示正無窮)
2.6667 2.2500 inf
>> b.\a與a./b的結果相同)
ans =
0.2000 0 0.6667
0.3750 0.4444 0
應注意上述運算中兩個矩陣的維數應該相同.至於標量與矩陣進行上述運算的含義,請看
>> 2.^a (標量2相當於元素全為2的與a同維數的矩陣)
ans =
2 1 4
8 16 1
>> a.^2
ans =
1 0 4
9 16 0
行向量與一維陣列是一樣的資料物件,除了作為矩陣的特例像1×n矩陣一樣地輸入外,常採用「:」和函式linspace,logspace兩種輸入方式,它們的用法可以從下面的例子知道.
8介入診療器材購入 使用登記制度
為加強醫用消耗材料的統一管理,保證高質量的醫療水平有序的發展,本院對導管室醫用消耗材料的申報使用作如下規定 一 購入範圍 1.各類植入人體的人工醫用材料 如起搏器 冠脈支架等 2.一次性手術器械及介入手術包 3.介入 的器械 材料 二 購入程式 1.裝置科負責 商產品的有關證明文字的審核 包括生產許...
入爐煤取樣機使用說明書
sh pdcy z d 系列 皮帶入爐煤取樣機 使用說明書 西安森和電力有限責任公司 位址 西安市高新區東區東新商務1327室 029 82682182 傳真 029 82681441 郵編 710043 目錄第一部分使用說明 一 概述3 二 型號說明3 三 特點3 四 典型配置介紹4 五 採製樣工...
關於地面入井電纜接地極使用電氣焊施工的安全技術措施
關於地面瓦斯幫浦站使用電氣焊施工的安全技術措施 由於地面瓦斯幫浦站2 幫浦進氣電控碟閥不能完全關閉,需跟換。維修期間 需使用電氣焊。為確保安全,根據 煤礦安全規程 的有關要求並結合實際情況,特制定以下檢修安全技術措施 1 施工概況 施工地點 地面瓦斯抽放幫浦站 施工單位 通防隊 施工時間 2011年...