%@AUTEUR:Guillaume Connan
prologues:=2;
verbatimtex
%&latex
\documentclass{article}
\begin{document}
etex
input courbes;
input geo;
color vert_e, turquoise, orange, vert_fonce, rose, vert_mer, bleu_ciel, or, rouge_v,bleu_m,bleu,bleu_f;
vert_e:=(0,0.790002,0.340007);
turquoise:=(0.250999,0.878399,0.815699);
orange:=(0.589999,0.269997,0.080004);
vert_fonce:=(0,1.4*0.392193,0);
rose:=(1.0, 0.752907, 0.796106);
bleu_ciel:=(1.2*0.529405,1.2*0.807794,1);%.2*0.921598);
or:=(1,0.843104,0);
rouge_v:=(0.829997,0.099994,0.119999);
bleu_m:=(0.7*0.529405,0.7*0.807794,0.7);%*0.921598);
bleu_f:=(0.211762,0.3231176,0.3686392);
bleu:=(0.529405,0.807794,1);
% Déclarations des constantes %
numeric xmin, xmax, ymin, ymax, N;
ux:=2cm; uy:=2cm;
xmin :=-1.3 ; xmax :=2.3;
ymin := -.2; ymax :=2;
pair d,h;
d:=(.1*ux,0);
h:=(0,.05*uy);
% Définitions des axes et labels associés
vardef axes =
drawarrow (ux*xmin,0) -- (ux*xmax,0) ; % axe des x
drawarrow (0,uy*ymin) -- (0,uy*ymax); % axe des y
label.rt(btex $x$ etex,(xmax*ux,0)); % label de l'axe des x
label.urt(btex $y$ etex,(0,ymax*uy)); % label de l'axe des y
enddef;
beginfig(1);
axes;
vardef f(expr x) = sqrt(1+x) enddef;
vardef trace (suffix g)(expr a,b,inc) =
save i; numeric i;
for i=a step inc until b:
(i*ux,g(i)*uy) ..
endfor (b*ux,g(b)*uy)
enddef;
path P,Q;
P=trace(f,-1,2,.01) ;
Q=(-.2*ux,-.2*uy)--(2*ux,2*uy);
draw P withpen pencircle scaled 1.3bp;
draw Q withcolor bleu;
label.rt(btex $\displaystyle y=\sqrt{1+x}$ etex,(2*ux,f(2)*uy)); label.rt(btex $y=x$ etex,(2*ux,2*uy));
draw (-.5*ux,0)--(-.5*ux,f(-.5)*uy)--(f(-.5)*ux,f(-.5)*uy)--(f(-.5)*ux,f(f(-.5))*uy)--(f(f(-.5))*ux,f(f(-.5))*uy)--(f(f(-.5))*ux,f(f(f(-.5)))*uy) withcolor bleu_m;
drawarrow (-.5*ux,0)--1/2[(-.5*ux,0),(-.5*ux,f(-.5)*uy)] withcolor bleu_m;
draw 1/2[(-.5*ux,0),(-.5*ux,f(-.5)*uy)]--(-.5*ux,f(-.5)*uy) withcolor bleu_m;
drawarrow (-.5*ux,f(-.5)*uy)--1/2[(-.5*ux,f(-.5)*uy),(f(-.5)*ux,f(-.5)*uy)] withcolor bleu_m;
draw 1/2[(-.5*ux,f(-.5)*uy),(f(-.5)*ux,f(-.5)*uy)]--(f(-.5)*ux,f(-.5)*uy)withcolor bleu_m;
drawarrow (f(-.5)*ux,f(-.5)*uy)--1/2[(f(-.5)*ux,f(-.5)*uy),(f(-.5)*ux,f(f(-.5))*uy)] withcolor bleu_m;
draw 1/2[(f(-.5)*ux,f(-.5)*uy),(f(-.5)*ux,f(f(-.5))*uy)]--(f(-.5)*ux,f(f(-.5))*uy) withcolor bleu_m;
drawarrow (f(-.5)*ux,f(f(-.5))*uy)--1/2[(f(-.5)*ux,f(f(-.5))*uy),(f(f(-.5))*ux,f(f(-.5))*uy)]withcolor bleu_m;
draw 1/2[(f(-.5)*ux,f(f(-.5))*uy),(f(f(-.5))*ux,f(f(-.5))*uy)]--(f(f(-.5))*ux,f(f(-.5))*uy) withcolor bleu_m;
drawarrow (f(f(-.5))*ux,f(f(-.5))*uy)--2/3[(f(f(-.5))*ux,f(f(-.5))*uy),(f(f(-.5))*ux,f(f(f(-.5)))*uy)] withcolor bleu_m;
draw 2/3[(f(f(-.5))*ux,f(f(-.5))*uy),(f(f(-.5))*ux,f(f(f(-.5)))*uy)]--(f(f(-.5))*ux,f(f(f(-.5)))*uy) withcolor bleu_m;
draw((f(f(-.5))*ux,f(f(f(-.5)))*uy)--(1.5*ux,f(f(f(-.5)))*uy)) dashed evenly withpen pencircle scaled 1.3bp withcolor bleu_m;
draw ((-ux,0) shifted h)--((-ux,0) shifted -h);
label.bot(btex $-1$ etex,(-ux,0) shifted -h);
draw ((ux,0) shifted h)--((ux,0) shifted -h);
label.bot(btex $1$ etex,(ux,0) shifted -h);
draw ((2*ux,0) shifted h)--((2*ux,0) shifted -h);
label.bot(btex $2$ etex,(2*ux,0) shifted -h);
numeric n;
n:=(1+ sqrt(5))/2;
draw ((n*ux,0)--(n*ux,n*uy)) dashed evenly withcolor bleu_f;
draw ((n*ux,0) shifted h)--((n*ux,0) shifted -h)withcolor bleu_f;
label.bot(btex \large{$\varphi$} etex,(n*ux,0) shifted -h)withcolor bleu_f;
label.ulft(btex $0$ etex,(0,0));
label.ulft(btex $1$ etex,(0,uy));
endfig;
end