diff --git a/.gitignore b/.gitignore
index 7375dc12eb6b15dba23a11d59789994731d96141..4324113da5c0350bb082a6a6cf356c1bdef63804 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,32 @@
+# LaTeX
+_minted-doc/
+
+# LaTeX temporary files
+*.aux
+*.log
+*.toc
+*.fls
+*.bcf
+*.run.xml
+
+# PDF output - usually a bad idea to keep this in Git
+*.pdf
+
+# Latexmk
+*.fdb_latexmk
+
+# SyncTeX
+*.synctex.gz
+
+# LaTeX Beamer
+*.snm
+*.vrb
+*.nav
+*.out
+
+# BibTeX
+*.bbl
+*.blg
+
 bin
 .vscode/
\ No newline at end of file
diff --git a/doc/appendix/appendix-a.tex b/doc/appendix/appendix-a.tex
new file mode 100644
index 0000000000000000000000000000000000000000..94554550210ae2bcdf88a201c6697d271e636d6a
--- /dev/null
+++ b/doc/appendix/appendix-a.tex
@@ -0,0 +1,31 @@
+\chapter{Source Code Example}
+%\label{chapter:title}
+
+\emph{Adding source code to your report/thesis is supported with the package {\normalfont\texttt{listings}}. An example can be found below. Files can be added using {\normalfont\texttt{\textbackslash lstinputlisting[language=<language>]\{<filename>\}}}.}
+
+\begin{lstlisting}[language=Python]
+"""
+ISA Calculator: import the function, specify the height and it will return a
+list in the following format: [Temperature,Density,Pressure,Speed of Sound].
+Note that there is no check to see if the maximum altitude is reached.
+"""
+
+import math
+g0 = 9.80665
+R = 287.0
+layer1 = [0, 288.15, 101325.0]
+alt = [0,11000,20000,32000,47000,51000,71000,86000]
+a = [-.0065,0,.0010,.0028,0,-.0028,-.0020]
+
+def atmosphere(h):
+    for i in range(0,len(alt)-1):
+        if h >= alt[i]:
+            layer0 = layer1[:]
+            layer1[0] = min(h,alt[i+1])
+            if a[i] != 0:
+                layer1[1] = layer0[1] + a[i]*(layer1[0]-layer0[0])
+                layer1[2] = layer0[2] * (layer1[1]/layer0[1])**(-g0/(a[i]*R))
+            else:
+                layer1[2] = layer0[2]*math.exp((-g0/(R*layer1[1]))*(layer1[0]-layer0[0]))
+    return [layer1[1],layer1[2]/(R*layer1[1]),layer1[2],math.sqrt(1.4*R*layer1[1])]
+\end{lstlisting}
diff --git a/doc/figures/campus.jpg b/doc/figures/campus.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..32f5ed7e08cb6c54389704f2170c3eba8998ef75
Binary files /dev/null and b/doc/figures/campus.jpg differ
diff --git a/doc/figures/cover-field.png b/doc/figures/cover-field.png
new file mode 100644
index 0000000000000000000000000000000000000000..fa0257b2e615b3115c483fbb546bc2a31fc82d30
Binary files /dev/null and b/doc/figures/cover-field.png differ
diff --git a/doc/figures/rlc-cover1.jpg b/doc/figures/rlc-cover1.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..d05cf0c5be36043f30258e69a259f6909d39274d
Binary files /dev/null and b/doc/figures/rlc-cover1.jpg differ
diff --git a/doc/figures/rlc-cover2.jpg b/doc/figures/rlc-cover2.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..95b6378bc16875fb4a94fd9124f038f67e400ebf
Binary files /dev/null and b/doc/figures/rlc-cover2.jpg differ
diff --git a/doc/frontmatter/title-report.tex b/doc/frontmatter/title-report.tex
new file mode 100644
index 0000000000000000000000000000000000000000..346c838f805abde3af0411b07fb154d2ad46d47f
--- /dev/null
+++ b/doc/frontmatter/title-report.tex
@@ -0,0 +1,78 @@
+\begin{titlepage}
+
+    \begin{center}
+
+        %% Print the title
+        {\makeatletter
+            \largetitlestyle\fontsize{45}{45}\selectfont\@title
+            \makeatother}
+
+        %% Print the subtitle
+        {\makeatletter
+            \ifdefvoid{\@subtitle}{}{\bigskip\fontsize{20}{20}\selectfont\@subtitle}
+            \makeatother}
+
+        \bigskip
+        \bigskip
+
+        par
+
+        \bigskip
+        \bigskip
+
+        %% Print the name of the author
+        {\makeatletter
+            \largetitlestyle\fontsize{25}{25}\selectfont\@author
+            \makeatother}
+
+        \bigskip
+        \bigskip
+
+        %% Print table with names and student numbers
+        \setlength\extrarowheight{2pt}
+        \begin{tabular}{lc}
+            Nom de l'étudiant & Numéro d'étudiant \\\midrule
+            Tanguy            & 20868683          \\
+        \end{tabular}
+
+        \vfill
+
+        \rule{\textwidth}{1pt}
+        \raggedright{
+            Les lignes de champs électrostatique montrent l'impact de partciules chargée dans
+            un univers discret. Ce raport vise à montrer une possible représentation graphique
+            de ce phénomène physique ainsi que d'expliquer comment ce résultat a été possible.
+            En me basant sur les formules, il a été possible de faire cette représentation graphique
+            en utilisant OpenGL pour plus de flexibilité. Le résultat montre bien l'effet de
+            partciules charges dans un univers discret et permet d'avoir plusieurs type de représentations
+            pour plus de précision.
+        }
+        \rule{\textwidth}{1pt}
+
+        \vfill
+
+        %% Print some more information at the bottom
+        \begin{tabular}{ll}
+            Instructeur:     & Malaspinas Orestis                              \\
+            Durée du projet: & 1 mois ?                                        \\
+            Faculté:         & Informatique et Système de Communication, HEPIA
+        \end{tabular}
+
+        \bigskip
+        \bigskip
+
+        %% Add a source and description for the cover and optional attribution for the template
+        % \begin{tabular}{p{18mm}p{10cm}}
+        %     Couverture: & Entrée principale à HEPIA \\
+        % \end{tabular}
+
+    \end{center}
+
+    %% Insert the EPFL logo at the bottom of the page
+    \begin{tikzpicture}[remember picture, overlay]
+        \node[above=10mm] at (current page.south) {%
+            \includegraphics[width=0.35\linewidth]{layout/hepia/logo-black}
+        };
+    \end{tikzpicture}
+
+\end{titlepage}
diff --git a/doc/layout/hepia-report.cls b/doc/layout/hepia-report.cls
new file mode 100644
index 0000000000000000000000000000000000000000..cf4566beb65c6cac0fcc0bf8188b695b76af526e
--- /dev/null
+++ b/doc/layout/hepia-report.cls
@@ -0,0 +1,205 @@
+% This template aims to simplify and improve the (Xe)LaTeX template
+% provided by HEPIA. Original template by EPFL. Rewritten
+% template by Tanguy Cavagna. EPFL adapted template by Batuhan Faik Derinbay.
+%
+% This template is available under CC BY-NC 4.0. For more information,
+% see https://creativecommons.org/licenses/by-nc/4.0/. No attribution
+% is required in reports/theses created using this template.
+
+%% Class is based on the default book class and options will be passed
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{layout/hepia-report}[17-04-2022 v1.0 HEPIA Report Class]
+
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}}
+\ProcessOptions\relax
+\LoadClass[10pt,oneside]{book}
+
+%% Main packages in the document --- Some are imported later in the class file
+\RequirePackage{mathtools}  % Mathematical tools to use with amsmath
+\RequirePackage{amssymb}    % Extended symbol collection
+\RequirePackage{siunitx}    % Comprehensive (SI) units package
+
+\RequirePackage{tabularx}   % Tabulars with adjustable-width columns
+\RequirePackage{booktabs}   % Publication quality tables
+\RequirePackage{longtable}  % Allow tables to flow over page boundaries
+\RequirePackage{multirow}   % Create tabular cells spanning multiple rows
+
+\RequirePackage{graphicx}   % Enhanced support for images
+\RequirePackage{float}      % Improved interface for floating objects
+\RequirePackage[labelfont=bf,justification=centering,footnotesize]{caption} % Captions
+\RequirePackage{subcaption} % Support for sub-captions
+\RequirePackage{pdfpages}   % Include PDF documents
+
+\RequirePackage[pdfusetitle,hidelinks]{hyperref} % Extensive support for hypertext
+\RequirePackage[noabbrev,nameinlink,]{cleveref} % Intelligent cross-referencing
+\RequirePackage{xcolor}     % Driver-independent color extensions
+\RequirePackage{tikz}       % Create PostScript and PDF graphics
+\RequirePackage{xspace}     % Define commands that appear not to eat spaces
+\RequirePackage{microtype}  % Refinements towards typographical perfection
+
+\RequirePackage{geometry}   % Customize document dimensions
+\RequirePackage{titlesec}   % Select alternative section titles
+\RequirePackage{titletoc}   % Alternative headings for toc
+\RequirePackage{fancyhdr}   % Control of page headers and footers
+\RequirePackage{enumitem}   % Control layout of itemize, enumerate, description
+\RequirePackage{etoolbox}   % Toolbox of programming facilities
+\RequirePackage{iftex}      % Adds if-else statements to support multiple compilers
+\RequirePackage{datetime}   % Change format of \today
+
+%% Defining commands for the cover image, subtitle, subject, affiliation and table of authors
+\newcommand*\subtitle[1]{\def\@subtitle{#1}}
+\newcommand*\subject[1]{\def\@subject{#1}}
+\newcommand*\affiliation[1]{\def\@affiliation{#1}}
+\newcommand*\coverimage[1]{\def\@coverimage{#1}}
+\newcommand*\covertable[1]{\def\@covertable{#1}}
+
+%% Scaling the margins to be slightly smaller than default (.7)
+\geometry{a4paper,hscale=0.75,vscale=0.8}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% I. Loading the fonts %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\ifPDFTeX
+    %% pdfLaTeX is available for compatibility and uses a Paletino-like font
+    \RequirePackage[T1]{fontenc}  % Selecting T1 font encoding
+    \RequirePackage{newpxtext}    % Palatino-like font...
+    \RequirePackage{newpxmath}    % ...with support for mathematics
+
+    %% Another font can be used as the large title style font if desired
+    \def\largetitlestyle{\normalfont}
+
+    %% Warning when using pdfLaTeX
+    \@latex@warning@no@line{You are using pdfLaTeX as the compiler. You can safely ignore this warning or consider changing the compiler to XeLaTeX or LuaLaTeX to adhere to the EPFL house style.}
+\else
+    %% If XeLaTeX or LuaLaTeX is set as the compiler, the EPFL house style fonts are used
+    \RequirePackage{fontspec} % Advanced font selection
+    \newfontfamily{\suisseintl}{SuisseIntl}
+        [Path=layout/hepia/fonts/suisse-intl/,
+        Extension=.ttf,
+        UprightFont=*-Regular,
+        BoldFont=*-Bold,
+        ItalicFont=*-RegularItalic]
+        
+    %% Adding Arial as the main font and EPFL Ultralight and Georgia as supplementary fonts
+    \setmainfont{Arimo}
+    \setmathsf{Arimo}
+    \setmathtt{Arimo}
+
+    \newfontfamily\largetitlestyle[Path=layout/hepia/fonts/suisse-intl/]{SuisseIntl-SemiBold.ttf}
+    \newfontfamily\subtitlestyle[Path=layout/hepia/fonts/suisse-intl/]{SuisseIntl-Thin.ttf}
+    \newfontfamily\subjectstyle[Path=layout/hepia/fonts/suisse-intl/]{SuisseIntl-Regular.ttf}
+    \newfontfamily\quotefont[Path=layout/hepia/fonts/suisse-intl-mono/]{SuisseIntlMono-Regular.ttf}
+
+    %% Changing the quote environment to use Georgia
+    \AtBeginEnvironment{quote}{\quotefont}
+\fi
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% II. Adjusting the layout of the titles in the text and table of contents %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%% Formatting chapter titles and spacing
+\titleformat{\chapter}[display]
+    {\flushright}
+    {\fontsize{96}{96}\selectfont\largetitlestyle\thechapter}
+    {0pt}
+    {\Huge}
+\titlespacing*{\chapter}{0pt}{0pt}{2\baselineskip}
+
+%% Formatting section titles and spacing
+\titleformat{\section}
+    {\Large\bfseries}
+    {\thesection.}
+    {5pt}
+    {}
+\titlespacing*{\section}{0pt}{\baselineskip}{0pt}
+
+%% Formatting subsections titles and spacing
+\titleformat{\subsection}
+    {\large\bfseries}
+    {\thesubsection.}
+    {5pt}
+    {}
+\titlespacing*{\subsection}{0pt}{\baselineskip}{0pt}
+
+%% Formatting subsubsections titles and spacing
+\titleformat{\subsubsection}
+    {\bfseries}
+    {}
+    {0pt}
+    {}
+\titlespacing*{\subsubsection}{0pt}{\bigskipamount}{0pt}
+
+%% Reducing the vertical white space between chapters in the table of contents
+\dottedcontents{chapter}[1.5em]{\vspace{0.5\baselineskip}\bfseries}{1.5em}{0pc}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% III. Adjusting the header and footer %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%% Change the header and footer of pages where chapters do not start (depends on twoside option)
+\if@twoside
+    \fancyhf{}
+    \fancyhead[LE,RO]{\thepage}
+    \fancyhead[RE]{\nouppercase{\leftmark}}
+    \fancyhead[LO]{\nouppercase{\rightmark}}
+    \RequirePackage{emptypage} % Remove header and footer on empty pages
+\else
+    \fancyhf{}
+    \fancyhead[R]{\thepage}
+    \fancyhead[L]{\nouppercase{\rightmark}}
+\fi
+
+\pagestyle{fancy} % Setting the package defaults and the additional changes as the style
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% IV. Creating the cover page %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand*\makecover{
+    %% Use the Tikz library positioning and clear the page header and footer
+    \usetikzlibrary{positioning}
+    \thispagestyle{empty}
+
+    %% Constructing the cover page (cover image, name of university, logo and title text respectively)
+    \begin{tikzpicture}[overlay,remember picture]
+
+    \node[above=0,inner sep=0] at (current page.south) {\includegraphics[width=\paperwidth]{\@coverimage}};
+
+    \node[rotate=0, above right=1.8mm and 7mm] at (current page.south west)
+        {\ifdefvoid{\@affiliation}{}{\fontsize{8.1}{9.72}\selectfont\color{white}\@affiliation}};
+
+    \node[above right=10mm] at (current page.south west) {%
+        \includegraphics[width=0.35\linewidth]{layout/hepia/logo-white.png}};
+
+    \node[below=2cm,fill=black!80,minimum width={\paperwidth},inner ysep=25pt,opacity=0.4,text opacity=1] at (current page.north) {%
+        \begin{minipage}{0.9\paperwidth}
+            \largetitlestyle\fontsize{50}{50}\selectfont\color{title}\@title \\[0.5ex]
+            \color{white}\normalfont\fontsize{22}{22}\selectfont%
+            \subtitlestyle\ifdefvoid{\@subtitle}{}{\@subtitle \\[2.5ex]}%
+            \subjectstyle\ifdefvoid{\@subject}{}{\@subject \\[0.5ex]}
+            \subtitlestyle\fontsize{20}{24}\selectfont\ifdefvoid{\@covertable}{\@author}{\@covertable}
+        \end{minipage}};
+
+    \end{tikzpicture}
+    \newpage
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% V. Setting up listings %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\RequirePackage{listings} % Typeset source code listings
+
+\lstset{
+  basicstyle=\ttfamily\footnotesize,  % Style of the font that is used for the code
+  backgroundcolor=\color{gray!10},    % Background color
+  keywordstyle=\color{red!75!black},  % Keyword style
+  stringstyle=\color{green!40!black}, % String style
+  commentstyle=\color{blue!30!black}, % Comment style
+  numbers=left,                       % Add line numbers on the left side
+  numbersep=5pt,                      % Decrease distance between line numbers and code
+  numberstyle=\tiny,                  % Line number style
+  breaklines=true,                    % Line break automatically
+}
diff --git a/doc/layout/hepia/fonts/suisse-intl-mono/SuisseIntlMono-Bold.ttf b/doc/layout/hepia/fonts/suisse-intl-mono/SuisseIntlMono-Bold.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..16660daea8bfb1ff614106c965ecf21f5088d154
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl-mono/SuisseIntlMono-Bold.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl-mono/SuisseIntlMono-Regular.ttf b/doc/layout/hepia/fonts/suisse-intl-mono/SuisseIntlMono-Regular.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..eec7a463b9c9c690c47e406500907bb68ffce95c
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl-mono/SuisseIntlMono-Regular.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl-mono/SuisseIntlMono-Thin.ttf b/doc/layout/hepia/fonts/suisse-intl-mono/SuisseIntlMono-Thin.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..16136559ca7002f41d316efad0160bfdf686a1b3
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl-mono/SuisseIntlMono-Thin.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Black.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Black.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..b8874764f27b9ea329f47b19a70556af52591ccb
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Black.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-BlackItalic.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-BlackItalic.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..06f4d7dbc5a9509954f813e98efddebe01663379
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-BlackItalic.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Bold.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Bold.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..df35d8e1101a36e645058e7e14446c28c166ff92
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Bold.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-BoldItalic.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-BoldItalic.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..ebb146cd5518dfe139bfca791d1463153a301141
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-BoldItalic.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Book.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Book.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..a86b5b316169388d94edcc313b6dc60e58222012
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Book.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-BookItalic.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-BookItalic.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..90c00e6f7a8e92f51be451ca83fc060420d42f00
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-BookItalic.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Light.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Light.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..7334fafbae22c58a21e2d1651d14eab5328a24b7
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Light.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-LightItalic.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-LightItalic.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..25dadf0397b299f3c83d972cd435e328f2a1b8b8
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-LightItalic.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Medium.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Medium.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..ca1df972d40630d94d184f53283f575e0f86e0b5
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Medium.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-MediumItalic.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-MediumItalic.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..11c972b1f8be68cb1e0a3bcde34d83c704987c00
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-MediumItalic.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Regular.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Regular.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..65c2f67a4f0aa704133d01c18e67470096bf2d85
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Regular.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-RegularItalic.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-RegularItalic.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..a53ccdbe2aa60e14b9bba4fd1ce571089d3c6de1
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-RegularItalic.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-SemiBold.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-SemiBold.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..261622faecdcccedb277458ded68f041a78cb527
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-SemiBold.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-SemiBoldItalic.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-SemiBoldItalic.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..c8e36327abd174a79bb068bbbd7584f66ea46a16
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-SemiBoldItalic.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Thin.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Thin.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..0fa369f04141316285c08432f31b8db001965043
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Thin.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-ThinItalic.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-ThinItalic.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..d972d7fccde026d62989c09b8f38ebbc9359974d
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-ThinItalic.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Ultralight.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Ultralight.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..af8e0b1ed9f1d22a13b40ce3b10ac5812d297a4b
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-Ultralight.ttf differ
diff --git a/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-UltralightItalic.ttf b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-UltralightItalic.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..52f4d1bcc1c588eeedd484c5f37d2be0f5afeae5
Binary files /dev/null and b/doc/layout/hepia/fonts/suisse-intl/SuisseIntl-UltralightItalic.ttf differ
diff --git a/doc/layout/hepia/logo-black.png b/doc/layout/hepia/logo-black.png
new file mode 100644
index 0000000000000000000000000000000000000000..5187619696caa66eeecb2c6b4afba503a4358b2a
Binary files /dev/null and b/doc/layout/hepia/logo-black.png differ
diff --git a/doc/layout/hepia/logo-red.png b/doc/layout/hepia/logo-red.png
new file mode 100644
index 0000000000000000000000000000000000000000..5187619696caa66eeecb2c6b4afba503a4358b2a
Binary files /dev/null and b/doc/layout/hepia/logo-red.png differ
diff --git a/doc/layout/hepia/logo-white.png b/doc/layout/hepia/logo-white.png
new file mode 100644
index 0000000000000000000000000000000000000000..5187619696caa66eeecb2c6b4afba503a4358b2a
Binary files /dev/null and b/doc/layout/hepia/logo-white.png differ
diff --git a/doc/mainmatter/chapter-2.tex b/doc/mainmatter/chapter-2.tex
new file mode 100644
index 0000000000000000000000000000000000000000..642f2b8aec2b24c803cceaf70622a51757aec04a
--- /dev/null
+++ b/doc/mainmatter/chapter-2.tex
@@ -0,0 +1,3 @@
+\chapter{Théorie}
+\label{chapter:theory}
+
diff --git a/doc/mainmatter/chapter-3.tex b/doc/mainmatter/chapter-3.tex
new file mode 100644
index 0000000000000000000000000000000000000000..a778ea8f2fda31ff4089caff2edb2c2bc96f8d1f
--- /dev/null
+++ b/doc/mainmatter/chapter-3.tex
@@ -0,0 +1,2 @@
+%\chapter{Title}
+%\label{chapter:title}
diff --git a/doc/mainmatter/conclusion.tex b/doc/mainmatter/conclusion.tex
new file mode 100644
index 0000000000000000000000000000000000000000..01f26e519f3c4dd7b37e2342235e23dbf7e97aa9
--- /dev/null
+++ b/doc/mainmatter/conclusion.tex
@@ -0,0 +1,4 @@
+\chapter{Conclusion}
+\label{chapter:conclusion}
+
+\emph{A conclusion...}
diff --git a/doc/mainmatter/introduction.tex b/doc/mainmatter/introduction.tex
new file mode 100644
index 0000000000000000000000000000000000000000..61eabf599b017a324233f05278581dbd8abd91be
--- /dev/null
+++ b/doc/mainmatter/introduction.tex
@@ -0,0 +1,21 @@
+\chapter{Introduction}
+\label{chapter:introduction}
+
+Dans le cadre du cours de physique appliquée à l'ingénerie 1 (ISC 123) donné par M. Malaspinas Orestis,
+nous devions réaliser une simulation élémentaire de lignes de champs électrostatique de particules.
+Cette simulation se base sur les notions vues et pratiquée en cours, et est réalisée en C avec un
+répertoire git \cite{git-repo} obligatoire.
+
+Le rendu graphique devait être fait en utilisant la librarie SDL2. Cependant, ne la trouvant pas optimale,
+j'ai opté pour une version utilisant OpenGL, branche \verb|opengl|. Vous trouvez en outre la version
+SDL2 sur la branche \verb|master|.
+
+La simulation de lignes de champs permet d'avoir une représentation graphique claire de
+l'impact électrostatique inter-particules dans un univers discret. À plus grande echelle, il serait possible
+de montrer l'impact de différents objets ou matériaux chargé dans un environement. Par exemple dans le cas
+de la conception d'une batterie.
+
+Ce rapport va porter sur la théorie utilisée, ainsi que l'implémentation en C permettant de générer
+les représentations graphique.
+Je commencerai par présenter les différentes formules utilisées, puis je me pencherai sur le code et les
+expériences faites pour arriver au résultat voulu, et je finirai par une conclusion.
\ No newline at end of file
diff --git a/doc/report.bib b/doc/report.bib
new file mode 100644
index 0000000000000000000000000000000000000000..d175154d4f82f31480ed27a37c2a234b7a9037b2
--- /dev/null
+++ b/doc/report.bib
@@ -0,0 +1,43 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% Examples of common entries %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+@online{git-repo,
+  author  = {Cavagna Tanguy},
+  title   = {Gitedu},
+  url     = {https://gitedu.hesge.ch/repos.tanguy.cavagna/physics/electric-field},
+  urldate = {2022-04-24}
+}
+
+@article{example-article,
+  author  = {I. Surname and I. Surname and I. Surname},
+  title   = {The Title of the Article},
+  journal = {The Title of the Journal},
+  volume  = {1},
+  number  = {2},
+  pages   = {123-456},
+  year    = {2000},
+  note    = {}
+}
+
+@book{example-book,
+  author    = {I. Surname and I. Surname and I. Surname},
+  title     = {The Title of the Book},
+  publisher = {Publisher},
+  year      = {2000},
+  edition   = {8th ed.},
+  address   = {City, State or Country},
+  note      = {}
+}
+
+@online{example-website,
+  author  = {{Website Name} <OR> I. Surname and I. Surname and I. Surname},
+  title   = {Title of the Website},
+  url     = {https://example.com},
+  urldate = {2020-12-24},
+  year    = {2000}
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% Start of bibliography %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/doc/report.tex b/doc/report.tex
new file mode 100644
index 0000000000000000000000000000000000000000..f255ddc9f14352e060b8acbae49ff700af3dc6fb
--- /dev/null
+++ b/doc/report.tex
@@ -0,0 +1,62 @@
+\documentclass{layout/hepia-report}
+
+%% Setting up the bibliography
+\usepackage{biblatex}
+\addbibresource{report.bib}
+
+%% Additional packages and commands
+\setlist{itemsep=-2pt} % Reducing white space in lists slightly
+\renewcommand{\deg}{\si{\degree}\xspace} % Use \deg easily, everywhere
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%% Begin of document %%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\begin{document}
+
+%% Roman page numbering
+\frontmatter
+
+%% Defining the main parameters
+\title{Simulation de lignes de champ}
+\subtitle{Implémentation graphique de simulation de\\lignes de champs électrostatique de particules}
+\author{Tanguy Cavagna}
+\subject{Physique: Électrostatique}
+
+\coverimage{figures/cover-field.png} % Aspect ratio of 2:3 (portrait) recommended
+\definecolor{title}{HTML}{FF0000} % Color for title
+
+\makecover
+
+\input{frontmatter/title-report}
+
+\tableofcontents
+%\listoffigures
+%\listoftables
+
+%% Arabic page numbering
+\mainmatter
+
+\input{mainmatter/introduction}
+
+\input{mainmatter/chapter-2}
+\input{mainmatter/chapter-3}
+%\input{mainmatter/chapter-4} % Create file to add
+
+\input{mainmatter/conclusion}
+
+%% Prevent urls running into margins in bibliography
+\setcounter{biburlnumpenalty}{7000}
+\setcounter{biburllcpenalty}{7000}
+\setcounter{biburlucpenalty}{7000}
+
+%% Add bibliography
+\printbibliography[heading=bibintoc,title=References]
+
+%% Letters for chapters
+\appendix
+
+\input{appendix/appendix-a}
+%\input{appendix/appendix-c} % Create file to add
+
+\end{document}