diff options
author | Karl Berry <karl@freefriends.org> | 2008-01-28 19:35:44 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2008-01-28 19:35:44 +0000 |
commit | 24078264b6352d3a11d7d4e8a8e3793528b76339 (patch) | |
tree | 6019bfec9bd87a484a288501c7e6a844e815d959 /Master/texmf-dist/doc/latex/tablor/tablor.tex | |
parent | a898113387e9657ab658eb9cccb60988c3a3a2cc (diff) |
tablor update (25jan08)
git-svn-id: svn://tug.org/texlive/trunk@6436 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/tablor/tablor.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/tablor/tablor.tex | 310 |
1 files changed, 235 insertions, 75 deletions
diff --git a/Master/texmf-dist/doc/latex/tablor/tablor.tex b/Master/texmf-dist/doc/latex/tablor/tablor.tex index ca2fe635dbb..34cb3be545c 100644 --- a/Master/texmf-dist/doc/latex/tablor/tablor.tex +++ b/Master/texmf-dist/doc/latex/tablor/tablor.tex @@ -2,13 +2,10 @@ \usepackage[height=250mm,width=183mm]{geometry} \usepackage[upright]{fourier} \usepackage{tablor} -\usepackage{listings,amsmath,verbatim,graphicx,xcolor} +\usepackage{preambule} \usepackage[dvips,colorlinks=true]{hyperref} -\definecolor{0.8white}{rgb}{0.8,0.8,0.8} -\definecolor{0.2white}{rgb}{0.2,0.2,0.2} - \newcommand{\lat}{ \lstset{numbers=none,language=[LaTeX]{TeX},xleftmargin=10pt,% @@ -16,14 +13,17 @@ keywordstyle =\color{0.2white}\usefont{OT1}{cmtt}{b}{n},basicstyle=\ttfamily,com backgroundcolor=\color{0.8white},breaklines=true} } - +\renewcommand{\xcas}{\lstset{numbers=none,language=XCAS,xleftmargin=10pt,% +keywordstyle =\color{0.2white}\usefont{OT1}{cmtt}{b}{n},basicstyle=\ttfamily,commentstyle=\normalfont\scriptsize\slshape, + backgroundcolor=\color{0.8white},breaklines=true} +} \title{\texttt{tablor.sty} \\La machine à créer des tableaux de signes et de variations } \author{Guillaume \textsc{Connan} \\ \href{http://gconnan.free.fr}{http://gconnan.free.fr}} -\date{21 janvier 2008 - Version 1.3} +\date{23 janvier 2008 - Version 1.4} \begin{document} @@ -33,32 +33,60 @@ keywordstyle =\color{0.2white}\usefont{OT1}{cmtt}{b}{n},basicstyle=\ttfamily,com \section{Ça sert à quoi~?} -Il s'agit d'obtenir rapidement un tableau de signes ou un tableau de variations en entrant un +Il s'agit d'obtenir rapidement un tableau de signe ou un tableau de variation en entrant un minimum de commandes. \section{Comment ça marche~?} -On entre une instruction qu'on envoie via \LaTeX{} à \texttt{XCAS} qui effectue un certain nombre de -calculs (résolution d'équations, calcul de limites). \texttt{XCAS} renvoie un résultat sous la forme -d'un script \texttt{MetaPOST} qui est compilé. Un tableau est créé et ensuite inséré dans le document +\subsection{Principe général} + +On entre une instruction qu'on envoie via \LaTeX{} à \Prog{XCAS} qui effectue un certain nombre de +calculs (résolution d'équations, calcul de limites). \Prog{XCAS} renvoie un résultat sous la forme +d'un script \Prog{MetaPOST} qui est compilé. Un tableau est créé et ensuite inséré dans le document \texttt{tex}. +\subsection{Rentrons dans les détails} + +En utilisant un environnement \texttt{tablor}, de nombreux fichiers sont créés dans le répertoire +courant puis effacés par la commande \texttt{nettoyer} si vous le souhaitez~: + +\bez +\item des fichiers d'extension \texttt{.cxx}~:~il s'agit du fichier le plus important. C'est le + programme \Prog{XCAS} qui «~fabrique~» le tableau. Vous pouvez l'utilisez tel quel dans une + session \Prog{XCAS} ou \Prog{giac}. +\item des fichiers d'extension \texttt{.giac} qui regroupent des instructions lues et exécutées par + \Prog{giac}. +Les lignes importantes sont~: + +\begin{lstlisting} +read("XcasTV.cxx"); // giac charge le programme +Sortie:=fopen("XCasmpTV.mp"); // la sortie portera l'extension metapost +vect.xcas.user := read("XCasTV.user"); // giac lit les paramètres rentrés dans le fichier tex +\end{lstlisting} + +\item des fichiers d'extension \texttt{.user} qui sont créés par \LaTeX{} grâce à l'environnement + \texttt{VerbatimOut} de l'extension \texttt{fancyvrb} : il s'agit en fait de la commande qui se + trouve par exemple entre \verb+\begin{TVI}+ et \verb+\end{TVI}+. + + +\ez + \section{De quoi a-t-on besoin~?} -\begin{itemize} +\bez -\item Il faut avoir installé \texttt{XCAS}, logiciel multi-plateforme de calcul et de programmation~: +\item Il faut avoir installé \Prog{XCAS}, logiciel multi-plateforme de calcul et de programmation~: \href{http://www-fourier.ujf-grenoble.fr/\%7Eparisse/giac\_fr.html}{http://www-fourier.ujf-grenoble.fr/\%7Eparisse/giac\_fr.html}; -\item il faut avoir le fichier de macros \texttt{MetaPOST} +\item il faut avoir le fichier de macros \Prog{MetaPOST} \texttt{tableauVariation.mp} de Frédéric Mazoit~: \href{http://frederic.mazoit.free.fr/LaTeX\_metapost/tableauVariations/}{http://frederic.mazoit.free.fr/LaTeX\_metapost/tableauVariations/}; -Pour ceux qui sont guère habitués à \texttt{MetaPOST}, cela ne pose aucun problème car les -scripts et compilations \texttt{MetaPOST} se font automatiquement. Il suffit de créer dans son +Pour ceux qui sont guère habitués à \Prog{MetaPOST}, cela ne pose aucun problème car les +scripts et compilations \Prog{MetaPOST} se font automatiquement. Il suffit de créer dans son \texttt{texmf} personnel une arborescence du style~: \texttt{./texmfperso/metapost/tablor/} et d'y placer \texttt{tableauVariation.mp} puis un \texttt{rehash}. C'est exactement la même démarche que pour installer une nouvelle extension \LaTeX{}. @@ -66,60 +94,81 @@ pour installer une nouvelle extension \LaTeX{}. \item il faut être en mode \texttt{shell-escape} pour autoriser - les sorties de la compilation \texttt{tex}. Pour \texttt{emacs}, on rajoute en - fin de fichier \verb+%%% mode: latex --shell-escape+; pour les autres éditeurs, il faut modifier + les sorties de la compilation \texttt{tex}. Pour \Prog{emacs}, on rajoute en + fin de fichier \verb+%%% LaTeX-command: "latex --shell-escape" ***+; pour les autres éditeurs, il faut modifier la commande de compilation. Sinon, on peut modifier le fichier \texttt{texmf.cnf} pour que le mode soit automatisé en modifiant la ligne suivante~:~\texttt{shell-escape t}; \item il faut avoir à disposition l'extension \texttt{fancyvrb}; \item pour ceux qui compilent avec \texttt{pdf\LaTeX{}}, il faut avoir effectué les petits réglages - nécessaires à l'utilisation de figures produites par \texttt{MetaPOST}. Pour cela, il suffit de + nécessaires à l'utilisation de figures produites par \Prog{MetaPOST}; Pour cela, il suffit de rajouter dans le préambule~:\\ \verb+\DeclareGraphicsRule{*}{mps}{*}{}+ -\item il faut enfin installer le fichier \texttt{tablor.sty} dans son \texttt{texmf} personnel. +\item il faut installer le fichier \texttt{tablor.sty} dans son \texttt{texmf} personnel. -\end{itemize} +\ez -\bigskip - - Pour les utilisateurs de Microsoft Windows, remplacer - \verb+\immediate\write18{giac<#1 }+ par - \verb+\immediate\write18{giac #1 }+ dans le fichier \texttt{tablor.sty} - pour permettre le \texttt{shell-escape}\\ +\begin{figure} + \begin{DANGER} + Pour les utilisateurs de Microsoft Windows, remplacer \verb+\immediate\write18{giac<#1 }+ par \verb+\immediate\write18{giac #1 }+ +dans le fichier \texttt{tablor.sty} + pour permettre le \texttt{shell-escape} \smallskip Pour les utilisateurs de TeXnicCenter, observez cette \href{http://img221.imageshack.us/img221/27/capture20080114215233hu7.png}{explication} du paramétrage du \texttt{shell-escape}. On peut par exemple mettre~:\\ \texttt{-enable-write18 --shell-escape --src -interaction=nonstopmode "\%Wm"}.\\ -Sur TeXmaker, c'est \texttt{latex -enable-write18 --shell-escape -interaction=nonstopmode \%.tex}.\\ +Sur TeXmaker, c'est \texttt{latex -enable-write18 --shell-escape -interaction=nonstopmode \%.tex}. + + \smallskip -Pour faire comprendre à XP où trouver \texttt{giac}, vous pouvez modifier le \texttt{path} en suivant +Pour faire comprendre à XP où trouver \Prog{giac}, vous pouvez modifier le \texttt{path} en suivant ces instructions~: \\ Demarrer->Panneau de configuration->Système onglet Avancé->Variable d'environnement.\\ Le séparateur est le point virgule. (Merci à Gaëtan et à Daniel). - -\bigskip + \end{DANGER} + \end{figure} - L'extension \verb+fancybox+ rentre en conflit avec \verb+fancyvrb+ qu'utilise + +\begin{figure} + \begin{DANGER} + L'extension \verb+fancybox+ rentre en conflit avec \verb+fancyvrb+ qu'utilise \verb+tablor+ car elles définissent toutes deux différemment l'environnement \verb+VerbatimOut+. + \end{DANGER} + \end{figure} -\bigskip -Quatre nouvelles commandes sont crées~:~\verb+\tv, \nettoyer, \bouger, \recup,\executGiacmp+. - Attention aux conflits si de tels noms exustent quelque part dans vos +\begin{figure} + \begin{DANGER} + Quatre nouvelles commandes sont crées~:~\verb+\tv, \nettoyer, \bouger, \recup,\executGiacmp+. + Attention aux conflits si de tels noms existent quelque part dans vos fichiers personnels. + \end{DANGER} + \end{figure} + + + + +\begin{figure} + \begin{DANGER} +Le fichier \texttt{tablor.sty} est codé en \texttt{latin-1}. Certains devront donc le convertir en +\texttt{utf-8}. + \end{DANGER} + \end{figure} + \section{Comment l'utiliser~?} \subsection{Préambule} -Les ECM donnés en exemple correspondent à une compilation \texttt{\LaTeX{}+dvi+dvips}. +Les ECM donnés en exemple correspondent à une compilation \texttt{\LaTeX{}+dvi+dvips}. Pour \texttt{pdf\LaTeX{}}, +rajouter \verb+\DeclareGraphicsRule{*}{mps}{*}{}+. Le préambule sera toujours~: @@ -132,56 +181,73 @@ Le préambule sera toujours~: \end{lstlisting} + +\begin{figure} + \begin{Idee} + Les fontes utilisées dans les tableaux sont \verb+[upright]{fourier}+. Il est tout à + fait possible d'utiliser d'autres fontes. Il suffit de modifier le fichier + \texttt{tablor.sty} en remplaçant partout où il apparaît \verb+[upright]{fourier}+ par \verb+lmodern+ ou ce + que vous voulez. Ce n'est pas très pratique, mais cela évite de le mettre en option à + chaque utilisation et on utilise souvent la même fonte dans ses documents. + \end{Idee} + \end{figure} + + \subsection{Tableaux des variations} L'environnement s'appelle \texttt{TV}. On utilise une commande au format \texttt{XCAS}~: -%\xcas +\xcas \begin{lstlisting} TV([borne inf,borne sup],[valeurs interdites],"nom fonction","nom variable",expression en fonction de x,t,\tv) \end{lstlisting} -\begin{itemize} +\bez \item \texttt{[borne inf,borne sup]} désigne les bornes de l'ensemble de définition. On note $+\infty$~:~\texttt{+infinity} et $-\infty$~:~\texttt{-infinity}. N'oubliez pas les crochets~! \item \texttt{[valeurs interdites]} désigne la liste des valeurs interdites; \item \texttt{"nom fonction"} désigne la lettre représentant la fonction telle que vous voulez - qu'elle apparaisse : $f$, $g$, $h$, etc. + qu'elle apparaisse : $f$, $g$, $\f$, etc. \item \texttt{"nom variable"}~:~même chose pour la variable, selon que vous voulez la désigner par $x$, $t$, etc. N'oubliez pas les guillemets~! \item \texttt{expression en fonction de x} désigne l'expression de la fonction. Attention~! Utilisez ici toujours $x$ pour désigner la variable; \item le paramètre \texttt{t} est à remplacer par 1 si vous voulez voir apparaître une ligne - avec le signe de la dérivée et par 0 si vous ne voulez pas de cette ligne. -\item on termine par \verb+\tv+, une commande permettant de numéroter les tableaux en interne. -\end{itemize} + avec le signe de la dérivée, par 0 si vous ne voulez pas de cette ligne et par 2 si vous ne voulez + que le signe de la dérivée. +\item on termine par \verb+\tv+, une commande permettant de numéroter les tableaux en interne. + +\ez \lat Voyons à présent quelques exemples. \begin{enumerate} -\item Le tableau de variation sans signe de la dérivée de la fonction $f~:~x\mapsto x^2$ sur $[-5 ; 7]$. On entre~: +\item Le tableau de variation sans signe de la dérivée de la fonction $f~:~x\mapsto x^2$ sur $[-5\pv7]$. + + +On obtient~: - \begin{lstlisting} \begin{TV} -TV([-5,7],[],"f","x",x^2,0,\tv) +TV([-5,7],[],"f","x",x^2,0,\tv); \end{TV} - \end{lstlisting} -et on obtient~: +après avoir entré~: + +\begin{lstlisting} \begin{TV} TV([-5,7],[],"f","x",x^2,0,\tv) \end{TV} +\end{lstlisting} - -\item Si on veut la même fonction sur $]-\infty;+\infty[$ avec le signe de la dérivée~: +\item Si on veut la même fonction sur $\bbr$ avec le signe de la dérivée~: \begin{lstlisting} \begin{TV} @@ -193,7 +259,24 @@ TV([-infinity,+infinity],[],"f","x",x^2,1,\tv) TV([-infinity,+infinity],[],"f","x",x^2,1,\tv) \end{TV} -\item Voici ce que cela donne pour $g~:~t\mapsto \frac{t^2}{t^2-1}$ sur $[-10; +\infty[$~: +\item Avec la même fonction sur $\bbr$ avec uniquement le signe de la dérivée~: + + + + \begin{lstlisting} +\begin{TV} +TV([-infinity,+infinity],[],"f","x",x^2,2,\tv) +\end{TV} + \end{lstlisting} + +\begin{TV} +TV([-infinity,+infinity],[],"f","x",x^2,2,\tv) +\end{TV} + + + + +\item Voici ce que cela donne pour $g~:~t\mapsto \frac{t^2}{t^2-1}$ sur $[-10\pv +\infty[$~: \begin{lstlisting} \begin{TV} @@ -211,7 +294,7 @@ TV([-10,+infinity],[-1,1],"g","t",x^2/(x^2-1),1,\tv) \end{center} -\item Il y aura des problèmes pour des équations $f'(x)=0$ que \texttt{XCAS} ne saurait pas résoudre +\item Il y aura des problèmes pour des équations $f'(x)=0$ que \Prog{XCAS} ne saurait pas résoudre de manière formelle. Il faudrait alors utiliser une résolution numérique et remplacer \texttt{resoudre} par \texttt{fsolve}. Mais dans les études demandées au Bac, l'étude des signes de la dérivée est possible formellement. Dans les cas plus exotiques, on peut faire le tableau «~à @@ -227,9 +310,12 @@ Si l'on veut mettre en évidence les solutions de l'équation $f(x)=a$, on uti La syntaxe est~: \begin{lstlisting} -TVI([borne inf,borne sup],[valeurs interdites],"nom fonction","nom variable",expression en fonction de x,t,a,numero du tableau) +TVI([borne inf,borne sup],[valeurs interdites],"nom fonction","nom variable",expression en fonction de x,t,a,\tv) \end{lstlisting} +Les paramètres sont les mêmes que pour \texttt{TV} mais on ajoute la valeur \texttt{a} bien sûr. + + Par exemple, pour $f~:~x\mapsto \frac{x^2}{x^2-1}$ et l'équation $f(x)=10$ on entre~: \begin{lstlisting} @@ -269,7 +355,7 @@ TVI([-10,+infinity],[-1,1],"f","x",x^2/(x^2-1),1,-1,\tv) \subsubsection*{Cas du produit de deux facteurs affines} -Pour étudier le signe de $(-2x+3)(-x+5)$, on entre~: +Pour étudier le signe de $(-2x+3)(-x+5)$ sur $\bbr$, on entre~: \begin{lstlisting} \begin{TSa} @@ -284,44 +370,60 @@ On obtient~: TSa(-2,3,-1,5,\tv); \end{TSa} -\subsubsection*{Cas du produit d'un nombre quelconque de facteurs quelconques} +\subsubsection*{Cas du produit d'un nombre quelconque de facteurs quelconques sur un intervalle quelconque} Certains cas pathologiques ne vont pas fonctionner, mais sinon, pour étudier le signe de -\[(-2x+3)(x^2-1)(x^2+1)(x-1)(x^2-2)\] On entre cette fois les expressions sous cette forme~: +\[(-2x+3)(x^2-1)(x^2+1)(x-1)(x^2-2)\] on entre cette fois les expressions sous cette forme en +précisant l'intervalle d'étude~: \begin{lstlisting} \begin{TS} - TS([-2*x+3,x^2-1,x^2+1,x-1,x^2-2],\tv); + TS([-2*x+3,x^2-1,x^2+1,x-1,x^2-2],[-infinity,+infinity],\tv); \end{TS} \end{lstlisting} - On obtient~: +On obtient~: + + +\begin{TS} + TS([-2*x+3,x^2-1,x^2+1,x-1,x^2-2],[-infinity,+infinity],\tv); +\end{TS} + + + +Ou bien, sur un intervalle borné~: + +\begin{lstlisting} +\begin{TS} +TS([x-10,x+10],[-15,10],\tv) +\end{TS} +\end{lstlisting} \begin{TS} - TS([-2*x+3,x^2-1,x^2+1,x-1,x^2-2],\tv); +TS([x-10,x+10],[-15,10],\tv) \end{TS} + \subsubsection*{Signe d'un quotient} -On entre~: +On entre dans deux listes différentes les facteurs du numérateur et du dénominateur~: \begin{lstlisting} \begin{TSq} -TSq("nom du quotient",[liste des facteurs du numérateur],[liste des facteurs du -dénominateur],numéro du tableau dans le document) +TSq("nom du quotient",[liste des facteurs du numérateur],[liste des facteurs du dénominateur],[inf,sup]) \end{TSq} \end{lstlisting} -Par exemple, pour étudier le signe de $\dfrac{(-2x+3)(-4x+5)}{(x^2-16)(x-2)}$~: +Par exemple, pour étudier le signe de $\dfrac{(-2x+3)(-4x+5)}{(x^2-16)(x-2)}$ sur $\bbr$~: \begin{lstlisting} \begin{TSq} -TSq("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],\tv) +TSq("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],[-infinity,+infinity],\tv) \end{TSq} \end{lstlisting} @@ -329,20 +431,62 @@ TSq("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],\tv) \begin{TSq} -TSq("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],\tv) +TSq("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],[-infinity,+infinity],\tv) \end{TSq} +Sur un intervalle borné~: + +\begin{lstlisting} +\begin{TSq} +TSq("Q",[x-10],[x+10],[-infinity,10],\tv) +\end{TSq} +\end{lstlisting} + + +\begin{TSq} +TSq("Q",[x-10],[x+10],[-infinity,10],\tv) +\end{TSq} + + + + +\subsubsection*{Signe d'une seule expression} + + +On utilise l'environnement \texttt{TSc} comme \emph{Tableau de Signe court} en précisant +l'expression étudiée et l'intervalle considéré~: + +\begin{lstlisting} +\begin{TSc} +TSc((x-10)*(x+5),[-10,10],\tv) +\end{TSc} +\end{lstlisting} + + + +\begin{TSc} +TSc((x-10)*(x+5),[-10,10],\tv) +\end{TSc} + + + + + + + \section{Nettoyage} L'extension \texttt{tablor} contient également une commande \verb+\nettoyer+, qui, comme son nom l'indique, fait le ménage~:~on efface tous les fichiers auxiliaires créés et on garde uniquement les -fichiers eps créés par \texttt{MetaPOST} ayant une extension sous forme de numéro. +fichiers eps créés par \Prog{MetaPOST} ayant une extension sous forme de numéro. Il suffit de taper \verb+\nettoyer+ juste avant le \verb+\end{document}+ -\smallskip - -\fbox{ Pour les utilisateurs de Microsoft Windows, il faudra remplacer \texttt{rm} par \texttt{DEL}} +\begin{figure} + \begin{DANGER} + Pour les utilisateurs de Microsoft Windows, il faudra remplacer \texttt{rm} par \texttt{DEL} + \end{DANGER} + \end{figure} \smallskip @@ -359,24 +503,26 @@ On peut également stocker les tableaux dans un autre dossier \end{lstlisting} +\begin{figure} + \begin{DANGER} + Pour les utilisateurs de Microsoft Windows, il faudra remplacer \texttt{cp} par \texttt{XCOPY} + \end{DANGER} + \end{figure} -\fbox{ Pour les utilisateurs de Microsoft Windows, il faudra remplacer \texttt{cp} par \texttt{XCOPY}} - \section{Merci...} -\begin{itemize} +\bez \item à \href{http://frederic.mazoit.free.fr/LaTeX\_metapost/tableauVariations/}{Frédéric \textsc{Mazoit}} pour son fichier \texttt{tableauVariation.mp}; \item à \href{http://www.yvesdelhaye.be/?Generateur-d-interrogations-le}{Yves \textsc{Delhaye}} pour ses idées sur le \texttt{shell-escape} \item à \href{http://www-fourier.ujf-grenoble.fr/\%7Eparisse/giac\_fr.html}{Bernard - \textsc{Parisse}} pour \texttt{XCAS}. - -\end{itemize} + \textsc{Parisse}} pour \Prog{XCAS}. +\ez \section{Galerie} @@ -494,12 +640,12 @@ TV([-1,+infinity],[-1],"f","x",ln(1+x)-(x-x^2/2+x^3/3),1,\tv) \begin{lstlisting} \begin{TS} -TS([-2*x+3,x-1,x+1,x^2+3*x+1],\tv); +TS([-2*x+3,x-1,x+1,x^2+3*x+1],[-10,+infinity],\tv); \end{TS} \end{lstlisting} \begin{TS} -TS([-2*x+3,x-1,x+1,x^2+3*x+1],\tv); +TS([-2*x+3,x-1,x+1,x^2+3*x+1],[-10,+infinity],\tv); \end{TS} \begin{lstlisting} @@ -566,10 +712,24 @@ TVI([0,+infinity],[0],"f","x",ln(x)-(ln(x))^2,1,-1,\tv) +\begin{lstlisting} +\begin{TSc} +TSc((x-10)*(x+10),[-10,10],\tv) +\end{TSc} +\end{lstlisting} + + + +\begin{TSc} +TSc((x-10)*(x+10),[-10,10],\tv) +\end{TSc} + + \nettoyer + %\bouger{/home/moi/Desktop/} \end{document} |