黃聰明 國立臺灣師範大學數學系 min@math.ntnu.edu.tw http://math.ntnu.edu.tw/~min MATLAB 基本功能介紹 黃聰明 國立臺灣師範大學數學系 min@math.ntnu.edu.tw http://math.ntnu.edu.tw/~min.

Slides:



Advertisements
Similar presentations
Matlab 教學 Speaker :陳珮妮 Date : 2013/03/14 1. Outline  MATLAB 簡介  算術邏輯運算  Matlab 陣列  Matlab 矩陣 2.
Advertisements

認識食品標示 東吳大學衛生保健組製作.
XX啤酒营销及广告策略.
回归教材、梳理知识、突出能力 ——2015年历史二轮复习思考 李树全 西安市第八十九中学.
第八章 互换的运用.
入党基础知识培训.
颞下颌关节常见病.
致理科技大學保險金融管理系 實習月開幕暨頒獎典禮
黃聰明 臺灣師範大學數學系 MATLAB 基本功能介紹 黃聰明 臺灣師範大學數學系.
結腸直腸腫瘤的認知.
經歷復活的愛 約翰福音廿一1-23.
郭詩韻老師 (浸信會呂明才小學音樂科科主任)
湖南师大附中高三政治第二次月考 试题讲评 试题讲评.
MATLAB小结、 经典迭代法、CG.
Introduction to Matlab
Matlab教學 Speaker:林昱志 Date:2012/10/18.
1012 MATLAB 教學 彭奕翔 2013/02/27.
数学软件 Matlab —— 二维平面作图 —— 三维空间作图.
2. 戰後的經濟重建與復興 A. 經濟重建的步驟與措施 1.
好好學習 標點符號 (一) 保良局朱正賢小學上午校.
数值计算的工具—MATLAB 电子计算机技术为应用数学解决实际问题创造了物质条件 。
第四章 地理資訊與地理資訊系統.
§ 5.1 导数 § 5.2 求导法则与导数公式 § 5.3 隐函数与参数方程求导 § 5.4 微分 § 5.5 高阶导数与高阶微分
北师大版七年级数学 5.5 应用一元一次方程 ——“希望工程”义演 枣庄市第三十四中学 曹馨.
2010年桂林理工大学数学建模竞赛暑期培训班 MATLAB编程入门培训课程
海洋存亡 匹夫有责 ——让我们都来做环保小卫士 XX小学三(3)班.
4. 聯合國在解決國際衝突中扮演的角色 C. 聯合國解決國際衝突的個案研究.
新陸書局股份有限公司 發行 第十九章 稅捐稽徵法 稅務法規-理論與應用 楊葉承、宋秀玲編著 稅捐稽徵程序.
民法第四章:權利主體 法人 楊智傑.
Chapter 3 陣列(Arrays).
MATLAB介紹.
黃聰明 國立臺灣師範大學數學系 其它的資料型態與繪圖型態 黃聰明 國立臺灣師範大學數學系 T.-M.Huang.
張智星 清大資工系 補充內容:方煒 台大生機系 小幅修改:吳俊仲 長庚機械系
張智星 清大資工系 補充內容:方煒 台大生機系
范洪源 臺灣師範大學數學系 MATLAB 基本功能介紹 范洪源 臺灣師範大學數學系.
Matlab教學 Speaker:林昱志 Date:2012/10/25.
第2章 MATLAB矩阵及其运算 2. 1 变量和数据操作 2. 2 MATLAB矩阵 2. 3 MATLAB运算 2. 4 矩阵分析 2
數學與電腦 的初相識 汪群超 個人網址: 變有不可者三,有不可不變者三: 能力未至不可變也、 學識未敷不得變也、 功侯未到不能變也。
Application of Matlab Language
University of Electronic Science and Technology, China
張智星 清大資工系 多媒體檢索實驗室 第九章: 矩陣的處理與運算 張智星 清大資工系 多媒體檢索實驗室.
引 言.
Introduction to MATLAB
第九章: 矩陣的處理與運算 張智星 (Roger Jang)
数学建模与数学实验 MATLAB作图.
范洪源 臺灣師範大學數學系 分支宣告與程式設計 范洪源 臺灣師範大學數學系.
四年級 中 文 科.
§ 9.1常用数学软件简介及MATLAB基础知识
MATLAB 程式設計入門篇 初探MATLAB
分支宣告與程式設計 黃聰明 國立臺灣師範大學數學系
数学建模 江西财经大学 数学与管理决策系 制作:华长生 华长生制作.
聖誕禮物 歌羅西書 2:6-7.
《 数学实验》4  符号变量与符号表达式 微积分基本运算 级数求和与泰勒展开式 常微分方程符号解.
計算機程式 授課教師:廖婉君教授 第六單元 Arrays
MATLAB 程式設計入門篇 初探MATLAB
MATLAB 程式設計入門篇 二維平面繪圖 改自張智星講義
張智星 (Roger Jang) 清大資工系 多媒體檢索實驗室
MATLAB 程式設計入門篇 三維立體繪圖 (part1)
三維繪圖 Helix t = 0:pi/50:10*pi; % linspace(0,10*pi,500); figure plot3(sin(t),cos(t),t) grid on axis square Remark: zlabel, view, surf.
实验教学 MATLAB在行列式和矩阵中的应用 授课教师:杨梦云.
MATLAB 程式設計入門篇 初探MATLAB
Ch8 随机变量的数字特征.
西南科技大学网络教育系列课程 数学软件 数学软件 第3讲 MATLAB数组与运算 主讲教师: 鲜大权 副教授 西南科技大学理学院数学系.
百萬塔冷通 教友年 百萬塔冷通問答遊戲.
Introduction to Matlab
依撒意亞先知書 第一依撒意亞 公元前 740 – 700 (1 – 39 章) 天主是宇宙主宰,揀選以民立約,可惜他們犯罪遭
經文 : 創世紀一章1~2,26~28 創世紀二章7,三章6~9 主講 : 周淑慧牧師
正弦函数余弦函数的性质 (二) 执教:湖南华容一中 黄奇卫老师.
Presentation transcript:

黃聰明 國立臺灣師範大學數學系 min@math.ntnu.edu.tw http://math.ntnu.edu.tw/~min MATLAB 基本功能介紹 黃聰明 國立臺灣師範大學數學系 min@math.ntnu.edu.tw http://math.ntnu.edu.tw/~min MATLAB 基本功能介紹 T.-M.Huang T.-M.Huang

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

2-2 MATLAB 變數的初始化 利用宣告的方式,指定資料給變數 三種用來初始化變數的方式 從鍵盤輸入資料給變數 從檔案讀取資料 var = 40i; var2 = var/5; array = [ 1 2 3 4 ]; x = 1; y = 2; var = expression MATLAB 基本功能介紹 T.-M.Huang

特殊符號(I) 分號(;) 冒號(:) 轉置transpose( ’) first:incr:last MATLAB 基本功能介紹 T.-M.Huang

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

特殊用途矩陣 指令 說明 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 的魔方陣,其各個直行、橫列及兩對角線的元素和都相等 MATLAB 基本功能介紹 T.-M.Huang

從鍵盤輸入初始化變數 浮點數資料 字元字串型態 30 T.M. Huang MATLAB 基本功能介紹 T.-M.Huang

2-3 多維陣列與子陣列 在 MATLAB 的資料型態中,向量可視為一維陣列,矩陣可視二維陣列,對於維度(Dimensions)超過 1 的陣列則均可視為「多維陣列」(Multidimesional Arrays,簡稱 N-D Arrays)。 MATLAB 基本功能介紹 T.-M.Huang

二維陣列(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) 橫列 MATLAB 基本功能介紹 T.-M.Huang

二維陣列(II) 二維陣列,可對應至一個 X - Y 二維平面座標,圖示如下: Y(行) X(列) MATLAB 基本功能介紹 T.-M.Huang

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

矩陣的索引或下標 (II) A= A(1:5,5) A(:,5) A(21;25) A(1:5,end) A(:,end) 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(2,3) A(12) A= A(1:5,end) A(:,end) A(21;end) A(4:5,2:3) A([ 9 14; 10 15 ]) MATLAB 基本功能介紹 T.-M.Huang

三維陣列(I) 將兩個二維陣列疊在一起,就形成第三個維度,此第三個維度稱為「頁」(Page),圖示如下: 行 頁 列 列 頁 行 (1,1) (1,2) (1,3) (1,4) (2,1) (2,2) (2,3) (2,4) (3,1) (3,2) (3,3) (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) 列 頁 行 MATLAB 基本功能介紹 T.-M.Huang

三維陣列(II) 三維陣列,可對應至一個 X - Y - Z 三維立體座標,圖示如下: Z(頁) Y(行) X(列) MATLAB 基本功能介紹 T.-M.Huang

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

2-5 特殊的數值 函式 目的 pi 代表 到15位有效數字的值 i , j 代表 的值 inf 代表無窮大,通常是除以0的結果 代表 到15位有效數字的值 i , j 代表 的值 inf 代表無窮大,通常是除以0的結果 Nan `不是數字’,是由未定義的數學運算而來 eps 電腦上兩個數字間的最小差異 ans 用來儲存一個敘述式的結果 MATLAB 基本功能介紹 T.-M.Huang

2-6 顯示輸出資料 指令格式 結 果 舉 例 format short 顯示4位小數(預設值) 12.3457 format long 結 果 舉 例 format short 顯示4位小數(預設值) 12.3457 format long 顯示14位小數 12.345678901234567 format short e 顯示5個數字加冪次方 1.2346e+001 format short g 總共顯示5個數字(可加或不加冪次方) 12.346 format long e 顯示15位小數字加冪次方 1.234567890123457e+001 format long g 總共顯示15個數字(可加或不加冪次方) 12.3456789012346 format hex 16位元進位格式 4028b0fcd32f707a MATLAB 基本功能介紹 T.-M.Huang

disp num2str int2str 轉換數字成字串 轉換整數成字串 >> str = [‘ The value of pi = ’ , num2str(pi)]; >> disp(str); The value of pi = 3.1416 轉換數字成字串 int2str >> FileName1 = 'rslt_w'; >> FileName = strcat(FileName1, int2str(10)) FileName = rslt_w10 轉換整數成字串 MATLAB 基本功能介紹 T.-M.Huang

fprintf格式化輸出 >> fprintf('The value of pi is %6.2f \n', pi) fprintf(format, data) 一個或多個陣列變數 字串:描述輸出資料的方式 >> fprintf('The value of pi is %f \n', pi) The value of pi is 3.141593 >> fprintf('The value of pi is %6.2f \n', pi) The value of pi is 3.14 MATLAB 基本功能介紹 T.-M.Huang

Example/conv_rate/conv_ratio.m 格式字串 說 明 %d 以指數格式顯示數值 %e %f 以浮點數格式顯示數值 %g 以浮點數或指數格式顯示數值,由何者較短為優先顯示 \n 跳到新的一行 MATLAB 基本功能介紹 T.-M.Huang

save filename var1 var2 var3 2-7 資料檔案 save 把工作區的資料 存進一個磁碟 檔案中 save filename var1 var2 var3 檔案延伸檔名為“.mat” load 把磁碟檔案中 的資料存進 工作區 load filename MATLAB 基本功能介紹 T.-M.Huang

variable_name = expression; 2-8 純量與陣列運算 variable_name = expression; ii=ii+1; 計算等號右邊 敘述式的結果 並將其儲存於 左邊變數內 運算方法 MATLAB 形式 加法 a + b 減法 a - b 乘法 a * b 除法 a / b 冪次方 a^b MATLAB 基本功能介紹 T.-M.Huang

陣列與矩陣運算 矩陣的加減與一般純量(Scalar)的加減類似 相加或相減的矩陣必需具有相同的維度 矩陣與純量可以直接進行加減,MATLAB 會直接將加減應用到每一個元素 >> A = [12 34 56 20]; >> B = [1 3 2 4]; >> C = A + B C = 13 37 58 24 >> A = [1 2 3 2 1] + 5 A = 6 7 8 7 6 MATLAB 基本功能介紹 T.-M.Huang

矩陣的乘法與除法 純量對矩陣的乘或除,可比照一般寫法 欲進行矩陣相乘,必需確認第一個矩陣的直行數目( Column Dimension) 必須等於第二個矩陣的橫列數目(Row Dimension) 矩陣的除法,常藉由反矩陣或解線性方程式來達成 >> A = [123 , 442]; >> C = A/3 >> B = 2*A C = B = 41.0000 147.3333 246 884 >> A = [1; 2]; >> B = [3, 4, 5]; >> C = A * B C = 3 4 5 6 8 10 MATLAB 基本功能介紹 T.-M.Huang

矩陣的左、右除法 A\b:矩陣除法由 inv(A)*b 來定義,其中inv(A)為A的反矩陣 a\B:矩陣除法由 a*inv(B) 來定義 >> y = b' / A y = -0.0333 0.4667 -0.0333 >> A = magic(3) A = 8 1 6 3 5 7 4 9 2 >> b = [1; 2; 3]; >> e = A * x - b e = 1.0e-015 * -0.4441 >> x = A \ b x = 0.0500 0.3000 >> f = y * A - b' f = 1.0e-015 * 0 0.4441 0 MATLAB 基本功能介紹 T.-M.Huang

矩陣的次方運算 矩陣的次方運算,可由「^」來達成,但矩陣必需是方陣,其次方運算才有意義 在「*」,「/」及「^」之前加上一個句點,MATLAB 將會執行矩陣內「元素對元素」(Element-by-element) 的運算 >> A = magic(3); >> B = A^2 B = 91 67 67 67 91 67 67 67 91 >> 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 *前後不能有任何空格 MATLAB 基本功能介紹 T.-M.Huang

轉置和「共軛轉置」矩陣 複數矩陣 z,其「共軛轉置」矩陣 (Conjugate Transpose) 可表示成 矩陣 z′ 想得到任何矩陣 z 的轉置(Transpose),則可表示成矩陣 z.′ 若 z 為實數,則 z′和 z.′的結果是一 樣的 MATLAB 基本功能介紹 T.-M.Huang

2-11 繪圖功能簡介 ylabel('y'); xlabel('x'); title('Plot of y = x.^2-10.*x+15') x = 0:0.1:10; y = x.^2–10.*x+15; plot(x,y); ylabel('y'); grid on; grid off; xlabel('x'); MATLAB 基本功能介紹 T.-M.Huang

print <options> <filename> 功能敘述 -deps 產生一個灰階的 eps 圖形 -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 MATLAB 基本功能介紹 T.-M.Huang

圖形化影像輸出(II) MATLAB 基本功能介紹 T.-M.Huang

圖形化影像輸出(II) MATLAB 基本功能介紹 T.-M.Huang

圖形化影像輸出(II) MATLAB 基本功能介紹 T.-M.Huang

圖形化影像輸出(II) MATLAB 基本功能介紹 T.-M.Huang

多重線條繪圖 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 MATLAB 基本功能介紹 T.-M.Huang

線條顏色、形式、 資料標記及說明文字(I) plot(x, y1); hold on; plot(x, y2); hold off plot(x, y1,'ro-.' ); hold on; plot(x, y2,'gx:'); hold off MATLAB 基本功能介紹 T.-M.Huang

線條顏色、形式、 資料標記及說明文字(I) legend('sin(2x)','2cos(2x)','Location','NorthWest'); text(3.3, 1.5, ‘2cos(2x)') text(1.5, 0.5, 'sin(2x)') MATLAB 基本功能介紹 T.-M.Huang

線條顏色、形式、 資料標記及說明文字(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'}) MATLAB 基本功能介紹 T.-M.Huang