how to plot this equation
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
equation is
x^6+k^2*X4+k*x^2+3=0;
by varying the value of k=1:10
plot the graph between real(x) vs k
2 Kommentare
Torsten
am 15 Sep. 2022
For each value of k, you get 6 values for x. So what do you want to plot ? Trace one x-value over the k-range ?
Antworten (2)
Torsten
am 15 Sep. 2022
Bearbeitet: Torsten
am 15 Sep. 2022
syms x y k
f = y^3 + k^2*y^2 + k*y + 3;
s = solve(f==0,y,'Maxdegree',3);
s1 = sqrt(s);
s2 = -sqrt(s);
k = 0:0.1:10;
s11 = matlabFunction(s1(1));
s12 = matlabFunction(s1(2));
s13 = matlabFunction(s1(3));
s21 = matlabFunction(s2(1));
s22 = matlabFunction(s2(2));
s23 = matlabFunction(s2(3));
plot(k,[real(s11(k));real(s12(k));real(s13(k));real(s21(k));real(s22(k));real(s23(k))])
0 Kommentare
Sam Chak
am 15 Sep. 2022
This only shows the propagation of the complex-valued roots of the 6th-order polynomial equation for the integer .
So, you want to extract the real part of the roots?
k = 1:10;
hold on
for j = 1:length(k)
num = 3;
den = [1 0 k(j)^2 0 k(j) 0 3];
r = rlocus(num, den, 1);
plot(r, 'o')
end
hold off
title('Root Locus Plot')
grid on, xlabel('Real axis'), ylabel('Imaginary axis')
2 Kommentare
Sam Chak
am 15 Sep. 2022
Continuation.
Not sure if this is what you want...
k = 1:10;
hold on
for j = 1:length(k)
num = 3;
den = [1 0 k(j)^2 0 k(j) 0 3];
r = rlocus(num, den, 1);
plot(k(j), real(r), 'o')
end
hold off
grid on, xlabel('\it{k}'), ylabel('Re(\it{x})')
Siehe auch
Kategorien
Mehr zu Stability Analysis finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!