433 completer le cours
This commit is contained in:
parent
b8032db714
commit
063cf5405b
3 changed files with 307 additions and 26 deletions
|
@ -67,16 +67,43 @@ Il faut trouver un compromis entre débit et robustesse aux erreurs.
|
||||||
\item Utilise des formes d'impulsions
|
\item Utilise des formes d'impulsions
|
||||||
\item Donne au spectre des des propriété utiles (bandes occupée, présence de la fréquence d'horloge ...)
|
\item Donne au spectre des des propriété utiles (bandes occupée, présence de la fréquence d'horloge ...)
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\begin{figure}[H]
|
|
||||||
|
\begin{figure}[H]
|
||||||
\centering
|
\centering
|
||||||
\begin{subfigure}{.5\textwidth}
|
\begin{subfigure}{0.5\textwidth}
|
||||||
\subcaption{Impulsion rectangulaire}
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}
|
||||||
|
[axis lines = middle,
|
||||||
|
xmin = -0.1,xmax =5,ymin=-0.1,ymax=3,
|
||||||
|
xlabel = $t$,ylabel=$g(t)$,xtick={4},xticklabels={$T_b$},
|
||||||
|
ytick={2},yticklabels={$V$}]
|
||||||
|
\addplot[black,thick] coordinates {(0,2) (4,2) (4,0)};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{impulsion rectangulaire}
|
||||||
|
\label{fig:label}
|
||||||
\end{subfigure}%
|
\end{subfigure}%
|
||||||
\begin{subfigure}{.5\textwidth}
|
\begin{subfigure}{0.5\textwidth}
|
||||||
\subcaption{Impulsion de Nyquist}
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}
|
||||||
|
[axis lines = middle,
|
||||||
|
ymin=-0.3,ymax=1.1,
|
||||||
|
xlabel = $t$,ylabel=$g(t)$,xtick=\empty,ytick=\empty]
|
||||||
|
\addplot[black,thick,smooth,samples=100]
|
||||||
|
{50*sin(deg(x*4))/deg(x*4)};
|
||||||
|
\draw[latex-latex] (axis cs:-0.78,-0.2) -- (axis cs:0.78,-0.2)
|
||||||
|
node[midway, above right]{\tiny$T_b$};
|
||||||
|
\draw[dotted] (axis cs: -0.78,0) --(axis cs:-0.78,-0.2)
|
||||||
|
(axis cs: 0.78,0) --(axis cs:0.78,-0.2);
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{impulsion de Nyquist}
|
||||||
|
\label{fig:label}
|
||||||
\end{subfigure}
|
\end{subfigure}
|
||||||
\caption{Formes d'impulsions classiques}
|
\caption{forme d'impulsion usuelles}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
|
||||||
\paragraph{Modulation}
|
\paragraph{Modulation}
|
||||||
Comme pour une modulation numérique
|
Comme pour une modulation numérique
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
\end{defin}
|
\end{defin}
|
||||||
|
|
||||||
\begin{rem}
|
\begin{rem}
|
||||||
Le codage en bande de base n'est aps un codage source ou canal ,pas cryptage du signal.
|
Le codage en bande de base n'est pas un codage source ou canal ,pas cryptage du signal.
|
||||||
\end{rem}
|
\end{rem}
|
||||||
\section{Mise en équation}
|
\section{Mise en équation}
|
||||||
|
|
||||||
|
@ -26,8 +26,6 @@ Pour la suite on considère que l'on émet le signal (PAM):
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{defin}
|
\end{defin}
|
||||||
|
|
||||||
\emph{Ajouter Exemple de forme d'impulsion}\\
|
|
||||||
|
|
||||||
\begin{exemple}[Cas binaire]
|
\begin{exemple}[Cas binaire]
|
||||||
$M=2$ . On a un seul élement binaire transmis pendant $T= 1 T_b$. $a_k\in\{A_0=0, A_1=+1 \}$.
|
$M=2$ . On a un seul élement binaire transmis pendant $T= 1 T_b$. $a_k\in\{A_0=0, A_1=+1 \}$.
|
||||||
\end{exemple}
|
\end{exemple}
|
||||||
|
@ -59,13 +57,13 @@ Pour la suite on considère que l'on émet le signal (PAM):
|
||||||
\begin{rem}
|
\begin{rem}
|
||||||
La DSP de $e$ est constituée d'éventuelle raie et du module au carré de de la TF de $G(f)$. On peux par exemple rajouter une raie a la fréquence d'horloge pour la transmettre au récepteur (PLL ... )
|
La DSP de $e$ est constituée d'éventuelle raie et du module au carré de de la TF de $G(f)$. On peux par exemple rajouter une raie a la fréquence d'horloge pour la transmettre au récepteur (PLL ... )
|
||||||
|
|
||||||
La fonction d'autocorrélation de $e(t)$ est périodique (cyclostationnarité) est les utilisée dans certaines application pour la récupération du rythme $T$ et la synchronisation.
|
La fonction d'autocorrélation de $e(t)$ est périodique (cyclostationnarité) est utilisée dans certaines application pour la récupération du rythme $T$ et la synchronisation.
|
||||||
\end{rem}
|
\end{rem}
|
||||||
\section{Classification}
|
\section{Classification}
|
||||||
\subsection{Codes RZ et NRZ}
|
\subsection{Codes RZ et NRZ}
|
||||||
\begin{defin}
|
\begin{defin}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item RZ :Return to Zero:
|
\item\emph{ RZ :Return to Zero:}
|
||||||
\[
|
\[
|
||||||
g(t) =
|
g(t) =
|
||||||
\begin{cases}
|
\begin{cases}
|
||||||
|
@ -73,26 +71,32 @@ Pour la suite on considère que l'on émet le signal (PAM):
|
||||||
= 0 & \forall t \in [\lambda T ,T]
|
= 0 & \forall t \in [\lambda T ,T]
|
||||||
\end{cases}
|
\end{cases}
|
||||||
\]
|
\]
|
||||||
\item NRZ : Non Return to Zero
|
\item\emph{ NRZ : Non Return to Zero}
|
||||||
\[
|
\[
|
||||||
g(t) \neq 0 \forall t
|
g(t) \neq 0 \quad \forall t\in[0,T]
|
||||||
\]
|
\]
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{defin}
|
\end{defin}
|
||||||
\subsection{Code ou format (M-aire) unipolaire et antipolaire}
|
\subsection{Code ou format (M-aire) unipolaire et antipolaire}
|
||||||
\begin{defin}
|
\begin{defin}
|
||||||
Les codes unipolaires ne changent pas de signe, les moyennes ne sont pas nulles.
|
Les codes \emph{unipolaires} ne changent pas de signe, les moyennes ne sont pas nulles.
|
||||||
|
|
||||||
Pour les codes antipolaire, c'est l'inverse.
|
Pour les codes\emph{ antipolaire,} c'est l'inverse.
|
||||||
On distingue les codes paires et impaires (utilisation du zéro)
|
On distingue les codes paires et impaires (utilisation du zéro)
|
||||||
\end{defin}
|
|
||||||
|
|
||||||
|
\end{defin}
|
||||||
|
\begin{defin}
|
||||||
|
Un code \emph{binaire} utilise 2 niveau de tension pour encoder le
|
||||||
|
signal.
|
||||||
|
|
||||||
|
Un code \emph{M-aire} en utilise $M$.
|
||||||
|
\end{defin}
|
||||||
\subsection{Code avec ou sans mémoire}
|
\subsection{Code avec ou sans mémoire}
|
||||||
\begin{defin}
|
\begin{defin}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Code sans mémoire :
|
\item Code \emph{sans mémoire} :
|
||||||
Transcodafe systématique.
|
Transcodage systématique.
|
||||||
\item Code avec mémoire:
|
\item Code \emph{avec mémoire}:
|
||||||
Utilise les valeurs des bits précédemment transmis pour déterminer la valeur a émettre.
|
Utilise les valeurs des bits précédemment transmis pour déterminer la valeur a émettre.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{defin}
|
\end{defin}
|
||||||
|
@ -105,16 +109,266 @@ Pour la suite on considère que l'on émet le signal (PAM):
|
||||||
\]
|
\]
|
||||||
\end{prop}
|
\end{prop}
|
||||||
\section{Code en BdeB usuels}
|
\section{Code en BdeB usuels}
|
||||||
|
\subsection{Rappel}: on a la DSP du signal d'apres la formule des interférences:
|
||||||
|
\[
|
||||||
|
\phi_{ee}(f) = |G(f)|^2\times \phi_{aa}(f)
|
||||||
|
\]
|
||||||
|
\begin{prop}
|
||||||
|
Pour un code en Bande de Base:
|
||||||
|
\begin{itemize}
|
||||||
|
\item à symbole indépendant (sans mémoire)
|
||||||
|
\item à symbole identiquement distribués
|
||||||
|
\end{itemize}
|
||||||
|
Alors:
|
||||||
|
\[
|
||||||
|
\phi_{aa}(f) =\frac{\sigma_a^2}{T}+\frac{m_a}{T^2}\sum_{-\infty}^{+\infty}\delta(f-k/T)
|
||||||
|
\]
|
||||||
|
\end{prop}
|
||||||
|
\subsection{Code NRZ binaires}
|
||||||
|
|
||||||
\emph{ à compléter}
|
\subsubsection{Code NRZ Binaire antipolaire}
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}[scale=0.5]
|
||||||
|
\begin{axis}
|
||||||
|
[axis lines = middle,width =0.9\linewidth,height=5cm,
|
||||||
|
xmin= 0,xmax =6, ymin=-1.3,ymax=1.5,xtick={1,2,3,4,5,6},
|
||||||
|
xticklabels={$T_b$,$2T_b$,$3T_b$,$4T_b$,$5T_b$,$6T_b$},
|
||||||
|
xticklabel style={yshift = -1.2cm},
|
||||||
|
ytick={-1,1},yticklabels={$-V$,$+V$}]
|
||||||
|
\addplot[const plot, very thick] coordinates {(0,1) (1,-1) (2,1) (3,-1) (4,-1)
|
||||||
|
(5,1) (6,1)};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{Codage NRZ binaire}
|
||||||
|
\end{figure}
|
||||||
|
\begin{defin}
|
||||||
|
Pour un code NRZ binaire antipolaire on a:
|
||||||
|
\[
|
||||||
|
\begin{cases}
|
||||||
|
a_k = + 1 & \text{ si } \beta_k =1 \\
|
||||||
|
a_k = - 1 & \text{ si } \beta_k =0 \\
|
||||||
|
\end{cases}
|
||||||
|
\]
|
||||||
|
Alors :
|
||||||
|
\[
|
||||||
|
m_a = 0 \text{ et } \sigma_a^2 = V^2
|
||||||
|
\]
|
||||||
|
Pour une forme d'impulsion rectangulaire on a donc:
|
||||||
|
\[
|
||||||
|
\phi_{ee}(f)= V^2 T_b \left(\frac{\sin\pi fT_b}{\pi f T_b}\right)^2+ \delta(f)\frac{V^2}{4}
|
||||||
|
\]
|
||||||
|
\end{defin}
|
||||||
|
|
||||||
|
\subsubsection{Code NRZ binaire unipolaire}
|
||||||
|
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}[scale=0.5]
|
||||||
|
\begin{axis}
|
||||||
|
[axis lines = middle,width =0.9\linewidth,height=5cm,
|
||||||
|
xmin= 0,xmax =6, ymin=-1.3,ymax=1.5,xtick={1,2,3,4,5,6},
|
||||||
|
xticklabels={$T_b$,$2T_b$,$3T_b$,$4T_b$,$5T_b$,$6T_b$},
|
||||||
|
xticklabel style={yshift = -1.2cm},
|
||||||
|
ytick={-1,1},yticklabels={$-V$,$+V$}]
|
||||||
|
\addplot[const plot, very thick] coordinates {(0,1) (1,0) (2,1) (3,0) (4,0)
|
||||||
|
(5,1) (6,1)};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{Codage NRZ binaire}
|
||||||
|
\end{figure}
|
||||||
|
\begin{defin}
|
||||||
|
Pour un code NRZ binaire unipolaire on a:
|
||||||
|
\[
|
||||||
|
\begin{cases}
|
||||||
|
a_k = + 1 & \text{ si } \beta_k =1 \\
|
||||||
|
a_k = 0 & \text{ si } \beta_k =0 \\
|
||||||
|
\end{cases}
|
||||||
|
\]
|
||||||
|
Alors :
|
||||||
|
\[
|
||||||
|
m_a = +\frac{V}{2} \text{ et } \sigma_a^2 = \frac{V^2}{4}
|
||||||
|
\]
|
||||||
|
Pour une forme d'impulsion rectangulaire on a donc:
|
||||||
|
\[
|
||||||
|
\phi_{ee}(f)= \frac{V^2T_b}{4} \left(\frac{\sin\pi fT_b}{\pi f T_b}\right)^2
|
||||||
|
\]
|
||||||
|
\end{defin}
|
||||||
|
|
||||||
|
\subsubsection{Code NRZ M-aire}
|
||||||
|
\begin{defin}
|
||||||
|
On généralise le code NRZ binaire pour $a_k=\{\pm 1,\pm2 ... \pm
|
||||||
|
(M/2-1)\}$ on a :
|
||||||
|
\[ m_a = 0 \text{ et } \sigma_a^2 = \frac{2}{M} \sum_{p=0}^{(M/2)-1}(2p+1)^2
|
||||||
|
\]
|
||||||
|
Pour une forme d'impulsion rectangulaire de durée $T=nT_b$on a donc:
|
||||||
|
\[
|
||||||
|
\phi_{ee}(f)= \frac{(M-1)^2}{3}V^3T \left(\frac{\sin\pi fT}{\pi f T}\right)^2
|
||||||
|
\]
|
||||||
|
|
||||||
|
\end{defin}
|
||||||
|
\subsubsection{Code RZ binaire}
|
||||||
|
|
||||||
|
\begin{defin}
|
||||||
|
On note $RZ_\lambda$ pour une impulsion rectangulaire de la forme:
|
||||||
|
\[g(t)=
|
||||||
|
\begin{cases}
|
||||||
|
+V & \forall t \in [0;\lambda T_b] \\
|
||||||
|
0 & \forall t \in [\lambda T_b,T_b]
|
||||||
|
\end{cases}
|
||||||
|
\]
|
||||||
|
Alors :
|
||||||
|
\[
|
||||||
|
\phi_{ee}(f)= \frac{V^2\lambda^2T_b}{4}\left(\frac{\sin\pi f_b\lambda T}{\pi f\lambda T_b}
|
||||||
|
\right)^2 + \frac{V^2\lambda^2T_b}{4}\sum_{k=-\infty}^{+\infty} \left(\frac{\sin k\pi\lambda}{k\pi\lambda}\right)^2\delta(f-k/T_b)
|
||||||
|
\]
|
||||||
|
\end{defin}
|
||||||
|
\begin{rem}
|
||||||
|
Le plus classique est le code $RZ_{1/2}$: on a une raie à $1/T_b$,
|
||||||
|
mais pour une longue suite de $0$la DSP s'annule.
|
||||||
|
\end{rem}
|
||||||
|
\subsubsection{Code Manchester}
|
||||||
|
\begin{defin}
|
||||||
|
\[
|
||||||
|
\begin{cases}
|
||||||
|
a_k = + 1 & \text{ si } \beta_k =1 \\
|
||||||
|
a_k = 0 & \text{ si } \beta_k =0 \\
|
||||||
|
\end{cases}
|
||||||
|
\]
|
||||||
|
Pour une impulsion rectangulaire on a donc:
|
||||||
|
\[
|
||||||
|
g(t)=
|
||||||
|
\begin{cases}
|
||||||
|
+ V & \forall t \in [0,T_b/2] \\
|
||||||
|
-V & \forall t \in [T_b/2,T_b]\\
|
||||||
|
0 & \forall t \notin [0,T_b]
|
||||||
|
\end{cases}
|
||||||
|
\]
|
||||||
|
Alors:
|
||||||
|
\[
|
||||||
|
\phi_{ee}(f)= V^2T_b \left(\frac{\sin\pi fT_b/2}{\pi f T_b/2}\right)^2()\sin\pi fT_b/2)^2
|
||||||
|
\]
|
||||||
|
\end{defin}
|
||||||
|
|
||||||
|
\begin{rem}
|
||||||
|
Le codage de manchester est un transcodage ``1B2B'' : le 1 est
|
||||||
|
codé par 1->0 alors que 0 est codé par 0->1. Les deux mots 11 et 00 ne
|
||||||
|
sont pas utilisés. C'est le front montant ou descedant qui code l'information.
|
||||||
|
|
||||||
|
La DSPd'un code de Manchester a une raie à la fréquence $f=1/T_b$,
|
||||||
|
on peux faire de la synchronisation.
|
||||||
|
\end{rem}
|
||||||
|
\subsection{Code en Bande de base avec mémoire}
|
||||||
|
\subsubsection{Code bipolaire $RZ_{1/2}$}
|
||||||
|
|
||||||
|
\begin{defin}
|
||||||
|
\[
|
||||||
|
\begin{cases}
|
||||||
|
a_k = \pm 1 & \text{ si } \beta_k =1 \\
|
||||||
|
a_k = 0 & \text{ si } \beta_k =0 \\
|
||||||
|
\end{cases}
|
||||||
|
\]
|
||||||
|
Donc $m_a =0$ et $\sigma_a^2 = 1/2$.
|
||||||
|
Pour une impulsion rectangulaire on a donc:
|
||||||
|
\[
|
||||||
|
g(t)=
|
||||||
|
\begin{cases}
|
||||||
|
+ V & \forall t \in [0,T_b/2] \\
|
||||||
|
-V & \forall t \in [T_b/2,T_b]\\
|
||||||
|
\end{cases}
|
||||||
|
\]
|
||||||
|
Alors :
|
||||||
|
\[
|
||||||
|
\phi_{ee}(f)= \frac{V^2T_b}{\sin^2(\pi fT_b)}\sinc^2(\frac{\pi fT_b}{2})
|
||||||
|
\]
|
||||||
|
\end{defin}
|
||||||
|
\begin{prop}[Cas d'un code avec mémoire]
|
||||||
|
Pour un code avec mémoire :
|
||||||
|
\[
|
||||||
|
\phi_{aa}(f) = \frac{\sigma_a^2}{T}+\frac{2\sigma_a^2}{T}\sum_{k=1}^{\infty}R_{aa}(k)\cos(2\pi fk T)+\frac{m_a^2}{T^2}\sum_{k=-\infty}^{+\infty}\delta(f-k/T)
|
||||||
|
\]
|
||||||
|
Avec $R_{aa}$ la fonction d'autocorrélation normalise des symboles
|
||||||
|
$a_k$
|
||||||
|
\[
|
||||||
|
R_{aa} = \frac{E[(a_n-m_a)(a_{n-k}-m_a)]}{\sigma_a^2}
|
||||||
|
\]
|
||||||
|
\end{prop}
|
||||||
|
|
||||||
|
\begin{rem}
|
||||||
|
$e(t)$ prend 3 niveaux de tension (+V,-V,0), ou 1 est codé
|
||||||
|
alternativement par +V et -V. C'est un code
|
||||||
|
\emph{pseudo-ternaire}. Si $\beta_k$ possède une longue suite de zéro la
|
||||||
|
DSP va s'annuler...
|
||||||
|
\end{rem}
|
||||||
|
|
||||||
|
\subsubsection{Code HDBn}
|
||||||
|
\begin{defin}
|
||||||
|
Pour éviter que la DSP s'annule on intercale des \emph{ bit de
|
||||||
|
viols}pour limiter la succession de $n$ zéros.
|
||||||
|
\end{defin}
|
||||||
|
\begin{prop}
|
||||||
|
Le $n$ de HBDn indique le nombre de 0 que l'on peut envoyer. On le choisit en fonction de la fiabilité du support et du matériel. La valeur pour le premier 1 à envoyer est fixée par convention entre l'émetteur et le récepteur.
|
||||||
|
\end{prop}
|
||||||
|
|
||||||
|
|
||||||
\section{Embrouillage et étalement de spectre}
|
\begin{center}
|
||||||
|
\begin{tikzpicture}[
|
||||||
|
level distance=2cm,
|
||||||
|
level 1/.style={sibling distance=7cm},
|
||||||
|
level 2/.style={sibling distance=4.5cm},
|
||||||
|
edge from parent fork down]
|
||||||
|
\tikzset{if/.style={diamond,draw,aspect=2.5,inner sep=-3pt, label={[yshift=0.125cm]left:{\tiny\bf+}},
|
||||||
|
label={[yshift=0.125cm]right:{\tiny-}},}}
|
||||||
|
\node[if](I) {\begin{tabular}{c}
|
||||||
|
Polarité du \\dernier viol
|
||||||
|
\end{tabular}}
|
||||||
|
[edge from parent path={[-latex] (\tikzparentnode) -| (\tikzchildnode)}]
|
||||||
|
|
||||||
|
child {node[if] {
|
||||||
|
\begin{tabular}{c}
|
||||||
|
Polarité du \\dernier 1
|
||||||
|
\end{tabular}}
|
||||||
|
child {node {\texttt{-V00V}}}
|
||||||
|
child {node {\texttt{000-V}}}
|
||||||
|
}
|
||||||
|
child {node[if] {
|
||||||
|
\begin{tabular}{c}
|
||||||
|
Polarité du \\dernier 1
|
||||||
|
\end{tabular}}
|
||||||
|
child {node {\texttt{000+V}}}
|
||||||
|
child {node {\texttt{+V000+V}}}
|
||||||
|
}
|
||||||
|
;
|
||||||
|
\node[above=1cm] at (I.north) (O) {\texttt{0000}};
|
||||||
|
\draw[-latex] (O) -- (I.north);
|
||||||
|
\end{tikzpicture}
|
||||||
|
\end{center}
|
||||||
|
|
||||||
|
|
||||||
|
Pour compenser les bits de viols , on ajoute les \emph{ bits de bourrage.}
|
||||||
|
\begin{exemple}~\\
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\begin{axis}
|
||||||
|
[axis lines = middle,width =0.9\linewidth,height=5cm,
|
||||||
|
xmin= -0.2,xmax =15, ymin=-1.3,ymax=1.5,
|
||||||
|
xticklabels={0,1,0,1,0,0,0,0,0,1,1,0,0,0,0,1},
|
||||||
|
grid = major,
|
||||||
|
xticklabel style={yshift = 2cm,xshift=-0.5cm},
|
||||||
|
ytick={-1,1},yticklabels={$-V$,$+V$}]
|
||||||
|
\addplot[const plot, very thick] coordinates {(-1,1) (0,0) (1,-1) (2,0)(3,0)(4,0)(5,-1)(6,0)(7,1)(8,-1)(9,1)(10,0)(11,0)(12,1)(13,-1)(14,-1)}; \node at (axis cs:5.5,-0.5){V-};
|
||||||
|
\node at (axis cs:9.5,+0.5){B+};
|
||||||
|
\node at (axis cs:12.5,+0.5){V+};
|
||||||
|
\end{axis}
|
||||||
|
\end{tikzpicture}
|
||||||
|
\caption{Codage HDB3}
|
||||||
|
\end{figure}
|
||||||
|
\end{exemple}
|
||||||
|
|
||||||
\end{document}
|
\end{document}
|
||||||
|
|
||||||
%%% Local Variables:
|
%%% Local Variables:
|
||||||
%%% mode: latex
|
%%% mode: latex
|
||||||
%%% TeX-master: "main"
|
%%% TeX-master: t
|
||||||
%%% End:
|
%%% End:
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
\teacher{François Sammouth \\ Jean-Pierre Barbeau}
|
\teacher{François Sammouth \\ Jean-Pierre Barbeau}
|
||||||
\module{UE433}
|
\module{UE433}
|
||||||
|
|
||||||
|
\usetikzlibrary{trees}
|
||||||
|
|
||||||
\begin{document}
|
\begin{document}
|
||||||
\maketitle
|
\maketitle
|
||||||
|
|
Loading…
Reference in a new issue