how to plot this equation

1 view (last 30 days)
shiv gaur
shiv gaur on 15 Sep 2022
Commented: shiv gaur on 15 Sep 2022
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 Comments
Torsten
Torsten on 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 ?
shiv gaur
shiv gaur on 15 Sep 2022
equation is this type in 123and plot is this type 1234
prameter are Ct =0.5 Cr=1.5 wj =0

Sign in to comment.

Answers (2)

Torsten
Torsten on 15 Sep 2022
Edited: Torsten on 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))])

Sam Chak
Sam Chak on 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 Comments
Sam Chak
Sam Chak on 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})')
shiv gaur
shiv gaur on 15 Sep 2022
sir I have sent fig file as well as equation file pl help this

Sign in to comment.

Tags

Products


Release

R2022a

Community Treasure Hunt

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

Start Hunting!