I am trying to plot an ellipse using a polarplot function.
23 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Falak Mandali
el 18 de Sept. de 2021
Comentada: Star Strider
el 18 de Sept. de 2021
I calculated the radii for every 1 degree increase in the angle from the major axis, and the calculation is right. But when I try to plot the points using a polar plot, I am getting a shaded region. I don't understand why that is happening and how to fix it. Your help is appreciated.
The following is my code:
%initialization
radius = zeros(1,361);
ta = linspace(0,360,361);
h_a = 450; %apogee height from Mars in km
e = 0.001; %eccentricity of ellipse
for i = 1:1:361 %true anamaly of the satellite as measure from the major axis of the ellipse poinint the perigee.
radius(i) = (h_a * (1 - e)) / (1 + (e .* cosd(ta(i))));
end
%plot
polarplot(ta, radius)
The following is the plot I got:
0 comentarios
Respuesta aceptada
Star Strider
el 18 de Sept. de 2021
The polarplot function requires the angular measure to be in radians.
Change that in the polarplot call and it works. (The elliptical nature can be made more apparent by temporarily increasing ‘e’ to be certain it is working as expected.)
%initialization
radius = zeros(1,361);
ta = linspace(0,360,361);
h_a = 450; %apogee height from Mars in km
e = 0.001; %eccentricity of ellipse
% e = 0.5;
for i = 1:numel(ta) %true anamaly of the satellite as measure from the major axis of the ellipse poinint the perigee.
radius(i) = (h_a * (1 - e)) / (1 + (e .* cosd(ta(i))));
end
%plot
polarplot(deg2rad(ta), radius)
.
2 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Polar Plots en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!