exo3.mw

> restart;with(plots):with(plottools):with(linalg);

Warning, the name changecoords has been redefined

Warning, the assigned name arrow now has a global binding

Warning, the protected names norm and trace have been redefined and unprotected

[BlockDiagonal, GramSchmidt, JordanBlock, LUdecomp, QRdecomp, Wronskian, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, cholesky, col, cold...[BlockDiagonal, GramSchmidt, JordanBlock, LUdecomp, QRdecomp, Wronskian, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, cholesky, col, cold...[BlockDiagonal, GramSchmidt, JordanBlock, LUdecomp, QRdecomp, Wronskian, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, cholesky, col, cold...[BlockDiagonal, GramSchmidt, JordanBlock, LUdecomp, QRdecomp, Wronskian, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, cholesky, col, cold...

>

Exercice 3

question a)

> f:=(x,y)->(y*x^2)/(x^4+x^2*y+y^2);

f := proc (x, y) options operator, arrow; y*x^2/(x^4+x^2*y+y^2) end proc

Représentation

> plot3d(f(x,y),x=-2..2,y=-2..2,axes=normal);

[Plot]

>

Voici le profil de la section obtenu par une droite passant par l'origine et tournant au cours du temps

> profil_x:=theta->cos(theta)*t;profil_y:=theta->sin(theta)*t;t:='t':          

profil_x := proc (theta) options operator, arrow; cos(theta)*t end proc

profil_y := proc (theta) options operator, arrow; sin(theta)*t end proc

> sect:=theta->cos(theta)*x+y*sin(theta);

sect := proc (theta) options operator, arrow; cos(theta)*x+y*sin(theta) end proc

> profil_courbe(f,profil_x,profil_y,[-2,2],[-Pi,Pi],-0.5);

[Plot]

Le même profil vu sur un plan fixe (courbe du paramétrage)

> F:=proc(theta)  plot(f(profil_x(theta),profil_y(theta)),t=-2..2 ); end:

> animate(F,[theta],theta=-Pi..Pi, axes=normal,frames=41);

[Plot]

Voici les courpes obtenues par les sections correspondantes à ces droites tournantes

> profil_section(f,[-2,2],[-2,2],sect,[-Pi,Pi],-1);

[Plot]

>

>

Ainsi la restriction à chacune de ces droites y=kx et x=0 sont continues, vu leurs expressions

>

> 'f'(x,k*x)=simplify(f(x,k*x));

f(x, k*x) = x*k/(x^2+k*x+k^2)

> 'f'(0,y)=simplify(f(0,y));

f(0, y) = 0

question b)

Cependant comme nous montre l'étude de la restrictoin à la parabole y=x^2, on voit que f  n'est pas continue en (0,0)

> 'f'(x,x^2)=f(x,x^2);

f(x, x^2) = 1/3

> Limit('f'(x,x^2), x=0)=limit(f(x,x^2), x=0);

Limit(f(x, x^2), x = 0) = 1/3

> coupe (f,[-2,2],[-2,2],[t,t*t],[-1,1],x*x-y,-1,100);

[Plot]

ce qui nous donne la représentation plane (constante comme prévue par le calcul)

> coupe_plan(f,[t,t^2],[-1,1]);

[Plot]

>