Cos^2(2theta) 3d polar graph in MATLAB

13 次查看(过去 30 天)
How do i graph cos^2(2theta) in 3d ploar grpah? in MATLAB
Cos^2(2theta) where 0=<theta=<90 and 0=<phi=<360
  5 个评论
Tracy Colbert
Tracy Colbert 2021-9-14
Literally this is all ive been given, i know it is supposed to look like a dome
David Goodmanson
David Goodmanson 2021-9-14
编辑:David Goodmanson 2021-9-16
Hello Tracy,
Assume that theta and phi have the usual convention for spherical coordinates,
x = r*sin(theta)*cos(phi) y = r*sin(theta)*sin(phi) z = r*cos(theta)
Then if the intent is r = constant, and new z = f(theta), it seems more likely that the function would be cos^2(theta). This will give something that is axially symmetric around the z axis and looks like the end of a football. But If the intent is r = f(theta) and z defined in the usual way, then cos^2(2*theta) works but does not look like a dome. Does any of the material you have mention the meshgrid function, or plotting using surf?

请先登录,再进行评论。

回答(2 个)

Walter Roberson
Walter Roberson 2021-9-15
编辑:Walter Roberson 2021-9-15
%0=<theta=<90 and 0=<phi=<360
[Theta, Phi] = meshgrid(linspace(0,90,361), linspace(0,360,361));
%cos^2(2theta)
R = cosd(2*Theta).^2;
[X, Y, Z] = sph2cart(Theta, Phi, R);
surf(X, Y, Z, 'edgecolor', 'none')
xlabel('X'); ylabel('Y')
  2 个评论
Walter Roberson
Walter Roberson 2021-9-16
I forgot to account for degrees.
%0=<theta=<90 and 0=<phi=<360
[Theta, Phi] = meshgrid(linspace(0,90,361), linspace(0,360,361));
%cos^2(2theta)
R = cosd(2*Theta).^2;
[X, Y, Z] = sph2cart(Theta*pi/180, Phi*pi/180, R);
surf(X, Y, Z, 'edgecolor', 'none')
xlabel('X'); ylabel('Y')

请先登录,再进行评论。


Harshvardhan
Harshvardhan 2023-3-9
% Define theta and r vectors
theta = linspace(0, 2*pi, 360);
r = cos(2*theta).^2;
% Convert polar coordinates to Cartesian coordinates
x = r.*cos(theta);
y = r.*sin(theta);
z = r;
% Plot 3D polar graph
plot3(x, y, z)
title('3D Polar Graph of cos^2(2\theta)')
xlabel('x-axis')
ylabel('y-axis')
zlabel('z-axis')

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by