Introduction to Scientific Computing 科學計算導論
Homework 1
你的姓名你的學號
1. 考慮一初始值問題 (Initial Value Problem)
d 2
dt 2 x = −ω 0 2 x,
0 < t < T, (1)x(0) = x 0 ,
x 0
(0) = v0 ,
Note: ω0
及 T 為常數. 請選擇恰當的數值 該初始值問題的正解 (exact solution) 如下x exac
(t) =v 0
ω 0
sin ω0 t + x 0
cos ω0 t.
請寫出一個 Matlab 的程式以內建的 ode45 得到 (1) 的數值解 (numerical solution):
(a) 將數值解 (x
h
)與正解 (xexac
) 對時間作圖 (畫在同一張圖同時以不同種線表示) (b) 使用 legend 功能, 標示正解與數值解(c) 量測數值解 (x
h
) 的誤差 |xh
(T )− x exac
(T )|
(d) Question: 有辦法調整 ode45的參數使誤差變小嗎?結果:
(a) 數值解 (x
h
) 與正解 (xexac
)對時間作圖:0 1 2 3 4 5 6 7 8 9 10
−0.1
−0.08
−0.06
−0.04
−0.02 0 0.02 0.04 0.06 0.08 0.1
time
Displacement
Num. Sol Exact Sol
Figure 1: 數值解(x
h
) 與正解 (xexac
)對時間作圖 在此說明這些圖的意義同時說明使用的初始值.0 1 2 3 4 5 6 7 8 9 10
−0.1
−0.08
−0.06
−0.04
−0.02 0 0.02 0.04 0.06 0.08 0.1
time
Displacement
Num. Sol Exact Sol
0 1 2 3 4 5 6 7 8 9 10
−0.1
−0.08
−0.06
−0.04
−0.02 0 0.02 0.04 0.06 0.08 0.1
time
Displacement
Num. Sol Exact Sol
Figure 2: 兩張圖併排
(b) 誤差 (取三個或更多不同的初始值量測誤差):
x 0 v 0
誤差 XA VA EA XA VA EA XA VA EA (c) 討論:討論一下這個小題你有什麼看法. 比方說誤差很大還是很小, 數值解和正解差很多嗎? 等等
2. 考慮一非線性初始值問題 (Initial Value Problem)
d 2
dt 2 x = −ω 0 2
sin x, 0 < t < T, (2)x(0) = x 0 ,
x 0
(0) = v0 .
Note: ω0
及 T 為常數. 請選擇與題一相同的常數 請將第一題的程式修改對本非線性初始值問題求解.(a) 將第一題與本題的數值解畫在同一張圖上. 改變初始條件 (選取三個不同的初始條件), 觀察兩個問 題的差異.
(b) Question: 本題的解具有週期性嗎? 如何看出 結果:
(a) 彈簧伸長量 (x
spring
) 與單擺夾角 (xpendulum
)對時間作圖:0 1 2 3 4 5 6 7 8 9 10
−0.1
−0.08
−0.06
−0.04
−0.02 0 0.02 0.04 0.06 0.08 0.1
time
Displacement
Num. Sol Exact Sol
0 1 2 3 4 5 6 7 8 9 10
−0.1
−0.08
−0.06
−0.04
−0.02 0 0.02 0.04 0.06 0.08 0.1
time
Displacement
Num. Sol Exact Sol
0 1 2 3 4 5 6 7 8 9 10
−0.1
−0.08
−0.06
−0.04
−0.02 0 0.02 0.04 0.06 0.08 0.1
time
Displacement
Num. Sol Exact Sol
Figure 3: 三張圖併排 在此說明這些圖的意義同時說明使用的初始值.
(b) 討論:
討論一下這個小題你有什麼看法. 比方說這兩個方程解的差異; 當初始條件 y0很小時, 兩個解相差 多少, 還有 y0很大時兩個解相差多少
3. Phase Portraits
(a) 修改第一題的程式, 將x
0
(t)對x(t)作圖 (選取五個不同的初始條件且在同一張圖上畫出).(b) 修改第二題的程式, 將x
0
(t)對x(t)作圖 (選取五個不同的初始條件且在同一張圖上畫出).(c) 比較兩題的 Phase Portraits 結果:
(a) Mass-Spring system:
−0.1 −0.08 −0.06 −0.04 −0.02 0 0.02 0.04 0.06 0.08 0.1
−0.15
−0.1
−0.05 0 0.05 0.1 0.15
y1 y2
Figure 4: Phase Portrait - spring (b) Pendulum:
−0.1 −0.08 −0.06 −0.04 −0.02 0 0.02 0.04 0.06 0.08 0.1
−0.15
−0.1
−0.05 0 0.05 0.1 0.15
y1 y2
Figure 5: Phase Portrait - pendulum (c) 討論:
討論兩個 phase portraits 的不同