190 likes | 330 Vues
Introduction to Matlab. Hsing -Chuan Yu VC Lab 2008 Fall. 參考書目. [1]MATLAB 7 程式設計 作者 : 洪維恩 , 出版社:旗標 , 出版日期: 2006-03-01 [2] Matlab 程式設計:入門篇 作者 : 張智星 , 出版社:清蔚科技 , 出版日期: 2004-09-30 []3MATLAB 程式設計與應用 ( 網路版 ) 張智星 連結點. 1. 認識 Matlab (1/2).
E N D
Introduction to Matlab Hsing-Chuan Yu VC Lab 2008 Fall H.C. Yu, VC LAB, NCU, 2008 Fall
參考書目 [1]MATLAB 7 程式設計作者:洪維恩, 出版社:旗標, 出版日期:2006-03-01 [2]Matlab程式設計:入門篇作者:張智星, 出版社:清蔚科技, 出版日期:2004-09-30 []3MATLAB 程式設計與應用(網路版) 張智星 連結點 H.C. Yu, VC LAB, NCU, 2008 Fall
1.認識Matlab(1/2) • Matlab (Matrix Laboratory) 數學計算軟體於1984年,由美國Mathworks公司所推行。 • Matlab 7 外觀 工作空間與目錄視窗 指令視窗 歷史指令視窗 H.C. Yu, VC LAB, NCU, 2008 Fall
1.認識Matlab(2/2) 指令視窗 Help/doc:查詢已知指令 lookfor:尋找未知指令找到 Ex: >> help sqrt 工作空間與目錄視窗 編修/查看變數內容 目錄檢視 歷史指令視窗 尋找/使用曾輸入的指令 可以拖曳或複製的方式編修 H.C. Yu, VC LAB, NCU, 2008 Fall
2.基本數學運算(1/5) • 變數命名規則與使用 • 第一個字母必需是英文字母。 • 字母間不可留空格。 • 最多只能有 31 個字母,MATLAB 會忽略多餘字母。 • MATLAB 在使用變數時,不需預先經過變數宣告(Variable Declaration)的程序,而且所有數值變數均以預設的 double 資料型式儲存。 H.C. Yu, VC LAB, NCU, 2008 Fall
2.基本數學運算(2/6) • 一般數學符號運算 • 在MATLAB 命令視窗(Command Window)內的提示符號(>>)之後輸入運算式,並按入 Enter 鍵即可。例如: >> (5*2+3.5)/5 ans = 2.7000 • 若不想讓 MATLAB 每次都顯示運算結果,只需在運算式最後加上分號(;)即可,例如: >> (5*2+3.5)/5; H.C. Yu, VC LAB, NCU, 2008 Fall
2.基本數學運算(3/5) • 函式數學運算 • >> y = abs(x) % 取 x 的絕對值 • >> y = sin(x) % 取 x 的正弦值 • >> y = exp(x) % 自然指數 exp(x) • >> y = log(x) % 自然對數 ln(x) • >>y = gcd(a,b) % 計算a與b的最大公因數 • >>y = lcm(a,b) % 計算a與b的最小公倍數 H.C. Yu, VC LAB, NCU, 2008 Fall
2.基本數學運算(4/5) • 矩陣數學運算 Z = ? >> y = 43.59 • >> z=2*y+1 >> y = [1 2 ; 3 4] H.C. Yu, VC LAB, NCU, 2008 Fall
2.基本數學運算(5/5) • 查詢工作區裡使用的變數 H.C. Yu, VC LAB, NCU, 2008 Fall
2.基本數學運算(課堂練習) • 計算下列各式 • (-4.83)-1.6 • Log412 • (4i+3)/(5i+2) • 設列向量v=[0,12,17,21],作答下列問題 • 輸出矩陣m=[v; v/2; v/3; v/4] • 計算m*v’ • A~Z的ASCII碼為65~90,試以char函數列出英文字母A~Z Ex: >> char(97)ans = a H.C. Yu, VC LAB, NCU, 2008 Fall
3.使用M檔案與函數(1/4) • 如同一般程式語言一樣,Matlab也可以用來撰寫程式碼。Matlab用來處存程式碼的檔案稱為M檔案,可以分成兩種,一種是底稿,另一種是函數。底稿可以用來儲存一系列的指令,而函數則是把程式碼模組化,以方便使用者來呼叫。 H.C. Yu, VC LAB, NCU, 2008 Fall
3.使用M檔案與函數(2/4) • 底稿(script)─由一系列Matlab的指令敘述所組成。 • 函數(function)─可用來完成某個特定的工作。與底稿不同的是,函數可以傳入引數、回傳結果。 • 參考範例 H.C. Yu, VC LAB, NCU, 2008 Fall
3.使用M檔案與函數(3/4) • 要開啟M檔案編輯器,可在指令視窗鍵入>>edit或者按下工具列的「New M-File」 • 註解(comment):「%」符號後面都視為註解 • 多行註解:ctrl + r • 取消多行註解: ctrl + t H.C. Yu, VC LAB, NCU, 2008 Fall
3.使用M檔案與函數(4/4) • 函數的基本架構 function 輸出變數 = 函數名稱(引數1,引數2,…) % H1列,此行可用來簡述函數的功用 % 此區是函數的說明文字,可用來註解 % 函數的語法、注意事項等 函數的主體 H.C. Yu, VC LAB, NCU, 2008 Fall
3.使用M檔案與函數(課堂練習) • 查詢、閱讀並使用M檔案 H.C. Yu, VC LAB, NCU, 2008 Fall
4.用Matlab繪圖(1/2) • 基本二維平面繪圖 • 連接(0,3)、(2,4)、(4,0)、(7,6)、(10,1)、(12,3)>>x=[0 2 4 7 10 12]>> y=[3 4 0 6 1 3 ]>> plot(x,y) H.C. Yu, VC LAB, NCU, 2008 Fall
4.用Matlab繪圖(2/2) • 基本三維空間繪圖 • >>x=linspace(-8,8,30)>>y=x>>[xx,yy]=meshgrid(x,y)>>expr=sqrt(xx.^2+yy.^2)>>zz=sin(expr)./(expr+eps)>>mesh(xx,yy,zz) H.C. Yu, VC LAB, NCU, 2008 Fall
4.用Matlab繪圖(課堂練習) • 試用下列語法,並觀察結果>>plot(x,y,’*’)>> plot(x,y,’-*’)>> plot(x,y,’--*’)>> plot(x,y,’-.’) H.C. Yu, VC LAB, NCU, 2008 Fall
4.用Matlab繪圖(附) 資料來源:參考書目[1] H.C. Yu, VC LAB, NCU, 2008 Fall