How I use a parabola in the xy-plane as base curve for the cylinder?
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Besim Helic
le 22 Avr 2015
Commenté : Roger Stafford
le 23 Avr 2015
Hi to everyone, I'm really new how to this site so to MatLab, too.
So here is my problem: Here is the code to create a cylinder where my base in the xy-plane one ellipse is:
m = 20; n = 50; u = linspace(0, 1, m); v = linspace(0, 2*pi, n); [U, V] = meshgrid(u,v);
a = 3; b = 5;
X = cos(V)*a + U*0; Y = sin(V)*b + U*0; Z = V*0 + U*10;
s = surf(X, Y, Z);
How can I now edit/modify my code to use parabola or hyperbola as base curve?
Thanks.
0 commentaires
Réponse acceptée
Roger Stafford
le 22 Avr 2015
For a hyperbola, x^2/a^2-y^2/b^2 = 1, replace the two lines for X and Y by:
X = a*cosh(V);
Y = b*sinh(V);
For a parabola, y = a*x^2, use:
X = V-pi;
Y = a*X.^2;
2 commentaires
Roger Stafford
le 23 Avr 2015
To get a better hyperbola also change v:
v = linspace(-1,1,n);
This shows only one of its two branches. To get the other branch write
X = -a*cosh(V);
Y = -b*sinh(V);
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Surface and Mesh Plots dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!