How to solve Two coupled ODE problem

1 次查看(过去 30 天)
hello all,
actually, i have some problem about to solve two coupled ODE that are dependent on each other. if u all have time can u give me some guide about to coding with two coupled equations problem below and plot the graph :-
function dydt = odefun1(t,y,Aq,Bq,Cq,Ay,By,Cy)
A=1;
B=2;
C=1;
D=3;
E=1;
F=1;
h=1;
Aq=y(1);
Bq=y(2);
Ay=y(3);
By=y(4);
dydt = zeros(4,1);
dydt(1) = F*dydt(2)-D*Bq-E*Aq;
dydt(2) = (C*Aq-B*By-h*Ay)/A;
dydt = [dydt(1) ; dydt(2) ];
t_start = 0;
t_end = 10; %final time in seconds.
%time_span =[ t_start t_end];
time_span =t_start:0.09:t_end;
initial_position = 0;
initial_speed = 0;
x0 = [initial_position initial_speed];
[t,y]=ode45(@odefun1,time_span,x0);
plot(t,y(:,1));
hold on;
plot(t,y(:,2));
end
hope u all can answer this question.. thank you in advance. best regards, azam
  2 个评论
James Tursa
James Tursa 2016-9-22
编辑:James Tursa 2016-9-22
If y is a 4-element vector, why are you building a dydt vector that has only 2 elements? If dydt(1) depends on dydt(2), why aren't you calculating dydt(2) before you calculate dydt(1)?
Azam Axel
Azam Axel 2016-9-26
Thank you James for your answer,but i'm still having the same problem though. i changed my code as shown below. no error but cannot produce the graph instead. can u guide me with example code. very appreciate if u can answer this.. tq
function dydt = odefun1(t,y,Aq,Bq,Cq,Ay,By,Cy)
A=1;
B=2;
C=1;
D=3;
E=1;
F=1;
h=1;
Aq=y(1);
Bq=y(2);
Ay=y(3);
By=y(4);
dydt = zeros(4,1);
dydt(1) = (C*Aq-B*By-h*Ay)/A;
dydt(2) = F*dydt(1)-D*Bq-E*Aq;
t_start = 0;
t_end = 10; %final time in seconds.
%time_span =[ t_start t_end];
time_span =t_start:0.09:t_end;
initial_position = 0;
initial_speed = 0;
x0 = [initial_position initial_speed];
[t,y]=ode45(@odefun1,time_span,x0);
plot(t,y(:,1));
hold on;
end

请先登录,再进行评论。

回答(1 个)

PUJARI MURAGA
PUJARI MURAGA 2016-11-4
I have solution for you.
Did you got ?
  1 个评论
Azam Axel
Azam Axel 2016-11-6
can you share with me what you got.. tq in advance pujari 4 answer this question..

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by