How to solve a system of n differential equations?
Show older comments
Hello everyone, I got the solution below from the help, I tried an example with a 3x3 system and it runs ok. However, when I try to apply it to my real system, I can not find an answer. Do you have any idea why?
Example:
syms x(t) y(t)
A = [1 2; -1 1];
B = [1; 1];
Y = [x; y];
odes = diff(Y) == A*Y + B;
C = Y(0) == [2; -1];
[xSol(t), ySol(t)] = dsolve(odes,C);
My problem:
clear; close 'all'; clc;
syms T1(t) T2(t) T3(t) T4(t) T5(t)
syms x(t) y(t) z(t) w(t) p(t)
A = [-81 1 0 0 0
0.5 -0.56 0.02 0.04 0
0 0.004 -0.008 0.004 0
0 0.267 0.13 -1.4 1
0 0 0.273 3 -82.1];
B = [24000;0;0;1.333;6300];
Y = [x; y; z; w; p];
odes = diff(Y) == A*Y + B;
C = Y(0) == [300; 300; 300; 300; 300];
[xSol(t), ySol(t), zSol(t), wSol(t), pSol(t)] = dsolve(odes,C);
2 Comments
Walter Roberson
on 31 Mar 2018
R2018a finds a solution. It does, however, depend upon an arbitrary constant of integration, which would tend to suggest that dsolve thinks there should be one more initial condition.
Marlon Saveri Silva
on 31 Mar 2018
Accepted Answer
More Answers (0)
Categories
Find more on Common Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!