how to plot z=9-sqrt(x^2+y^2) inside the cylinder r=2?

9 views (last 30 days)
clear all;
syms x y;
xlabel('x');
ylabel('y');
zlabel('z');
[x,y] = meshgrid(-10:1:10,-10:1:10);
y=9-sqrt(x.^2+y.^2);
surf(x,y,x);
view([10 10 10]);

Answers (2)

madhan ravi
madhan ravi on 4 Dec 2018
Edited: madhan ravi on 4 Dec 2018
syms x y
ezsurf(9-sqrt(x.^2+y.^2));
axis([-10 10 -10 10 -10 10]) % you can limit the range here
hold on
fimplicit3(x^2+y^2==2^2)
view([10 10 10]);

KSSV
KSSV on 4 Dec 2018
Edited: KSSV on 4 Dec 2018
% Mesh a cylinder
R = 2 ; % radius
h = 2. ; % height
m = 50 ;
n = 50 ;
% Discretizing the Height and Angle of the cylinder
nH = linspace(0,h,m) ;
nT = linspace(0,360.,n)*pi/180 ;
[H, T] = meshgrid(nH,nT) ;
% Convert grid to cylindrical coordintes
X = R*cos(T);
Y = R*sin(T);
Z = H ;
%
[x,y] = meshgrid(-R:0.1:R,-R:0.1:R);
z=h-sqrt(x.^2+y.^2);
surf(x,y,z);
hold on
surf(X,Y,Z)
xlabel('x');
ylabel('y');
zlabel('z');
view([10 10 10]);
YOu have to play with the second equation, so that it lies inside cylinder.

Tags

Community Treasure Hunt

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

Start Hunting!