Error while plotting the polar plot

4 views (last 30 days)
CHANDRABHAN Singh
CHANDRABHAN Singh on 22 Sep 2021
Commented: CHANDRABHAN Singh on 22 Sep 2021
%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.

Answers (1)

Chunru
Chunru on 22 Sep 2021
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;

Categories

Find more on Graphics Objects in Help Center and File Exchange

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!