Error while plotting the polar plot

%I have an expression which is plotted using the polarplot.
a = 1/(2.*cos(theta))
e = 0.5;
thet = -60:1:60;
theta = thet .*(pi/180);
c = cos(theta);
p = 4*(1-e^2).*(c.^2) + (2*e - 1)^2;
q = 2*(1-e*e).*c + (2e-1)*sqrt(4*(1-e*e).*(c.^2) + 5 *e*e - 4*e);
r = q./p;
polarplot(theta,r);
hold on;
%Now if i solve the expresion for e=0.5 analytically and then try plotting the expression
a = 1./(2.*cos(theta));
polarplot(theta,a);
hold off;
%Why the graphs are not same while both the expressions are same.

Réponses (1)

e = 0.5;
thet = -60:1:60;
theta = thet .*(pi/180);
c = cos(theta);
p = 4*(1-e^2).*(c.^2) + (2*e - 1)^2;
% q = 2*(1-e*e).*c + (2e-1)*sqrt(4*(1-e*e).*(c.^2) + 5 *e*e - 4*e);
% 2e-1 is the number 2x10^(-1), rather than 2*e-1 !!!
q = 2*(1-e*e).*c + (2*e-1)*sqrt(4*(1-e*e).*(c.^2) + 5 *e*e - 4*e);
r = q./p;
polarplot(theta,r);
hold on;
a = 1./(2.*cos(theta));
polarplot(theta,a);
hold off;

Catégories

En savoir plus sur Polar Plots dans Centre d'aide et File Exchange

Produits

Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by