目前我試圖理解 ode45。所以我想解決一個練習。微分方程為:y=y',y(0)=10。我寫了這段代碼:
tspan = [0 5];
y0 = 10;
[t,y] = ode45(@(t,y) y, tspan, y0);
plot(t,y);
我知道決議解是指數函式。所以我將它插入到情節中以驗證解決方案。(exp 函式需要向上移動 9。)
hold on;
fplot(@(x) exp(x) 9,tspan,'r')
但是有一個我無法解釋的分歧。我理解錯了什么?
紅色:決議解,藍色:數值
uj5u.com熱心網友回復:
此微分方程在此初始條件下的真解為:10*exp(t)
因為y'(t) = y(t)
解的形式c.exp(t)是 ca 常數。使用初始條件:y0 = 10
我們有:c exp(0) = 10
因此c = 10;
因此,您沒有比較正確的數量,
請使用:fplot(@(x) 10*exp(x),tspan,'r')
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/426510.html
上一篇:將資料從修改器傳遞給畫家
下一篇:如何顯示數字答案而不是計算?
