Presentation is loading. Please wait.

Presentation is loading. Please wait.

范洪源 hyfan@ntnu.edu.tw http://math.ntnu.edu.tw/~hyfan 臺灣師範大學數學系 MATLAB 基本功能介紹 范洪源 hyfan@ntnu.edu.tw http://math.ntnu.edu.tw/~hyfan 臺灣師範大學數學系.

Similar presentations


Presentation on theme: "范洪源 hyfan@ntnu.edu.tw http://math.ntnu.edu.tw/~hyfan 臺灣師範大學數學系 MATLAB 基本功能介紹 范洪源 hyfan@ntnu.edu.tw http://math.ntnu.edu.tw/~hyfan 臺灣師範大學數學系."— Presentation transcript:

1 范洪源 hyfan@ntnu.edu.tw http://math.ntnu.edu.tw/~hyfan 臺灣師範大學數學系
MATLAB 基本功能介紹 范洪源 臺灣師範大學數學系

2 2.1 變數和陣列 變數 變數名稱 常用變數型態 double char 使用者設定名稱的陣列,在實體上是由一塊記憶體區域所組成。
第一個字必須是文字,其後可用文字、數字及底線任意組合。 不可超過63個字元 大小寫字母有別 常用變數型態 擁有15到16個有效位數 可處理實數、虛數和複數 double char 內定i和j代表虛數 佔64位元 Var = i; 基本功能介紹 Hung-Yuan Fan (范洪源)

3 2.2 MATLAB 變數的初始化 三種用來初始化變數的方式 從鍵盤輸入資料給變數 從檔案讀取資料 利用宣告的方式,指定資料給變數
var = expression var = 40i; var2 = var/5; array = [ ]; x = 1; y = 2; 基本功能介紹 Hung-Yuan Fan (范洪源)

4 特殊符號(I) 分號(;) 冒號(:) 轉置transpose(’) first: incr: last 基本功能介紹
Hung-Yuan Fan (范洪源)

5 特殊符號(II) 百分比符號(%) 程式中加入註解(Comments)
>> y = (5*2+3.5)/5; % 將運算結果儲存在變數 y,但不用顯示於螢幕 >> z = y^ % 將運算結果儲存在變數 z,並顯示於螢幕 z = 7.2900 基本功能介紹 Hung-Yuan Fan (范洪源)

6 特殊用途矩陣 指令 說明 zeros(m, n) 產生維度為 m×n ,構成元素全為 0 的矩陣 ones(m, n)
eye(n) 產生維度為 n×n ,對角線的各元素全為 1 ,其他各元素全為 0 的單位矩陣 pascal(m, n) 產生維度為 m×n 的 Pascal 矩陣 vander(m, n) 產生維度為 m×n 的 Vandermonde 矩陣 hilb(n) 產生維度為 n×n 的 Hilbert 矩陣 rand(m, n) 產生 [0, 1] 均勻分佈的亂數矩陣,其維度為 m×n randn(m, n) 產生 µ = 0, σ= 1 的正規分佈亂數矩陣,其維度為 m×n magic(n) 產生維度為 n×n 的魔方陣,其各個直行、橫列及兩對角線的元素和都相等 基本功能介紹 Hung-Yuan Fan (范洪源)

7 從鍵盤輸入初始化變數 浮點數資料 30 字元字串型態 基本功能介紹 Hung-Yuan Fan (范洪源)

8 2.3 多維陣列與子陣列 在 MATLAB 的資料型態中,向量可視為一維陣列,矩陣可視二維陣列,對於維度(Dimensions)超過 1 的陣列則均可視為「多維陣列」(Multidimesional Arrays,簡稱 N-D Arrays)。 基本功能介紹 Hung-Yuan Fan (范洪源)

9 二維陣列(I) 二維陣列又簡稱矩陣,具有兩個維度(Dimensions) 「橫列」(Row) 「直行」(Column) 直行 (1,1)
(1,2) (1,3) (1,4) (2,1) (2,2) (2,3) (2,4) (3,1) (3,2) (3,3) (3,4) 橫列 基本功能介紹 Hung-Yuan Fan (范洪源)

10 二維陣列(II) 二維陣列,可對應至一個 X - Y 二維平面座標,圖示如下: Y(行) X(列) 基本功能介紹
Hung-Yuan Fan (范洪源)

11 矩陣的索引或下標 (I) A(i, j) i 與 j 即是此元素的下標(Subscript)或索引(Index) 第i橫列、第j直行的元素
可以使用一維或二維下標來存取矩陣 A(i, j) 和 A(i+(j-1)*m) 是完全一樣的~m為矩陣A的列數 所有矩陣的內部表示法都是以直行為主的一維向量 基本功能介紹 Hung-Yuan Fan (范洪源)

12 矩陣的索引或下標 (II) A = A(1:5, 5) A(:, 5) A(21: 25)’ A(2,3) A(12)
4 1 10 6 11 16 2 21 8 7 9 12 17 22 3 5 13 18 23 14 19 24 15 20 25 A(1:5, 5) A(:, 5) A(21: 25)’ A = A(2,3) A(12) A(1:5, end) A(:, end) A(21: end)’ A(4:5,2:3) A([ 9 14; ]) 基本功能介紹 Hung-Yuan Fan (范洪源)

13 三維陣列(I) 將兩個二維陣列疊在一起,就形成第三個維度,此第三個維度稱為「頁」(Page),圖示如下: (1,1) (1,2) (1,3)
(1,4) (2,1) (2,2) (2,3) (2,4) (3,4) (1,1) (1,2) (1,3) (1,4) (2,1) (2,2) (2,3) (2,4) (3,1) (3,2) (3,3) (3,4) 基本功能介紹 Hung-Yuan Fan (范洪源)

14 三維陣列(II) 三維陣列,可對應至一個 X - Y - Z 三維立體座標,圖示如下: Z(頁) Y(行) X(列) 基本功能介紹
Hung-Yuan Fan (范洪源)

15 三維陣列(III) 三維陣列定址,可以(列,行,頁)定之。 以維度為 3×4×2 的三維陣列為例,其定址方式可圖示如下:
陣列 A 是三維陣列,其中 A(:,:,1)代表第一頁的二維陣列,A(:,:,2)代表第二頁的二維陣列。 基本功能介紹 Hung-Yuan Fan (范洪源)

16 2.5 特殊的數值 函式 目 的 pi 代表 到15位有效數字的值 i, j 代表 的值 inf 代表無窮大,通常是除以0的結果 NaN
目 的 pi 代表 到15位有效數字的值 i, j 代表 的值 inf 代表無窮大,通常是除以0的結果 NaN `不是數字’,是由未定義的數學運算而來 eps 電腦上兩個浮點數字間的最小差距 ans 用來儲存一個敘述式的結果 基本功能介紹 Hung-Yuan Fan (范洪源)

17 2.6 顯示輸出資料 指令格式 結 果 舉 例 format short 顯示4位小數(預設值) 12.3457 format long
結 果 舉 例 format short 顯示4位小數(預設值) format long 顯示14位小數 format short e 顯示5個數字加冪次方 1.2346e+001 format short g 總共顯示5個數字(可加或不加冪次方) 12.346 format long e 顯示15位小數字加冪次方 e+001 format long g 總共顯示15個數字(可加或不加冪次方) format hex 16位元進位格式 4028b0fcd32f707a 基本功能介紹 Hung-Yuan Fan (范洪源)

18 disp num2str 轉換數字成字串 int2str 轉換整數成字串
>> str = [' The value of pi = ' , num2str(pi)]; >> disp(str); The value of pi = num2str 轉換數字成字串 >> FileName1 = 'rslt_w'; >> FileName = strcat(FileName1, int2str(10)) FileName = rslt_w10 int2str 轉換整數成字串 基本功能介紹 Hung-Yuan Fan (范洪源)

19 fprintf格式化輸 出 fprintf(format, data) 一個或多個陣列變數 字串:描述輸出資料的方式
>> fprintf('The value of pi is %f \n', pi) The value of pi is >> fprintf('The value of pi is %6.2f \n', pi) The value of pi is 基本功能介紹 Hung-Yuan Fan (范洪源)

20 Example/conv_rate/conv_ratio.m
格式字串 說 明 %d 以整數格式顯示數值 %e 以指數格式顯示數值 %f 以浮點數格式顯示數值 %g 以浮點數或指數格式顯示數值,由何者較短為優先顯示 \n 跳到新的一行 基本功能介紹 Hung-Yuan Fan (范洪源)

21 2.7 資料檔案 save load 把工作區的資料存進一個磁碟檔案中 把磁碟檔案中的資料存進工作區
save(filename, var1, var2, var3) save 把工作區的資料存進一個磁碟檔案中 檔案延伸檔名為 “.mat” load 把磁碟檔案中的資料存進工作區 load filename 基本功能介紹 Hung-Yuan Fan (范洪源)

22 2.8 純量與陣列運算 variable_name = expression; ii = ii + 1;
計算等號右邊敘述式的結果並將其儲存於左邊變數內 運算方法 MATLAB 形式 加法 a + b 減法 a - b 乘法 a * b 除法 a / b 冪次方 a^b 基本功能介紹 Hung-Yuan Fan (范洪源)

23 陣列與矩陣運算 矩陣的加減與一般純量(Scalar)的加減類似 相加或相減的矩陣必需具有相同的維度
>> B = [ ]; >> C = A + B C = 矩陣與純量可以直接進行加減,MATLAB 會直接將加減應用到每一個元素 >> A = [ ] + 5 A = 基本功能介紹 Hung-Yuan Fan (范洪源)

24 矩陣的乘法與除法 純量對矩陣的乘或除,可比照一般寫法
>> A = [123 , 442]; >> C = A/3 >> B = 2*A C = B = 欲進行矩陣相乘,必需確認第一個矩陣的直行數目( Column Dimension) 必需等於第二個矩陣的橫列數目(Row Dimension) >> A = [1; 2]; >> B = [3, 4, 5]; >> C = A * B C = 矩陣的除法,常藉由反矩陣或解線性方程式來達成 基本功能介紹 Hung-Yuan Fan (范洪源)

25 矩陣的左、右除法 A\b:矩陣除法由 inv(A)*b 來定義,其中inv(A)為A的反矩陣 a/B:矩陣除法由 a*inv(B) 來定義
>> y = b' / A y = >> e = A * x - b e = 1.0e-015 * >> A = magic(3) A = >> b = [1; 2; 3]; >> x = A \ b x = 0.0500 0.3000 >> f = y * A - b' f = 1.0e-015 * a/B:矩陣除法由 a*inv(B) 來定義 基本功能介紹 Hung-Yuan Fan (范洪源)

26 矩陣的次方運算 矩陣的次方運算,可由「^」來達成,但矩陣必需是方陣,其次方運算才有意義
* 前後不能有任何空格 >> A = magic(3); >> B = A^2 B = 在「*」,「/」及「^」之前加上一個句點,MATLAB 將會執行矩陣內「元素對元素」(Element-by-element) 的運算 >> A = [12; 45]; >> B = [2; 3]; >> C = A.*B C = 24 135 >> C = A. * B ??? C = A. * B | Error: Unexpected MATLAB operator. >> E = A.^2 E = 144 2025 >> D = A./B D = 6 15 基本功能介紹 Hung-Yuan Fan (范洪源)

27 轉置和「共軛轉置」矩陣 複數矩陣 z,其「共軛轉置」矩陣(Conjugate Transpose) 可表示成矩陣 z'
想得到任何矩陣 z 的轉置(Transpose),則可表示成矩陣 z. ' 若 z 為實數,則 z' 和 z.' 的結果是一樣的 基本功能介紹 Hung-Yuan Fan (范洪源)

28 2.11 繪圖功能簡介 title('Plot of y = x.^2-10.*x+15') x = 0:0.1:10;
plot(x,y); ylabel('y'); grid on; grid off; xlabel('x'); 基本功能介紹 Hung-Yuan Fan (范洪源)

29 圖形化影像輸出(I) print <options> <filename> option 功能敘述 -deps
-depsc 產生一個彩色的 eps 圖形 -dpng 產生一個 png 圖形 -dtiff 產生一個壓縮的 tiff 圖形 x = 0:0.1:10; y = x.^2–10.*x+15; plot(x,y); print –djpeg fig_ch2.jpeg 產生一個 jpeg 圖形,檔案名稱fig_ch2.jpeg 基本功能介紹 Hung-Yuan Fan (范洪源)

30 圖形化影像輸出(II) 基本功能介紹 Hung-Yuan Fan (范洪源)

31 多重線條繪圖 x = 0:pi/100:2*pi; y1 = sin(2*x); y2 = 2*cos(2*x);
plot( x, y1, x, y2 ); plot(x, y1); hold on; plot(x, y2); hold off 基本功能介紹 Hung-Yuan Fan (范洪源)

32 線條顏色、形式、資料標記及說明文字(I)
plot(x, y1); hold on; plot(x, y2); hold off legend('sin(2x)','2cos(2x)','Location','NorthWest'); plot(x, y1,'ro-.' ); hold on; plot(x, y2,'gx:'); hold off text(3.3, 1.5, ‘2cos(2x)') text(1.5, 0.5, 'sin(2x)') 基本功能介紹 Hung-Yuan Fan (范洪源)

33 線條顏色、形式、資料標記及說明文字(II)
x = 0:pi/100:2*pi; y1 = sin(2*x); y2 = 2*cos(2*x); plot(x, y1,'ro-.' ); hold on; plot(x, y2,'gx:'); hold off legend('sin(2x)','2cos(2x)','Location','NorthWest'); text(1.5, 0.5, 'sin(2x)') text(3.3, 1.5, '2cos(2x)') set(gca,'xtick',[0 1/2*pi pi 3/2*pi 2*pi]) set(gca,'xticklabel',{'0','1/2 pi','pi','3/2 pi','2 pi'}) 基本功能介紹 Hung-Yuan Fan (范洪源)


Download ppt "范洪源 hyfan@ntnu.edu.tw http://math.ntnu.edu.tw/~hyfan 臺灣師範大學數學系 MATLAB 基本功能介紹 范洪源 hyfan@ntnu.edu.tw http://math.ntnu.edu.tw/~hyfan 臺灣師範大學數學系."

Similar presentations


Ads by Google