比如我們已經有了微分方程模型和相關數據,如何求模型的參數。 這里以SEIR模型為例子,SEIR模型可以參考之前的文章。 一般的線性方程我們可以用最小二乘來解,一般的非線性方程我們可以用LM來解。 這里是線性微分方程組,所以我們采用最小二乘來解。 關鍵是構造出最小二乘形式,微分 ...
和線性常微分方程組參數擬合類似,我們要用差分代替微分,然后進行插值處理,然后構造最小化函數。 最后用最優化方法處理該函數即可。 這里舉個例子,先隨便設一個非線性微分方程組,並給定初值: 然后定義最小化函數: 最后用之前介紹的非線性最優化方法解決。 matlab代碼如下: test .m: 結果如下: 上面這個結果還算可以。 不過由於是非線性微分方程組,參數差一點就可能導致系統后續差別越來越大,所謂 ...
2021-02-11 13:30 0 818 推薦指數:
比如我們已經有了微分方程模型和相關數據,如何求模型的參數。 這里以SEIR模型為例子,SEIR模型可以參考之前的文章。 一般的線性方程我們可以用最小二乘來解,一般的非線性方程我們可以用LM來解。 這里是線性微分方程組,所以我們采用最小二乘來解。 關鍵是構造出最小二乘形式,微分 ...
這里以三元二次常微分方程組做一個例子,更多元更高次的都類似。 比如下列方程組: x'' = x' - x + y' -z' y'' = y' - y - x' z'' = z' - z + x' matlab代碼如下: main.m: testfun.m ...
過去有畫過常微分方程的向量場,通過向量場能夠很形象的看出方程解的狀態。 最近過節在家刷視頻刷到了3Blue1Brown介紹微分方程的視頻。 視頻中對鍾擺建立的微分方程組通過向量場的形式也很形象的表達了系統狀態。 這里用matlab也實現一下,同時對三維情況也做了一個實現。 繪制的方法 ...
一、隱式Euler: 函數文件1: 函數文件2: 函數文件3: 腳本文件: 效果圖: 二、變步長的隱式Eul ...
如下: 結果如下: 紅線為微分方程的三個特解。 關於方程組的向量場繪制可以參考這里。 ...
原文地址:MATLAB解常微分方程組的解法(好東西要共享)作者: 流若星辰 1:問題 常微分方程的初值問題的標准數學表述為:y'=f(t,y),a<=t<=b,y(a)=y(0) ;我們要求解的任何高階常微分方程都可以用替換法化為上式所示的一階形式,其中y ...
1、如下公式: 其中x、y、m、n為參數,a、b為未知數,利用MATLAB求解方程; syms x y m n a b; [a,b]=solve('x=m*cos(a)+n*cos(a+b)','y=m*sin(a)+n*sin(a+b)','a','b'); 會得到四組解 ...
這里討論常微分方程。常微分方程的階數就是函數求導的最高次數。這里以二階線性微分方程為例。 形如方程5的稱為二階線性微分方程。 線性的概念定義為: 下面討論 二階線性微分方程 ...