Matlab隱式常微分方程組ODE15i中odefun中的y應該如何輸入

2022-10-04 03:25:08 字數 2694 閱讀 5701

1樓:天天深度學習

根據ode15i文件中所說,odefun的格式必須為

>> fhandle = @(t,y,dy)(t*y^2*(dy)^3-y^3*(dy)^2+t*(t^2+1)*dy-t^2*y)

fhandle =

@(t,y,dy)(t*y^2*(dy)^3-y^3*(dy)^2+t*(t^2+1)*dy-t^2*y)

>> [t,y] = ode15i(fhandle,[1 10],sqrt(3/2),0);

>> ytrue = sqrt(t.^2 + 0.5);

>> plot(t,y,t,ytrue,'o');

主要問題在於fhandle,在這個例子中fhandle是以@符號作為標示符的匿名函式的控制代碼。匿名函式的寫法普通函式類似,不過函式主體放在@後第二個小括號中,@後第一個小括號中列出用到的變數。

總之,按照示例中的格式來就可以了。

執行結果:

2樓:我是舞三

指數函式採用函式:

exp(x)

自然對數函式:log(x),預設底數為e

常用對數函式:log10(x)

在結果中常見的10e-4,不是有效表示式,不能使用,實際表示的是10^-4

用matlab通過隱式龍格庫塔方法解常微分方程

3樓:匿名使用者

用matlab的ode45()函式求解常微分方程組。ode45的基本原理是採用

四、五階龍格庫塔方法。

1、常微分方程組的自定義函式odefun(t,y),其主要內容

dy(1)=-0.1*y(1)-199.9*y(2);

dy(2)=-200*y(2);

2、t、y1、y2的求解

[t,y]=ode45(@odefun,[0:1e-5:0.1],y0)

3、數值解與解析值對比結果

matlab常微分方程組的解法

4樓:匿名使用者

s=dsolve(『方程1』, 『方程2』,…,』初始條件1』,』初始條件2』 …,』自變數』)

用字串方程表示,自變數預設值為t。導數用d表示,2階導數用d2表示,以此類推。s返回解析解。在方程組情形,s為一個符號結構。

[tout,yout]=ode45(『yprime』,[t0,tf],y0) 採用變步長四階runge-kutta法和五階runge-kutta-felhberg法求數值解,yprime是用以表示f(t,y)的m檔名,t0表示自變數的初始值,tf表示自變數的終值,y0表示初始向量值。輸出向量tout表示節點(t0,t1, …,tn)t,輸出矩陣yout表示數值解,每一列對應y的一個分量。若無輸出引數,則自動作出圖形

如下圖所示的隱式微分方程組如何通過matlab/simulink求解。求matlab function程式。 50

5樓:匿名使用者

可以用ode*系列函式求解,如 ode45。

微分方程左邊的係數矩陣可以通過設定 mass 矩陣的方式解決,即求解 m(t,y)*dy/dt=f(t,y) 形式的微分方程組。具體做法可以查閱 ode45 的文件。

如果看不明白,需要我幫你做,請提供必要的條件,包括各常數的值及初始條件。

matlab求解常微分方程組數值解,總出現這個,急死了

6樓:書宬

[t,y]=ode45('rigid',[0 12],[0;1;1]); %標點符號狀態

plot(t,y)

----------------------function dy=rigid(t,y)dy=zeros(3,1);

dy(1)=y(2)*y(3);

dy(2)=-y(1)*y(3);

dy(3)=-0.51*y(1)*y(2);

如何用matlab畫一個微分方程組的圖,具體要求如下

7樓:匿名使用者

題主給出的微分方程組缺初始條件。為了解題方便,自行給出其初始條件x(0)=1,y(0)=0.5。

用matlab求解微分方程組可以用ode()函式求得其數值解。求解方法:

1、首先,自定義微分方程組函式odefun(t,x),其主要內容

dy(1)=x(1)*(1-x(1))-x(2)+1/x(1);

dy(2)=x(2)*(-1+x(1));

2、再用ode()函式求得其數值解。使用方法

[t,x]=ode45(@odefun,[0 20],y0);

3、用plot()函

數繪製t—x'(t)、y'(t)和x'(t)—y'(t)相平面圖

計算結果

什麼叫常微分方程

在數學分析中,常微分方程是隻含有一個自變數的微分方程。如牛頓第二運動定律可表示成 my f,在恢復力與位移大小相等方向相反的簡諧運動時就是my ky 凡含抄有引數,未知函式和未知函式導數 或微分 的方程,稱為微分方程,有時簡稱為方程,未知函式是一元函式的微分方程稱作常微分方程,未知數是多元函式的微分...

常微分方程初始條件

首先為什抄麼要有初始條件?因為方程對時間有導數 解微分方程,從某種意義上來說就是求積分 而我們知道做不定積分的時候會出現一個常數c,初始條件就是用來定這個c的 其次,有多少階導數就需要多少個初始條件,因為求有兩次導數的微分方程,可以看成需要積分兩次,故而有兩個待定常數。例如y f y,t 一般需要兩...

常微分方程2 x 1 sqrt x 2 y dx sqrt x 2 y dy 0的通解

這麼齊 顯然想bai到令duy x u,y u du dx x y u sqrt u zhi2 1 0帶入即有 u du dx x u sqrt u 2 1 分離變數 du sqrt u 2 1 dx x然後兩邊求原dao函式就是了,都是回 常見的形式了.ln 答 u sqrt u 2 1 ln x...