LaTeX
Très courte initiation à LaTeX
Dans le cadre du M1 mathématiques de l'université Paris-Dauphine, j'assure un cours d'initiation à LaTeX pour lequel je suis en train de rédigé un ouvrage. Celui-ci s'intitule Très courte initiation à LaTeX, il a pour vocation de jetter les bases de l'utilisation de LaTeX pour des (apprenti·e·s) mathématicien·ne·s, tout en balyant un spectre large des posibilités de LaTeX, et surtout de ce qui peut être utile à un·e mathématicien·ne·s (rapport de stage, publication, support pour présentation, etc.). Vous pouvez télécharger le PDF en cliquant sur l'image suivante ou en vous rendant sur le plmlab dédié : https://plmlab.math.cnrs.fr/mchupin/initiation-latex/
Ce document s’accompagne d’une présentation orale d’introduction à LaTeX que vous pouvez télécharger ici :
Exposé sur l'utilisation de LaTeX
Je présente, dans divers laboratoires de mathématique et séminaires, un exposé sur l'utilisation de LaTeX dans notre travail, c'est-à-dire la recherche et l'enseignement en mathématiques dans le supérieur. L'idée de cette exposé est d'aider à remédier à quelques mauvaises habitudes et de donner quelques outils pour travailler plus efficacement.
Je mets ici, la dernière version des diapositives de l'exposé. Pour télécharger les diapositives au format pdf, cliquer sur l’image. Pour pouvoir voir les animations et la manipulation de l'objet 3D dans le PDF, il faut utiliser Adobe Acrobat Reader.
Divers documents, et notamment les fichiers pour la classe yathesis (classe pour la rédaction de thèses en france), préparés pour un ensemble de laboratoires parisiens se trouve ici : https://plmlab.math.cnrs.fr/infomath/latex (plmlab du séminaire https://infomath.pages.math.cnrs.fr/).
Quelques exemples avec leurs codes
Quelques exemples de la présentation sont présentés sur cette page. Pour les voir, il suffit de cliquer sur le bouton ci-dessous.
Lecture de fichier et pdfcrop
On considère un fichier de donnée de la forme:
tau rho global_it global_dim global_solves local_it local_dim local_solves 1.00000000e-04 9.99950004e-01 3.30000000e+01 4.85000000e+02 6.58200000e+03 3.70000000e+01 3.83000000e+02 6.79900000e+03 1.58489319e-04 9.99920765e-01 3.10000000e+01 4.83000000e+02 6.25800000e+03 3.50000000e+01 3.91000000e+02 6.53000000e+03 2.51188643e-04 9.99874429e-01 2.90000000e+01 4.81000000e+02 5.93400000e+03 3.20000000e+01 4.07000000e+02 6.15100000e+03 3.98107171e-04 9.99801006e-01 2.50000000e+01 5.57000000e+02 5.69800000e+03 3.50000000e+01 3.99000000e+02 6.57400000e+03 6.30957344e-04 9.99684671e-01 2.50000000e+01 5.57000000e+02 5.69800000e+03 3.50000000e+01 4.08000000e+02 6.63800000e+03 1.00000000e-03 9.99500375e-01 2.40000000e+01 5.56000000e+02 5.53600000e+03 3.30000000e+01 4.08000000e+02 6.32600000e+03 1.58489319e-03 9.99208494e-01 2.40000000e+01 5.56000000e+02 5.53600000e+03 3.30000000e+01 4.13000000e+02 6.35900000e+03 ...
Le code suivant fabrique un fichier PDF A4 grâce à la commande:
pdflatex monfichier.txt
et grâce au programme pdfcrop (qui est dans les distrubution TeX) on obtient le fichier PDF au dimension de la figure:
pdfcrop monfichier.pdf
% compilation :
% pdflatex pdfcrop.tex (-> production de pdfcrop.pdf)
% pdfcrop pdfcrop.pdf (-> production de pdfcrop-crop.pdf)
\documentclass{article}
\usepackage{pgfplots}
\definecolor{Local}{RGB}{102,194,165}
\definecolor{Global}{RGB}{252,141,98}
\pgfplotsset{
styleLocal/.style={Local, thick, mark=*},
styleGlobal/.style={Global, thick, mark=square*},
}
\begin{document}
\pagestyle{empty}
\begin{tikzpicture}
\begin{axis}[xmode=log, xlabel={Threshold $\tau$ (log scale)},
ylabel={Number of local solves},
width=1.\textwidth,
legend style={at={(0.8,0.95)},anchor=north
east} ]
\addplot [styleGlobal] table[x={tau},y={global_solves}]
{allData.dat};
\addplot [styleLocal] table[x={tau},y={local_solves}]
{allData.dat};
\legend{Global,Local}
\end{axis}
\end{tikzpicture}
\end{document}
Classe standalone
La classe standalone permet de produire un pdf au dimensions du contenu et non à la dimension A4.
% à compliler avec : pdflatex exemple.tex
\documentclass[tikz]{standalone}
\usetikzlibrary{automata}
\usetikzlibrary{arrows}
\begin{document}
\begin{tikzpicture}[scale=0.3,->,>=stealth',shorten >=1pt,auto,node
distance=2.3cm,
semithick]
\tikzstyle{every state}=[fill=red,draw=none,text=white]
\node[initial,state] (A) {$q_a$};
\node[state] (B) [above right of=A] {$q_b$};
\node[state] (D) [below right of=A] {$q_d$};
\node[state] (C) [below right of=B] {$q_c$};
\node[state] (E) [below of=D] {$q_e$};
\path (A) edge node {0,1,L} (B)
edge node {1,1,R} (C)
(B) edge[loop above] node {1,1,L} (B)
edge node {0,1,L} (C)
(C) edge node {0,1,L} (D)
edge[bend left] node {1,0,R} (E)
(D) edge[loop below] node {1,1,R} (D)
edge node {0,1,R} (A)
(E) edge [bend left] node {1,0,R} (A);
\end{tikzpicture}
\end{document}
Montrer une animation (slides)
Il est existe le package animate qui permet assez facilement de mettre une animation sur des slides avec LaTeX. Cela nécessite le lecteur Adobe Acrobat Reader.
On suppose que l'on dispose d'un ensemble d'images nommées comme souvent imageDDD.png où DDD sont trois chiffres (c'est-à-dire image000.png, image001.png, etc.). Alors le simple code suivant produit une présentation avec une animation dedans (ici les images sont dans le répertoire cycl2). Cliquez sur l'image pour télécharger le pdf généré par la simple commande
pdflatex exAnim.tex
Le simple code pour obtenir ce résultat est le suivant :
\documentclass{beamer}
\usepackage{animate}
\begin{document}
\begin{frame}{Test animation}
\animategraphics[width=0.6\linewidth,controls,loop]{12}{cycl2/image}{001}{073}
\end{frame}
\end{document}
Composer une thèse au CEREMADE
La composition de thèse (de doctorat ou d'habilitation à dériger des recherches) peut être assez délicate vu l'ampleur de ce genre d'ouvrage.
Denis Bitouzé a développé un classe de document LaTeX yathesis qui facilite énormément le travail en rendant tout un tas de choses automatiques : structure du document, remerciements, page de garde, épigraphes, résumés, sommaires pour chaque chapitre, etc.
J'ai préparé une structure de document minimal pour la réadaction d'une thèse du CEREMADE, en mixant cette classe avec le package développé par Pierre Guillou pour les couvertures du thèse PSL.
L'ensemble des fichiers est à télécharger ici compressé dans une archive zip.
Thème Beamer : Amurmaple
J’ai développé un thème Beamer, Amurmaple, disponible sur le CTAN : https://www.ctan.org/pkg/beamerthemeAmurmaple.
La documentation est disponible ici.
LuaMesh
J'ai développé une extension LaTeX avec le
moteur lualatex
(et non pdflatex
) qui
permet de tracer facilement des triangulations de Delaunay (dans un
but pédagogique) ainsi que les diagrammes de Voronoï.
Ce package est publié sur le CTAN : https://ctan.org/pkg/luamesh.
La documentation est disponible ici : luamesh-doc.pdf
Quelques exemples
Animation
Cette extension permet facilement de réaliser l'animation suivante:
La même animation, complétée d'une autre est à visionner dans les diapositives de cours ci-dessous (sous condition d'ouvrir le PDF avec Adobe Acrobat reader). Le code source est aussi disponible.
- Les
slides :
BW.pdf
(à lire avec Adobe Acrobat Reader) - Le
source :
BW.tex
- Le fichier PDF de
l'ensemble des images de l'animation:
animation.pdf
- Le fichier PDF de
l'ensemble des images de l'animation 2:
animationBW.pdf
Un exemple simple
\documentclass{article}
\usepackage{luamesh}
\pagestyle{empty}
\begin{document}
\buildVoronoiBW{(0.3,0.3);(1.5,1);(4,0);(4.5,2.5);(1.81,2.14);(2.5,0.5);(2.8,1.5);(0.1,2)
;(1.5,-0.3)}
\end{document}