Using ODE45 for coupled equations
8 次查看(过去 30 天)
显示 更早的评论
Hello,

For the given set of equations, which are coupled, how do I solve them using ODE45 function? I have gone through the documentation for ODE45 but I seem clueless when it comes to this case. Kindly help. I have values for dV/dtheta and dQ/dtheta stored already
Thanks!
6 个评论
James Tursa
2020-11-18
I don't understand. Do you have equations for dV/dtheta and dQ/dtheta? Why are you suddenly talking about constant values for theta?
采纳的回答
James Tursa
2020-11-18
编辑:James Tursa
2020-11-18
General procedure:
Define a variable, let's call it y to match the doc, that will be your state vector. Each element of y corresponds to one of your integration variables. E.g.,
y(1) = P
y(2) = Q
y(3) = V
y(4) = W
y(5) = xb
Then you write a derivative function that calculates the dy/dtheta vector. E.g.,
function dydtheta = myderiv(t,y,g,r,____) <-- fill in with everything that needs to be passed in
P = y(1);
Q = y(2);
V = y(3);
W = y(4);
Xb = y(5);
dPdtheta = -g * (P/V) * dVdtheta + (g-1)/V * dQdtheta;
dQdtheta = ___;
dVdtheta = ___;
dWdtheta = P * dVdtheta;
dXbdtheta = ___;
dydtheta = [dPdtheta;dQdtheta;dVdtheta;dWdtheta;dXbdtheta];
end
Fill in the blanks with your derivative code.
When you call ode45( ), use a function handle that has all the extra stuff you need to pass in. E.g.,
f = @(t,y) myderiv(t,y,g,r,____); <-- fill in the extra stuff that needs to be passed in
更多回答(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!

