diff --git a/p4/informe/p4.tex b/p4/informe/p4.tex
new file mode 100644
index 0000000..aebdff6
--- /dev/null
+++ b/p4/informe/p4.tex
@@ -0,0 +1,197 @@
+\documentclass[11pt,a4paper]{article}
+\usepackage[utf8x]{inputenc}
+\usepackage[catalan]{babel}
+\usepackage{fancyhdr}
+\usepackage{graphicx}
+\usepackage[labelfont=bf]{caption}
+\usepackage{siunitx}
+\usepackage{geometry}
+\geometry{top=25mm}
+\usepackage{amsmath}
+\usepackage{booktabs}
+\usepackage{chemformula}
+\usepackage{multicol}
+%\usepackage{hyperref} % @TODO: Remove when generating the PDF
+
+\usepackage{pgfplotstable}
+\pgfplotsset{compat=1.16}
+\pgfplotstableset{
+empty cells with={--}, % replace empty cells with ’--’
+every head row/.style={before row=\toprule,after row=\midrule},
+every last row/.style={after row=\bottomrule}%,
+%every even row/.style={
+%before row={\rowcolor[gray]{0.9}}}, % Add this for stylish tables ;)
+%begin table=\begin{longtable},
+%end table=\end{longtable}
+}
+
+\setlength{\parskip}{1em}
+
+\pagestyle{fancy}
+\fancyhf{}
+\rhead{Adrià Vilanova Martínez}
+\lhead{Pràctica 4}
+\rfoot{\thepage}
+
+%%%% Title %%%%
+\title{\vspace{-2ex}Pràctica 4. Mesura de la calor: calibratge d'un calorímetre\vspace{-2ex}}
+\author{Adrià Vilanova Martínez (T1B)\vspace{-2ex} }
+\date{Tardor 2020}
+
+\begin{document}
+  \maketitle
+
+  \section{Objectiu de la pràctica}
+
+  L'objectiu de la pràctica és calibrar el calorímetre B, és a dir, determinar quina és la sensibilitat del calorímetre depenent de la temperatura. Per això un tercer ha realitzat al laboratori l'experiment 4 descrit al guió de pràctiques de Termodinàmica, i en aquest informe s'analitzaran els resultats obtinguts.
+
+  En aquest cas el calorímetre és un calorímetre diferencial, que és un aparell experimental que permet mesurar la diferència de calor que existeix entre dos sistemes termodinàmics. Calibrar-lo és necessari per poder realitzar aquestes mesures. En el futur el calibratge realitzat en aquesta pràctica s'usarà per usar el mateix calorímetre en una altra pràctica.
+
+  \section{Gràfiques}
+
+  L'experiment s'ha realitzat 5 vegades. S'han graficat 2 gràfiques per cada vegada: les gràfiques de les figures 1-5 mostren el senyal calorimètric mesurat i la línia base, i les de les figures 6-10 mostren el senyal calorimètric corregit restant-li la deriva, a partir de la línia base.
+
+  \begin{center}
+    \begin{minipage}{\textwidth}
+      \begin{multicols}{2}
+        \begin{center}
+          \centering
+          \vspace{-2em}
+          \input{../output/mesura1.tex}
+          \captionof{figure}{Experiment 1.}
+        \end{center}
+
+        \begin{center}
+          \centering
+          \vspace{-2em}
+          \input{../output/mesura2.tex}
+          \captionof{figure}{Experiment 2.}
+        \end{center}
+      \end{multicols}
+
+      \begin{multicols}{2}
+        \begin{center}
+          \centering
+          \vspace{-2em}
+          \input{../output/mesura3.tex}
+          \captionof{figure}{Experiment 3.}
+        \end{center}
+
+        \begin{center}
+          \centering
+          \vspace{-2em}
+          \input{../output/mesura4.tex}
+          \captionof{figure}{Experiment 4.}
+        \end{center}
+      \end{multicols}
+
+      \begin{multicols}{2}
+        \begin{center}
+          \centering
+          \vspace{-2em}
+          \input{../output/mesura5.tex}
+          \captionof{figure}{Experiment 5.}
+        \end{center}
+
+        \columnbreak
+
+        \begin{center}
+        \end{center}
+      \end{multicols}
+    \end{minipage}
+  \end{center}
+
+  \begin{center}
+    \begin{minipage}{\textwidth}
+      \begin{multicols}{2}
+        \begin{center}
+          \centering
+          \vspace{-2em}
+          \input{../output/mesura1_wd.tex}
+          \captionof{figure}{Experiment 1.}
+        \end{center}
+
+        \begin{center}
+          \centering
+          \vspace{-2em}
+          \input{../output/mesura2_wd.tex}
+          \captionof{figure}{Experiment 2.}
+        \end{center}
+      \end{multicols}
+
+      \begin{multicols}{2}
+        \begin{center}
+          \centering
+          \vspace{-2em}
+          \input{../output/mesura3_wd.tex}
+          \captionof{figure}{Experiment 3.}
+        \end{center}
+
+        \begin{center}
+          \centering
+          \vspace{-2em}
+          \input{../output/mesura4_wd.tex}
+          \captionof{figure}{Experiment 4.}
+        \end{center}
+      \end{multicols}
+
+      \begin{multicols}{2}
+        \begin{center}
+          \centering
+          \vspace{-2em}
+          \input{../output/mesura5_wd.tex}
+          \captionof{figure}{Experiment 5.}
+        \end{center}
+
+        \columnbreak
+
+        \begin{center}
+        \end{center}
+      \end{multicols}
+    \end{minipage}
+  \end{center}
+
+  \section{Taula de dades}
+
+  \begin{center}
+    \centering
+    \pgfplotstabletypeset[
+        columns/0/.style={column name=$Y \, (\si{\milli\volt})$, fixed, fixed zerofill, precision=2},
+        columns/1/.style={column name=$T \, (\si{\celsius})$, fixed, fixed zerofill, precision=1},
+        columns/2/.style={column name=$I \, (\si{\milli\ampere})$, fixed, fixed zerofill, precision=1},
+        columns/3/.style={column name=$S \, (\si{\milli\meter})$, fixed, fixed zerofill, precision=2},
+        columns/4/.style={column name=$\delta(S) \, (\si{\per\ampere})$, fixed, fixed zerofill, precision=2}
+    ]
+        {../data/finaldata.dat}
+
+    \captionof{table}{Dades experimentals recollides i càlcul de $S$ i la seva incertesa.}
+  \end{center}
+
+  L'error relatiu d'S s'ha calculat de la següent manera: \[ \varepsilon_{S} = \varepsilon_{Y} + \varepsilon_{V^{-1}} + \varepsilon_{I^{-1}} = \varepsilon_{Y} + \varepsilon_{V} + \varepsilon_{I} \implies \delta(S) = |s| ( \varepsilon_{Y} + \varepsilon_{V} + \varepsilon_{I} ) \] on $\delta(x)$ és l'error absolut de $x$ i $\varepsilon_{x}$ és l'arror relatiu de $x$.
+
+  Finalment s'han fitat els valors $(T, S)$ de la taula per obtenir una expressió de $S$ depenent de $T$: \[ S(T) = a T + b \]
+
+  \begin{center}
+    \centering
+    \vspace{-2em}
+    \input{../output/finalgraph.tex}
+    \captionof{figure}{Relació entre $S$ i $T$.}
+  \end{center}
+
+  Del fit s'han obtingut els següents valors d'$a$ i $b$: \[ \begin{cases}
+    a = (0.0004 \pm 0.0002) \, \si{\per\celsius\per\ampere} \\
+    b = (0.1 \pm 0.3) \, \si{\per\ampere}
+  \end{cases} \]
+
+  \newpage
+
+  \section{Conclusió}
+  S'ha determinat que $S(T) = -0.0004 T + 0.1$. No obstant, s'ha de tenir en compte que $r = -0.6$, i per tant les dades no estan molt correlacionades. Per aquest motiu, la regressió lineal trobada no és una bona aproximació i per tant la calibració del calorímetre trobada no és suficientment bona.
+
+  Això és degut al fet que no es pot trobar amb exactitud la línia base de les dades del senyal calorimètric, ja que per un motiu desconegut les línies base del principi i el final d'algunes de les vegades que s'han realitzat els experiments no es poden aproximar bé per un polinomi, i per tant la correcció de la deriva no es pot realitzar correctament.
+
+  A part, és destacable també el fet que les barres d'error corresponents a $S$ són molt grans, i això tampoc permet garantir que la regressió lineal sigui una bona calibració del calorímetre. Es podrien rebaixant les fites de les incerteses quan es calcula la propagació d'errors de variables independents, però tot i així les barres d'error continuarien sent igual de grans.
+
+  Així doncs, s'hauria de repetir l'experiment un altre cop i analitzar les dades de nou per tal d'obtenir una calibració correcta del calorímetre B.
+
+\end{document}
