Q = 0.4; m = 6; K = (Fx.^2).*(m-1) / sqrt(((m.*Fx.^2 - 1).^2)+(Fx.^2.*(Fx.^2-1).^2.*(m-1).^2.*Q.^2));
After initialization, what should i set to use the ODE solver?

 Akzeptierte Antwort

Star Strider
Star Strider am 21 Aug. 2016
There is no ODE to solve. Set the ‘K(Q,m,Fx)’ equation up as a symbolic function (if you have R2012a or later), substitute in ‘Qmax=0.4’ and ‘m=6’ (when you declare them to be symbolic, this is automatic) to get:
syms Fx m Q
Q = sym(0.4);
m = sym(6);
K(Fx) = (Fx.^2).*(m-1) / sqrt(((m.*Fx.^2 - 1).^2)+(Fx.^2.*(Fx.^2-1).^2.*(m-1).^2.*Q.^2));
DK = simplify(diff(K(Fx), Fx), 'steps', 10)
Fx_min = vpasolve(DK == 0)
DK =
-(10*Fx*(2*Fx^6 + 4*Fx^2 - 1))/(4*Fx^6 + 28*Fx^4 - 8*Fx^2 + 1)^(3/2)
Fx_min =
0

4 Kommentare

Joseph Chia
Joseph Chia am 22 Aug. 2016
Bearbeitet: Joseph Chia am 22 Aug. 2016
Thanks for the respond. I realised too, not ode.
anyway, from the example, Q = 0.4, m =6.3 I'm suppose to get Fx_min = 0.489
i think i type the equation in the wrong manner?
Torsten
Torsten am 22 Aug. 2016
Bearbeitet: Torsten am 22 Aug. 2016
K(Q,m,F_x) >= 0 and K(Q,m,F_x) = 0 <=> F_x = 0.
So without any calculation, it's easy to see that F_x = 0 gives minimum K.
Maybe you try to maximize K ?
Best wishes
Torsten.
from the guide,
"The minimum normalized switching frequency occurs at the peak gain of the Qmax curve , so it can be found by solving Eq.2"
Torsten
Torsten am 22 Aug. 2016
Use
Fxmin=roots[1 0 0 0 2 0 -1/2]
Best wishes
Torsten.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by