這份課堂紀錄以 MATLAB 的運算與繪圖練習為主,依日期保留程式範例、操作畫面和封裝步驟。每個日期下的練習以一致的編號呈現,便於回顧當週的學習內容。
- 依日期查找每週的課堂練習
- 對照運算、繪圖範例與結果
- 查閱 Application Compiler 的封裝操作
原始實作記錄於 2020 年;以下操作畫面與程式範例保留當時版本。
這份筆記以日期為主線。先閱讀當週的程式,觀察運算式、資料與繪圖設定,再用下方截圖對照當時的結果;不是每個練習都有完整的題目敘述。
操作說明
課程曾涉及 MATLAB、Office、統計與程式工具。下面的清單保留當時提及的軟體,本文的主要實作範例仍以 MATLAB 為主。
- MATLAB
- Office
- Word
- Powerpoint
- Excel
- SPSS(統計軟體)
- Octave
- Chrome (Google Search Console)
- Python、C、C++ 等…
2020-03-13
這週從數值與函數繪圖開始練習。對照各段輸入、繪圖範圍與結果,觀察改變參數如何影響圖形。
練習 1
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 2
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 3
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 4
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 5
ezplot 可依函數或表達式繪圖,不需先手動建立全部資料點。下面保留課堂的字串寫法與參數說明。
MathWorks 自 R2016a 起建議改用 fplot 或 fimplicit;兩者的輸入形式與用途不同,更新舊例時需對照文件。
ezplot()函數的命令格式如下:
ezplot(‘fun’, [xmin xmax ymin ymax], fig)
fun為函數的字串;[xmin xmax ymin ymax]為顯示繪圖範圍向量,其中範圍向量可以省略,其預設值為-2pi~2pi之間的範圍;fig為指定繪圖視窗編號ezplot()函數不支援繪圖控制碼。
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 6
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 7
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 8
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
2020-03-20
練習 1
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 2
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
1
2
3
4 X =
1
-1
2
練習 3
1 | % |
2020-03-27
練習 1
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 2
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
2020-04-10
練習 1
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 ans =
a/(s*(a + s))
F1 =
1/s
F2 =
1/s^2
ans =
cos(x)
ans =
-sin(x)
ans =
-cos(x)
ans =
sin(x)
2020-04-17
練習 1
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 2
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 3
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 4
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 5
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 6
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 7
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 8
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 9
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 10
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 11
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
1 Elapsed time is 0.003694 seconds.
2020-04-24
練習 1
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
練習 2
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
個人額外補充
線條顏色字串對應
讀取圖形範例時,將線型、標記與顏色分開辨認;相同資料搭配不同樣式,會改變圖形呈現方式。
2020-05-15
練習 1
1 | % |
練習 2
完整程式範例(93 行)
1 | % 繪圖加按紐 % |
2020-05-22
完整程式範例(95 行)
1 | % |
2020-05-29
練習 1
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
封裝 .m 程式
先在 MATLAB 中確認主程式可正常執行,再進行封裝。輸出的程式仍可能需要對應版本的 MATLAB Runtime,不能只看封裝完成畫面就判定其他電腦可直接使用。
- 在
Apps中選擇Application Compiler。這項封裝功能需要相應的 MATLAB Compiler 授權。
- 點選
add main file旁邊的+符號,加入主程式。
- 選擇要封裝的
.m檔案,並確認執行時需要的副程式與資料檔是否已納入。
- 確認設定後,點選 Package 開始封裝。
- 選擇輸出位置,方便找到產生的安裝檔與相關檔案。
- 開始封裝
- 查看封裝結果
2020-06-05
練習 1
1 | clc;clear;close all; % 清除command window % 清除Workkspace % 關閉所有Figure的窗口 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 num =
1 2
x =
-0.0667
0.4000
-0.3333
y =
-3
2
0
z =
[]
num1 =
0.0000 1.0000 2.0000
den1 =
1 1 -6 0
ans =
s^4 - 3*s^3 + 2*s^2
ans =
((89*s)/2500 + 4717/(2500*s) + 89/(250*s^2) + 1691/3125)/(8/(3125*s) + 5089/5000)
練習 2
1 | t=0:0.0001:1/60; |
個人額外補充
練習 1
1 | clc;clear;close all; |
練習 2
1 | clc;clear;close all; |
1 | clc;clear;close all; |
1
2
3
4
5
6
7
8
9
10
11
12 x =
0.0000 - 1.1547i
0.0000 + 1.1547i
y =
-1.0000 + 1.7321i
-1.0000 - 1.7321i
z =
[]
Num =
0 4
Den =
1.0000 2.0000 4.0000
練習 3
1 | clc;clear;close all; |
練習 4
1 | clc;clear;close all; |
回顧這份課堂紀錄的方法
從一個短範例開始,確認輸入資料、預期的圖形與需要的工具箱。若輸出使用亂數,數值可能與截圖不同;應比對運算方式、圖形結構與範圍。封裝練習則另需在目標環境確認相依檔與 Runtime。











































