Add reports from the Electromagnetism Lab
Change-Id: I3a5abfa0b9ff7c834f4df7c03c710b0c5ee0fad2
diff --git a/quad8/electro/lab/p6/data/6_3_2_1.dat b/quad8/electro/lab/p6/data/6_3_2_1.dat
new file mode 100644
index 0000000..cc03894
--- /dev/null
+++ b/quad8/electro/lab/p6/data/6_3_2_1.dat
@@ -0,0 +1,13 @@
+# I (mA) alpha (º) B_b tan(alpha) delta tan(alpha)
+0.2 0 0.00016 0.00 0.03
+10.1 -12 0.00814 -0.21 0.04
+20.1 -31 0.01620 -0.60 0.05
+30.1 -41 0.02427 -0.87 0.06
+40 -49 0.03225 -1.15 0.08
+50.2 -55 0.04047 -1.43 0.11
+60.3 -60 0.04861 -1.73 0.14
+70 -63 0.05643 -1.96 0.17
+80.1 -66 0.06457 -2.2 0.2
+90.1 -68 0.07263 -2.5 0.2
+100.2 -70 0.08078 -2.7 0.3
+125.3 -74 0.10101 -3.5 0.5
diff --git a/quad8/electro/lab/p6/data/6_3_2_2.dat b/quad8/electro/lab/p6/data/6_3_2_2.dat
new file mode 100644
index 0000000..dd80a38
--- /dev/null
+++ b/quad8/electro/lab/p6/data/6_3_2_2.dat
@@ -0,0 +1,21 @@
+# I (mA) t (s) # oscil·lacions (anada i tornada) T (s) 1/T^2 s*1/T^2 B_b delta t delta T delta 1/T^2
+0 11.38 3 3.79 0.0695 0.0695 0.000 0.2 0.07 0.0001
+10.4 10.31 3 3.44 0.0847 0.0847 0.008 0.2 0.07 0.0001
+19.7 9.41 3 3.14 0.1016 0.1016 0.016 0.2 0.07 0.0002
+29.8 8.69 3 2.90 0.1192 0.1192 0.024 0.2 0.07 0.0002
+39.7 8.06 3 2.69 0.1385 0.1385 0.032 0.2 0.07 0.0003
+50.1 7.5 3 2.50 0.1600 0.1600 0.040 0.2 0.07 0.0003
+60.1 9.41 4 2.35 0.1807 0.1807 0.048 0.2 0.05 0.0001
+70.1 8.97 4 2.24 0.1989 0.1989 0.057 0.2 0.05 0.0001
+80.1 8.6 4 2.15 0.2163 0.2163 0.065 0.2 0.05 0.0002
+89.8 8.28 4 2.07 0.2334 0.2334 0.072 0.2 0.05 0.0002
+99.8 8.06 4 2.02 0.2463 0.2463 0.080 0.2 0.05 0.0002
+-9.8 14 3 4.67 0.0459 0.0459 -0.008 0.2 0.07 0.0000
+-20.4 10.59 2 5.30 0.0357 0.0357 -0.016 0.2 0.10 0.0002
+-42.9 7.25 1 7.25 0.0190 -0.0190 -0.035 0.2 0.20 0.0010
+-52.8 10.22 2 5.11 0.0383 -0.0383 -0.043 0.2 0.10 0.0002
+-64 12.56 3 4.19 0.0571 -0.0571 -0.052 0.2 0.07 0.0001
+-72.3 11.12 3 3.71 0.0728 -0.0728 -0.058 0.2 0.07 0.0001
+-80.6 10.09 3 3.36 0.0884 -0.0884 -0.065 0.2 0.07 0.0001
+-89.5 12.34 4 3.09 0.1051 -0.1051 -0.072 0.2 0.05 0.0001
+-100.7 14.16 5 2.83 0.1247 -0.1247 -0.081 0.2 0.04 0.0000
diff --git a/quad8/electro/lab/p6/graphs/6_3_2_1.gnu b/quad8/electro/lab/p6/graphs/6_3_2_1.gnu
new file mode 100755
index 0000000..7354047
--- /dev/null
+++ b/quad8/electro/lab/p6/graphs/6_3_2_1.gnu
@@ -0,0 +1,58 @@
+#!/usr/bin/env gnuplot -c
+# == DEFINICIONS ==
+outputfile = '../output/6_3_2_1' # Nom de la imatge resultant (sense extensió)
+datafile = '../data/6_3_2_1.dat' # Nom del fitxer de dades que es vol usar
+
+# == CONFIGURACIÓ DE L'OUTPUT PEL LATEX ==
+set terminal cairolatex size 10cm, 7.5cm font ",10"
+set output outputfile.'.tex'
+
+# == CONFIGURACIÓ DEL PLOT ==
+set xlabel '$\tan(\alpha) =: x$'
+set ylabel '$B_b \, (\si{\milli\tesla)}$'
+
+# Opcions per la llegenda:
+set key above
+set key spacing 1.5
+set key font ",8.5"
+
+# == CONFIGURACIÓ DEL FIT ==
+set fit quiet
+
+f(x) = a*x + b # Funció a fitar
+fit f(x) datafile u 4:3 via a, b # Fem el fit de les dades
+
+# Això s'usa per obtenir el valor del coeficient de correlació "r", que estarà
+# guardat a la var. "STATS_correlation"
+stats datafile u 4:3 name "STATS" nooutput
+
+# Funció per obtenir els dígits significatius d'una expressió
+f_sd(n, i) = (int(n) == 0 ? f_sd(n*10, i+1) : (int(n) == 1 ? i+1 : i))
+significant_digits(n) = f_sd(n - 10*int(n/10), 0)
+
+significant_digits_r(n) = (n == 1 ? 0 : significant_digits(1 - abs(n)))
+
+error_a = STATS_slope_err
+sd_error_a = significant_digits(error_a)
+error_b = STATS_intercept_err
+sd_error_b = significant_digits(error_b)
+r = STATS_correlation
+sd_r = significant_digits_r(r)
+
+print("=== ".datafile." ===")
+print(sprintf('delta(a) = %.'.sd_error_a.'f, sd=%.0f', error_a, sd_error_a))
+print(sprintf('delta(b) = %.'.sd_error_b.'f, sd=%.0f', error_b, sd_error_b))
+
+# Aquesta funció escriu, a partir dels valors del paràmetres a, b i r,
+# l'equació de la regressió:
+title_f(a, b, r) = sprintf('$B_b(x) = %.'.sd_error_a.'f x + (%.'.sd_error_b.'f)$, $r = %.'.sd_r.'f$', a, b, r);
+
+plot datafile u 4:3:5 t "Dades experimentals" w xerr, f(x) t title_f(a, b, r)
+
+# == CONFIGURACIÓ DE L'OUTPUT PER SVG ==
+# Això ho uso per generar també una imatge de previsualització que puc carregar
+# a l'ordinador per veure més o menys com a sortit el plot sense haver
+# d'inserir-ho al LaTeX per veure-ho.
+set terminal svg dashed size 600, 600 font "Computer Modern,Tinos,Helvetica,15"
+set output outputfile.'.svg'
+replot
diff --git a/quad8/electro/lab/p6/graphs/6_3_2_2.gnu b/quad8/electro/lab/p6/graphs/6_3_2_2.gnu
new file mode 100755
index 0000000..e2d4439
--- /dev/null
+++ b/quad8/electro/lab/p6/graphs/6_3_2_2.gnu
@@ -0,0 +1,62 @@
+#!/usr/bin/env gnuplot -c
+# == DEFINICIONS ==
+outputfile = '../output/6_3_2_2' # Nom de la imatge resultant (sense extensió)
+datafile = '../data/6_3_2_2.dat' # Nom del fitxer de dades que es vol usar
+b_mean_exp_err = 0.00014
+a_exp_err = 0.002
+
+# == CONFIGURACIÓ DE L'OUTPUT PEL LATEX ==
+set terminal cairolatex size 10cm, 7.5cm font ",10"
+set output outputfile.'.tex'
+
+# == CONFIGURACIÓ DEL PLOT ==
+set xlabel '$B_b \, (\si{\milli\tesla)}$'
+set ylabel '${\scriptstyle (-1)^s} \frac{1}{T^2} =: y \quad (\si{\per\second\squared})$'
+
+# Opcions per la llegenda:
+set key above
+set key spacing 1.5
+set key font ",8.5"
+
+# == CONFIGURACIÓ DEL FIT ==
+set fit quiet
+
+f(x) = a*x + b # Funció a fitar
+fit f(x) datafile u 7:6 via a, b # Fem el fit de les dades
+
+# Això s'usa per obtenir el valor del coeficient de correlació "r", que estarà
+# guardat a la var. "STATS_correlation"
+stats datafile u 7:6 name "STATS" nooutput
+
+# Funció per obtenir els dígits significatius d'una expressió
+f_sd(n, i) = (int(n) == 0 ? f_sd(n*10, i+1) : (int(n) == 1 ? i+1 : i))
+significant_digits(n) = f_sd(n - 10*int(n/10), 0)
+
+significant_digits_r(n) = (n == 1 ? 0 : significant_digits(1 - abs(n)))
+
+error_a = sqrt(STATS_slope_err**2 + a_exp_err**2)
+sd_error_a = significant_digits(error_a)
+error_b = sqrt(STATS_intercept_err**2 + b_mean_exp_err**2)
+sd_error_b = significant_digits(error_b)
+r = STATS_correlation
+sd_r = significant_digits_r(r)
+
+print("=== ".datafile." ===")
+print(sprintf('delta(a) = %.'.sd_error_a.'f, sd=%.0f', error_a, sd_error_a))
+print(sprintf('delta(b) = %.'.sd_error_b.'f, sd=%.0f', error_b, sd_error_b))
+
+# Aquesta funció escriu, a partir dels valors del paràmetres a, b i r,
+# l'equació de la regressió:
+title_f(a, b, r) = sprintf('$y(B_b) = %.'.sd_error_a.'f B_b + (%.'.sd_error_b.'f)$, $r = %.'.sd_r.'f$', a, b, r);
+
+set xtics 0.03
+
+plot datafile u 7:6:10 t "Dades experimentals" w yerr, f(x) t title_f(a, b, r)
+
+# == CONFIGURACIÓ DE L'OUTPUT PER SVG ==
+# Això ho uso per generar també una imatge de previsualització que puc carregar
+# a l'ordinador per veure més o menys com a sortit el plot sense haver
+# d'inserir-ho al LaTeX per veure-ho.
+set terminal svg dashed size 600, 600 font "Computer Modern,Tinos,Helvetica,15"
+set output outputfile.'.svg'
+replot
diff --git a/quad8/electro/lab/p6/graphs/generate.bash b/quad8/electro/lab/p6/graphs/generate.bash
new file mode 100755
index 0000000..3467ba2
--- /dev/null
+++ b/quad8/electro/lab/p6/graphs/generate.bash
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+mkdir -p ../output
+
+./6_3_2_1.gnu
+./6_3_2_2.gnu
diff --git a/quad8/electro/lab/p6/informe/main.tex b/quad8/electro/lab/p6/informe/main.tex
new file mode 100644
index 0000000..e7907ad
--- /dev/null
+++ b/quad8/electro/lab/p6/informe/main.tex
@@ -0,0 +1,147 @@
+\input{../../preamble.tex}
+
+% Changing margins just so the tables fit nicely:
+\geometry{
+ margin=20mm,
+ includeheadfoot,
+ heightrounded
+}
+
+% Hack because we added fancyhdr in the preamble before setting the margins
+% and therefore it doesn't pick up the new margins:
+% (this is easier than redefining the preamble, which is already used by
+% all the other documents and this is the last one)
+\setlength{\headwidth}{\textwidth}
+
+\graphicspath{ {./img/} }
+
+% Electric field colors
+\definecolor{fieldBlue}{HTML}{3c78d8}
+\definecolor{fieldGreen}{HTML}{6aa84f}
+
+\usepackage{biblatex}
+\addbibresource{references.bib}
+
+\pagestyle{fancy}
+\fancyhf{}
+\rhead{Víctor Rubio Español, Adrià Vilanova Martínez}
+\lhead{Pràctica 6}
+\rfoot{\thepage}
+
+%%%% Title %%%%
+\title{Pràctica 6. Mesura del camp magnètic terrestre}
+\author{Víctor Rubio Español, Adrià Vilanova Martínez (4b, grup C1)}
+\date{Primavera 2020}
+
+\begin{document}
+ {\parskip=0pt
+ \maketitle
+ }
+
+ \section{Determinació de la direcció de $B$ amb la ``brúixola d'inclinacions''}
+
+ La inclinació que hem determinat és de:
+ \[ D = \SI{50(4)}{\degree}. \]
+
+ \section{Determinació de la component horitzontal del camp magnètic terrestre}
+ \subsection{Mètode de la brúixola de tangents}
+
+ \textsc{Nota}: A l'informe s'ha fet el desenvolupament amb els eixos $x$ i $y$ intercanviats respecte del que demana el guió de pràctiques degut a un malentès llegint el guió. Tot i així, el desenvolupament és molt similar i el resultat hauria de ser el mateix.
+
+ \begin{figure}[ht]
+ \centering
+ \begin{minipage}{0.35\textwidth}
+ \centering
+ \pgfplotstabletypeset[
+ columns={0, 1, 2, 3},
+ columns/0/.style={column name=$I \, (\si{\milli\ampere})$, fixed, fixed zerofill, precision=1},
+ columns/1/.style={column name=$\alpha \, (\si{\degree})$, fixed, fixed zerofill, precision=0},
+ columns/2/.style={column name=$B_b \, (\si{\milli\tesla})$, fixed, fixed zerofill, precision=3},
+ columns/3/.style={column name=$\tan(\alpha)$, fixed, fixed zerofill, precision=2}
+ ]{../data/6_3_2_1.dat}
+ \captionof{table}{Direcció del camp total $\alpha$ en funció de la intensitat del corrent $I$, i els seus valors derivats $B_b = \left( \frac{4}{5} \right)^{\frac{3}{2}} \frac{\mu_0 N I}{R}$ i $\tan{\alpha}$.}
+ \end{minipage}\hfill
+ \begin{minipage}{0.6\textwidth}
+ \centering
+ \input{../output/6_3_2_1.tex}
+ \captionof{figure}{Regressió lineal de $B_b$ en funció de $\tan(\alpha)$.}
+ \end{minipage}
+ \end{figure}
+
+ L'ajust de $B_b(\tan(\alpha)) = a \cdot \tan(\alpha) + b$ per residus quadrats ens dona els següents coeficients:
+ \[ \begin{cases}
+ a = \SI{-0.0291(19)}{\milli\tesla}, \\
+ b = \SI{-0.0004(7)}{\milli\tesla}.
+ \end{cases} \]
+ Observant que el 0 s'inclou dins de l'interval de confiança de $b$ (que és el valor teòric de $b$), es pot concloure que
+ \[ B_h = \frac{B_b}{\tan(\alpha)} = a = \SI{-0.0291(19)}{\milli\tesla}. \]
+
+ \subsection{Mètode del pèndol magnètic}
+ \begin{figure}[ht]
+ \centering
+ \begin{minipage}{0.4\textwidth}
+ \centering
+ \pgfplotstabletypeset[
+ columns={3, 0, 5, 6},
+ columns/3/.style={column name=$T \, (\si{\second})$, fixed, fixed zerofill, precision=2},
+ columns/0/.style={column name=$I \, (\si{\milli\ampere})$, fixed, fixed zerofill, precision=1},
+ columns/5/.style={column name=${\scriptstyle (-1)^s} \cdot \frac{1}{T^2} \, (\si{\per\second\squared})$, fixed, fixed zerofill, precision=4},
+ columns/6/.style={column name=$B_b \, (\si{\milli\tesla})$, fixed, fixed zerofill, precision=3}
+ ]{../data/6_3_2_2.dat}
+ \captionof{table}{Període d'oscil·lació del pèndol magnètic $T$ en funció de la intensitat de corrent $I$, i els seus valors derivats $(-1)^s \frac{1}{T^2}$ i $B_b$.}
+ \end{minipage}\hfill
+ \begin{minipage}{0.55\textwidth}
+ \centering
+ \input{../output/6_3_2_2.tex}
+ \captionof{figure}{Regressió lineal de $(-1)^s \dfrac{1}{T^2}$ en funció de $B_b$.}
+ \label{fig:grafica2}
+ \end{minipage}
+ \end{figure}
+
+ L'ajust de $\left((-1)^s \dfrac{1}{T^2}\right)(B_b) = a B_b + b$ per residus quadrats ens dona els següents coeficients:\footnote{A l'expressió $(-1)^s \dfrac{1}{T^2}$, la variable $s$ pren els valors $0$ o $1$ depenent de $T$, de tal forma que les dades graficades a la figura \ref{fig:grafica2} quedin en línia recta.}
+ \[ \begin{cases}
+ a = \SI{2.341(14)}{\per\milli\tesla\per\second\squared}, \\
+ b = \SI{0.0649(7)}{\per\second\squared}.
+ \end{cases} \]
+
+ Sabem per la teoria desenvolupada al guió de pràctiques que
+ \[ (-1)^s \frac{1}{T^2} = \frac{1}{(2 \pi)^2} \frac{M}{A} [B_h + B_b], \]
+ d'on podem identificar
+ \[ \left.\begin{array}{l}
+ \displaystyle a = \frac{1}{2 \pi}^2 \frac{M}{A}, \\[1em]
+ \displaystyle b = \frac{1}{2 \pi}^2 \frac{M}{A} B_h
+ \end{array}\right\} \implies B_h = \frac{b}{a} = \SI{0.028(3)}{\milli\tesla}. \]
+
+ \textbf{(Resposta a la pregunta (c))} Observem que a la gràfica de la figura \ref{fig:grafica2} el punt en què la recta talla l'eix de les abscisses ($\frac{1}{T^2} = 0$) és, degut a la fórmula anterior, el punt en què la component horitzontal del camp magnètic de la Terra i el creat artificialment tenen el mateix mòdul:
+ \[ |B_h| = |B_b|. \]
+ És al voltant d'aquest punt on no hem pogut prendre mesures, ja que al voltant d'aquests punts el període és massa gran i per tant la fricció fa que l'agulla no completi cap oscil·lació, o si en fa 1 no podem negligir aquests efectes de fricció.
+
+ \section{Conclusió}
+ \textbf{(Resposta a la pregunta (d))} Segons les dades del \textit{World Magnetic Model for 2020-2025},\cite{https://doi.org/10.25923/ytk1-yx35} la component horitzontal del camp magnètic al voltant de Barcelona és de $\SI{2.5e-5}{\tesla}$. Vegem si els valors que hem trobat són compatibles entre ells, i si ho són també amb el valor de la bibliografia.
+
+ Primer de tot, establim el següent test d'hipòtesi, on la hipòtesi nul·la (el que ens agradaria acceptar o rebutjar) és el fet que les dues mesures siguin compatibles:
+ \[ \begin{cases}
+ H_0: |B_h^\text{(1)}| - |B_h^\text{(2)}| = 0, \\
+ H_1: |B_h^\text{(1)}| - |B_h^\text{(2)}| \neq 0.
+ \end{cases} \]
+ Veiem que $|B_h^\text{(1)}| - |B_h^\text{(2)}| = \SI{1(5)e-5}{\tesla}$ i, com el $0$ està dins de l'interval de confiança, acceptem la hipòtesi nul·la, és a dir, acceptem que les dues mesures siguin compatibles.
+
+ Ara establim el següent test d'hipòtesi per veure si cadascuna de les mesures és compatible amb el valor de la bibliografia:
+ \[ \begin{cases}
+ H_0: |B_h^\text{(i)}| = B_h^\text{(WMM)}, \\
+ H_1: |B_h^\text{(i)}| \neq B_h^\text{(WMM)}.
+ \end{cases} \]
+
+ Veiem que per la primera mesura tenim l'interval de confiança $|B_h^\text{(1)}| \in (2.53, 3.29) \, \times 10^{-5} \si{\tesla}$ (prenent dues desviacions tipus per tenir una confiança de $1 - \alpha = 0.95$). El valor de la bibliografia no cau dins de l'interval de confiança així que hauríem de rebutjar que els valors siguin compatibles, però donat que cau molt a prop del límit inferior (amb una confiança lleugerament més alta cauria dins), sota un criteri més lax podríem acceptar aquesta compatibilitat.
+
+ Per la segona mesura tenim l'interval de confiança $|B_h^\text{(2)}| \in (2.2, 3.4) \, \times 10^{-5} \si{\tesla}$ (calculat de la mateixa manera que abans), i el valor de la bibliografia aquest cop sí que cau dins així que són compatibles ambdós valors.
+
+ Per tant, podem concloure que amb aquests 2 experiments hem conseguit una bastant bona aproximació de la component horitzontal del camp magnètic terrestre.
+
+ \textbf{(Resposta a la pregunta (e))} A partir de la component horitzontal calculada al segon experiment i la inclinació mesurada al principi, podem calcular el mòdul del camp magnètic terrestre amb trigonometria:
+ \[ ||\vec{B}|| = \frac{B_h}{\cos(D)} = \SI{4.4(6)e-5}{\tesla}. \]
+ Com a referència, la intensitat total del camp magnètic segons les dades del mateix model és d'aproximadament $\SI{4.55e-5}{\tesla}$ al voltant de Barcelona,\cite{https://doi.org/10.25923/ytk1-yx35} valor que cau dins d'una desviació tipus del valor calculat a partir de les nostres observacions.
+
+ \printbibliography
+
+\end{document}
diff --git a/quad8/electro/lab/p6/informe/references.bib b/quad8/electro/lab/p6/informe/references.bib
new file mode 100644
index 0000000..020f810
--- /dev/null
+++ b/quad8/electro/lab/p6/informe/references.bib
@@ -0,0 +1,8 @@
+@article{https://doi.org/10.25923/ytk1-yx35,
+ doi = {10.25923/YTK1-YX35},
+ url = {https://repository.library.noaa.gov/view/noaa/24390},
+ author = {Chulliat, Arnaud and Alken, Patrick and Nair, Manoj},
+ title = {The US/UK World Magnetic Model for 2020-2025: Technical Report},
+ publisher = {National Centers for Environmental Information (U.S.); British Geological Survey},
+ year = {2020}
+}