plotting nonlinear equation along real and imaginary axis

1 Ansicht (letzte 30 Tage)
Moslem Uddin
Moslem Uddin am 25 Apr. 2022
Kommentiert: Moslem Uddin am 26 Apr. 2022
I want to plot z along real and imaginary axis. Here, c and p's are constant. r is exp(i*t) with t ranging from (0,2*pi). Any idea will be appreaciated.

Akzeptierte Antwort

Chunru
Chunru am 26 Apr. 2022
Try the following:
  1. Re-arrange the equation so that it is polynomial of complex variable z with coefficients being function of r
  2. for each t
  3. compute r
  4. find the root of the polynomial using roots function (there are two roots for second order polynomial)
  5. save the results: zroot(length(t), 2) [2 for two roots]
  6. end
  7. plot zroot(:, 1) and zroot(2)
  3 Kommentare
Chunru
Chunru am 26 Apr. 2022
c0=1; c1=1; c2=1; c3=2; c4=1; c5=0;
p5=1; p1=1; p2=1; p3=2; p4=1;
t=0:0.001:2*pi;
zroot=zeros(length(t),2);
for i=1:length(t)
r=exp(1i*t(i));
cz2 = c0*(r.^4*p1+r.^3*p2+r.^2*p3+r*p4+p5);
cz1 = (c0+c1)*r.^4+c2*r.^3+c3*r.^2+c4*r-c5;
cz0 = r.^4-r.^5;
froot=roots([cz2 cz1 cz0]);
zroot(i,:)=froot;
end
plot(real(zroot(:,1)), imag(zroot(:,1)));
hold on
plot(real(zroot(:,2)), imag(zroot(:,2)));

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Line Plots finden Sie in Help Center und File Exchange

Tags

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by