how to plot functions of theta and phi..for example {cos(phi).^3 * sin(theta)+sin(phi)} in spherical coordinates.

how to plot functions of theta and phi..for example {cos(phi).^3 * sin(theta)+sin(phi)} in spherical coordinates.

2 commentaires

How to wirte a matlab code to plot the 3D image of the helix using these parameters and equations that define the axes in 3D:
p=0.199; Pitch distance
a=0.02999500; Radius of the helis wire
b=0.191; Radius of the helix
n = 5, is the number of turns.
δ = atan(p/(2*pi*b));
x= b + a cos(Ө)
y= -a sin(Ө) sin(δ)
x = xsin(ф)+ycos(ф);
y =-xcos(ф)+ysin(ф);
z = p*ф/(2*pi)+a*sin(Ө)*cos(δ);
syms theta phi
Q = @(v) sym(v);
Pi = sym(pi);
p = Q(0.199) %Pitch distance
p = 
a = Q(2999500)/Q(10)^8 %Radius of the helis wire
a = 
b = Q(0.191) %Radius of the helix
b = 
n = 5; % is the number of turns.
delta = atan(p/(2*Pi*b))
delta = 
x_prime = b + a * cos(theta)
x_prime = 
y_prime = -a * sin(theta) * sin(delta)
y_prime = 
x = x_prime * sin(phi) + y_prime * cos(phi)
x = 
y = -x_prime * cos(phi) + y_prime * sin(phi)
y = 
z = p * phi/(2*pi) + a * sin(theta)*cos(delta)
z = 
fsurf(x, y, z, [0, 2*pi, 0, 2*pi]*n)

Connectez-vous pour commenter.

Réponses (2)

First create a grid using spherical coordinates, and then convert the result into Cartesian coordinates.
[theta,phi] = meshgrid(linspace(-pi,pi,41),linspace(-pi/2,pi/2,41));
R = cos(phi).^3 .* sin(theta)+sin(phi);
[X,Y,Z] = sph2cart(theta,phi,R);
surf(X,Y,Z)
alpha 0.5
axis vis3d

Catégories

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

Community Treasure Hunt

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

Start Hunting!

Translated by