
3D surface issues HELP!
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
James
el 7 de Oct. de 2014
Comentada: James
el 7 de Oct. de 2014
- * So these are the questions... most of the variables are fixed the long equation has been dramatically simplified in my code :) * *

- | This is what mine looks like.. |

What it should look like...

This is my code...
% Q = theta
r = linspace(0,15,200);
Q = linspace(0,2*pi,200);
[r,Q] = meshgrid(r,Q);
w = 14.0591*(1-(r/15)^2)^2 + 15;
x = r.*cos(Q);
y = r.*sin(Q);
mesh(x,y,w)
What have I done wrong? Why isnt mine round, I dont think 'r' is being inputed into the 'w' equation correctly, HELP!
0 comentarios
Respuesta aceptada
Star Strider
el 7 de Oct. de 2014
You need to vectorise your code and it will do just what you want:
r = linspace(0,15);
Q = linspace(0,2*pi);
[r,Q] = meshgrid(r,Q);
w = 14.0591*(1-(r/15).^2).^2 + 15;
x = r.*cos(Q);
y = r.*sin(Q);
mesh(x,y,w)

9 comentarios
Star Strider
el 7 de Oct. de 2014
Editada: Star Strider
el 7 de Oct. de 2014
My pleasure!
The sincerest expression of gratitude here on MATLAB Answers is to Accept the answer that most closely solves your problem.
Más respuestas (1)
Image Analyst
el 7 de Oct. de 2014
r is an array so you need .^ and not just ^. Try this:
workspace;
r = linspace(0,15,200);
Q = linspace(0,2*pi,200);
[r,Q] = meshgrid(r,Q);
w = 14.0591*(1-(r/15).^2).^2 + 15;
x = r.*cos(Q);
y = r.*sin(Q);
mesh(x,y,w)
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'OuterPosition', [0 0 1 1]);
1 comentario
Ver también
Categorías
Más información sobre Surface and Mesh Plots en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
