Salut à tous,
J'utilise Matlab 7.0.0.19920 (R14) et j'essaie de calculer et représenter l'intersection entre une surface reglée et une sphère.
Ma surface a comme équations paramétriques :
x = u;
y = v;
z = (u² * v)/16;
Comme sphère j'ai choisi :
x = 2 * pi * sin(q) * sin(s);
y = 2 * pi * sin(q) * sin(s);
z = 2 * pi * cos(q);
J'ai donc dit que l'intersection devait être :
u = 2 * pi * sin(q) * sin(s);
v = 2 * pi * sin(q) * sin(s);
(u² * v)/16 = 2 * pi * cos(q);
Mais là déjà mathématiquement ça me paraît bizarre :/ M'enfin bon, je change ma dernière équation et j'obtiens :
(u² * v) / (32 * pi * cos(q)) = 1;
C'est bof...
Dans matlab j'ai mis ça :
1 2 3 4 5 6 7 8
| [q,s] = meshgrid(0:pi./32:pi,0:pi./32:2.*pi);
u=2.*pi.*sin(q).*cos(s);
v=2.*pi.*sin(q).*sin(s);
hold on;
mesh(u, v, (u.^2).*v./(32.*cos(q)));
hold off; |
Donc on a notre sphère et notre surface reglée :
www.ixamaxi.be/images/matlab.png
Puis j'avais écrit ça :
1 2 3 4 5 6 7 8
| [q,s] = meshgrid(0:pi./32:pi,0:pi./32:2.*pi);
u=2.*pi.*sin(q).*cos(s);
v=2.*pi.*sin(q).*sin(s);
hold on;
mesh(u, v, (u.^2).*v./16);
hold off; |
Ce qui me donnait :
www.ixamaxi.be/images/matlab1.png
Et ensuite avec le code donné plus haut :
www.ixamaxi.be/images/matlab2.png
Ce qui me perturbe c'est qu'on a une surface et pas une courbe. On s'attendait à voir une sorte de sinusoïde enroulée autour d'un cercle. Et c'est ce qu'on a dans le dernier screenshot mais on aimerait ne pas voir le cercle
Donc il doit y avoir soit une erreur dans notre routine matlab soit une erreur dans nos équations paramétriques.
J'imagine que les gens qui manipulent matlab depuis plus longtemps que 3 heures, doivent aussi savoir répondre au problème des équations paramétriques donc j'espère avoir une réponse
D'avance merci,
@micalement,
`ixM
Partager