Intersection de deux courbes planes au moyen de résultants On donne les deux courbes planes d'équations implicites x^2+y^2 4*x^2*y^2=0 y^2* 1+x x

Publié par

Intersection de deux courbes planes au moyen de résultants On donne les deux courbes planes d'équations implicites > (x^2+y^2)^3-4*x^2*y^2=0;y^2*(1+x)-(1-x)^3=0; =?( )+x2 y2 3 4 x2 y2 0 =?y2 ( )+1 x ( )?1 x 3 0 Tracé des courbes Tracer les deux courbes dans le carré [ ],=x .. ?2 2 =y .. ?2 2 Solution Pour la courbe =?y2 ( )+1 x ( )?1 x 3 0 on peut tracer les deux arcs =y ( )?1 x 3 +1 x et =y ? ( )?1 x 3 +1 x : > plot([sqrt((1-x)^3/(1+x)),-sqrt((1-x)^3/(1+x))],x=-2..2,-2 ..2); –2 –1 0 1 2 –2 –1 1 2 x Pour éviter les deux couleurs > plot([sqrt((1-x)^3/(1+x)),-sqrt((1-x)^3/(1+x))],x=-2.

  • courbe

  • x2 y2

  • planes d'équations implicites

  • tracé des courbes tracer

  • grille de calcul


Publié le : mardi 19 juin 2012
Lecture(s) : 43
Source : math.unice.fr
Nombre de pages : 6
Voir plus Voir moins
Intersection de deux courbes planes au moyen de résultants
On donne les deux courbes planes d’équations implicites
>
(x^2+y^2)^3-4*x^2*y^2=0;y^2*(1+x)-(1-x)^3=0;
=
-
(
)
+
x
2
y
2
3
4
x
2
y
2
0
=
-
y
2
(
)
+
1
x
(
)
-
1
x
3
0
Tracé des courbes
Tracer les deux courbes dans le carré
[
]
,
=
x
..
-
2
2
=
y
..
-
2
2
Solution
Pour la courbe
=
-
y
2
(
)
+
1
x
(
)
-
1
x
3
0
on peut tracer les deux arcs
=
y
(
)
-
1
x
3
+
1
x
et
=
y
-
(
)
-
1
x
3
+
1
x
:
>
plot([sqrt((1-x)^3/(1+x)),-sqrt((1-x)^3/(1+x))],x=-2..2,-2
..2);
–2
–1
0
1
2
–2
–1
1
2
x
Pour éviter les deux couleurs
>
plot([sqrt((1-x)^3/(1+x)),-sqrt((1-x)^3/(1+x))],x=-2..2,-2
..2,color=red);
–2
–1
0
1
2
–2
–1
1
2
x
Pour la courbe
=
-
(
)
+
x
2
y
2
3
4
x
2
y
2
0
le problème est plus compliqué. On peut penser aux
tracés d’équations implicites :
>
with(plots):
Warning, the name changecoords has been redefined
>
implicitplot((x^2+y^2)^3-4*x^2*y^2,x=-2..2,y=-2..2);
–0.6
–0.4
–0.2
0
0.2
0.4
0.6
y
–0.6
–0.4
–0.2
0.2
0.4
0.6
x
ça n’est vraiment pas très joli, on peut raffiner la grille de calcul (25x25 par défaut)
>
implicitplot((x^2+y^2)^3-4*x^2*y^2,x=-2..2,y=-2..2,grid=[1
00,100]);
–0.6
–0.4
–0.2
0
0.2
0.4
0.6
y
–0.6
–0.4
–0.2
0.2
0.4
0.6
x
C’est mieux, mais la forme de l’équation suggère de passer en coordonnées polaires :
posons
=
x
ρ
( )
cos
θ
et
=
y
ρ
( )
sin
θ
.
On obtient alors l’équation :
>
rho^6-4*rho^4*cos(theta)^2*sin(theta)^2=0;
=
-
ρ
6
4
ρ
4
( )
cos
θ
2
( )
sin
θ
2
0
ou encore
>
rho=2*abs(cos(theta)*sin(theta));
=
ρ
2
( )
cos
θ
( )
sin
θ
d’où le joli dessin :
>
polarplot(2*abs(cos(t)*sin(t)));
–0.6
–0.4
–0.2
0
0.2
0.4
0.6
–0.6
–0.4
–0.2
0.2
0.4
0.6
On les rassemble :
>
D1:=plot([sqrt((1-x)^3/(1+x)),-sqrt((1-x)^3/(1+x))],x=-2..
2,-2..2,color=red):D2:=polarplot(2*abs(cos(t)*sin(t)),colo
r=blue):
>
display(D1,D2);
–2
–1
1
2
–2
–1
1
2
x
Résultants
Calculer les deux résultants des deux polynômes en
x
et en
y
.
On pose
>
f:=(x^2+y^2)^3-4*x^2*y^2:g:=y^2*(1+x)-(1-x)^3:
On a
>
Resfgy:=resultant(f,g,y);
:=
Resfgy
(
)
-
-
-
+
+
-
+
-
60
x
6
4
x
7
1
9
x
95
x
3
164
x
4
152
x
5
35
x
2
2
et
>
Resfgx:=resultant(f,g,x);
:=
Resfgx
+
-
+
-
-
-
+
16
y
14
6032
y
12
1624
y
10
4192
y
8
815
y
6
301
y
4
9
y
2
1
Points d’intersection
Avez-vous des remarques sur les formes particulières de ces résultants ?
Resfgy est un carré, ce qui signifie que pour chaque
x
solution on aura deux
y
.
Resfgx est bicarré, ce qui signifie que pour chaque
y
solution son symétrique par rapport à
l’axe des
x
sera aussi solution.
Combien supposez-vous de points d’intersection ? Cela coincide-t-il avec le dessin ?
Avez-vous une explication ?
Sur le dessin on voit 4 points d’intersection réels, or les degrés des résultants laissent penser à
beaucoup plus de points d’intersection.
Ceci vient du fait que les intersections complexes sont aussi comptées.
Comment calculer les coordonnées des points d’intersection ?
Un exemple : on cherche
x
les racines réelles de Resfgy
>
fsolve(Resfgy);
-17.33341889 -17.33341889 0.2277666333 0.2277666333 0.5905668901
,
,
,
,
,
0.5905668901
On trouve trois racines réelles
x
doubles. Pour chacune d’entre elles on doit trouver deux points
de la courbe de coordonnées
y
de signes opposés.
>
solve(subs(x=.2277666333,g));
,
0.6124419504 -0.6124419504
On trouve bien les deux points d’intersection [.2277666333,.6124419504] et [.2277666333,-
.6124419504] symétriques par rapport à l’axe des
x
.
De même pour
>
solve(subs(x=.5905668901,g));
,
0.2077296414 -0.2077296414
on a les deux points d’intersection [.5905668901,0.2077296414] et
[.5905668901,-0.2077296414] .
mais pour la troisième racine en
x
>
solve(subs(x=-17.33341889,g));
,
-19.42346208
I
19.42346208
I
on obtient deux points dont les coordonnées en
y
sont symétriques mais imaginaires.
Il faudrait continuer ce travail avec les racines complexes en
x
pour avoir tous les points
d’intersection.
Soyez le premier à déposer un commentaire !

17/1000 caractères maximum.