If z is a vector , what is the difference between angle(z) and atan2(z)
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hassan Abdelazeem
am 12 Jan. 2022
Kommentiert: Hassan Abdelazeem
am 12 Jan. 2022
If z is a vector z=x+j*y, what is the difference between angle(z) and atan2(z)
becuae when I used angle(x+i*.y) gives a differen results
this is the matlab code
clc
clear
close all
f=50;w=2*pi*f;Tperiod=1/f;Tmax=4*Tperiod;Dt=Tperiod/(6*f);N=(Tmax/Dt)+1;
t0=0.00001;
t=zeros(N,1); Bmx=zeros(N,1); Bmy=zeros(N,1);
thetaB=90;Bmax=1.6;
for k=1:N+1
t(k)=t0+Dt*(k-1);
Bmx(k)=Bmax*sin(w*t(k));
Bmy(k)=Bmax*sin(w*t(k)-(thetaB)*pi/180);
end
z=Bmx+i*Bmy;
figure(1);
plot(z,'k*')
hold on
plot(Bmx,Bmy,'r','LineWidth',2)
figure(2)
P1 = atan2(Bmy,Bmx);
P2=1.6.*(180/pi).*angle(Bmx+i.*Bmy);
P3=1.6.*(180/pi).*angle(z);
hold on
plot(P1,'k*')
plot(P2,'r','LineWidth',2)
plot(P3,'b','LineWidth',2)
1 Kommentar
John D'Errico
am 12 Jan. 2022
You could not possibly have used atan2, becuase atan2 does not work with only one argument.
Akzeptierte Antwort
John D'Errico
am 12 Jan. 2022
Bearbeitet: John D'Errico
am 12 Jan. 2022
Perhaps you did not use atan2 properly. Consider this example:
z = [1+i,1-i,-1+i,-1-i];
angle(z)
atan2(imag(z),real(z))
If you want the result in degrees, this is not difficult. In fact, with atan2d, it already does the conversion for you to degrees.
angle(z)*180/pi
atan2d(imag(z),real(z))
The two functions will be compatible, as long as you use them properly. remember that atan2 is a TWO argument utility. You need to separate out the real and imaginary parts to use atan2 or atan2d.
Weitere Antworten (1)
Paul
am 12 Jan. 2022
Bearbeitet: Paul
am 12 Jan. 2022
atan2() returns the answer in radians. So multiply it by 180/pi as for P2 and P3 (or use atan2d(), though atan2d() might result in small numerical differences). And P1 will also need to be multiplied by 1.6 to match P2 and P3.
3 Kommentare
Paul
am 12 Jan. 2022
Absolutely. Which is why, P1 needs to be include the 1.6*(*180/pi) factor as applied to P2 and P3.
Siehe auch
Kategorien
Mehr zu Special Functions 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!