Problem with drawing a hyperboloid

2 views (last 30 days)
Viktor Karlsson
Viktor Karlsson on 28 May 2021
Answered: DGM on 28 May 2021
Hello,
I wrote the following code:
r=linspace(-3,3,21);
theta=linspace(0,2*pi,63);
m = 1
[R,THETA]=meshgrid(r,theta);
X=R.*cos(THETA);
Y=R.*sin(THETA);
Z = R;
C = (X.^2 + Y.^2 - Z.^2).^m;
surf(X,Y,Z,C)
axis equal
colormap jet
It becomes a cone-like hyperboloid instead, and I can not figure out where I am getting it wrong.
Any help is appreciated!
Thanks in advance.

Answers (1)

DGM
DGM on 28 May 2021
You get a simple bicone because
Z = R;
and the colormapping looks random because
C = (X.^2 + Y.^2 - Z.^2).^m;
is essentially zero (it's just a collection of rounding errors, really), since
Z^2 = R^2
R^2 = X^2+Y^2
I'm not really sure what you're intending, but that's why you're getting what you get.

Community Treasure Hunt

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

Start Hunting!