% \copyleft Connan le Barbare (aka Guillaume Connan) \copyright % This work may be distributed and/or mofified under the conditions % or the LaTeX Project Public Licence, either v1.3 or (at your option) % any later version. The latest version is in % http://www.latex-project.org/lppl/ % This work consists of the files tablor.sty, tablor-xetex.sty, tablor.cfg, tablor.tex, % tablor.pdf and tablor.html \documentclass[11pt]{article} \usepackage{etex} \usepackage[height=250mm,width=183mm]{geometry} \usepackage[latin1]{inputenc} \usepackage[T1]{fontenc} \usepackage[french]{babel} \usepackage[upright]{kpfonts} \usepackage{bold-extra} \usepackage[scaled=0.85]{luximono} \usepackage[xcas]{tablor} \usepackage{listings,keystroke} \usepackage{graphicx,bclogo,amssymb,amsbsy,amsfonts,amstext,amscd,amsopn,amsxtra} % bclogo est t�l�chargeable ici : http://melusine.eu.org/syracuse/wiki/doku.php/mc/bclogo \usepackage{tocloft} %ajoute de l'espace entre le %numero de chapitre (chap) et le titre %dans la table des matieres \addtolength{\cftsecnumwidth}{2em} \addtolength{\cftsubsecnumwidth}{1em} % pour une TdM hyperactive... \usepackage[dvips,colorlinks=true,linkcolor=blue]{hyperref} % quelques gris \usepackage{color} \definecolor{0.9white}{rgb}{.9,.9,.9} \definecolor{0.8white}{rgb}{.8,.8,.8} \definecolor{0.2white}{rgb}{.2,.2,.2} \definecolor{0.4white}{rgb}{.4,.4,.4} \definecolor{0.6white}{rgb}{.6,.6,.6} \definecolor{0.1white}{rgb}{.1,.1,.1} \definecolor{bleu}{rgb}{0.4,0.2,1} \newrgbcolor{bleu}{0.4 0.2 1} \definecolor{orange}{rgb}{0.589999,0.269997,0.080004} \definecolor{rouge}{rgb}{1,0,0} \newrgbcolor{rouge}{1 0 0} % style des listings \newcommand\lat{\lstset{numbers=none,language=[LaTeX]{TeX},xleftmargin=10pt,% keywordstyle =\color{bleu}\bfseries,basicstyle=\ttfamily\color{0.1white},commentstyle=\normalfont\scriptsize\slshape,breaklines=true,backgroundcolor=\color{green!20},frame=trBL,framerule=1pt,framesep=4pt,rulesep=1pt,showstringspaces=false,stringstyle=\slshape,captionpos=b} } \newcommand\xcas{\lstset{numbers=none,language=XCAS,xleftmargin=10pt,% keywordstyle =\color{rouge!70!black}\bfseries,basicstyle=\ttfamily\color{0.1white},commentstyle=\normalfont\scriptsize\slshape,breaklines=true,backgroundcolor=\color{orange!20},frame=trBL,framerule=1pt,framesep=4pt,rulesep=1pt,showstringspaces=false,stringstyle=\slshape,captionpos=b} } % petits environnements bclogo \newenvironment{DANGER}[1]{% \begin{bclogo}[logo=\bctakecare,arrondi=0.1,couleur=0.9white]{#1}} {\end{bclogo}} \newenvironment{Idee}[1]{% \begin{bclogo}[logo=\bclampe,arrondi=0.1,couleur=0.9white]{#1}} {\end{bclogo}} % style des sections \usepackage{sectsty} \sectionfont{\LARGE \color{0.2white}} \subsectionfont{\color{0.4white}} \renewcommand\thesection{\Roman{section} -} \renewcommand\thesubsection{\alph{subsection}. } \subsubsectionfont{\color{0.6white}} \renewcommand\thesubsubsection{\roman{subsection}. } \graphicspath{{./figures/}} % titre \title{\texttt{tablor.sty} \\La machine � cr�er des tableaux de signes et de variations } \author{Guillaume \textsc{Connan} \\ \href{http://tehessin.tuxfamily.org/}{http://tehessin.tuxfamily.org/}\\ avec l'efficace participation de Jean-Michel \textsc{Boucart}\\ Forum d'aide ~:~\href{http://gconnan.free.fr/punbb/upload/index.php}{http://gconnan.free.fr/punbb/upload/index.php}} \date{9 mai 2010 - Version 4.07} %% % % D�but du document % %% \begin{document} \setlength{\parindent}{0mm} \maketitle \vspace{1cm} \initablor \section{�a sert � quoi~?} Il s'agit d'obtenir rapidement un tableau de signe ou un tableau de variation en entrant un minimum de commandes. \section{Nouveaut�s} \subsection{Changements depuis la version 3.00} \begin{figure}[!h] \begin{DANGER}{Attention~!} � partir de la version 4.03 de \texttt{tablor}, il est n�cessaire d'avoir la nouvelle version de tableauVariation.mp (la 2.1 datant de d�cembre 2008) mais pour l'instant elle n'est pas pr�sente sur CTAN~! R�cup�rez plut�t le fichier � l'adresse \href{http://download.tuxfamily.org/tehessinmath/les\_sources/tableauVariation.mp}{http://download.tuxfamily.org/tehessinmath/les\_sources/tableauVariation.mp}. Cela ne posera de probl�mes que si vous utilisez l'environnement TVZ. \end{DANGER} \end{figure} La version 4.01 n'est malheureusement plus compatible avec les versions ant�rieures car une option suppl�mentaire a �t� ajout�e pour traiter les fonctions trigonom�triques. Une possibilit� a de plus �t� ajout�e pour r�duire la taille des tableaux. Les tableaux de signes courts (TSc) ont un argument de plus pour traiter les valeurs interdites (version 4.01). Une extension pour une compilation via Xe\TeX{} a �t� cr��~:~\verb+tablor-xetex.sty+ (version 4.01) ne fonctionnant que sous unix. Un environnement TVPC a �t� cr�� pour traiter les fonctions prolongeables par continuit� (version 4.02). Une possibilit� a �t� ajout�e pour donner un nom � une fonction n�cessitant l'emploi d'une macro \LaTeX{} (version 4.02b). Les fronti�res des zones interdites sont assorties de doubles barres si n�cessaire. (version 4.03) Un nouvel environnement TVIex est cr�� pour avoir les racines des valeurs interm�diaires sous forme exacte quand c'est possible.(version 4.04) Un bug dans tous les TVI est corrig�.(Version 4.04). Un bug d� � une mise � jour de XCAS (version 4.04-b compatible avec les pr�c�dentes). Des bugs dans TVapp et TVIapp corrig�s (version 4.04-c... puis 4.04-d). Bug dans TVc (version 4.04-h) Nouvel environnement TVS pour des tableaux de variations de fonctions dont on ne connait qu'une liste d'images (version 4.05). Petites modifs dans le code pour s'adapter aux nouvelles versions de MetaPOST et pour contrer certains bugs dus � certaines configurations personnelles de xcas (4.05-b). Cr�ation de l'option windows : on peu maintenant d�clarer l'utilisation de l'OS windows en option sans aller modifier le fichier tablor.cfg (version 4.06). Nouveau \verb+tablor.cfg+ : on peut r�gler l'epsilon de XCAS qui fixe le seuil du z�ro des flottants. Il est r�gl� � $10^{-100}$ par d�faut. Il faut une version r�cente de XCAS, post�rieure au 20 novembre 2009. (version tablor : 4.06-c) Tableaux en couleurs ! Merci � \texttt{fp} du forum \href{http://forum.mathematex.net/latex-f6/tableau-de-variations-redige-en-bleu-t10826.html}{\texttt{mathematex}} (version tablor : 4.07) \xcas \begin{lstlisting}[caption={}] //reglage de epsilon : seuil du zero de giac epsilon:=1e-100; \end{lstlisting} \subsection{Professor.sty} \texttt{tablor.sty} a fait des petits... Gr�ce � une efficace collaboration avec Denis \textsc{LE FUR}, vous disposez � pr�sent de toute une panoplie d'outils similaires pour tracer des courbes, des histogrammes, des arbres de probabilit�s, des graphes probabilistes, des lissages par moyennes mobiles et j'en passe et des meilleures... Allez d�couvrir ces tr�sors sur \href{http://mathsp.tuxfamily.org/spip.php?rubrique46}{http://mathsp.tuxfamily.org/spip.php?rubrique46}. \subsection{Plugin TeXmacs} Emmanu�l Corcelle a �crit un plugin pour que les utilisateurs de TeXmacs puissent eux aussi profiter de \texttt{tablor} et \texttt{professor}. Pour cela visitez le site \href{http://corcelle.wordpress.com/}{http://corcelle.wordpress.com/} \section{Comment �a marche~?} \subsection{Principe g�n�ral} 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 \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~: \begin{itemize} \item des fichiers d'extension \texttt{.cxx}~:~il s'agit du fichier le plus important. C'est le programme \texttt{XCAS} qui �~fabrique~� le tableau. Vous pouvez l'utilisez tel quel dans une session \texttt{XCAS} ou \texttt{giac}. \item des fichiers d'extension \texttt{.giac} qui regroupent des instructions lues et ex�cut�es par \texttt{giac}. Il est tr�s court~: \xcas \begin{lstlisting} maple_mode(0); // au cas o� certains travailleraient en mode maple, mupad ou ti read("config.cxx"); // pour configurer la 1�re colonne (signe de ou sign of etc.) read("XcasTV.cxx"); // giac charge le programme read("XCasTV.user"); // giac lit les param�tres rentr�s dans le source tex et fabrique � la vol�e le source MetaPOST. \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{TV}+ et \verb+\end{TV}+. \end{itemize} \subsection{Code XCAS} Toutes les proc�dures suivent le m�me principe~: \begin{itemize} \item la plus grande partie s'occupe de cr�er les lignes du tableaux � l'aide de nombreux tests et boucles; \item ensuite, on regroupe ces lignes dans une variable \texttt{MetaLfc}; \item on exporte le tableau � l'aide des trois derni�res lignes~: \xcas \begin{lstlisting} sortie:=fopen("XCasmpfc.mp"); // on cr�e un fichier XCasmpfc.mp fprint(sortie,Unquoted,MetaLfc); // on y met MetaLfc fclose(sortie); // on ferme XCasmpfc.mp \end{lstlisting} \lat \end{itemize} \begin{figure}[!h] \begin{Idee}{Autres collaborations XCAS/\LaTeX{}} On peut suivre ce m�me principe pour cr�er d'autres associations de vos outils pr�f�r�s. Voir par exemple~: \href{http://gconnan.free.fr/?page=53}{http://gconnan.free.fr/?page=53} et \href{http://melusine.eu.org/syracuse/giac/}{http://melusine.eu.org/syracuse/giac/} \end{Idee} \end{figure} \section{De quoi a-t-on besoin~?} \begin{figure}[!h] \begin{Idee}{Conseils en lignes} N'h�sitez pas � explorer la page suivante : \href{http://mathsp.tuxfamily.org/spip.php?article186}{http://mathsp.tuxfamily.org/spip.php?article186} surtout si vous �tes sur XP :-) De nombreux probl�mes ont �t� r�gl�s sur le forum~: \href{http://gconnan.free.fr/punbb/upload/index.php}{http://gconnan.free.fr/punbb/upload/index.php} \end{Idee} \end{figure} \begin{figure}[!h] \begin{Idee}{MikTeX et TeXLive} \texttt{tablor} est pr�sent sur MikTeX et TeXLive. \texttt{tableauVariation.mp} est sur MikTeX mais la version n'est pas � jour (� la date du 7 f�vrier 2009). \end{Idee} \end{figure} \begin{itemize} \item Il faut avoir install� \texttt{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} \texttt{tableauVariation.mp} de Fr�d�ric Mazoit~: \href{http://download.tuxfamily.org/tehessinmath/les\_sources/tableauVariation.mp}{http://download.tuxfamily.org/tehessinmath/les\_sources/tableauVariation.mp}~; 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 \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{}. \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+%%% 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} mais ce n'est pas recommand� car il faut activer le shell-escape le moins possible et toujours sous contr�le~; \begin{figure}[!h] \begin{Idee}{shell-escape sur KILE} On peut cr�er une compilation en allant dans les menus de configuration, l'associer � un raccourci clavier et hop, quand on veut une compil rapide c'est facile. On va dans \texttt{configuration>kile>outils>nouvel outil} On l'appelle par exemple shellEscape et on le base sur LateX Ensuite en commande on met \texttt{latex} (ou \texttt{pdflatex}) et en option \verb+-shell-escape -interaction=nonstopmode '%source'+ et on clique sur OK. Ensuite on va dans \texttt{configuration>raccourci clavier > rechercher sh}. On tombe sur shellEscape. On clique sur personnaliser et on choisi un raccourci, par exemple la touche windows et s (S-s en langage emacs...) Et voil� : quand on veut compiler un document appelant tablor, on appuie sur windows+s. \end{Idee} \end{figure} \begin{figure}[!h] \begin{Idee}{shell-escape sur TeXnicCenter} 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}. Pour faire comprendre � \texttt{Microsoft Windows XP} o� trouver \texttt{giac}, vous pouvez modifier le \texttt{path} en suivant ces instructions~: Demarrer->Panneau de configuration->Syst�me onglet Avanc�->Variable d'environnement. Il faut cliquer sur la ligne PATH puis sur le bouton modifier et l� il faut ajouter \begin{center} \verb+;C:\repertoire_d'installation_de_xcas+ \end{center} (Merci � Ga�tan et � Daniel). \end{Idee} \end{figure} \item il faut avoir � disposition les extensions \texttt{fancyvrb}, \texttt{filecontents}, \texttt{ifthen} et \texttt{ifpdf}; \item pour ceux qui compilent avec \texttt{pdf\LaTeX{}}, il n'y a aucun probl�me et rien � faire car \texttt{tablor} contient d�j� ce qu'il faut pour s'adapter~: \verb+\ifpdf \DeclareGraphicsRule{*}{mps}{*}{} \fi+ \item il faut installer le fichier \texttt{tablor.sty} dans son \texttt{texmf} personnel. Pour ceux qui ont une version r�cente de \texttt{MiKTeX} ou \texttt{TeXLive}, \texttt{tablor} est d�j� install�. Pour les utilisateurs de \texttt{Unix}, vous devez savoir comment faire... Par commodit�, vous pouvez en profiter pour installer la version \texttt{Unix} de \emph{MiKTeX package manager}. J'ai fait un petit script pour vous y aider ici : \href{http://gconnan.free.fr/?page=52}{http://gconnan.free.fr/?page=52} \item il faut installer le fichier de configuration \texttt{tablor.cfg} dans le m�me r�pertoire de \texttt{tablor.sty} ce qui est fait automatiquement soit par d�compression d'une archive \texttt{tablor.zip} soit par l'interm�diaire des distributions \texttt{MikTeX} et \texttt{TeXLive}. \end{itemize} \begin{figure}[!h] \begin{DANGER}{Conflit d'extensions} 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} \begin{DANGER}{Commandes cr��es} Huit nouvelles commandes sont cr�es~:~\verb+\tv, \tvbis, \nettoyer, \initablor,+ \verb+ \dresse, \dressetoile, \executGiacmp+. Attention aux conflits si de tels noms existent quelque part dans vos fichiers personnels. \end{DANGER} \section{Comment l'utiliser~?} \begin{figure}[!h] \begin{Idee}{Faut-il savoir utiliser MetaPOST et XCAS~?} Non~! Tous les appels � ces logiciels se font sans aucune intervention de l'utilisateur. \end{Idee} \end{figure} \subsection{Pr�ambule} Les ECM donn�s en exemple ne d�pendent pas du moteur de compilation~:~\texttt{\LaTeX{}+dvi+dvips} ou \texttt{pdf\LaTeX{}} conviennent. Le pr�ambule sera toujours sous Linux ou Mac~: \lat \begin{lstlisting} \documentclass{article} \usepackage{graphicx} \usepackage[french]{babel} % or eunozer langouage \usepackage[xcas]{tablor} % xcas en option : cf plus loin \end{lstlisting} Le pr�ambule sera toujours sous Windows~: \lat \begin{lstlisting} \documentclass{article} \usepackage{graphicx} \usepackage[french]{babel} % or eunozer langouage \usepackage[xcas,windows]{tablor} % xcas et windows en option : cf plus loin \end{lstlisting} % \begin{figure}[!h] % \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{L'option xcas}\label{option} On met \texttt{xcas} si l'on a install� \texttt{giac/XCAS} sur son ordinateur et on ne met rien si \texttt{giac/XCAS} n'est pas install� ou (et) que l'on a r�cup�r� un fichier \texttt{tex} avec les fichiers sources \texttt{MetaPOST}; Ainsi, \texttt{tablor} ne fera pas appel � \texttt{giac/XCAS} et se contentera de compiler les fichiers \texttt{MetaPOST}. \subsection{L'option windows} Si vous utilisez encore Windows\textregistered, d�clarez-le en option~:~ \begin{lstlisting} \usepackage[xcas,windows]{tablor} \end{lstlisting} Pour les utilisateurs de Linux et Mac, il n'y a rien � d�clarer... \subsection{Fichier de configuration \texttt{tablor.cfg}} \subsubsection*{Contenu} {\small \begin{lstlisting} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Fichier de configuration de tablor.sty % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % La mise � jour de ce fichier permet d'adapter certains param�tres du package tablor.sty % au poste de travail et aux habitudes des utilisateurs. %======================================== % I - Configuration du pr�ambule MetaPOST %======================================== \begin{filecontents*}{enteteMP.cfg} input tableauVariation; verbatimtex %&latex \documentclass{article} \usepackage[upright]{fourier} % ou mathpazo, lmodern, etc. ou rien ! \usepackage{amsmath} \renewcommand\mbox[1]{ #1 } % pour les mbox intempestifs de xcas \renewcommand\cdot{ } % idem pour les cdot \begin{document} \catcode`\@=0 % pour utiliser le @ etex \end{filecontents*} %================================= % II - D�claration de l'�diteur utilis� % ================================ % % Remplacez "emacsclient -c" par la commande qui lance un autre editeur que % votre �diteur favori pour afficher les tableaux a modifier. % Laissez une espace avant de fermer l'accolade. \newcommand{\editeur}{emacsclient -c } %================================= %III - 1ere colonne %================================= % %permet de configurer les termes dans la premiere colonne des %tableaux : "signe de" ou "sign of" ou "" etc. % \begin{VerbatimOut}{config.cxx} //reglage de epsilon : seuil du zero de giac epsilon:=1e-100; // POUR LES TV, TVI,TVZ,TVapp,TSq,TSa // pour la ligne signe lsic:=" newLigneSignes(btex $\\hbox{ Signe de }\\atop{\\displaystyle "; // POUR LES TV, TVI,TVZ,TVapp // pour la ligne variation lvic:=" newLigneVariations(btex $\\hbox{ Variations de }\\atop{\\displaystyle "; \end{VerbatimOut} %% you may prefer % \begin{VerbatimOut}{config.cxx} % // FOR TV, TVI,TVZ,TVapp,TSq,TSa % // for the signs % lsic:=" % newLigneSignes(btex $\\hbox{ Sign of }\\atop{\\displaystyle "; % // POUR LES TV, TVI,TVZ,TVapp % // for the variations % lvic:=" % newLigneVariations(btex $\\hbox{ Variations of }\\atop{\\displaystyle "; %\end{VerbatimOut} %% ou si vous pr�f�rez que ni signe ni variation n'apparaissent % \begin{VerbatimOut}{config.cxx} % // POUR LES TV, TVI,TVZ,TVapp,TSq,TSa % // pour la ligne signe % lsic:=" % newLigneSignes(btex ${\\displaystyle "; % // POUR LES TV, TVI,TVZ,TVapp % // pour la ligne variation % lvic:=" % newLigneVariations(btex ${\\displaystyle "; % \end{VerbatimOut} \end{lstlisting} } Vous le placerez dans la m�me arborescence que \texttt{tablor.sty} et le modifierez si besoin est. \subsubsection*{R�le} \begin{itemize} \item La premi�re partie permet de configurer le pr�ambule \texttt{tex} qui sera utilis� par \texttt{MetaPOST} pour cr�er les tableaux. La ligne contenant l'extension des fontes est en particulier optionnelle~:~vous pouvez la modifier, voire la supprimer selon vos choix de fontes; \item si vous utilisez \texttt{ Microsoft-Windows}, il faudra d�commenter la ligne sp�cifi�e afin que les commandes \texttt{unix} soient remplac�es automatiquement par des commandes \texttt{dos}; \item l'�diteur sera appel� dans certains cas pour modifier l'aspect des tableaux dans les fichiers sources \texttt{MetaPOST}. Il faudra choisir un �diteur comme par exemple \texttt{emacs, xemacs, texmaker, vi, winshell, notepad, vim, kate, gedit, textmate,texshop}, \texttt{kile}, etc. Pour �viter certains probl�mes, choisissez un autre �diteur que celui que vous utilisez pour \LaTeX{} afin que la fen�tre s'ouvre sans probl�me. Voir aussi le paragraphe~\ref{modif}; \item par d�faut, on voit appara�tre dans la premi�re colonne des tableaux �~signe de ~� ou �~variations de ~�. Vous pouvez modifier ces r�glages ici comme indiqu�; deux exemples sont donn�s~:~en anglais ou en n'�crivant que les expressions. \item on peut r�gler l'epsilon de XCAS qui fixe le seuil du z�ro des flottants. Il est r�gl� � $10^{-100}$ par d�faut. \end{itemize} \subsection{Initialisation de \texttt{tablor} et pr�fixe des tableaux}\label{prefix} Les fichiers \texttt{MetaPOST} des tableaux sont regroup�s dans un fichier de suffixe \texttt{\_Tab.mp}. Le pr�fixe est par d�faut celui du fichier \texttt{tex} appelant \texttt{tablor}. Il est possible, pour des raisons de classement personnel, de modifier ce pr�fixe � la suite du \verb+\begin{document}+ en entrant~: \begin{lstlisting} \initablor \end{lstlisting} si l'on veut avoir comme pr�fixe le pr�fixe courant (obtenu par \verb+\jobname+) ou bien~: \begin{lstlisting} \initablor[Waouh] \end{lstlisting} si l'on veut que le fichier \texttt{MetaPOST} des tableaux s'appelle \verb+Waouh\_Tab.mp+ \medskip Si tout s'est bien pass�, on doit supprimer les fichiers \texttt{log} de \texttt{MetaPOST} et clore le fichier \texttt{\_Tab.mp} en entrant juste avant \verb+\end{document}+ la commande~: \begin{lstlisting} \nettoyer \end{lstlisting} ou bien, selon les cas~: \begin{lstlisting} \nettoyer[Waouh] \end{lstlisting} \medskip \textbf{En r�sum�}, notre fichier \texttt{tex} aura cette ossature~: \begin{lstlisting} \documentclass{article} \usepackage{graphicx} \usepackage[french]{babel} % or eunozer langouage \usepackage[xcas]{tablor} % options modifiables \begin{document} \initablor ... \nettoyer \end{document} \end{lstlisting} \section{Facteur de r�duction} Si vous trouvez le tableau trop grand, vous pouvez utilisez la commande \verb+\ech{nombre}+ o� \texttt{nombre} repr�sente le coefficienr de r�duction ou d'agrandissement du tableau. Par exemple, comparez~: \begin{lstlisting} \begin{TV} TV([-10,+infinity],[-1,1],"g","t",x^2/(x^2-1),1,n,\tv) \end{TV} \end{lstlisting} \begin{center} \begin{TV} TV([-10,+infinity],[-1,1],"g","t",x^2/(x^2-1),1,n,\tv) \end{TV} \end{center} et \begin{lstlisting} \ech{0.7} \begin{TV} TV([-10,+infinity],[-1,1],"g","t",x^2/(x^2-1),1,n,\tv) \end{TV} \ech{1} \end{lstlisting} \begin{center} \ech{0.7} \begin{TV} TV([-10,+infinity],[-1,1],"g","t",x^2/(x^2-1),1,n,\tv) \end{TV} \ech{1} \end{center} \begin{figure}[!h] \begin{DANGER}{Remise � l'�chelle 1} N'oubliez pas de remettre � l'�chelle 1 en entrant � la suite de l'environnement \verb+\ech{1}+ \end{DANGER} \end{figure} \section{Tableaux en couleur} Gr�ce � la tr�s efficace intervention de \texttt{fp} du forum \href{http://forum.mathematex.net/latex-f6/tableau-de-variations-redige-en-bleu-t10826.html}{\texttt{mathematex}}, on peut � pr�sent avoir des tableaux en couleur. Cette couleur est noire par d�faut. Si on veut �gayer sa pr�sentation, on utilise la commande \verb+\coultab{couleur}+ o� \verb+couleur+ est le nom de la couleur d�sir�e selon les standards \textbf{MetaPOST}~: \begin{itemize} \item \verb+blue+, \verb+red+, \verb+green+, etc. \item pour les gris : \verb+0.1white+, \verb+0.2white+, etc. \item un code RGB : \verb+(0.4,0.2,1)+, etc. \end{itemize} \begin{lstlisting}[caption={}] \coultab{blue} \begin{TV} TV([0,2],[],"f","x",x^2,1,n,\tv) \end{TV} \end{lstlisting} \coultab{blue} \begin{center} \begin{TV} TV([0,2],[],"f","x",x^2,1,n,\tv) \end{TV} \end{center} \coultab{black} \section{Nom des fonctions et commandes \LaTeX{}} Si vous voulez donner un nom de fonction n�cessitant l'emploi d'une commande \LaTeX{}, il faudra utiliser le caract�re \verb+@+ au lieu de \verb+\+. Par exemple, pour nommer une fonction $\varphi$, il faudra entrer \verb+@varphi+~: \begin{lstlisting} \begin{TSq} TSq("@varphi",[-45*x-27],[2-x],[-infinity,+infinity],n,\tv) \end{TSq} \end{lstlisting} \begin{center} \begin{TSq} TSq("@varphi",[-45*x-27],[2-x],[-infinity,+infinity],n,\tv) \end{TSq} \end{center} \section{Utilisation du moteur Xe\LaTeX} On peut � pr�sent compiler via Xe\LaTeX{} en utilisant l'extension d�di�e \verb+tablor-xetex.sty+ qui ne fonctionnera que dans un environnement UNIX puisqu'elle utilise un script \texttt{shell} pour convertir les sorties MetaPOST en \texttt{pdf} : \begin{lstlisting} \ifxetex \begin{filecontents*}{convert-mp-pdf.sh} #!/bin/sh mpost -interaction nonstopmode $1 ; cat>$1.tex<<EOF \documentclass{article} \usepackage[T1]{fontenc} \usepackage[frenchb]{babel} \usepackage{graphicx} \usepackage{pst-eps} \thispagestyle{empty} \begin{document} \begin{TeXtoEPS} \includegraphics{$1.0} \end{TeXtoEPS} \end{document} EOF latex $1 dvips -o $1.eps -E $1.dvi epstopdf $1.eps; ## Fin de convert-mp-pdf.sh \end{filecontents*} %$>> \immediate\write18{chmod 775 ./convert-mp-pdf.sh} \fi \end{lstlisting} Il n'y a rien � faire. Cette version peut m�me �tre utilis�e avec pdf\LaTeX{} ou pdf\TeX{}~! \section{Tableaux des variations} \subsection{Tableau standard} L'environnement s'appelle \texttt{TV}. On utilise une commande au format \texttt{XCAS}~: \xcas \begin{lstlisting} TV([borne inf,borne sup],[valeurs interdites],"nom fonction","nom variable",expression en fonction de x,lignes,trigo,\tv) \end{lstlisting} \begin{itemize} \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$, $\varphi$, 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{lignes} est � remplacer par 1 si vous voulez voir appara�tre une ligne 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 le param�tre \texttt{trigo} est � remplacer par \texttt{t} si la fonction �tudi�e est trigonom�trique et par tout autre symbole sinon~; \item on termine par \verb+\tv+, une commande permettant de num�roter les tableaux en interne. \end{itemize} \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 obtient~: \begin{TV} TV([-5,7],[],"f","x",x^2,0,n,\tv); \end{TV} apr�s avoir entr�~: \begin{lstlisting} \begin{TV} TV([-5,7],[],"f","x",x^2,0,n,\tv) \end{TV} \end{lstlisting} \item Si on veut la m�me fonction sur \textbf{R} avec le signe de la d�riv�e~: \begin{lstlisting} \begin{TV} TV([-infinity,+infinity],[],"f","x",x^2,1,n,\tv) \end{TV} \end{lstlisting} \begin{TV} TV([-infinity,+infinity],[],"f","x",x^2,1,n,\tv) \end{TV} \item Avec la m�me fonction sur \textbf{R} avec uniquement le signe de la d�riv�e~: \begin{lstlisting} \begin{TV} TV([-infinity,+infinity],[],"f","x",x^2,2,n,\tv) \end{TV} \end{lstlisting} \begin{TV} TV([-infinity,+infinity],[],"f","x",x^2,2,n,\tv) \end{TV} \item Voici ce que cela donne pour $g~:~t\mapsto \frac{t^2}{t^2-1}$ sur $[-10; +\infty[$~: \begin{lstlisting} \begin{TV} TV([-10,+infinity],[-1,1],"g","t",x^2/(x^2-1),1,n,\tv) \end{TV} \end{lstlisting} \begin{center} \begin{TV} TV([-10,+infinity],[-1,1],"g","t",x^2/(x^2-1),1,n,\tv) \end{TV} \end{center} \item Pour la fonction $x\mapsto \sin(x)+\frac{1}{2}$ on n'oublie pas le param�tre \texttt{t}~: \begin{lstlisting} \begin{TV} TV([-pi,pi],[],"g","t",sin(x)+1/2,1,t,\tv) \end{TV} \end{lstlisting} \begin{center} \begin{TV} TV([-pi,pi],[],"g","t",sin(x)+1/2,1,t,\tv) \end{TV} \end{center} \item Il y aura des probl�mes pour des �quations $f'(x)=0$ que \texttt{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 �~� la main~�. \end{enumerate} \subsection{Tableaux dont on ne conna�t qu'une liste d'images} Au d�but du cours de Seconde, il peut �tre utile de cr�er des tableaux � partir de liste d'images. On rentre la liste des abscisses, la liste des ordonn�es avec �ventuellement les limites � gauche et � droite des valeurs interdites, les valeurs interdites �ventuelles, le nom de la fonction et le nom de la variable. \subsubsection{Sans valeur interdite} \begin{lstlisting} \begin{TVS} TVS([1,2,3,4],[-1,5,2,9],[],"f","x",\tv) \end{TVS} \end{lstlisting} \begin{TVS} TVS([1,2,3,4],[-1,5,2,9],[],"f","x",\tv) \end{TVS} \subsubsection{Avec valeurs interdites} \begin{lstlisting} \begin{TVS} TVS([1,2,3,4],[-1,-infinity,+infinity,2,9],[2],"f","x",\tv) \end{TVS} \end{lstlisting} \begin{TVS} TVS([1,2,3,4],[-1,-infinity,+infinity,2,9],[2],"f","x",\tv) \end{TVS} \begin{lstlisting} \begin{TVS} TVS([1,2,3,4],[-1,-infinity,+infinity,2,+infinity],[1,2,4],"f","x",\tv) \end{TVS} \end{lstlisting} \begin{TVS} TVS([1,2,3,4],[-1,-infinity,+infinity,2,+infinity],[1,2,4],"f","x",\tv) \end{TVS} \subsection{Tableau de variation avec �~zone(s) interdite(s)~�} Pour certaines fonctions, tout un (ou plusieurs) intervalle(s) est(sont) exclu(s) de l'ensemble de d�finition. Par exemple, la fonction $x\mapsto \sqrt{x^2-1}$ est d�finie sur $]-\infty; -1]\cup[1; +\infty[$. On utilise alors l'environnement \texttt{TVZ} (Z comme zone...). \begin{lstlisting} \begin{TVZ} TVZ([-infinity,+infinity],[],[[-1,1]],"@varphi","x",sqrt(x^2-1),1,n,\tv) \end{TVZ} \end{lstlisting} \begin{center} \begin{TVZ} TVZ([-infinity,+infinity],[],[[-1,1]],"@varphi","x",sqrt(x^2-1),1,n,\tv) \end{TVZ} \end{center} \begin{figure}[!h] \begin{DANGER}{Listes des intervalles interdits} Le troisi�me argument est une liste d'intervalles : la liste des �~zones interdites~� qui peut �ventuellemnt se r�duire � un seul intervalle comme dans l'exemple pr�c�dent. \end{DANGER} \end{figure} Voici un exemple comportant plusieurs zones interdites~:~$x\mapsto \ln\big((x-5)^2-1\big)+\ln\big(x^2-1\big)$ \begin{lstlisting} \begin{TVZ} TVZ([-infinity,+infinity],[-1,1,4,6],[[-1,1],[4,6]],"f","x",ln((x-5)^2-1)+ln(x^2-1),1,n,\tv) \end{TVZ} \end{lstlisting} \begin{center} \begin{TVZ} TVZ([-infinity,+infinity],[-1,1,4,6],[[-1,1],[4,6]],"f","x",ln((x-5)^2-1)+ln(x^2-1),1,n,\tv) \end{TVZ} \end{center} \subsection{Tableau des variations avec th�or�me des valeurs interm�diaires} Si l'on veut mettre en �vidence les solutions de l'�quation $f(x)=a$, on utilise l'environnement \texttt{TVI}. La syntaxe est~: \begin{lstlisting} TVI([borne inf,borne sup],[valeurs interdites],"nom fonction","nom variable",expression en fonction de x,t,a,trigo,\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} \begin{TVI} TVI([-10,+infinity],[-1,1],"f","x",x^2/(x^2-1),1,10,n,\tv) \end{TVI} \end{lstlisting} et on obtient~: \ech{0.9} \begin{TVI} TVI([-10,+infinity],[-1,1],"f","x",x^2/(x^2-1),1,10,n,\tv) \end{TVI} \ech{1} Les solutions sont not�es $\alpha_1$, $\alpha_2$, etc. Si l'�quation est plut�t $f(x)=-1$~: \begin{lstlisting} \begin{TVI} TVI([-10,+infinity],[-1,1],"f","x",x^2/(x^2-1),1,-1,n,\tv) \end{TVI} \end{lstlisting} et on obtient~: \begin{TVI} TVI([-10,+infinity],[-1,1],"f","x",x^2/(x^2-1),1,-1,n,\tv) \end{TVI} \subsection{Tableau des variations avec th�or�me des valeurs interm�diaires et racines sous forme exacte} Si l'on veut mettre en �vidence les solutions de l'�quation $f(x)=a$ et qu'on veut faire appara�tre les racines sous forme exacte et pas seulement sous forme d'$\alpha_i$, on utilise l'environnement \texttt{TVIex}. La syntaxe est la m�me que \texttt{TVI}~: \begin{lstlisting} TVIex([borne inf,borne sup],[valeurs interdites],"nom fonction","nom variable",expression en fonction de x,t,a,trigo,\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} \begin{TVIex} TVIex([-10,+infinity],[-1,1],"f","x",x^2/(x^2-1),1,10,n,\tv) \end{TVIex} \end{lstlisting} et on obtient~: \ech{0.9} \begin{TVIex} TVIex([-10,+infinity],[-1,1],"f","x",x^2/(x^2-1),1,10,n,\tv) \end{TVIex} \ech{1} Si l'�quation est plut�t $f(x)=-1$~: \begin{lstlisting} \begin{TVIex} TVIex([-10,+infinity],[-1,1],"f","x",x^2/(x^2-1),1,-1,n,\tv) \end{TVIex} \end{lstlisting} et on obtient~: \begin{TVIex} TVIex([-10,+infinity],[-1,1],"f","x",x^2/(x^2-1),1,-1,n,\tv) \end{TVIex} Avec une �quation trigonom�trique~: \begin{lstlisting} \begin{TVIex} TVIex([-pi,pi],[],"@cos","x",cos(x),1,1/2,t,\tv) \end{TVIex} \end{lstlisting} \begin{TVIex} TVIex([-pi,pi],[],"@cos","x",cos(x),1,1/2,t,\tv) \end{TVIex} \begin{figure}[!h] \begin{DANGER}{Racines formelles non calculables} XCAS peut ne pas pouvoir trouver une expression exacte des racines et affichera un message barbare du style~: \texttt{Unable to isolate x in ...} Le tableau ne sera alors pas construit et vous aurez un message d'erreur. \end{DANGER} \end{figure} \subsection{Tableaux de variations avec approximation des z�ros de la d�riv�e} Il n'est parfois pas possible d'obtenir une valeur formelle des z�ros de la d�riv�e. On est donc amen� � rechercher une approximation num�rique de ces z�ros. Cela est possible gr�ce � la commande \texttt{fsolve} de \texttt{XCAS} utilis�e � bon escient. On appelera les environnements \texttt{TVapp} et \texttt{TVIapp} ainsi que leurs associ�s �toil�s. Voyons sur un exemple. \subsubsection*{Exemple} On veut r�soudre l'�quation $\ln(x)=\mathrm{e}^{-x}$ sur $]0,+\infty[$. Soit $g$ la fonction $x\mapsto x\ln(x)-e^{-x} $. \begin{lstlisting} \begin{TVapp} TVapp([0,+infinity],[0],"g","x",x*ln(x)-exp(-x),1,\tv) \end{TVapp} \end{lstlisting} \begin{center} \begin{TVapp} TVapp([0,+infinity],[0],"g","x",x*ln(x)-exp(-x),1,\tv) \end{TVapp} \end{center} \begin{figure}[!h] \begin{DANGER} {TVapp et TVIapp ne sont pas infaillibles~!~!} Chercher \emph{toutes} les approximations des racines de la d�riv�es c'est se lancer dans la th�orie du tout c'est-�-dire concilier la recherche de solutions approch�es pouvant �tre extr�mement proches sur des intervalles pouvant �tre extr�mement �tendus. Un concepteur de logiciel de calcul formel s'y refuse. Je devais m'y coller par souci d'efficacit�. Normalement, le code devrait fonctionner pour \emph{la plupart} des cas �tudi�s par des profs pas trop sadiques. �a ralentit l�g�rement la compilation. Le balayage se fait avec une pr�cision de 0,1. C'est s�r qu'on peut trouver de nombreux exemples qui ne fonctionneront pas mais plus on veut resserrer les mailles du filet, plus on passe de temps � les tricoter sauf dans le cas des fonctions polynomiales gr�ce � XCAS. Se pose aussi le probl�me des images et des tests de signes et de leurs approximations. Par exemple \begin{lstlisting} \begin{TVapp} TVapp([0,+infinity],[0],"g","x",1/3*x^3-0.0015*x^2+2e-06*x,1,\tv) \end{TVapp} \end{lstlisting} renvoie un tableau curieux car les images des racines de la d�riv�es sont de l'ordre de $10^{-10}$. % \begin{TVapp} % TVapp([0,+infinity],[0],"g","x",1/3*x^3-0.0015*x^2+2e-06*x,1,\tv) % \end{TVapp} �a peut s'arranger en donnant en argument suppl�mentaire le nombre de chiffres affich�s. Cela rendrait les diff�rentes versions incompatibles et le jeu n'en vaut pas forc�ment la chandelle. \end{DANGER} \end{figure} \subsection{Tableaux de variations de fonctions prolongeables par continuit�} On peut avoir prolong�e une fonction par continuit� et donc ne plus avoir de double barre sur la ligne des variations mais toujours une sur la ligne du signe de la d�riv�e. On entre trois listes~: \begin{enumerate} \item les bornes de l'intervalle d'�tude, comme toujours~; \item les valeurs o� la fonction sera prolong�e par continuit�~; \item les valeurs o� la fonction n'est pas d�rivable. \end{enumerate} Cela donne pour $x\mapsto {\rm e}^{-1/x^2}$~: \begin{lstlisting} \begin{TVPC} TVPC([-infinity,+infinity],[0],[0],"g","t",e^(-1/x^2),1,n,\tv); \end{TVPC} \end{lstlisting} \begin{TVPC} TVPC([-infinity,+infinity],[0],[0],"g","t",e^(-1/x^2),1,n,\tv); \end{TVPC} \subsection{Tableaux de variations et courbes param�tr�es} On peut obtenir le tableau de variations correspondant � des courbes param�tr�es d�finies par un syst�me du type~: \[\begin{cases} x=f(t) \\ y=g(t) \end{cases}\] La syntaxe est la suivante~: \begin{lstlisting} \begin{TVP} TVP(IE,VI,["x","y"],"t",[x(t),y(t)],a,trigo,n,\tv) \end{TVP} \end{lstlisting} avec \texttt{IE} l'intervalle d'�tude, \texttt{VI} la liste des listes de valeurs interdites respectives pour les deux fonctions, \texttt{a} pour avoir un tableau complet ou partiel comme dans les autres "TV", enfin \texttt{trigo} qui vaut \texttt{t} si interviennent des fonctions trigonom�trqiues, autre chose sinon. \begin{figure}[!h] \begin{DANGER}{Version de XCAS} L'utilisation de TVP implique l'utilisation d'une version de XCAS d'une date post�rieure au 14 juin 2008 ! \end{DANGER} \end{figure} \subsubsection{Cas des fonctions trigonom�triques} �tudions par exemple sur $\left[0\ ;\ \frac{\pi}{2}\right]$ \[ \begin{cases} x(t)=\cos(3t) \\ y(t)=\sin(4t) \end{cases}\] \begin{lstlisting} \begin{TVP} TVP([0,pi/2],[[],[]],["x","y"],"t",[cos(3*t),sin(4*t)],1,t,\tv) \end{TVP} \end{lstlisting} \begin{TVP} TVP([0,pi/2],[[],[]],["x","y"],"t",[cos(3*t),sin(4*t)],1,t,\tv) \end{TVP} \subsubsection{Les autres cas} �tudions par exemple sur $]-\infty\ ;\ +\infty[$ \[ \begin{cases} x(t)=\frac{t^2}{(t+1)(t-2)} \\ y(t)=\frac{t^2(t+2)}{t+1} \end{cases} \] \begin{lstlisting} \begin{TVP} TVP([-infinity,+infinity],[[-1,2],[-1]],["x","y"],"t",[t^2/((t+1)*(t-2)),t^2*(t+2)/(t+1)],1,n,\tv) \end{TVP} \end{lstlisting} \begin{TVP} TVP([-infinity,+infinity],[[-1,2],[-1]],["x","y"],"t",[t^2/((t+1)*(t-2)),t^2*(t+2)/(t+1)],1,n,\tv) \end{TVP} \section{Tableaux de signes} \subsection{Cas du produit de deux facteurs affines} Pour �tudier le signe de $(-2x+3)(-x+5)$ sur \textbf{R}, on entre~: \begin{lstlisting} \begin{TSa} TSa(-2,3,-1,5,\tv); \end{TSa} \end{lstlisting} On obtient~: \begin{TSa} TSa(-2,3,-1,5,\tv); \end{TSa} \subsection{Cas du produit d'un nombre quelconque de facteurs quelconques sur un intervalle quelconque} \begin{figure}[!h] \begin{DANGER}{Nouveaut� � partir de la version 2.08} Par souci de coh�rence avec l'environnement TSq, on doit rajouter maintenant en premier argument le nom de la fonction produit dans l'environnement TS. \end{DANGER} \end{figure} 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 en pr�cisant l'intervalle d'�tude~: \begin{lstlisting} \begin{TS} TS("P",[-2*x+3,x^2-1,x^2+1,x-1,x^2-2],[-infinity,+infinity],n,\tv); \end{TS} \end{lstlisting} On obtient~: \begin{TS} TS("P",[-2*x+3,x^2-1,x^2+1,x-1,x^2-2],[-infinity,+infinity],n,\tv); \end{TS} Ou bien, sur un intervalle born�~: \begin{lstlisting} \begin{TS} TS("f",[x-10,x+10],[-15,10],n,\tv) \end{TS} \end{lstlisting} \begin{TS} TS("f",[x-10,x+10],[-15,10],n,\tv) \end{TS} \subsection{Signe d'un quotient} 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],[inf,sup],trigo,\tv) \end{TSq} \end{lstlisting} Par exemple, pour �tudier le signe de $\frac{(-2x+3)(-4x+5)}{(x^2-16)(x-2)}$ sur \textbf{R}~: \begin{lstlisting} \begin{TSq} TSq("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],[-infinity,+infinity],n,\tv) \end{TSq} \end{lstlisting} \begin{TSq} TSq("Q",[-2*x+3,-4*x+5],[x^2-16,x-2],[-infinity,+infinity],n,\tv) \end{TSq} Sur un intervalle born�~: \begin{lstlisting} \begin{TSq} TSq("Q",[x-10,x-5],[x+10,x+3],[-10,10],n,\tv) \end{TSq} \end{lstlisting} \begin{TSq} TSq("Q",[x-10,x-5],[x+10,x+3],[-10,10],n,\tv) \end{TSq} \subsection{Signe d'une seule expression} On utilise l'environnement \texttt{TSc} comme \emph{Tableau de Signe court} en pr�cisant l'expression �tudi�e, l'intervalle consid�r� et les valeurs interdites~: \begin{lstlisting} \begin{TSc} TSc((x-10)*(x+5),[-10,10],[],n,\tv) \end{TSc} \end{lstlisting} \begin{TSc} TSc((x-10)*(x+5),[-10,10],[],n,\tv) \end{TSc} avec valeurs interdites~: \begin{lstlisting} \begin{TSc} TSc((x+10)/((x-5)*(x-2)),[-10,5],[2,5],n,\tv) \end{TSc} \end{lstlisting} \begin{TSc} TSc((x+10)/((x-5)*(x-2)),[-10,5],[2,5],n,\tv) \end{TSc} valeurs interdites et fonction trigonom�trique~: \begin{lstlisting} \begin{TSc} TSc(tan(x),[0,2*pi],[pi/2,3*pi/2],t,\tv) \end{TSc} \end{lstlisting} \begin{TSc} TSc(tan(x),[0,2*pi],[pi/2,3*pi/2],t,\tv) \end{TSc} \section{Comment modifier les tableaux � partir des fichiers MetaPOST~?}\label{modif} \subsection{Tableau par tableau} Il est impossible de pr�voir toutes les requ�tes des diff�rents utilisateurs. Le style du tableau produit peut n�anmoins vous d�plaire. Vous pouvez le modifier en intervenant directement sur le fichier \texttt{MetaPOST} cr�� pour chaque tableau. Pour cela, il suffit d'ajouter une �toile au nom de l'environnement utilis� et de donner un num�ro � votre nouvelle figure pour qu'elle ne soit pas �cras�e par les compilations suivantes. Num�rotez � partir de 100 par exemple. Si vous tapez~: \begin{lstlisting} \begin{TV*}{100} TV([-1,+infinity],[],"f","x",x-ln(x+1),1,n,\tv) \end{TV*} \end{lstlisting} l'�diteur que vous avez mis en option (voir le paragraphe~\ref{option}) est directement lanc� et le fichier \texttt{MetaPOST} correspondant � votre tableau qui portera le num�ro 100 est affich�. Vous pouvez alors le modifier, taper sur \Ctrl + \keystroke{S} pour l'enregistrer et \Ctrl + \keystroke{Q} pour fermer l'�diteur\footnote{Ces combinaisons de touches correspondent � la plupart des �diteurs mais ne sont pas universelles : v�rifiez pour celui que vous avez choisi.}. La compilation s'ach�ve alors automatiquement comme pour un environnement non �toil�. \begin{figure}[!h] \begin{DANGER}{Choix de l'�diteur} �vitez de choisir votre �diteur habituel~:~sur \texttt{Linux} prenez par exemple \texttt{gedit} ou \texttt{kate}, sur \texttt{Windows} prenez \texttt{wordpad}, etc. \end{DANGER} \end{figure} Par exemple, je tape~: \begin{lstlisting} \begin{TS*}{100} TS("F",[3*x+2,5*x^2-1],[-50,50],n,\tv) \end{TS*} \end{lstlisting} et appara�t une fen�tre de l'�diteur (ici \TeX maker) avec le fichier correspondant au tableau. Je le modifie � volont�~: \begin{center} \includegraphics[height=9cm]{capture.eps} \end{center} Je tape sur \Ctrl + \keystroke{S} puis \Ctrl + \keystroke{Q} et la compilation reprend automatiquement pour m'afficher le tableau voulu~: \begin{center} \begin{TS*}{105} TS("F",[3*x+2,5*x^2-1],[-50,50],n,\tv) \end{TS*} \end{center} Une fois la modification faite, on ne vous redemandera pas d'effectuer de modifications, sauf si vous changez le num�ro de la figure. \subsection{Traitement global dans un unique fichier MetaPOST}\label{global} Un fichier \texttt{pr�fixe\_Tab.mp} est cr�� o� sont copi�s les sources de chaque tableau. Vous pouvez ainsi retravailler globalement sur les tableaux si besoin ou les transmettre � une personne n'ayant pas install� \texttt{XCAS}. Voir le paragraphe~\ref{prefix} pour plus de d�tails. \section{Merci...} \begin{itemize} \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}; \item � Jean-Michel \textsc{Boucart} pour ses pr�cieuses et efficaces am�liorations de la partie \LaTeX{} du code. \end{itemize} \section{Erreurs habituelles} Avez-vous rendu possible le \texttt{shell-escape}~? Avez-vous install� toutes les extensions list�es en d�but de ce document~? Est-ce que \texttt{XCAS} est dans votre \texttt{PATH}~? La premi�re chose est d'analyser le fichier \texttt{log}. En cas de probl�me, n'h�sitez pas � me contacter � l'adresse indiqu�e sur mon site en joignant le fichier \texttt{log}. \section{\texttt{Tablor} et Emacs} Pour les heureux utilisateurs de tempo, voici quelques lignes pour faciliter votre vie � rajouter dans un fichier \texttt{latex-tempo}: \begin{lstlisting} ;; ;; TABLOR ;;; ;cas tableau de variation ("TV" (& > "\\begin{center}"n> "\\begin{TV}" n> "TV(["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," "["(p "liste de valeurs interdites (,) :")"]," "\""(p "nom de la fonction :")"\"," "\""(p "nom de la variable :")"\"," ""(p "expression de la fonction (utiliser x) :")"," ""(p "type de tableau (1:complet, 0:sans signe, 2:que le signe) :")"," ""(p "trigo ? (t:oui, n:non) :")"," "\\tv)" n> "\\end{TV}" n> "\\end{center}" > % )) ;cas TVI ("TVI" (& > "\\begin{center}"n> "\\begin{TVI}" n> "TVI(["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," "["(p "liste de valeurs interdites (,) :")"]," "\""(p "nom de la fonction :")"\"," "\""(p "nom de la variable :")"\"," ""(p "expression de la fonction (utiliser x) :")"," ""(p "type de tableau (1:complet, 0:sans signe, 2:que le signe) :")"," ""(p "trigo ? (t:oui, n:non) :")"," ""(p "f(x)=l pour la valeur l :")"," "\\tv)" n> "\\end{TVI}" n> "\\end{center}" > % )) ;cas signe produit ("TS" (& > "\\begin{center}"n> "\\begin{TS}" n> "TS(\""(p "nom du produit :")"\"," "["(p "liste des facteurs (,) :")"]," "["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," ""(p "trigo ? (t:oui, n:non) :")"," "\\tv)" n> "\\end{TS}" n> "\\end{center}" > % )) ;cas signe quotient ("TSq" (& > "\\begin{center}"n> "\\begin{TSq}" n> "TSq(\""(p "nom du quotient :")"\"," "["(p "liste des facteurs du numerateur (,) :")"]," "["(p "liste des facteurs du denominateur (,) :")"]," "["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," ""(p "trigo ? (t:oui, n:non) :")"," "\\tv)" n> "\\end{TSq}" n> "\\end{center}" > % )) ; Tableau signe court ("TSc" (& > "\\begin{center}"n> "\\begin{TSc}" n> "TSc("(p "expression :")",""[" (p "debut de l'intervalle:")"," (p "fin de l'intervalle:")"],""[" (p "liste de valeurs interdites (,) :")"],""" (p "trigo ? (t:oui, n:non) :")"," "\\tv)" n> "\\end{TSc}" n> "\\end{center}" > % )) ;cas tableau de variation avec zone interdite ("TVZ" (& > "\\begin{center}"n> "\\begin{TV}" n> "TVZ(["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," "["(p "liste de valeurs interdites (,) :")"]," "["(p "liste des zones interdites ([,],[,]) :")"]," "\""(p "nom de la fonction :")"\"," "\""(p "nom de la variable :")"\"," ""(p "expression de la fonction (utiliser x) :")"," ""(p "type de tableau (1:complet, 0:sans signe, 2:que le signe) :")"," ""(p "trigo ? (t:oui, n:non) :")"," "\\tv)" n> "\\end{TV}" n> "\\end{center}" > % )) ;cas TVP ("TVP" (& > "\\begin{center}"n> "\\begin{TVI}" n> "TVP(["(p "debut de l'intervalle:")","(p "fin de l'intervalle:")"]," "[["(p "liste de valeurs interdites de x(t)(,) :")"]," "["(p "liste de valeurs interdites de y(t)(,) :")"]]," "[\""(p "nom de la fonction x :")"\"," "\""(p "nom de la fonction y :")"\"]," "\""(p "nom de la variable :")"\"," "["(p "expression de la fonction x (utiliser t) :")"," ""(p "expression de la fonction y (utiliser t) :")"]," ""(p "type de tableau (1:complet, 0:sans signe, 2:que le signe) :")"," ""(p "t si fonctions trigo, n sinon :")"," "\\tv)" n> "\\end{TVP}" n> "\\end{center}" > % )) \end{lstlisting} Merci � \href{http://phil.pham.free.fr/}{Phil Pham}. \section{Galerie} Voici quelques exemples de tableaux~: \begin{lstlisting} \begin{TVI} TVI([-1,+infinity],[-1],"f","x",x^2/sqrt(x+1)-1,1,2,n,\tv) \end{TVI} \end{lstlisting} \begin{TVI} TVI([-1,+infinity],[-1],"f","x",x^2/sqrt(x+1)-1,1,2,n,\tv) \end{TVI} \begin{lstlisting} \begin{TVI} TVI([-1/2,+infinity],[],"f","x",x^2,1,2,n,\tv) \end{TVI} \end{lstlisting} \begin{TVI} TVI([-1/2,+infinity],[],"f","x",x^2,1,2,n,\tv) \end{TVI} \begin{lstlisting} \begin{TVI} TVI([0,+infinity],[0],"@ln","x",ln(x),1,2,n,\tv) \end{TVI} \end{lstlisting} \begin{TVI} TVI([0,+infinity],[0],"@ln","x",ln(x),1,2,n,\tv) \end{TVI} \stepcounter{TVn} \begin{lstlisting} \begin{TV} TV([1,+infinity],[],"-@ln","x",-ln(x),1,n,\tv) \end{TV} \end{lstlisting} \begin{TV} TV([1,+infinity],[],"-@ln","x",-ln(x),1,n,\tv) \end{TV} \begin{lstlisting} \begin{TVI} TVI([-pi,pi],[],"@cos","x",cos(x),1,1/2,t,\tv) \end{TVI} \end{lstlisting} \begin{TVI} TVI([-pi,pi],[],"@cos","x",cos(x),1,1/2,t,\tv) \end{TVI} \begin{lstlisting} \begin{TV} TV([0,2*pi],[],"@cos","x",cos(x),1,t,\tv) \end{TV} \end{lstlisting} \begin{TV} TV([0,2*Pi],[],"@cos","x",cos(x),1,t,\tv) \end{TV} \begin{lstlisting} \begin{TVI} TVI([0,pi],[pi/2],"@tan","t",tan(x),1,7,t,\tv) \end{TVI} \end{lstlisting} \begin{TVI} TVI([0,pi],[pi/2],"@tan","t",tan(x),1,7,t,\tv) \end{TVI} \begin{lstlisting} \begin{TVIex} TVIex([0,pi],[pi/2],"@tan","t",tan(x),1,7,t,\tv) \end{TVIex} \end{lstlisting} \begin{TVIex} TVIex([0,pi],[pi/2],"@tan","t",tan(x),1,7,t,\tv) \end{TVIex} \begin{lstlisting} \begin{TVI} TVI([-1,1],[],"f","x",(1-x)*sqrt(1-x^2),1,1,n,\tv) \end{TVI} \end{lstlisting} \begin{TVI} TVI([-1,1],[],"f","x",(1-x)*sqrt(1-x^2),1,1,n,\tv) \end{TVI} \begin{lstlisting} \begin{TVIex} TVIex([-1,1],[],"f","x",(1-x)*sqrt(1-x^2),1,1,n,\tv) \end{TVIex} \end{lstlisting} \begin{TVIex} TVIex([-1,1],[],"f","x",(1-x)*sqrt(1-x^2),1,1,n,\tv) \end{TVIex} \begin{lstlisting} \begin{TV} TV([-1,+infinity],[-1],"f","x",ln(1+x)-(x-x^2/2+x^3/3),1,n,\tv) \end{TV} \end{lstlisting} \begin{TV} TV([-1,+infinity],[-1],"f","x",ln(1+x)-(x-x^2/2+x^3/3),1,n,\tv) \end{TV} \begin{lstlisting} \begin{TS} TS("G",[-2*x+3,x-1,x+1,x^2+3*x+1],[-10,+infinity],n,\tv); \end{TS} \end{lstlisting} \begin{TS} TS("G",[-2*x+3,x-1,x+1,x^2+3*x+1],[-10,+infinity],n,\tv); \end{TS} \begin{lstlisting} \begin{TVI} TVI([-infinity,+infinity],[],"f","x",(x+2)*exp(x-1)-1,1,0,n,\tv) \end{TVI} \end{lstlisting} \begin{TVI} TVI([-infinity,+infinity],[],"f","x",(x+2)*exp(x-1)-1,1,0,n,\tv) \end{TVI} \begin{lstlisting} \begin{TVI} TVI([-infinity,+infinity],[],"f","x",1+(-2*x+1)*exp(2*x),1,0,n,\tv) \end{TVI} \end{lstlisting} \begin{TVI} TVI([-infinity,+infinity],[],"f","x",1+(-2*x+1)*exp(2*x),1,0,n,\tv) \end{TVI} \stepcounter{TVn} \begin{lstlisting} \begin{TV} TV([0,+infinity],[],"f","x",ln(exp(x)+x)-x,1,n,\tv) \end{TV} \end{lstlisting} \begin{TV} TV([0,+infinity],[],"f","x",ln(exp(x)+x)-x,1,n,\tv) \end{TV} \begin{lstlisting} \begin{TVI} TVI([0,pi],[],"f","x",cos(x)-x,1,0,n,\tv) \end{TVI} \end{lstlisting} \begin{TVI} TVI([0,pi],[],"f","x",cos(x)-x,1,0,n,\tv) \end{TVI} \begin{lstlisting} \begin{TVI} TVI([0,+infinity],[0],"f","x",ln(x)-(ln(x))^2,1,-1,n,\tv) \end{TVI} \end{lstlisting} \begin{TVI} TVI([0,+infinity],[0],"f","x",ln(x)-(ln(x))^2,1,-1,n,\tv) \end{TVI} \begin{lstlisting} \begin{TVIex} TVIex([0,+infinity],[0],"f","x",ln(x)-(ln(x))^2,1,-1,n,\tv) \end{TVIex} \end{lstlisting} \begin{TVIex} TVIex([0,+infinity],[0],"f","x",ln(x)-(ln(x))^2,1,-1,n,\tv) \end{TVIex} \begin{lstlisting} \begin{TSc} TSc((x-10)*(x+10),[-10,10],[],n,\tv) \end{TSc} \end{lstlisting} \begin{TSc} TSc((x-10)*(x+10),[-10,10],[],n,\tv) \end{TSc} \begin{lstlisting} \begin{TVZ} TVZ([-infinity,+infinity],[],[[-1,1]],"f","x",(sqrt(x^2-1))*(x^2-4),1,n,\tv) \end{TVZ} \end{lstlisting} \begin{TVZ} TVZ([-infinity,+infinity],[],[[-1,1]],"f","x",(sqrt(x^2-1))*(x^2-4),1,n,\tv) \end{TVZ} \begin{lstlisting} \begin{TVZ} TVZ([-infinity,+infinity],[-1,1],[[-1,1]],"f","x",ln(x^2-1),1,n,\tv) \end{TVZ} \end{lstlisting} \begin{TVZ} TVZ([-infinity,+infinity],[-1,1],[[-1,1]],"f","x",ln(x^2-1),1,n,\tv) \end{TVZ} \begin{lstlisting} \begin{TVP} TVP([0,pi/2],[[],[]],["x","y"],"t",[cos(3*t),sin(4*t)],1,t,\tv) \end{TVP} \end{lstlisting} \begin{TVP} TVP([0,pi/2],[[],[]],["x","y"],"t",[cos(3*t),sin(4*t)],1,t,\tv) \end{TVP} \begin{lstlisting} \begin{TVP} TVP([0,2*pi],[[],[]],["x","y"],"t",[t-2*sin(t),-1+2*cos(t)],1,t,\tv) \end{TVP} \end{lstlisting} \begin{TVP} TVP([0,2*pi],[[],[]],["x","y"],"t",[t-2*sin(t),-1+2*cos(t)],1,t,\tv) \end{TVP} % \begin{lstlisting} % \begin{TVZ} % TVZ([-infinity,+infinity],[],[[-1,1],[4,6]],"f","x",sqrt((x-5)^2-1)+sqrt(x^2-1),1,n,\tv) % \end{TVZ} % \end{lstlisting} % \begin{center} % \begin{TVZ} % TVZ([-infinity,+infinity],[],[[-1,1],[4,6]],"f","x",sqrt((x-5)^2-1)+sqrt(x^2-1),1,n,\tv) % \end{TVZ} % \end{center} \begin{lstlisting} \begin{TVP} TVP([0,pi/2],[[],[]],["f","g"],"t",[(sin(3*t)),(sin(4*t))],1,t,\tv) \end{TVP} \end{lstlisting} \begin{center} \begin{TVP} TVP([0,pi/2],[[],[]],["f","g"],"t",[(sin(3*t)),(sin(4*t))],1,t,\tv) \end{TVP} \end{center} \begin{lstlisting} \begin{TS} TS(" f ",[cos(x)-1/2,sin(x)+1/2],[0,2*pi],t,\tv) \end{TS} \end{lstlisting} \begin{center} \begin{TS} TS(" f ",[cos(x)-1/2,sin(x)+1/2],[0,2*pi],t,\tv) \end{TS} \end{center} % \begin{lstlisting} % \begin{TVIapp} % TVIapp([-1,+infinity],[-1,0],"g'","x",diff(ln(x+1)/x^2,x),1,0,\tv) % \end{TVIapp} % \end{lstlisting} % \begin{center} % \begin{TVIapp} % TVIapp([-1,+infinity],[-1,0],"g'","x",diff(ln(x+1)/x^2,x),1,0,\tv) % \end{TVIapp} % \end{center} % \lat % \begin{lstlisting} % \begin{enumerate} % \item % Selon le tableau de variation de la fonction $f$ % ci-dessous, on peut affirmer que \ldots % \begin{TV} % TV([-5,10],[],"f","x",(5/2)*x^2-2*x+12,0,n,\tv) % \end{TV} % \VF % \begin{itemize} % \item[\ldots] 5 n'a pas d'ant�c�dent \Rep % \item[\ldots] 5 n'a pas d'image \Rep % \item[\ldots] 5 a deux ant�c�dents \Rep % \item[\ldots] 5 a une image sup�rieure � celle de $\sqrt{2}$\Rep % \end{itemize} % \item Soit $f$ la fonction d�finie par $f~:~x\mapsto 3x^3-5x^2+2x-7$. Les tableaux suivants peuvent % correspondre � $f$~: % \VF % \begin{enumerate} % \item Tableau 1 \Rep % \begin{TV} % TV([-20,20],[],"f","x",3*x^3-5*x^2+2*x-7,0,n,\tv) % \end{TV} % \item Tableau 2 \Rep % \begin{TV} % TV([-20,20],[],"f","x",-3*x^3+5*x^2-2*x+7,0,n,\tv) % \end{TV} % \item Tableau 3 \Rep % \begin{TSc} % TSc(-3*x^3+5*x^2-2*x+7,[-20,20],n,\tv) % \end{TSc} % \item Tableau 4 \Rep % \begin{TSc} % TSc(3*x^3-5*x^2+2*x-7,[-20,20],n,\tv) % \end{TSc} % \end{enumerate} % \end{enumerate} % \end{lstlisting} % \begin{enumerate} % \item % Selon le tableau de variation de la fonction $f$ % ci-dessous, on peut affirmer que \ldots % \begin{TV} % TV([-5,10],[],"f","x",(5/2)*x^2-2*x+12,0,n,\tv) % \end{TV} % \VF % \begin{itemize} % \item[\ldots] 5 n'a pas d'ant�c�dent \Rep % \item[\ldots] 5 n'a pas d'image \Rep % \item[\ldots] 5 a deux ant�c�dents \Rep % \item[\ldots] 5 a une image sup�rieure � celle de $\sqrt{2}$\Rep % \end{itemize} % \item Soit $f$ la fonction d�finie par $f~:~x\mapsto 3x^3-5x^2+2x-7$. Les tableaux suivants peuvent-ils % correspondre � la fonction $f$~: % \VF % \begin{enumerate} % \item Tableau 1 \Rep % \begin{TV} % TV([-20,20],[],"f","x",3*x^3-5*x^2+2*x-7,0,n,\tv) % \end{TV} % \item Tableau 2 \Rep % \begin{TV} % TV([-20,20],[],"f","x",-3*x^3+5*x^2-2*x+7,0,n,\tv) % \end{TV} % \item Tableau 3 \Rep % \begin{TSc} % TSc(-3*x^3+5*x^2-2*x+7,[-20,20],n,\tv) % \end{TSc} % \item Tableau 4 \Rep % \begin{TSc} % TSc(3*x^3-5*x^2+2*x-7,[-20,20],n,\tv) % \end{TSc} % \end{enumerate} % \end{enumerate} % \begin{lstlisting} % On consid�re la fonction $f$ d�finie sur \textbf{R} par $f(x)=\frac{1}{2}\bigl(x+(1-x){\rm e}^{2x}\bigr)$ % �tudions sa d�riv�e~: % \begin{TVIapp} % TVIapp([-infinity,+infinity],[],"f'","x",diff(1/2*(x+(1-x)*exp(2*x)),x),1,0,\tv) % \end{TVIapp} % On en d�duit le tableau de variation de $f$ % \begin{TVapp} % TVapp([-infinity,+infinity],[],"f","x",1/2*(x+(1-x)*exp(2*x)),1,\tv) % \end{TVapp} % \end{lstlisting} % On consid�re la fonction $f$ d�finie sur \textbf{R} par $f(x)=\frac{1}{2}\bigl(x+(1-x){\rm e}^{2x}\bigr)$ % �tudions sa d�riv�e~: % \begin{TVIapp} % TVIapp([-infinity,+infinity],[],"f'","x",diff(1/2*(x+(1-x)*exp(2*x)),x),1,0,\tv) % \end{TVIapp} % On en d�duit le tableau de variation de $f$ % \begin{TVapp} % TVapp([-infinity,+infinity],[],"f","x",1/2*(x+(1-x)*exp(2*x)),1,\tv) % \end{TVapp} \pagebreak \tableofcontents \nettoyer %\bouger{/home/moi/Desktop/} \end{document} %%% Local Variables: %%% mode: latex %%% TeX-master: t %%% End: