當前位置:偏方大全网 - 偏方大全 - 如何用MATLAB求解兩點邊值問題的偏微分方程?

如何用MATLAB求解兩點邊值問題的偏微分方程?

Matlab的ode**系列求解器默認以tspan(1)作為T的初值條件,

比如把初始條件改成x(2)=x'(2)=0,那麽tspan(1)壹定是2。

但是我們在工程應用中經常會遇到邊值問題,這是ode**函數力所不及的。當然,我們可以自己寫函數來求解。

比如射擊),但那畢竟超出了某些人的能力。幸運的是,Matlab中提供了壹個bvp求解器。

solinit = bvpinit(x,yinit,params)

sol = bvpsolver(odefun,bcfun,solinit,options)

因為邊值問題可能有多個解,為了確保解就是我們需要的,必須用bvpinit函數來估計初值。

BVP求解器:MATLAB中提供了bvp4c和bvp5c,後者誤差控制更好。

輸入參數:

x:要計算的網格點,相當於ode**的tspan

Yinit:猜測值,可以是具體值,也可以是函數,類似於ode**的x0。

Params:其他未知參數也是猜測。

描述微分方程邊值問題的函數句柄。

Bcfun:邊界值函數,壹般是雙邊值(X的上下限視為兩個邊界),但也支持多邊值(詳見幫助)。

solinit:BVP init生成的初始化網格。

選項:BVP求解器優化參數,可通過bvpset設置。有關特定參數,請參見幫助。

輸出參數:

大部分和ode45壹樣。

  • 上一篇:最近我的臉上出現了很多斑點。夏天會曬傷嗎?夏天怎麽去除太陽斑?
  • 下一篇:狗狗長痣了怎麽辦?
  • copyright 2024偏方大全网