How to solve differential equations that are in matrix form?
10 ビュー (過去 30 日間)
古いコメントを表示
Hello,
I'm trying to use matlab to solve these differential equations and am struggling to find a method that works.

0 件のコメント
回答 (1 件)
Bjorn Gustavsson
2019 年 2 月 1 日
編集済み: Bjorn Gustavsson
2019 年 2 月 1 日
This seems to be exactly the type of ODE the odeNN-functions are designed to solve. Just put your ode into a function:
function dp = myode(t,p,A)
dp = A*p;
end
Then integrate your ODE like this:
A = [-lambd mu;lambda -mu];
p0 = [1;0];
t_span = [t_initial,t_final]
P = ode45(@(t,p) myode(t,p,A),t_span,p0);
Or if you want to solve it symbolically:
syms mu lambda t
syms p1(t) p0(t)
Dp1 = diff(p1);
Dp0 = diff(p0);
A = [-lambda mu;lambda -mu];
P = dsolve([Dp0;Dp1] == A*[p0;p1],[p0(0);p1(0)]==[1;0]);
HTH
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Ordinary Differential Equations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!