[分享]Matlab 線上教材
http://libai.math.ncu.edu.tw/bcc16/B/matlab/
市面上已經開始有一些中文的 Matlab 書籍,但是我們的教材特別強調 Matlab 處理陣列資料形態的物件化技巧。我在準備這批教材的時候,主要的參考資料有
- 我自己的著作〈凌波初步〉全華圖書公司出版,其中的附錄:計算工具。
- Lindfield and Penny, Numerical methods using Matlab, Ellis Horwood, 1995.
- Higham and Higham, Matlab Guide, SIAM, 2000.
- Using Matlab Version 6, The MathWorks, Inc., November 2000.
- Matlab On Line Manual.
其實,因為我自己有十二年以上的 Matlab 使用經驗,而且中大數學系的同仁---黃華民教授---又是一位經常發明妙招的 Matlab 高手,所以,許多材料其實還是在中大數學系的環境中創造出來的。撰寫以下教材的時候,我自己在 MS-Windows 和 Linux 環境中使用的 Matlab 都是 6.5 版,如果您使用的版本不同,可能有些微的差異,但絕不嚴重。
[ 相逢篇 ]‧[ 認識篇 ]‧ [ 發展篇 ]‧[ 交遊篇 ]
- Matlab 的工作環境
- Matlab 是一個 Calculator + - * / ( )
- 數值計算無可避免的誤差
- 科學記數法
- 其他計算器基本功能 abs( ) sqrt( ) CHS
- Matlab 是一個工程型計算器---次方 ^ Inf NaN
- Matlab 認得複數 i
- Matlab 是一個工程型計算器---指數與對數 exp( ) log( )
- Matlab 是一個工程型計算器---三角與反三角函數 sin( ) ... asin( ) ... atan2( ) pi
- Matlab 是一個工程型計算器---雙曲與反雙曲函數 sinh( ) ... asinh( ) ...
- Matlab 接受變數 = ,
- 變數之指派與計算 ;
- 用 Matlab 熟悉變數置換 x = x+1
- Matlab 認得矩陣 [ ]
- Matlab 是一個超級計算器---以矩陣為物件 + - * ^
- 向量是特殊的矩陣
- 複數、矩陣與轉置 ' .' transpose( ) ctranspose( )
- 矩陣除法 \ /
- 代表矩陣元素的變數 A(1,1) A(1,:) A(:,1)
- 基本列運算
- 關於矩陣的基本函式 size( ) rank( ) det( ) trace( )
- 關於向量的基本函式 norm( ) dot( ) length( )
- 將向量視為數據的描述統計 mean( ) median( ) sort( ) std( ) max( ) min( )
- 冒號指令--製作等差序列 n:m n:s:m linspace( )
- 製造特殊矩陣--0 與 1 zeros( ) ones( ) eye( )
- 製造特殊矩陣--亂陣與魔方陣 rand( ) magic( )
- 向量的合成
- 矩陣的合併
- Matlab 函式的拓展設計 sin((1:8)/(4*pi))
- 取整數 round( ) fix( ) floor( ) ceil( )
- 積與和 sum( ) prod( )
- 矩陣的對應元計算 .* ./ .^
- 善用 Matlab 函式
- 製圖--折線圖 plot( ) axis( )
- 製圖--長條圖 bar( ) barh( )
- 多重折線圖 hold
- 圖片標示 title( ) xlabel( ) ylabel( ) legend( )
- 邏輯算子 == ~= < <= > >= & | ~
- 邏輯算子的拓展用法
- 邏輯算子的拓展應用範例
- 搜尋向量中的數據 find( )
- 求救 help lookfor doc
- 完全手冊 helpwin helpdesk | helpbrowser
- Matlab 的自我介紹 intro
- Matlab 展覽 demo
- Matlab 操練 bench version
- 用 Matlab 學習迭代概念 for disp( )
- for 迴圈基本練習
- 用 Matlab 學習邏輯分岔 if else
- for 和 if break
- Matlab 的腳本程式 M-file eigshow( )
- Matlab 的搜尋路徑 pwd cd path
- for-if-break 技術配合牛頓法
- for-if-break 技術配合數值積分
- for-if-break 技術介紹 3x+1 問題 rem( ) pause( )
- while 迴圈 while
- Matlab 的高效能內建算子與函式 tic toc
- 保留字、算子和函式 which clear
- Matlab 容許使用者自訂函式 function
- 自訂函式的操作
- 函式之中斷 return
- 函式之註解與線上說明 %
- 「腳本」與「函式」之對比 type
- 多參數函式 nargin( ) elseif
- 多值函式 size( ) sort( ) nargout( )
- 遞迴函式
- 遞迴範例:Quick Sort
- 遞迴範例:Koch 雪花
- 字串 ischar( ) double( ) char( ) blanks( )
- 中文字串
- 字串處理 isletter( ) isspace( ) upper( ) lower( )
- 數值字串 num2str( ) int2str( )
- 指令字串 eval( )
- 無號整數的進制轉換 dec2hex( ) dec2bin( ) dec2base( )
- 用 Matlab 計算二補數 dec2z( ) z2dec( )
- 利用 Matlab 認識 IEEE 浮點數標準 format long format hex
- 矩陣與向量的交換 A(:)
- Matlab 的記憶體管理 who whos
- 從工作環境中輸出 diary
- 輸出數值 save MAT-file
- 輸入數值 load
- 在不同機器間交換 M-file 和 MAT-file
- Matlab 的 API
- 外部程式產生 MAT-file
- 在 Matlab 中呼叫 C (MS-Windows) MEX-file
- 用 C 編譯 MEX mex -setup
- 測試 MEX-file mex
- MEX 範例--迴圈
Matlab---相逢篇
Matlab---認識篇
Matlab---發展篇
Matlab---交遊篇
[ 相逢篇 ]‧[ 認識篇 ]‧ [ 發展篇 ]‧[ 交遊篇 ]
以下是 2001 年春季在課堂上邊講邊寫的入門講義,都是純文字文件。將來會陸續整理成自修課程。
以下是 2000 年春季準備的教材,尚未完成。同學們掌握了自修課程的內容之後,可以學習以下的專題。雖然這些專題可以獨立學習,但是我建議依照以下順序進行。
- 變數
- 檔案與路徑
- 腳本程式
- 函式
- 圖形介面範例: eigshow.m。這個互動圖形介面,包含了特徵向量與特徵值的圖象表現。根據 Ax = mx,特徵向量 x 就是被 A 映射後方向不變 (包括反向) 的向量。如果 x 是一個單位向量,那麼 Ax 的長度就是特徵值了 (配上方向正負號)。讀者應將上述 M-file 下載存檔,然後以 Matlab 執行它。
[此贴子已经被作者于2006-4-21 22:04:13编辑过]