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 commentaires

James Tursa
James Tursa le 18 Nov 2020
Looks like you have four variables: P, V, Q, and W. You're going to need four differential equations to solve this. What do you have for dV/dtheta and dQ/dtheta?
BipityBop
BipityBop le 18 Nov 2020
I have values for dV/dtheta and dQ/dtheta stored already. Sorry, I forgot to mention that
James Tursa
James Tursa le 18 Nov 2020
Constant values? Or equations?
BipityBop
BipityBop le 18 Nov 2020
Modifié(e) : BipityBop le 18 Nov 2020
Constant values, for theta ranging from 0 to 360 degrees
James Tursa
James Tursa le 18 Nov 2020
I don't understand. Do you have equations for dV/dtheta and dQ/dtheta? Why are you suddenly talking about constant values for theta?
BipityBop
BipityBop le 18 Nov 2020
I have equations for dV/dtheta and dQ/dtheta.
They are as follows

Connectez-vous pour commenter.

 Réponse acceptée

James Tursa
James Tursa le 18 Nov 2020
Modifié(e) : James Tursa le 18 Nov 2020
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

Plus de réponses (0)

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by