initial commit
This commit is contained in:
81
Rapport/main.tex
Normal file
81
Rapport/main.tex
Normal file
@@ -0,0 +1,81 @@
|
||||
\documentclass[a4paper, 11pt]{article}
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Packages %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
\usepackage[french]{babel}
|
||||
\usepackage{packages/sleek}
|
||||
\usepackage{packages/sleek-title}
|
||||
\usepackage{packages/sleek-boxes}
|
||||
|
||||
%%%%%%%%%%%%%%
|
||||
% Title-page %
|
||||
%%%%%%%%%%%%%%
|
||||
|
||||
\logo{./resources/pdf/logos.png}
|
||||
\institute{ENSTA}
|
||||
\faculty{Brest}
|
||||
\department{Département STIC}
|
||||
|
||||
\title{
|
||||
\texorpdfstring{Projet \textbf{X}}{Projet X}
|
||||
}
|
||||
\subtitle{
|
||||
\texorpdfstring{Rapport \textit{Y}}{Rapport Y}
|
||||
}
|
||||
|
||||
\author{
|
||||
\texorpdfstring{
|
||||
Vincent \textsc{Lannurien},
|
||||
Jalil \textsc{Boukhobza}
|
||||
}{
|
||||
Vincent Lannurien \and
|
||||
Jalil Bouhkobza
|
||||
}
|
||||
}
|
||||
% \supervisor{Jalil \textsc{Boukhobza}}
|
||||
|
||||
% \context{Livrable T0 + 12}
|
||||
\date{\today}
|
||||
|
||||
%%%%%%%%%%%%%%
|
||||
% Glossaries %
|
||||
%%%%%%%%%%%%%%
|
||||
|
||||
\newglossary*{institutions}{Institutions}
|
||||
\newglossary*{plateformes}{Plateformes}
|
||||
\makeglossaries
|
||||
|
||||
\loadglsentries{./resources/gls/glossaire.tex}
|
||||
|
||||
%%%%%%%%%%%%%%%%
|
||||
% Bibliography %
|
||||
%%%%%%%%%%%%%%%%
|
||||
|
||||
\addbibresource{./resources/bib/references.bib}
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Document %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
\begin{document}
|
||||
\maketitle
|
||||
\romantableofcontents
|
||||
|
||||
\section*{Glossaire}
|
||||
\addcontentsline{toc}{section}{Glossaire}
|
||||
\printglossaries
|
||||
\newpage
|
||||
|
||||
\input{sections/1_introduction}
|
||||
\newpage
|
||||
|
||||
% \nocite{*}
|
||||
\printbibliography
|
||||
\newpage
|
||||
|
||||
\appendix
|
||||
|
||||
\section{Annexes}
|
||||
\end{document}
|
||||
50
Rapport/packages/sleek-boxes.sty
Normal file
50
Rapport/packages/sleek-boxes.sty
Normal file
@@ -0,0 +1,50 @@
|
||||
\ProvidesPackage{packages/sleek-boxes}[2025/01/16 v1.2.1 Sleek Boxes]
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Settings %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
\RequirePackage{framed}
|
||||
|
||||
%%%%%%%%%%
|
||||
% Styles %
|
||||
%%%%%%%%%%
|
||||
|
||||
\definecolor{bgtitle}{RGB}{85,85,85}
|
||||
\definecolor{bgbox}{RGB}{232,232,232}
|
||||
\definecolor{shadecolor}{RGB}{232,232,232}
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% w/ title %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
\newcommand*{\titlebox}[2]{
|
||||
\begin{center}
|
||||
\begin{tikzpicture}%
|
||||
\node[rectangle,draw=bgtitle!100,fill=bgbox!100,inner sep=10pt, inner ysep=20pt] (box)
|
||||
{
|
||||
\begin{minipage}{12cm}
|
||||
#2
|
||||
\end{minipage}
|
||||
};
|
||||
\node[fill=bgtitle!100, text=white, rectangle] at (box.north)
|
||||
{
|
||||
\sffamily\textbf{#1}
|
||||
};
|
||||
\end{tikzpicture}
|
||||
\end{center}
|
||||
}
|
||||
|
||||
%%%%%%%%%%%%%
|
||||
% w/o title %
|
||||
%%%%%%%%%%%%%
|
||||
|
||||
\newcommand*{\simplebox}[1]{%
|
||||
\begin{center}
|
||||
\begin{minipage}{12cm}
|
||||
\begin{shaded}
|
||||
#1
|
||||
\end{shaded}
|
||||
\end{minipage}
|
||||
\end{center}
|
||||
}
|
||||
177
Rapport/packages/sleek-listings.sty
Normal file
177
Rapport/packages/sleek-listings.sty
Normal file
@@ -0,0 +1,177 @@
|
||||
\ProvidesPackage{packages/sleek-listings}[2023/09/18 v1.2.1 Sleek Listings]
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Settings %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
\RequirePackage[scaled=0.95]{inconsolata}
|
||||
\RequirePackage{listings}
|
||||
\RequirePackage{xcolor}
|
||||
|
||||
%%%%%%%%%%
|
||||
% Styles %
|
||||
%%%%%%%%%%
|
||||
|
||||
\lstdefinestyle{default}{
|
||||
breaklines=true,
|
||||
breakatwhitespace=true,
|
||||
columns=fixed,
|
||||
extendedchars=true,
|
||||
inputencoding=utf8,
|
||||
keepspaces,
|
||||
showstringspaces=false,
|
||||
tabsize=4,
|
||||
upquote=true,
|
||||
%%%%%
|
||||
aboveskip=\baselineskip,
|
||||
belowskip=\smallskipamount,
|
||||
captionpos=b,
|
||||
framerule=0.1em,
|
||||
%%%%%
|
||||
basicstyle=\small\ttfamily,
|
||||
numberstyle=\small\ttfamily
|
||||
}
|
||||
|
||||
\lstset{
|
||||
style=default,
|
||||
literate={
|
||||
{á}{{\'a}}1 {é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1 {ú}{{\'u}}1
|
||||
{Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1
|
||||
{à}{{\`a}}1 {è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1
|
||||
{À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1
|
||||
{ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1
|
||||
{Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1
|
||||
{â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1
|
||||
{Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1
|
||||
{œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1
|
||||
{ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {Ø}{{\O}}1 {å}{{\r a}}1
|
||||
{Å}{{\r A}}1 {ã}{{\~a}}1 {õ}{{\~o}}1 {Ã}{{\~A}}1 {Õ}{{\~O}}1
|
||||
{ñ}{{\~n}}1 {Ñ}{{\~N}}1
|
||||
}
|
||||
}
|
||||
|
||||
\lstdefinestyle{numbered}{
|
||||
style=default,
|
||||
numbers=left
|
||||
}
|
||||
|
||||
\lstdefinestyle{framed}{
|
||||
style=default,
|
||||
frame=single,
|
||||
framesep=0em,
|
||||
rulesep=0em,
|
||||
xleftmargin=0.75em,
|
||||
xrightmargin=0.75em,
|
||||
framexleftmargin=0.75em,
|
||||
framexrightmargin=0.75em,
|
||||
framextopmargin=1ex,
|
||||
framexbottommargin=1ex
|
||||
}
|
||||
|
||||
\lstdefinestyle{framednumbered}{
|
||||
style=framed,
|
||||
xleftmargin=2.75em,
|
||||
framexleftmargin=2.75em,
|
||||
numbers=left,
|
||||
numbersep=1em
|
||||
}
|
||||
|
||||
\lstdefinestyle{ruled}{
|
||||
style=framed,
|
||||
frame=tb,
|
||||
xleftmargin=0em,
|
||||
xrightmargin=0em,
|
||||
framexleftmargin=0em,
|
||||
framexrightmargin=0em
|
||||
}
|
||||
|
||||
\lstdefinestyle{rulednumbered}{
|
||||
style=ruled,
|
||||
numbers=left
|
||||
}
|
||||
|
||||
%%%%%%%%%%
|
||||
% Colors %
|
||||
%%%%%%%%%%
|
||||
|
||||
\definecolor{ForestGreen}{HTML}{228B22}
|
||||
\definecolor{TrueBlue}{HTML}{0000FF}
|
||||
\definecolor{VeronicaPurple}{HTML}{A020F0}
|
||||
\definecolor{JustGray}{HTML}{7F7F7F}
|
||||
|
||||
\lstdefinestyle{colorful}{
|
||||
commentstyle=\color{ForestGreen},
|
||||
keywordstyle=[1]{\color{TrueBlue}},
|
||||
keywordstyle=[2]{\color{VeronicaPurple}},
|
||||
stringstyle=\color{JustGray},
|
||||
emphstyle=\bfseries
|
||||
}
|
||||
|
||||
%%%%%%%%%%%%%
|
||||
% Languages %
|
||||
%%%%%%%%%%%%%
|
||||
|
||||
\lstdefinelanguage{latex}{
|
||||
language=[LaTeX]TeX,
|
||||
morekeywords={RequirePackage},
|
||||
style=colorful
|
||||
}
|
||||
|
||||
\lstdefinelanguage{c*}{
|
||||
language=C,
|
||||
morekeywords={},
|
||||
style=colorful
|
||||
}
|
||||
|
||||
\lstdefinelanguage{cpp*}{
|
||||
language=C++,
|
||||
morekeywords={std},
|
||||
style=colorful
|
||||
}
|
||||
|
||||
\lstdefinelanguage{matlab*}{
|
||||
language=matlab,
|
||||
morekeywords={clearvars, numel},
|
||||
style=colorful
|
||||
}
|
||||
|
||||
\lstdefinelanguage{python*}{
|
||||
language=python,
|
||||
morekeywords=[1]{with, as},
|
||||
style=colorful
|
||||
}
|
||||
|
||||
\lstdefinelanguage{java*}{
|
||||
language=java,
|
||||
morekeywords={},
|
||||
style=colorful
|
||||
}
|
||||
|
||||
\lstdefinelanguage{scheme}{
|
||||
alsoletter={!,?,+,-,*,/,<,=,>,\#},
|
||||
literate=*{`}{{`}}{1},
|
||||
morecomment=[l]{;},
|
||||
morecomment=[s]{\#|}{|\#},
|
||||
morestring=[b]",
|
||||
morekeywords=[1]{
|
||||
define, lambda, let, let*, letrec,
|
||||
eval, read, print, quote, unquote,
|
||||
list, list*, cons, append, car, cdr, caar, cadr, cdar, cddr, cadar, caddr,
|
||||
length, reverse, range, member, flatten, filter, count,
|
||||
eq?, eqv?, equal?, number?, boolean?, zero?, even?, odd?, pair?, list?, null?, symbol?, procedure?, string?,
|
||||
if, cond, else,
|
||||
map, apply,
|
||||
import, export, require,
|
||||
raise, error,
|
||||
exit
|
||||
},
|
||||
morekeywords=[2]{
|
||||
+, -, *, /, <, =, >, <=, >=,
|
||||
and, or, not,
|
||||
quotient, modulo, expt, sqrt
|
||||
},
|
||||
sensitive,
|
||||
style=colorful
|
||||
}
|
||||
|
||||
\endinput
|
||||
131
Rapport/packages/sleek-theorems.sty
Normal file
131
Rapport/packages/sleek-theorems.sty
Normal file
@@ -0,0 +1,131 @@
|
||||
\ProvidesPackage{packages/sleek-theorems}[2022/11/18 v1.2.1 Sleek Theorems]
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Settings %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
\RequirePackage{amsthm}
|
||||
\RequirePackage{thmtools}
|
||||
\RequirePackage[framemethod=TikZ]{mdframed}
|
||||
|
||||
% Setup
|
||||
|
||||
\define@key{thmdef}{mdthm}[{}]{
|
||||
\thmt@trytwice{\def\thmt@theoremdefiner{\mdtheorem[#1]}}{}
|
||||
}
|
||||
|
||||
% QED symbol
|
||||
|
||||
\renewcommand{\qedsymbol}{$\blacksquare$} % filled \qed
|
||||
|
||||
%%%%%%%%%%%%%
|
||||
% Languages %
|
||||
%%%%%%%%%%%%%
|
||||
|
||||
\def\lgtheorem{Theorem}
|
||||
\def\lgproof{Proof}
|
||||
\def\lglemma{Lemma}
|
||||
\def\lgproposition{Proposition}
|
||||
\def\lgdefinition{Definition}
|
||||
\def\lghypothesis{Hypothesis}
|
||||
\def\lgmethod{Method}
|
||||
\def\lgquestion{Question}
|
||||
\def\lganswer{Answer}
|
||||
\def\lgexample{Example}
|
||||
\def\lgremark{Remark}
|
||||
\def\lgnote{Note}
|
||||
\def\lgtip{Tip}
|
||||
|
||||
\DeclareOption{french}{
|
||||
\def\lgtheorem{Théorème}
|
||||
\def\lgproof{Preuve}
|
||||
\def\lglemma{Lemme}
|
||||
\def\lgproposition{Proposition}
|
||||
\def\lgdefinition{Définition}
|
||||
\def\lghypothesis{Hypothèse}
|
||||
\def\lgmethod{Méthode}
|
||||
\def\lgquestion{Question}
|
||||
\def\lganswer{Réponse}
|
||||
\def\lgexample{Exemple}
|
||||
\def\lgremark{Remarque}
|
||||
\def\lgnote{Note}
|
||||
\def\lgtip{Conseil}
|
||||
}
|
||||
|
||||
\DeclareOption{german}{
|
||||
\def\lgtheorem{Satz}
|
||||
\def\lgproof{Beweis}
|
||||
\def\lglemma{Hilfssatz}
|
||||
\def\lgproposition{Proposition}
|
||||
\def\lgdefinition{Definition}
|
||||
\def\lghypothesis{Hypothese}
|
||||
\def\lgmethod{Methode}
|
||||
\def\lgquestion{Frage}
|
||||
\def\lganswer{Antwort}
|
||||
\def\lgexample{Beispiel}
|
||||
\def\lgremark{Anmerkung}
|
||||
\def\lgnote{Notiz}
|
||||
\def\lgtip{Hinweis}
|
||||
}
|
||||
|
||||
\ProcessOptions\relax
|
||||
|
||||
%%%%%%%%%%%%%%%%
|
||||
% Environments %
|
||||
%%%%%%%%%%%%%%%%
|
||||
|
||||
% Environments
|
||||
|
||||
\theoremstyle{plain}
|
||||
\newtheorem{theorem}{\lgtheorem}
|
||||
\newtheorem{lemma}[theorem]{\lglemma}
|
||||
\newtheorem{proposition}[theorem]{\lgproposition}
|
||||
|
||||
\theoremstyle{definition}
|
||||
\newtheorem{definition}{\lgdefinition}
|
||||
\newtheorem{hypothesis}{\lghypothesis}
|
||||
\newtheorem{method}{\lgmethod}
|
||||
\newtheorem{question}{\lgquestion}
|
||||
|
||||
\let\proof\relax % overwrite proof environment
|
||||
\let\endproof\relax
|
||||
|
||||
\theoremstyle{remark}
|
||||
\newtheorem{proof}{\lgproof}[theorem]
|
||||
\newtheorem{answer}{\lganswer}[question]
|
||||
\newtheorem{example}{\lgexample}
|
||||
\newtheorem*{remark}{\lgremark}
|
||||
\newtheorem*{note}{\lgnote}
|
||||
\newtheorem*{tip}{\lgtip}
|
||||
|
||||
% Framed environments
|
||||
|
||||
\mdfdefinestyle{thicc}{
|
||||
nobreak=true,
|
||||
skipabove=\topskip,
|
||||
skipbelow=\topskip,
|
||||
innerleftmargin=0.5em,
|
||||
innerrightmargin=0.5em,
|
||||
innerbottommargin=1ex,
|
||||
innertopmargin=1ex,
|
||||
linewidth=0.25em,
|
||||
roundcorner=0.15em,
|
||||
linecolor=black!10,
|
||||
frametitlebackgroundcolor=black!10,
|
||||
theoremseparator={.}
|
||||
}
|
||||
|
||||
\declaretheorem[mdthm={style=thicc, linecolor=red!20, frametitlebackgroundcolor=red!20}, sibling=theorem, name=\lgtheorem]{fmd-theorem}
|
||||
\declaretheorem[mdthm={style=thicc, linecolor=red!20, frametitlebackgroundcolor=red!20}, sibling=lemma, name=\lglemma]{fmd-lemma}
|
||||
\declaretheorem[mdthm={style=thicc, linecolor=blue!20, frametitlebackgroundcolor=blue!20}, sibling=proposition, name=\lgproposition]{fmd-proposition}
|
||||
\declaretheorem[mdthm={style=thicc, nobreak=false}, sibling=proof, name=\lgproof]{fmd-proof}
|
||||
|
||||
\declaretheorem[mdthm={style=thicc, linecolor=black!20!green!20, frametitlebackgroundcolor=black!20!green!20}, sibling=definition, name=\lgdefinition]{fmd-definition}
|
||||
\declaretheorem[mdthm={style=thicc, linecolor=blue!20, frametitlebackgroundcolor=blue!20}, sibling=hypothesis, name=\lghypothesis]{fmd-hypothesis}
|
||||
\declaretheorem[mdthm={style=thicc, nobreak=false}, name=\lgmethod]{fmd-method}
|
||||
\declaretheorem[mdthm={style=thicc, linecolor=orange!20, frametitlebackgroundcolor=orange!20}, sibling=question, name=\lgquestion]{fmd-question}
|
||||
|
||||
\declaretheorem[mdthm={style=thicc, nobreak=false}, sibling=answer, name=\lganswer]{fmd-answer}
|
||||
\declaretheorem[mdthm={style=thicc, nobreak=false}, sibling=example, name=\lgexample]{fmd-example}
|
||||
|
||||
\endinput
|
||||
157
Rapport/packages/sleek-title.sty
Normal file
157
Rapport/packages/sleek-title.sty
Normal file
@@ -0,0 +1,157 @@
|
||||
\ProvidesPackage{packages/sleek-title}[2022/09/13 v1.2.0 Sleek Title]
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Settings %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
\RequirePackage{geometry}
|
||||
\RequirePackage{graphicx}
|
||||
\RequirePackage[framemethod=TikZ]{mdframed}
|
||||
\RequirePackage[
|
||||
% nomessages
|
||||
]{fp}
|
||||
|
||||
%%%%%%%%%%%
|
||||
% Heights %
|
||||
%%%%%%%%%%%
|
||||
|
||||
\newlength\topheight
|
||||
\newlength\logoheight
|
||||
\newlength\titleskipabove
|
||||
\newlength\titleskipbelow
|
||||
|
||||
\newcommand*{\calculateheights}{
|
||||
\countlines{\bfseries\huge\@title}
|
||||
\FPeval{\topratio}{0.3 - 0.01 * (\numlines - 1)}
|
||||
\FPeval{\skipratio}{\topratio - 0.15}
|
||||
\setlength{\logoheight}{0.15\textheight}
|
||||
\setlength{\topheight}{\topratio\textheight}
|
||||
\setlength{\titleskipabove}{\skipratio\textheight}
|
||||
\setlength{\titleskipbelow}{3ex}
|
||||
}
|
||||
|
||||
\DeclareOption{classic}{
|
||||
\renewcommand*{\calculateheights}{
|
||||
\setlength{\logoheight}{0.125\textheight}
|
||||
\setlength{\topheight}{0.2\textheight}
|
||||
\setlength{\titleskipabove}{1.5cm}
|
||||
\setlength{\titleskipbelow}{1.5cm}
|
||||
}
|
||||
}
|
||||
|
||||
\ProcessOptions\relax
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Commands %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
% Auxiliary commands
|
||||
|
||||
\newcommand*{\clearpar}{\unskip\par}
|
||||
|
||||
\newcommand*{\countlines}[1]{ % saves the number of lines of #1 in \numlines
|
||||
\setbox0\vbox{
|
||||
\noindent{#1}\par
|
||||
\count@\z@
|
||||
\loop
|
||||
\unskip\unpenalty\unskip\unpenalty\unskip
|
||||
\setbox0\lastbox
|
||||
\ifvoid0
|
||||
\xdef\numlines{\the\count@}
|
||||
\else
|
||||
\advance\count@\@ne
|
||||
\repeat
|
||||
}
|
||||
}
|
||||
|
||||
% Custom fields
|
||||
|
||||
\newif\ifLogo
|
||||
\newif\ifInstitute
|
||||
\newif\ifFaculty
|
||||
\newif\ifDepartment
|
||||
\newif\ifSubtitle
|
||||
\newif\ifSupervisor
|
||||
\newif\ifContext
|
||||
|
||||
\newcommand*{\logo}[1]{\gdef\@logo{#1}\Logotrue}
|
||||
\newcommand*{\institute}[1]{\gdef\@institute{#1}\Institutetrue}
|
||||
\newcommand*{\faculty}[1]{\gdef\@faculty{#1}\Facultytrue}
|
||||
\newcommand*{\department}[1]{\gdef\@department{#1}\Departmenttrue}
|
||||
\newcommand*{\subtitle}[1]{\gdef\@subtitle{#1}\Subtitletrue}
|
||||
\newcommand*{\supervisor}[1]{\gdef\@supervisor{#1}\Supervisortrue}
|
||||
\newcommand*{\context}[1]{\gdef\@context{#1}\Contexttrue}
|
||||
|
||||
% Title page
|
||||
|
||||
\renewcommand*{\maketitle}{
|
||||
\calculateheights
|
||||
\newgeometry{margin=2.5cm}
|
||||
\begin{titlepage}
|
||||
\setlength{\parindent}{0pt}
|
||||
\begin{minipage}[t][\topheight]{\textwidth}
|
||||
\begin{center}
|
||||
\ifLogo
|
||||
% \includegraphics[height=\logoheight]{\@logo}
|
||||
\includegraphics[width=\textwidth]{\@logo}
|
||||
\fi
|
||||
\vfill
|
||||
{
|
||||
\scshape
|
||||
\ifInstitute
|
||||
{\LARGE\@institute\unskip\\}
|
||||
\fi
|
||||
\ifFaculty
|
||||
{\Large\@faculty\unskip\\[1ex]}
|
||||
\fi
|
||||
\ifDepartment
|
||||
{\large\@department}
|
||||
\fi
|
||||
\clearpar
|
||||
}
|
||||
\end{center}
|
||||
\end{minipage}
|
||||
\begin{minipage}{\textwidth}
|
||||
\vspace{\titleskipabove}
|
||||
\begin{mdframed}[
|
||||
linewidth=2pt,
|
||||
innertopmargin=3ex,
|
||||
innerbottommargin=3ex,
|
||||
leftline=false,
|
||||
rightline=false
|
||||
]
|
||||
\begin{center}
|
||||
{\bfseries\huge\@title\clearpar}
|
||||
\end{center}
|
||||
\end{mdframed}
|
||||
\vspace{-0.25cm}
|
||||
\vspace{\titleskipbelow}
|
||||
\end{minipage}
|
||||
\begin{center}
|
||||
\ifSubtitle
|
||||
{\Large\@subtitle\clearpar}
|
||||
\fi
|
||||
\vfill
|
||||
\ifSupervisor
|
||||
\begin{minipage}[t]{0.49\textwidth}
|
||||
{\large\@author\clearpar}
|
||||
\end{minipage}
|
||||
\begin{minipage}[t]{0.49\textwidth}
|
||||
\begin{flushright}
|
||||
{\large\@supervisor\clearpar}
|
||||
\end{flushright}
|
||||
\end{minipage}
|
||||
\else
|
||||
{\large\@author}
|
||||
\fi
|
||||
\vfill
|
||||
\ifContext
|
||||
{\large\@context\clearpar}
|
||||
\fi
|
||||
{\large\@date\clearpar}
|
||||
\end{center}
|
||||
\end{titlepage}
|
||||
\restoregeometry
|
||||
}
|
||||
|
||||
\endinput
|
||||
261
Rapport/packages/sleek.sty
Normal file
261
Rapport/packages/sleek.sty
Normal file
@@ -0,0 +1,261 @@
|
||||
\ProvidesPackage{packages/sleek}[2023/09/18 v1.2.3 Sleek]
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Settings %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
% Encoding
|
||||
|
||||
\RequirePackage[utf8]{inputenc}
|
||||
|
||||
% Font
|
||||
|
||||
% \RequirePackage{lmodern}
|
||||
\RequirePackage{mlmodern}
|
||||
% \RequirePackage{libertinus}
|
||||
\RequirePackage[T1]{fontenc}
|
||||
\RequirePackage{microtype}
|
||||
|
||||
% Layout
|
||||
|
||||
\RequirePackage{geometry}
|
||||
\RequirePackage{fancyhdr}
|
||||
\RequirePackage[bottom]{footmisc}
|
||||
\RequirePackage{lscape}
|
||||
|
||||
\geometry{margin=2.5cm}
|
||||
|
||||
\pagestyle{fancy}
|
||||
\fancyhead[L]{}
|
||||
\fancyhead[R]{}
|
||||
\fancyfoot[C]{\thepage}
|
||||
\renewcommand*{\headrulewidth}{0pt}
|
||||
|
||||
% Code blocks
|
||||
|
||||
\RequirePackage[newfloat]{minted}
|
||||
|
||||
% https://tex.stackexchange.com/a/254177
|
||||
% Non-floating listing environment (w/ page breaks)
|
||||
\newenvironment{longlisting}{\captionsetup{type=listing}}{}
|
||||
% Floating listing environment (w/o page breaks)
|
||||
\SetupFloatingEnvironment{listing}{}
|
||||
|
||||
% Text
|
||||
|
||||
\RequirePackage{csquotes}
|
||||
\RequirePackage[inline]{enumitem}
|
||||
\RequirePackage{eurosym}
|
||||
\RequirePackage[parfill]{parskip}
|
||||
\RequirePackage[dvipsnames]{xcolor}
|
||||
|
||||
% Links
|
||||
|
||||
\RequirePackage[
|
||||
pdfusetitle,
|
||||
colorlinks=true,
|
||||
citecolor=purple,
|
||||
filecolor=black,
|
||||
linkcolor=blue,
|
||||
urlcolor=blue,
|
||||
linktoc=page,
|
||||
]{hyperref}
|
||||
\RequirePackage{bookmark}
|
||||
\RequirePackage{qrcode}
|
||||
|
||||
% Mathematics
|
||||
|
||||
\RequirePackage{amsmath}
|
||||
\RequirePackage{amssymb}
|
||||
\RequirePackage{bm}
|
||||
\RequirePackage{esint}
|
||||
\RequirePackage{mathtools}
|
||||
|
||||
% Units
|
||||
|
||||
\RequirePackage{siunitx}
|
||||
|
||||
\sisetup{separate-uncertainty}
|
||||
\sisetup{separate-uncertainty-units=single}
|
||||
|
||||
% Markers
|
||||
|
||||
\RequirePackage{circledsteps}
|
||||
\pgfkeys{/csteps/inner color=white}
|
||||
\pgfkeys{/csteps/fill color=black}
|
||||
|
||||
% Figures
|
||||
|
||||
\RequirePackage{float}
|
||||
\RequirePackage[skip=1.5ex]{caption}
|
||||
\RequirePackage{subcaption}
|
||||
|
||||
\captionsetup{labelsep=period} % 'Figure 1.2.' instead of 'Figure 1.2:'
|
||||
|
||||
% Tables
|
||||
|
||||
\RequirePackage{array}
|
||||
\RequirePackage{booktabs}
|
||||
\RequirePackage{tabularx}
|
||||
\RequirePackage{multirow}
|
||||
|
||||
\renewcommand{\arraystretch}{1.1}
|
||||
|
||||
\newcolumntype{Z}{>{\centering\arraybackslash}X} % Tabular text-wrapping column
|
||||
\renewcommand\tabularxcolumn[1]{m{#1}} % Vertical centering of text in X columns
|
||||
|
||||
% Algorithms
|
||||
|
||||
\RequirePackage[ruled]{algorithm}
|
||||
\RequirePackage[noend]{algpseudocode}
|
||||
|
||||
\makeatletter
|
||||
\renewcommand\fs@ruled{% https://ctan.org/pkg/float
|
||||
\def\@fs@cfont{\bfseries}\let\@fs@capt\floatc@ruled%
|
||||
\def\@fs@pre{\hrule height \heavyrulewidth depth 0pt \kern 4pt}%
|
||||
\def\@fs@mid{\kern 4pt \hrule height \heavyrulewidth depth 0pt \kern 4pt}%
|
||||
\def\@fs@post{\kern 4pt \hrule height \heavyrulewidth depth 0pt \relax}%
|
||||
\let\@fs@iftopcapt\iftrue%
|
||||
}
|
||||
\makeatother
|
||||
|
||||
\algrenewcommand{\algorithmiccomment}[1]{\hfill #1}
|
||||
\algrenewcommand{\alglinenumber}[1]{\footnotesize{#1}}
|
||||
|
||||
\algnewcommand\Input{\item[\textbf{Input:}]}
|
||||
\algnewcommand\Output{\item[\textbf{Output:}]}
|
||||
|
||||
\algnewcommand\Break{\textbf{break}}
|
||||
\algnewcommand\Continue{\textbf{continue}}
|
||||
|
||||
% Glossaries
|
||||
|
||||
\RequirePackage[
|
||||
automake,
|
||||
nonumberlist,
|
||||
toc=false
|
||||
]{glossaries-extra}
|
||||
|
||||
\setglossarysection{section}
|
||||
|
||||
% Bibliography
|
||||
|
||||
\RequirePackage[
|
||||
hyperref,
|
||||
backend=biber,
|
||||
style=numeric,
|
||||
% sorting=none,
|
||||
% maxcitenames=1,
|
||||
% maxbibnames=3,
|
||||
% backref=true
|
||||
]{biblatex}
|
||||
|
||||
\setlength\bibitemsep{1ex}
|
||||
|
||||
\DeclareFieldFormat*{title}{\enquote{#1}}
|
||||
\DeclareFieldFormat*{citetitle}{\enquote{#1}}
|
||||
|
||||
\DefineBibliographyStrings{english}{
|
||||
backrefpage = {page},
|
||||
backrefpages = {pages}
|
||||
}
|
||||
|
||||
\DefineBibliographyStrings{french}{
|
||||
backrefpage = {page},
|
||||
backrefpages = {pages}
|
||||
}
|
||||
|
||||
\DefineBibliographyStrings{german}{
|
||||
backrefpage = {Seite},
|
||||
backrefpages = {Seiten}
|
||||
}
|
||||
|
||||
% Others
|
||||
|
||||
\RequirePackage{comment}
|
||||
|
||||
%%%%%%%%%%%
|
||||
% Options %
|
||||
%%%%%%%%%%%
|
||||
|
||||
\DeclareOption{header}{
|
||||
\geometry{top=3.5cm, bottom=2.5cm, right=2.5cm, left=2.5cm}
|
||||
\fancyhead[R]{\leftmark}
|
||||
}
|
||||
|
||||
\DeclareOption{french}{
|
||||
%% Babel
|
||||
\frenchbsetup{StandardLists=true}
|
||||
\frenchbsetup{SmallCapsFigTabCaptions=false}
|
||||
|
||||
%% Macros
|
||||
\def\cad{c.-à-d.\@}
|
||||
\def\Cad{C.-à-d.\@}
|
||||
}
|
||||
|
||||
\ProcessOptions\relax
|
||||
|
||||
%%%%%%%%%%%%
|
||||
% Commands %
|
||||
%%%%%%%%%%%%
|
||||
|
||||
% Abbreviations
|
||||
|
||||
\def\cf{\emph{cf.}\@} % confer
|
||||
\def\eg{\emph{e.g.}\@} % exempli gratia
|
||||
\def\ie{\emph{i.e.}\@} % id est
|
||||
|
||||
% Table of contents
|
||||
|
||||
\newcommand*{\romantableofcontents}{ % table of contents with roman (i, ii, ...) numbering of the pages
|
||||
\newpage
|
||||
\pagenumbering{roman}
|
||||
\tableofcontents
|
||||
\newpage
|
||||
\pagenumbering{arabic}
|
||||
}
|
||||
|
||||
% Mathematics
|
||||
|
||||
\DeclarePairedDelimiter\rbk{(}{)} % round brackets (parentheses)
|
||||
\DeclarePairedDelimiter\cbk{\{}{\}} % curly brackets {braces}
|
||||
\DeclarePairedDelimiter\sbk{[}{]} % square brackets [brackets]
|
||||
|
||||
\DeclarePairedDelimiter\abs{\lvert}{\rvert} % absolute value |x|
|
||||
\DeclarePairedDelimiter\norm{\lVert}{\rVert} % norm ||x||
|
||||
\DeclarePairedDelimiter\ceil{\lceil}{\rceil} % ceil ⌈x⌉
|
||||
\DeclarePairedDelimiter\floor{\lfloor}{\rfloor} % floor ⌊x⌋
|
||||
|
||||
\newcommand*{\fact}[1]{#1!} % factorial x!
|
||||
|
||||
\renewcommand*{\d}[1]{\operatorname{d}\!{#1}} % upright 'd' for differential
|
||||
|
||||
\DeclareMathOperator{\tr}{tr} % trace
|
||||
\DeclareMathOperator{\diag}{diag} % diagonal
|
||||
|
||||
% Figures
|
||||
|
||||
\newcommand*{\noskipcaption}[1]{\caption{#1}\vspace{-\intextsep}} % caption without additional vertical space
|
||||
|
||||
% Footnotes
|
||||
|
||||
\makeatletter
|
||||
\def\blindfootnote{\gdef\@thefnmark{}\@footnotetext} % footnote without number
|
||||
\makeatother
|
||||
|
||||
\endinput
|
||||
|
||||
% In-PDF comments
|
||||
|
||||
\newboolean{showcomments}
|
||||
\setboolean{showcomments}{true}
|
||||
|
||||
\ifthenelse{\boolean{showcomments}}
|
||||
{ \newcommand{\mynote}[3]{
|
||||
\fbox{\bfseries\sffamily\scriptsize#1}
|
||||
{\small$\blacktriangleright$\textsf{\emph{\color{#3}{#2}}}$\blacktriangleleft$}}}
|
||||
{ \newcommand{\mynote}[3]{}}
|
||||
\newcommand{\shrink}[1]{}
|
||||
|
||||
\newcommand{\jb}[1]{\mynote{Jalil}{#1}{red}}
|
||||
\newcommand{\vl}[1]{\mynote{Vincent}{#1}{blue}}
|
||||
21
Rapport/resources/bib/references.bib
Normal file
21
Rapport/resources/bib/references.bib
Normal file
@@ -0,0 +1,21 @@
|
||||
%%%
|
||||
% Utiliser BibTeX Tidy pour nettoyer les références bibliographiques
|
||||
% https://flamingtempura.github.io/bibtex-tidy/
|
||||
%%%
|
||||
|
||||
@inproceedings{vaswaniAttentionAllYoua,
|
||||
title = {Attention Is {{All}} You {{Need}}},
|
||||
author = {Vaswani, Ashish and Shazeer, Noam and Parmar, Niki and Uszkoreit, Jakob and Jones, Llion and Gomez, Aidan N and Kaiser, {\L}ukasz and Polosukhin, Illia},
|
||||
year = 2017,
|
||||
booktitle = {Proceedings of the 31st International Conference on Neural Information Processing Systems},
|
||||
location = {Long Beach, California, USA},
|
||||
publisher = {Curran Associates Inc.},
|
||||
address = {Red Hook, NY, USA},
|
||||
series = {NIPS'17},
|
||||
volume = 30,
|
||||
pages = {6000–6010},
|
||||
isbn = 9781510860964,
|
||||
abstract = {The dominant sequence transduction models are based on complex recurrent or convolutional neural networks that include an encoder and a decoder. The best performing models also connect the encoder and decoder through an attention mechanism. We propose a new simple network architecture, the Transformer, based solely on attention mechanisms, dispensing with recurrence and convolutions entirely. Experiments on two machine translation tasks show these models to be superior in quality while being more parallelizable and requiring significantly less time to train. Our model achieves 28.4 BLEU on the WMT 2014 English-to-German translation task, improving over the existing best results, including ensembles, by over 2 BLEU. On the WMT 2014 English-to-French translation task, our model establishes a new single-model state-of-the-art BLEU score of 41.0 after training for 3.5 days on eight GPUs, a small fraction of the training costs of the best models from the literature.},
|
||||
numpages = 11,
|
||||
langid = {english}
|
||||
}
|
||||
45
Rapport/resources/gls/glossaire.tex
Normal file
45
Rapport/resources/gls/glossaire.tex
Normal file
@@ -0,0 +1,45 @@
|
||||
%% Institutions
|
||||
|
||||
\newglossaryentry{AID}{
|
||||
type={institutions},
|
||||
name={AID},
|
||||
description={Agence de l'Innovation de Défense}
|
||||
}
|
||||
|
||||
%% Plateformes matérielles
|
||||
|
||||
\newglossaryentry{CPU}{
|
||||
type={plateformes},
|
||||
name={CPU},
|
||||
description={Central Proccessing Unit}
|
||||
}
|
||||
\newglossaryentry{DLA}{
|
||||
type={plateformes},
|
||||
name={DLA},
|
||||
description={Deep Learning Accelerator}
|
||||
}
|
||||
\newglossaryentry{GPU}{
|
||||
type={plateformes},
|
||||
name={GPU},
|
||||
description={Graphics Proccessing Unit}
|
||||
}
|
||||
\newglossaryentry{FPGA}{
|
||||
type={plateformes},
|
||||
name={FPGA},
|
||||
description={Field-Programmable Gate Array}
|
||||
}
|
||||
\newglossaryentry{PDU}{
|
||||
type={plateformes},
|
||||
name={PDU},
|
||||
description={Power Distribution Unit}
|
||||
}
|
||||
\newglossaryentry{SoC}{
|
||||
type={plateformes},
|
||||
name={SoC},
|
||||
description={System on Chip}
|
||||
}
|
||||
\newglossaryentry{TPU}{
|
||||
type={plateformes},
|
||||
name={TPU},
|
||||
description={Tensor Proccessing Unit}
|
||||
}
|
||||
BIN
Rapport/resources/pdf/logos.png
Normal file
BIN
Rapport/resources/pdf/logos.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.6 MiB |
13
Rapport/sections/1_introduction.tex
Normal file
13
Rapport/sections/1_introduction.tex
Normal file
@@ -0,0 +1,13 @@
|
||||
\section{Introduction}
|
||||
|
||||
\titlebox{Lipsum ?}{
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque nibh augue, semper ut elit eu, ullamcorper cursus nisl. Curabitur iaculis eros vel ante elementum aliquet. Sed in efficitur odio, eget tincidunt lacus. Cras sagittis, nibh et cursus eleifend, augue sapien ornare orci, id gravida neque diam eget leo. Cras varius libero tellus, in porttitor est tincidunt ac.
|
||||
Proin nec lacus sed urna maximus consectetur. Suspendisse molestie porta sapien. Nullam congue viverra nibh ut ultricies. Sed eget turpis lacinia, faucibus tellus nec, euismod orci. Maecenas id vestibulum augue. In pharetra, dui a bibendum semper, felis purus eleifend tortor, mattis ornare dui neque sit amet justo. Maecenas ut justo nec nulla fermentum mollis id nec quam~\cite{vaswaniAttentionAllYoua}.
|
||||
Nulla euismod leo at nisl hendrerit, eu tempus nunc sodales. Fusce ac urna nibh. Duis ornare viverra urna, nec placerat lacus sollicitudin in. Curabitur at hendrerit nibh, in viverra ipsum.
|
||||
}
|
||||
|
||||
\simplebox{
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque nibh augue, semper ut elit eu, ullamcorper cursus nisl.
|
||||
Curabitur iaculis eros vel ante elementum aliquet. Sed in efficitur odio, eget tincidunt lacus. Cras sagittis, nibh et cursus eleifend, augue sapien ornare orci, id gravida neque diam eget leo. Cras varius libero tellus, in porttitor est tincidunt ac. Proin nec lacus sed urna maximus consectetur. Suspendisse molestie porta sapien. Nullam congue viverra nibh ut ultricies. Sed eget turpis lacinia, faucibus tellus nec, euismod orci. Maecenas id vestibulum augue. In pharetra, dui a bibendum semper, felis purus eleifend tortor, mattis ornare dui neque sit amet justo.
|
||||
Maecenas ut justo nec nulla fermentum mollis id nec quam. Nulla euismod leo at nisl hendrerit, eu tempus nunc sodales. Fusce ac urna nibh. Duis ornare viverra urna, nec placerat lacus sollicitudin in. Curabitur at hendrerit nibh, in viverra ipsum.
|
||||
}
|
||||
Reference in New Issue
Block a user