diff --git a/quad10/fenomens/lab/informe/graphs/energia.tex b/quad10/fenomens/lab/informe/graphs/energia.tex
new file mode 100644
index 0000000..6d37c17
--- /dev/null
+++ b/quad10/fenomens/lab/informe/graphs/energia.tex
@@ -0,0 +1,150 @@
+% GNUPLOT: LaTeX picture with Postscript
+\begingroup
+  \makeatletter
+  \providecommand\color[2][]{%
+    \GenericError{(gnuplot) \space\space\space\@spaces}{%
+      Package color not loaded in conjunction with
+      terminal option `colourtext'%
+    }{See the gnuplot documentation for explanation.%
+    }{Either use 'blacktext' in gnuplot or load the package
+      color.sty in LaTeX.}%
+    \renewcommand\color[2][]{}%
+  }%
+  \providecommand\includegraphics[2][]{%
+    \GenericError{(gnuplot) \space\space\space\@spaces}{%
+      Package graphicx or graphics not loaded%
+    }{See the gnuplot documentation for explanation.%
+    }{The gnuplot epslatex terminal needs graphicx.sty or graphics.sty.}%
+    \renewcommand\includegraphics[2][]{}%
+  }%
+  \providecommand\rotatebox[2]{#2}%
+  \@ifundefined{ifGPcolor}{%
+    \newif\ifGPcolor
+    \GPcolortrue
+  }{}%
+  \@ifundefined{ifGPblacktext}{%
+    \newif\ifGPblacktext
+    \GPblacktexttrue
+  }{}%
+  % define a \g@addto@macro without @ in the name:
+  \let\gplgaddtomacro\g@addto@macro
+  % define empty templates for all commands taking text:
+  \gdef\gplbacktext{}%
+  \gdef\gplfronttext{}%
+  \makeatother
+  \ifGPblacktext
+    % no textcolor at all
+    \def\colorrgb#1{}%
+    \def\colorgray#1{}%
+  \else
+    % gray or color?
+    \ifGPcolor
+      \def\colorrgb#1{\color[rgb]{#1}}%
+      \def\colorgray#1{\color[gray]{#1}}%
+      \expandafter\def\csname LTw\endcsname{\color{white}}%
+      \expandafter\def\csname LTb\endcsname{\color{black}}%
+      \expandafter\def\csname LTa\endcsname{\color{black}}%
+      \expandafter\def\csname LT0\endcsname{\color[rgb]{1,0,0}}%
+      \expandafter\def\csname LT1\endcsname{\color[rgb]{0,1,0}}%
+      \expandafter\def\csname LT2\endcsname{\color[rgb]{0,0,1}}%
+      \expandafter\def\csname LT3\endcsname{\color[rgb]{1,0,1}}%
+      \expandafter\def\csname LT4\endcsname{\color[rgb]{0,1,1}}%
+      \expandafter\def\csname LT5\endcsname{\color[rgb]{1,1,0}}%
+      \expandafter\def\csname LT6\endcsname{\color[rgb]{0,0,0}}%
+      \expandafter\def\csname LT7\endcsname{\color[rgb]{1,0.3,0}}%
+      \expandafter\def\csname LT8\endcsname{\color[rgb]{0.5,0.5,0.5}}%
+    \else
+      % gray
+      \def\colorrgb#1{\color{black}}%
+      \def\colorgray#1{\color[gray]{#1}}%
+      \expandafter\def\csname LTw\endcsname{\color{white}}%
+      \expandafter\def\csname LTb\endcsname{\color{black}}%
+      \expandafter\def\csname LTa\endcsname{\color{black}}%
+      \expandafter\def\csname LT0\endcsname{\color{black}}%
+      \expandafter\def\csname LT1\endcsname{\color{black}}%
+      \expandafter\def\csname LT2\endcsname{\color{black}}%
+      \expandafter\def\csname LT3\endcsname{\color{black}}%
+      \expandafter\def\csname LT4\endcsname{\color{black}}%
+      \expandafter\def\csname LT5\endcsname{\color{black}}%
+      \expandafter\def\csname LT6\endcsname{\color{black}}%
+      \expandafter\def\csname LT7\endcsname{\color{black}}%
+      \expandafter\def\csname LT8\endcsname{\color{black}}%
+    \fi
+  \fi
+    \setlength{\unitlength}{0.0500bp}%
+    \ifx\gptboxheight\undefined%
+      \newlength{\gptboxheight}%
+      \newlength{\gptboxwidth}%
+      \newsavebox{\gptboxtext}%
+    \fi%
+    \setlength{\fboxrule}{0.5pt}%
+    \setlength{\fboxsep}{1pt}%
+    \definecolor{tbcol}{rgb}{1,1,1}%
+\begin{picture}(4800.00,4800.00)%
+    \gplgaddtomacro\gplbacktext{%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(714,612){\makebox(0,0)[r]{\strut{}$-2$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(714,1610){\makebox(0,0)[r]{\strut{}$-1.5$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(714,2608){\makebox(0,0)[r]{\strut{}$-1$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(714,3606){\makebox(0,0)[r]{\strut{}$-0.5$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(714,4604){\makebox(0,0)[r]{\strut{}$0$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(864,385){\makebox(0,0){\strut{}$1.6$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(1317,385){\makebox(0,0){\strut{}$1.8$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(1769,385){\makebox(0,0){\strut{}$2$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(2222,385){\makebox(0,0){\strut{}$2.2$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(2675,385){\makebox(0,0){\strut{}$2.4$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(3127,385){\makebox(0,0){\strut{}$2.6$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(3580,385){\makebox(0,0){\strut{}$2.8$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(4032,385){\makebox(0,0){\strut{}$3$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(4485,385){\makebox(0,0){\strut{}$3.2$}}%
+    }%
+    \gplgaddtomacro\gplfronttext{%
+      \csname LTb\endcsname%%
+      \put(161,2608){\rotatebox{-270}{\makebox(0,0){\strut{}$\langle e \rangle$}}}%
+      \csname LTb\endcsname%%
+      \put(2674,123){\makebox(0,0){\strut{}T}}%
+      \csname LTb\endcsname%%
+      \put(3729,1697){\makebox(0,0)[r]{\strut{}L = 8}}%
+      \csname LTb\endcsname%%
+      \put(3729,1407){\makebox(0,0)[r]{\strut{}L = 16}}%
+      \csname LTb\endcsname%%
+      \put(3729,1117){\makebox(0,0)[r]{\strut{}L = 32}}%
+      \csname LTb\endcsname%%
+      \put(3729,827){\makebox(0,0)[r]{\strut{}L = 64}}%
+    }%
+    \gplgaddtomacro\gplbacktext{%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(1473,3150){\makebox(0,0)[r]{\strut{}$-1.5$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(1473,3817){\makebox(0,0)[r]{\strut{}$-1.35$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(1473,4485){\makebox(0,0)[r]{\strut{}$-1.2$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(1921,2923){\makebox(0,0){\strut{}$2.31$}}%
+      \colorrgb{0.50,0.50,0.50}%%
+      \put(2814,2923){\makebox(0,0){\strut{}$2.34$}}%
+    }%
+    \gplgaddtomacro\gplfronttext{%
+      \csname LTb\endcsname%%
+      \put(909,3817){\rotatebox{-270}{\makebox(0,0){\strut{}}}}%
+      \csname LTb\endcsname%%
+      \put(2516,2696){\makebox(0,0){\strut{}}}%
+    }%
+    \gplbacktext
+    \put(0,0){\includegraphics[width={240.00bp},height={240.00bp}]{energia}}%
+    \gplfronttext
+  \end{picture}%
+\endgroup
