How can I write the differential equation below?

I want to code the mathematical model below:
could you please help me out?
I want to estimate Q (flow) in this equation.
I also have omega=[7200,8800]
and can assign value to H.
After writing the code, I want to proceed with a simulink model.
Thank you for your help in advance

 Accepted Answer

Torsten
Torsten on 18 Dec 2021
Edited: Torsten on 18 Dec 2021
With
c1 = (b*omega + c*H)/L
c2 = (a + d*omega^2)/L
the solution Q(t) is
Q(t) = (-c1 + (c1+c2*Q0) * exp((t-t0)*c2)) / c2
where the initial condition is Q(t=t0) = Q0

4 Comments

Thank you so much dear Torsten.
It worked!
could you please ellaborate a little bit on your answer?
how did you do this?
By hand.
But you can use dsolve instead:
syms Q(t) t0 Q0 a b c d omega H L
eqn = L*diff(Q,t) == a*Q + b*omega + c*H + d*omega^2*Q;
cond = Q(t0) == Q0;
ySol(t) = dsolve(eqn,cond)
Thank you!
It's great!
One question!
shouldn't it be c2 = ((a + d*omega^2)*Q)/L in the first equation?
No.
With
c1 = (b*omega + c*H)/L
c2 = (a + d*omega^2)/L
the differential equation reads
dQ/dt = c1 + c2*Q
thus
dQ/(c1+c2*Q) = dt
thus
integral_{Q0}^{Q} dQ/(c1+c2*Q) = integral_{t0}^{t} dt
thus
1/c2 * log((c1+c2*Q)/(c1+c2*Q0)) = t-t0
thus
exp(c2*(t-t0)) = (c1+c2*Q)/(c1+c2*Q0)
I leave it to you to solve for Q now.

Sign in to comment.

Categories

Find more on Mathematics 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!