how to plot functions of theta and phi..for example {cos(phi).^3 * sin(theta)+sin(phi)} in spherical coordinates.
조회 수: 26 (최근 30일)
이전 댓글 표시
how to plot functions of theta and phi..for example {cos(phi).^3 * sin(theta)+sin(phi)} in spherical coordinates.
댓글 수: 2
Mohamed Abdul-Al
2021년 2월 26일
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 = x’ sin(ф)+y’ cos(ф);
y =-x’ cos(ф)+y’ sin(ф);
z = p*ф/(2*pi)+a*sin(Ө)*cos(δ);
Walter Roberson
2023년 5월 28일
syms theta phi
Q = @(v) sym(v);
Pi = sym(pi);
p = Q(0.199) %Pitch distance
a = Q(2999500)/Q(10)^8 %Radius of the helis wire
b = Q(0.191) %Radius of the helix
n = 5; % is the number of turns.
delta = atan(p/(2*Pi*b))
x_prime = b + a * cos(theta)
y_prime = -a * sin(theta) * sin(delta)
x = x_prime * sin(phi) + y_prime * cos(phi)
y = -x_prime * cos(phi) + y_prime * sin(phi)
z = p * phi/(2*pi) + a * sin(theta)*cos(delta)
fsurf(x, y, z, [0, 2*pi, 0, 2*pi]*n)
답변 (2개)
Teja Muppirala
2011년 9월 13일
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
참고 항목
카테고리
Help Center 및 File Exchange에서 Calculus에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!