Courbes paramétrées
> restart;
> with(plots):
Warning, the name changecoords has been redefined
> ?plot
Paramétrisation cartésienne
> plot([sin(2*t),sin(3*t),t=0..2*Pi]);
> plot([cos(t),sin(t)*(1+cos(t)),t=0..2*Pi]);
> plot([t+1/(2*t^2),t^2+2*t,t=-2..2]);
Mouais... Après quelques essais :
> plot([t+1/(2*t^2),t^2+2*t,t=-4..4],x=-5..6,y=-2..8);
> plot([t-t**3,t**2-t**4,t=-1.2..1.2]);
> plot([(t+1)/(t*(t-1)*(t+2)),1/(t^2-1),t=-3..2]);
Il ne voit pas les discontinuités; il va falloir ruser
> display(plot([(t+1)/(t*(t-1)*(t+2)),1/(t^2-1),t=-3..-2.01],x=-4..4,y=-4..4),plot([(t+1)/(t*(t-1)*(t+2)),1/(t^2-1),t=-1.99..-1.01],x=-4..4,y=-4..4),plot([(t+1)/(t*(t-1)*(t+2)),1/(t^2-1),t=-0.99..-0.01],x=-4..4,y=-4..4),plot([(t+1)/(t*(t-1)*(t+2)),1/(t^2-1),t=0.01..0.99],x=-4..4,y=-4..4),plot([(t+1)/(t*(t-1)*(t+2)),1/(t^2-1),t=1.01..3],x=-4..4,y=-4..4));
M(t) "tend vers l'origine" lorsque t tend vers plus ou moins l'infini : regardons cela de plus près.
> display(plot([(t+1)/(t*(t-1)*(t+2)),1/(t^2-1),t=-10..-4]),plot([(t+1)/(t*(t-1)*(t+2)),1/(t^2-1),t=4..10]),plot(t,t=0..0.07,color=green));
> plot([(1-2*t)/t**2,exp(t+1/t),t=-1..1]);
Pas étonnant...
> plot([(1-2*t)/t**2,exp(t+1/t),t=-10..-.1],x=0..10,y=0..0.2,numpoints=1000);
> plot([(1-2*t)/t**2,exp(t+1/t),t=0.1..10],x=-2..4,y=6..40,numpoints=1000);
> x:=t->(1-2*t)/t**2:y:=t->exp(t+1/t):D(x)(t),D(y)(t);
> factor([%]);
>
> D(D(x))(1),D(D(y))(1);
> D(D(D(x)))(1),D(D(D(y)))(1);
On a donc un point de rebroussement de première espèce.
> with(linalg):
Warning, the protected names norm and trace have been redefined and unprotected
> factor(det(matrix([[D(x)(t),D(y)(t)],[D(D(x))(t),D(D(y))(t)]])));
> fsolve(t^3+3*t^2-1);
On a les points d'inflexions... Pourquoi ?
Paramétrisation polaire
> plot([cos(2*theta)/(cos(theta)-sin(theta)),theta,theta=0..2*Pi],coords=polar);
Hum...
> plot([exp(theta),theta,theta=-2*Pi..2*Pi],coords=polar);
> plot([exp(theta/4),theta,theta=-5*Pi..2*Pi],coords=polar);
> plot([theta,theta,theta=-2*Pi..2*Pi],coords=polar);
> plot([1/theta,theta,theta=-3*Pi..3*Pi],x=-2..2,coords=polar);
> plot([1+1/theta,theta,theta=-4*Pi..4*Pi],x=-2..3,coords=polar);
> c:=[blue,black,red,blue,black,magenta]:
> display(seq(plot([lambda+2*cos(theta),theta,theta=0..2*Pi],coords=polar,color=c[lambda+1]),lambda=0..5));