Comment tracer une courbe de fonction ?

Personnellement, j’ai choisi de me baser une fois de plus sur le travail effectué par Christophe Poulain. C’est ainsi que tous mes fichiers font appel à courbescp13.mp dont vous trouverez une présentation ici.

J’ai complété ce travail par des macros personnels que vous trouverez dans le fichier dlf_courbe.mp disponible dans cet article.

Là encore, l’idée est de partir d’un exemple pour pouvoir rapidement obtenir ce que l’on veut.

Voici un premier exemple :

courbes1.jpg

Voici son code:

input courbescp13;
input dlf_courbe.mp;

beginfig(1);
  numeric xmin,xmax,ymin,ymax;
  xmin:=-1;
  ymin:=-5;
  xmax:=10;
  ymax:=9;
  numeric unitex,unitey;
  unitex:=1;
  unitey:=1;
  
depart((xmin,ymin),(xmax,ymax),(0,0),unitex,unitey);
%draw millimetrepourcourbe withcolor orange;
draw grille(1) withcolor gris;
draw reperelycee withpen pencircle scaled 1.5bp;
graduationx.bot(xmin,xmax,1);
graduationy.lft(ymin,ymax,1);

%courbe 1
draw courbe1(0.1,10,100,x-2-(ln(x)/x)) withcolor bleu;
label.lrt(TEX "$({\cal C}_f)$",pointcourbe1(5));

%legende
label.lft(TEX "\begin{tabular}[t]{|l|} \hline \\$({\cal C}_f): y = x-2-\dfrac{\ln x}{x}$\\$(d_1): x=0$\\$(d_2):y=3$\\ $(\Delta):y=x-2$~\\ \hline \end{tabular}",placepoint(xmax,ymin+2));



%asymptote oblique
path asym;
asym = courbe3(-1,10,100,x-2);
pair a,b;
a:=pointcourbe3(xmin);
b:=pointcourbe3(xmax);
draw Asymptote(a,b) dashed evenly withpen pencircle scaled 1.5bp;
label.lft(TEX "$(\Delta)$",pointcourbe3(xmax-1));

%asymptote verticale
numeric xa;
xa:=0;
draw Asymptote(placepoint(xa,ymin),placepoint(xa,ymax)) withcolor vert withpen pencircle scaled 1.5bp;
label.lft(TEX "$(d_1)$",placepoint(xa,ymax-1));

%asymptote horizontale
numeric xv;
xv:=3;
draw Asymptotedouble(placepoint(xmin,xv),placepoint(xmax,xv)) withcolor violet withpen pencircle scaled 1.5bp;
label.bot(TEX "$(d_2)$",placepoint(xmax-1,xv));

%tangente
marque_tan:=50;
draw tangente1(1);

%point particulier
draw Projection(pointcourbe1(1));
dotlabel.bot(btex $A$ etex,pointcourbe1(1));


endfig;

end