Ce cours latex est tapé par un élève de MPI* du lycée Champollion. Il regroupe l'ensemble du programme de MPI ainsi que des dépassements de celui-ci, notamment à travers les TD X-ENS.
Sur Linux : TexLive (il faut par contre installer les bons packages), vous pouvez utiliser a peu près n'importe quel éditeur de texte, helix avec texlab fonctionne particulièrement bien.
Pour Windows (hérésie) : Miktex. Pour le faire fonctionner, il a d'abord fallu installer strawberry, puis miktex. Ensuite, vous pouvez l'utiliser en ligne de commande ou directement dans VS code avec l'extension latex workshop qui est vraiment bien. On peut aussi faire un script python qui gère la compilation.
La compilation en ligne sur des sites comme overleaf est aussi possible.
La page wikipedia aide au formules tex contient à peu près tout ce qui est nécessaire pour écrire du latex.
Il existe un certain nombre d'environnements personalisés à destination des propositions, théorèmes, ...
Voici un exemple d'utilisation pour une proposition :
\begin{proposition}{Titre de la proposition (facultatif)}{}
Contenu de la proposition
\end{proposition}Il est nécessaire de mettre les accolades contenant le titre et les accolades vides, sinon le début du contenu de la proposition sera coupé.
Il existe également une variante des environnements permettant de mettre un titre sans que celui-ci ne soit affiché :
\begin{propositionnt}{Titre qui ne sera pas affiché}{}
Contenu
\end{propositionnt}Tous les environnements peuvent fonctionner dans ce mode en ajoutant simplement "nt" à la fin du mot (pour no title).
Il existe également les environnements "idée" pour mettre par exemple une idée du principe général des preuves. Ceux si cont affichés dans la marge au niveau de l'endroit où ils sont appelés. Ils s'utilisent comme suit :
\idee{
Idée de la preuve.
}Pour les preuves, l'environnement utilisé n'est pas de moi. Il se trouve dans un des package utilisés.
\begin{proof}
Contenu de la preuve.
\end{proof}Par défaut, le package affiche "Démonstration", puis le contenu fournit. Il est possible de modifier ce titre de cette façon :
\begin{proof}[Titre]
Contenu de la preuve.
\end{proof}"Titre" sera alors affiché à la place de "Démonstration".
Un autre environnement sympa sont les notes dans la marge. Il y en a une qui est prédéfini, celle de danger, qui s'utilise ainsi :
\danger{Contenu de la note dans la marge}Et un autre environnement plus générique :
\marginenote{Titre de la note}{Contenu de la note}Il est généralement conseillé, lorsque ces environnements sont utilisés au milieu du texte, de leur ajouter des \lvspace ou \avspace par la suite, qui sont des commandes expliquées dans le paragraphe suivant.
Il existe différents niveaux de titres, dans cet ordre :
\section{grand titre}
\subsection{taille en dessous}
\subsubsection{Encore plus petit}
\paragraph{Plus vraiment un titre...}Seuls les deux premiers sont affichés dans la table des matières. La profondeur de la table des matières peut être modifiée dans le fichier prépacours.cls, en augmentant ou diminuant le paramètre "tocdepth". Le fait que les subsubsection ne soient pas numérotés est une des personalisations de la classe.
Pour afficher un titre sans que celui-ci n'apparaisse dans la table des matière, vous pouvez ajouter une étoile :
\section*{Titre non numéroté}Et de même pour les autres niveaux de titre.
J'ai également un fichier de raccourcis pour gagner du temps lorsque je tape, réunis dans le fichier "raccourcis.sty". En voici les principaux :
Pour les ensembles de nombres :
\C, \R, \Q, \Z, \Npermettent d'obtenir le rendu des ensembles de nombres.
Pourles fonctions :
\fonction{nom de la fonction}{ensemble de départ}{ensemble d'arrivée}{variable}{formule}Par exemple pour la fonction carré dans R :
\fonction{f}{\R}{\R}{x}{x^2}Lorsqu'il n'y a qu'un seul élément dans les accolades, celles ci peuvent être supprimées. Pour la fonction définie précédemment, on obtient :
\fonction f \R \R x {x^2}Les raccourcis suivants permettent eux de laisser un espace vertical "large", "average" (qui aurait plutôt du s'appeler medium) ou "small", en utilisant les commandes suivantes :
\lvspace
\avspace
\svspace La hauteur de l'espace vertical créé peut être modifiée dans le fichier des raccourcis, et d'autres peuvent également être ajoutés.
Un autre raccourci utile est \uindent. Celui-ci permet de créer un text qui va être souligné et indenté, avec un espace au dessus de celui-ci. Il est conseillé d'utiliser une commande pour laisser de l'espace vertical en dessous de celui-ci.
J'ai créé de nombreux raccourcis pour tous les opérateurs classiques comme Vect, Ker, Sp, rg, cov, ... Vous pouvez retrouver la liste exhaustive dans le fichier raccourcis.sty.
Avant de pouvoir compiler le fichier avec la classe, il faut lui fournir un certain nombre de métadonnées, qui sont les suivantes :
\annee{2025-2026}
\filiere{MPI / MPI*}
\etablissement{Lycée Champollion}
\auteur{Nom de l'auteur}
\chapitre{Numéro du chapitre (NECESSAIREMENT UN NOMBRE)}{titre du chapitre}La majorité de celles-ci sont réunis dans un fichier qui est simplement inclus au début de chaque chapitre, pour ne pas tout retaper à chaque fois.
Pour que la page de garde avec la table des matières apparaisse, ainsi que la première page de cours avec le titre en grand, il faut utiliser la commande \pagedegarde au tout début du contenu du document. Cela donne donc quelque chose du type :
% métadonnées et importations
\begin{document}
\pagedegarde
% contenu latex
\end{document}Il y a également des environnements pour inclure des exos et leur correction. Pour cela, il existe des commandes permettant de passer du mode exos au mode cours, qui sont :
\passerenmodeexos
\passerenmodecoursLes différents modes sont uniquement destinés à modifier la taille des en tête et des marges normalement.
Il y a alors des environnement personalisés pour les exercies :
\begin{exercice}
Contenu de l'exo
\end{exercice}et pour leur correction :
\begin{correction}{nb}
contenu correction
\end{correction}Le champ "nb" permet de faire un lien vers l'exercice numéro "nb", pour ensuite permettre de passer de l'un à l'autre par un système de liens cliquables.
Normalement j'ai fourni un template qui contient l'arborescence que j'utilisais et que je trouve plutôt pratique pour ne pas avoir des fichiers de compilation partout, et qui permet d'avoir à la fois le cours, le TD, et un mix des deux. Au cas ou l'arborescence ce serait perdue, la voici :
latex/
├── commun
| ├── images
| | └── ampoule.png
| ├── config.tex
| ├── prepacours.cls
| └── raccourcis.sty
├── chapitre1
| ├── chapitre1.tex
| ├── cours
| | ├── contenu.tex
| | └── cours1.tex
| └── TD
| ├── contenu_td.tex
| └── TD1.tex
|
└── ...
Le fichier config.tex contient les métadonnées communes à tous les fichiers, prepacours.cls la classe personalisée, et réccourcis.sty les raccourcis. L'image ampoule.png est utilisée pour les environnements idee.
Le fichier chapitre_.tex contient cela :
\documentclass{../commun/prepacours}
\usepackage{../commun/raccourcis}
\input{../commun/config.tex}
\begin{document}
\chapitre{1}{Normes et distances}
\pagedegarde
\input{cours/contenu.tex}
\clearpage
\passerenmodeexos
\input{TD/contenu_td.tex}
\end{document}Le fichier TD_.tex (qui utilise une autre classe fonctionnant globalement de la même façon)
\documentclass{../../commun/prepacours_TD}
\usepackage{../../commun/raccourcis}
\input{../../commun/config.tex}
\chapitre{1}{TD : Normes et distances}
\begin{document}
\thispagestyle{premierepageschapitre} % Pour avoir le style spécial en première page
\input{contenu_td.tex}
\end{document}
cours_.tex
\documentclass{../../commun/prepacours}
\usepackage{../../commun/raccourcis}
\input{../../commun/config.tex}
\begin{document}
\chapitre{1}{Normes et distances}
\pagedegarde
\input{contenu.tex}
\end{document}Pour compiler tout cela en automatique, je vous conseille vivement de vous créer un petit script python ou autre. Personnelement utilisant windows (hérésie je sais), j'avais un script powershell qui se trouve dans le dossier compilation, afin de tout compiler d'un coup. Attention : la compilation de l'intégrale prend plusieurs minutes sur mon ordi ...
Pour les images, celles-ci se trouvent dans le dossier du chapitre l'utilisant. Pour pouvoir compiler l'intégrale, il faut donc copier ces images dans le sous-dossier images du dossier integrale.
J'ai également créé un index, qui apparait à la fin du document, pour accéder aux notions importantes rapidement. Pour ajouter un nouvel élément dans l'index, il suffit d'utiliser cette commande :
\index{Notion}On peut ajouter des éléments et des sous éléments, associés à un même élément. Pour cela, on met un !.
Par exemple, groupe et anneau sont tout deux associés à morphisme de cette façon :
\index{Morphisme!d'anneau}
\index{Morphisme!de groupe}Et si un terme contient un accent, pour le respect de l'ordre alphabétique, il faut utiliser cette syntaxe :
\index{Version sans accent@Version avec accents}Vous avez normalement toutes les clés de base pour survivre, et sinon les autres petits détails viendront tout seuls ! En tout cas bon courage à toi topin, et bon apprentissage !