Problems with line plots

Hi there,
can someone please tell me why my program outputs such a line?
it should look like this:
This is my code:
[u,v] = meshgrid(linspace(-2.5,2.5,40),linspace(-2.5,2.5,40));
x = u-(u.^3/3)+u.*v.^2;
y = -v+(v.^3/3)-v.*u.^2;
z = u.^2-v.^2;
mesh(x,y,z)
hold on
axis equal;
[t,X] = ode45(@Enneper,[0,4*pi],[0,.1,0,.1]);
u = X(:,1);
v = X(:,3);
x = u-(u.^3/3)+u.*v.^2;
y = -v+(v.^3/3)-v.*u.^2;
z = u.^2-v.^2;
plot3(x,y,z,'color','r','LineWidth',1);
function xprime = Enneper(t,x)
xprime = zeros(4,1);
xprime(1) = x(2);
xprime(2) = (2.*x(1).*x(4).^2)/(x(1).^2+x(3).^2+1)-(2.*x(1).*x(2).^2)/(x(1).^2+x(3).^2+1)-(4.*x(3).*x(2).*x(4))/(x(1).^2+x(3).^2+1);
xprime(3) = x(4);
xprime(4) = (2.*x(3).*x(2).^2)/(x(1).^2+x(3).^2+1)-(2.*x(3).*x(4).^2)/(x(1).^2+x(3).^2+1)-(4.*x(1).*x(2).*x(4))/(x(1).^2+x(3).^2+1);
end
Thanks!

回答(1 个)

Cris LaPierre
Cris LaPierre 2020-11-12

0 个投票

You create that line with your plot3 command. If it should be doing what is shown in your other images, you may need to check your equations for x, y, and z.

9 个评论

Hi, thank you for your answer. The equations for x, y, z are all correct
Some quick googling suggests that the lines you desire are created by setting u and v equal to zero.
I also found and tried that, but then I get unfortunately an error message in my code
Worked for me. The image I created is in my post above.
really? can you maybe show me where exactly you defined that? I have only started programming a few weeks ago and probably defined it in the wrong place
I'll get you started.
  1. Find your equations for x,y and z at the bottom of your code.
  2. Change all the u's to 0.
  3. Run your code.
I'm trying that out now. Are the equation for x,y and z at the bottom:
, , ?
Sorry, i don't get it. Can you please show me, how you did that?
I suggest you reread items 1-3. I answer your questions there.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 2-D and 3-D Plots 的更多信息

标签

提问:

2020-11-12

Community Treasure Hunt

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

Start Hunting!

Translated by