From 4a030fcab21d7bf8937b305f0f43c69d1da2d3d3 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 13 Nov 2017 23:49:06 +0000 Subject: repere (13nov17) git-svn-id: svn://tug.org/texlive/trunk@45779 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/metapost/repere/README.md | 2 +- .../texmf-dist/doc/metapost/repere/repere-doc.pdf | Bin 428827 -> 456296 bytes .../texmf-dist/doc/metapost/repere/repere-doc.tex | 82 ++++++++++++++++++--- 3 files changed, 74 insertions(+), 10 deletions(-) (limited to 'Master/texmf-dist/doc/metapost') diff --git a/Master/texmf-dist/doc/metapost/repere/README.md b/Master/texmf-dist/doc/metapost/repere/README.md index 4af59b21bfb..51ec41481bc 100644 --- a/Master/texmf-dist/doc/metapost/repere/README.md +++ b/Master/texmf-dist/doc/metapost/repere/README.md @@ -1,4 +1,4 @@ -Package repere - Version 17.11 - November 6, 2017 +Package repere - Version 17.11.2 - November 12, 2017 This package provides MetaPost macros for drawing sec­ondary school math­e­mat­ics figures in a coordinate system : - axis, grids diff --git a/Master/texmf-dist/doc/metapost/repere/repere-doc.pdf b/Master/texmf-dist/doc/metapost/repere/repere-doc.pdf index bd1df01be57..ab144948041 100644 Binary files a/Master/texmf-dist/doc/metapost/repere/repere-doc.pdf and b/Master/texmf-dist/doc/metapost/repere/repere-doc.pdf differ diff --git a/Master/texmf-dist/doc/metapost/repere/repere-doc.tex b/Master/texmf-dist/doc/metapost/repere/repere-doc.tex index 84248a2c5d5..f2e4d1f9397 100644 --- a/Master/texmf-dist/doc/metapost/repere/repere-doc.tex +++ b/Master/texmf-dist/doc/metapost/repere/repere-doc.tex @@ -853,6 +853,8 @@ fin; \subsection{Interpolation} + + \MP{} propose les commandes suivantes (qui peuvent être combinées dans une même courbe) : \begin{description} @@ -860,11 +862,14 @@ fin; \item[A..B..C..] Courbe de Bézier passant par les points $A$, $B$, $C$... \end{description} -\verb|repere.mp| propose aussi les commandes suivantes : +\subsubsection*{Interpolation polynomiale} +\verb|repere.mp| propose aussi les commandes ci-dessous (pas toujours la meilleure méthode d'approximation...). À compiler avec \verb|mpost -numbersystem="decimal" fichier.mp| pour gagner en précision. \begin{description} -\item[lagrange(A,B,C,...)] Courbe passant par $A$, $B$, $C$... représentant le polynôme de degré maximal $n-1$ tel que $P(x_A)=y_A$, $P(x_B)=y_B$... -\item[lagrange(x1,y1,x2,y2,x3,y3...)] Courbe passant par les points $(x_1;y_1)$, $(x_2;y_2)$, $(x_3;y_3)$... représentant le polynôme de degré maximal $n-1$ tel que $P(x_i)=y_i$. +\item[lagrange(A,B,C,...)()] Courbe passant par $A$, $B$, $C$... représentant le polynôme de degré maximal $n-1$ tel que $P(x_A)=y_A$, $P(x_B)=y_B$... sur l'intervalle définissant le repère. +\item[lagrange(A,B,C,...)(xmin,xmax)] Même courbe que précédemment mais sur l'intervalle $[xmin;xmax]$. +\item[lagrange(x1,y1,x2,y2,x3,y3...)()] Courbe passant par les points $(x_1;y_1)$, $(x_2;y_2)$, $(x_3;y_3)$... représentant le polynôme de degré maximal $n-1$ tel que $P(x_i)=y_i$ sur l'intervalle définissant le repère. +\item[lagrange(x1,y1,x2,y2,x3,y3...)(xmin,xmax)] Même courbe que précédemment mais sur l'intervalle $[xmin;xmax]$. \end{description} \begin{exemple}[0.55] @@ -873,8 +878,8 @@ pair A[],B[]; A[1]=(1,1);A[2]=(3,5);A[3]=(5,8); A[4]=(7,2);A[5]=(9,4); B[1]=(1,6);B[2]=(3,7);B[3]=(6,4);B[4]=(8,9); -path L;L=lagrange(A[1],A[2],A[3],A[4],A[5]); -path C;C=lagrange(1,6,3,7,6,4,8,9); +path L;L=lagrange(A[1],A[2],A[3],A[4],A[5])(); +path C;C=lagrange(1,6,3,7,6,4,8,9)(0,8); draw quadrillage(1,1); draw axes(1,1); draw L epaisseur 1 couleur rouge; @@ -888,21 +893,51 @@ fin; \begin{description} -\item[hermite((x1,y1,y'1),(x2,y2,y'2)...)] Courbe passant par les points $(x_1;y_1)$, $(x_2;y_2)$, $(x_3;y_3)$... représentant le polynôme de degré maximal $2n-1$ tel que $P(x_i)=y_i$ et $P'(x_i)=y'_i$. -\item[hermite(A,y'A,B,y'B,C,y'C...)] Courbe passant par les points $A$, $B$, $C$... représentant le polynôme de degré maximal $2n-1$ tel que $P(x_A)=y_A$ et $P'(x_A)=y'_A$... +\item[hermite((x1,y1,y'1),(x2,y2,y'2)...)()] Courbe passant par les points $(x_1;y_1)$, $(x_2;y_2)$, $(x_3;y_3)$... représentant le polynôme de degré maximal $2n-1$ tel que $P(x_i)=y_i$ et $P'(x_i)=y'_i$ sur l'intervalle définissant le repère. +\item[hermite((x1,y1,y'1),(x2,y2,y'2)...)(xmin,xmax)] Même courbe que précédemment mais sur l'intervalle $[xmin;xmax]$. +\item[hermite(A,y'A,B,y'B,C,y'C...)()] Courbe passant par les points $A$, $B$, $C$... représentant le polynôme de degré maximal $2n-1$ tel que $P(x_A)=y_A$ et $P'(x_A)=y'_A$... sur l'intervalle définissant le repère. +\item[hermite(A,y'A,B,y'B,C,y'C...)(xmin,xmax)] Même courbe que précédemment mais sur l'intervalle $[xmin;xmax]$. +\end{description} + +\begin{exemple}[0.55] +repere.orth(-1,10,7cm,-1,10); +draw quadrillage(1,1); +draw axes(1,1); +path H;H=hermite((1,2,0.5),(4,8,0),(8,2,2))(); +draw H epaisseur 1 couleur bleu; +draw tangente.double(H,1) couleur bleu; +draw tangente.double(H,4) couleur bleu; +draw tangente.double(H,8) couleur bleu; +pair A,B,C; A:=(1,8);B:=(4,4);C:=(7,6); +path I;I=hermite(A,-1,B,0.5,C,2)(0,7.5); +draw I epaisseur 1 couleur rouge; +draw tangente.double(I,1) couleur rouge; +draw tangente.double(I,4) couleur rouge; +draw tangente.double(I,7) couleur rouge; +fin; +\end{exemple} + + +\subsubsection*{Interpolation à l'aide de splines cubiques} + +\begin{description} +\item[splineder(A,y'A,B,y'B,C,y'C...)()] Courbe passant par les points $A$, $B$, $C$ représentant une fonction cubique par morceaux telle que $f(x_A)=y_A$ et $f'(x_A)=y'_A$ sur l'intervalle définissant le repère. +\item[splineder(A,y'A,B,y'B,C,y'C...)(xmin,xmax)] Même courbe que précédemment mais sur l'intervalle $[xmin;xmax]$. +\item[splineder(xA,yA,y'A,xB,yB,y'B,...)()] Même courbe que précédemment (sur l'intervalle définissant le repère) mais les valeurs sont données sous forme de liste. +\item[splineder(xA,yA,y'A,xB,yB,y'B,...)(xmin,xmax)] Même courbe que précédemment mais sur l'intervalle $[xmin;xmax]$. \end{description} \begin{exemple}[0.55] repere.orth(-1,10,7cm,-1,10); draw quadrillage(1,1); draw axes(1,1); -path H;H=hermite((1,2,0.5),(4,8,0),(8,2,2)); +path H;H=splineder(1,2,0.5,4,8,0,8,2,2)(); draw H epaisseur 1 couleur bleu; draw tangente.double(H,1) couleur bleu; draw tangente.double(H,4) couleur bleu; draw tangente.double(H,8) couleur bleu; pair A,B,C; A:=(1,8);B:=(4,4);C:=(7,6); -path I;I=hermite(A,-1,B,0.5,C,2); +path I;I=splineder(A,-1,B,0.5,C,2)(0,7.5); draw I epaisseur 1 couleur rouge; draw tangente.double(I,1) couleur rouge; draw tangente.double(I,4) couleur rouge; @@ -910,6 +945,35 @@ draw tangente.double(I,7) couleur rouge; fin; \end{exemple} + + +\begin{description} +\item[spline(A,B,C...)()] Courbe passant par les points $A$, $B$, $C$ représentant une fonction cubique par morceaux telle que $f(x_A)=y_A$, $f(x_B)=y_B$... sur l'intervalle définissant le repère. +\item[spline(A,B,C...)(xmin,xmax)] Même courbe que précédemment mais sur l'intervalle $[xmin;xmax]$. +\item[spline(xA,yA,xB,yB,xC,yC,...)()] Même courbe que précédemment (sur l'intervalle définissant le repère) mais les valeurs sont données sous forme de liste. +\item[spline(xA,yA,xB,yB,xC,yC...)(xmin,xmax)] Même courbe que précédemment mais sur l'intervalle $[xmin;xmax]$. +\end{description} + +\begin{exemple}[0.55] +repere.orth(-1,10,7cm,-1,10); +pair A[],B[]; +A[1]=(1,1);A[2]=(3,5);A[3]=(5,8); +A[4]=(7,2);A[5]=(9,4); +B[1]=(1,6);B[2]=(3,7);B[3]=(6,4);B[4]=(8,9); +path L;L=spline(A[1],A[2],A[3],A[4],A[5])(); +path C;C=spline(1,6,3,7,6,4,8,9)(0,8); +draw quadrillage(1,1); +draw axes(1,1); +draw L epaisseur 1 couleur rouge; +draw C epaisseur 1 couleur bleu; +for i=1 upto 5: nomme.llft(A[i]) couleur rouge; +endfor +for i=1 upto 4: nomme.llft(B[i]) couleur bleu; +endfor +fin; +\end{exemple} + + \section{Suites} \begin{description} \item[suite(u,deb,fin)] figure formée des points $(i;u_i)$ pour $i$ variant entre \verb+deb+ et \verb+fin+. -- cgit v1.2.3