8.2 Fit di dati sperimentali: il $\chi^2$. Il metodo dei minimi quadrati.

Per comprendere dei fenomeni fisici, non basta raccogliere buoni dati sperimentali, occorre anche interpretarli. Molto spesso lo scopo di una misura non e' solo quello di conoscere il valore di una certa quantita ma anche di trovare una funzione matematica che approssimi i dati reccolti.

Supponiamo di aver effettuato delle misure di una certa quantita' fisica che dipenda da un'altra quantita': y = f(x).

Supponiamo inoltre che, per ogni valore di x, si siano raccolti diversi valori di y in modo tale che ad ogni misura di y sia associato un errore $\sigma_y$. Vogliamo ora trovare la funzione f che meglio approssima i dati sperimentali.

Questa procedura prende il nome di ``fit'' e la funzione f che meglio approssima i datio si chiama ``funzione di best fit''. Come facciamo a trovare questa funzione?

Uno dei metodi piu' comunemente utilizzati e' quello di definire il $\chi^2$. Se indichiamo con $x_i$$y_i$$\sigma_i$ rispettivamente i valori della variabile indipendente i, i valori delle quantita' misurate e gli errori corrispondenti, il$\chi^2$ viene definito come:
 

\begin{displaymath}\chi^2 = \sum^{N}_{i=1} \frac{(y_i - f(x_i))^2}{\sigma_i^2} \qquad (6)\end{displaymath}

Ebbene, la funzione $f(x_i)$, che dipendera' da una certa serie di parametri a, b, c... sara' ottenuta trovando il minimo della funzione di $\chi^2$.

Il processo di minimizzare la funzione di $\chi^2$ in modo generale puo' essere alquanto complesso e va oltre lo scopo di questo corso.

Qui ci occuperemo di un caso piu' semplice: quello in cui f(x) sia semplicemente l'equazione di una retta:
 

\begin{displaymath}f(x) = a + bx\end{displaymath}

In questo caso la (6) puo' essere scritta come:
 

\begin{displaymath}\chi^2 = \sum^{N}_{i=1} \frac{(y_i - (a + bx_i))^2}{\sigma_i^2} \qquad (7)\end{displaymath}

Il minimo di una funzione viene ottenuto eguagliando la sua derivata a zero. Poiche' la funzione di $\chi^2$ dipende dai due valori incogniti a e b, chiederemo che:
 

\begin{displaymath}\frac{\partial \chi^2(a,b)}{\partial a} = 0\end{displaymath}

e
 

\begin{displaymath}\frac{\partial \chi^2(a,b)}{\partial b} = 0\end{displaymath}

Derivando otteniamo:
 

\begin{displaymath}2 \sum^{N}_{i=1} \frac{(y_i - (a + bx_i))}{\sigma_i^2} = 0\end{displaymath}


\begin{displaymath}2 \sum^{N}_{i=1} \frac{(y_i - (a + bx_i)) x_i}{\sigma_i^2} = 0\end{displaymath}

Queste due equazioni costituiscono un sistema che si puo' risolvere col metodo di Kramer.

Definiamo ora le seguenti quantita', che non sono altro che medie pesate:
 

\begin{displaymath}<x> = \frac{\sum x_i/\sigma_i^2}{\sum 1/\sigma_i^2}\end{displaymath}
\begin{displaymath}<x^2> = \frac{\sum x^2_i/\sigma_i^2}{\sum 1/\sigma_i^2}\end{displaymath}
\begin{displaymath}<xy> = \frac{\sum x_i y_i/\sigma_i^2}{\sum 1/\sigma_i^2}\end{displaymath}
\begin{displaymath}<y> = \frac{\sum y_i/\sigma_i^2}{\sum 1/\sigma_i^2}\end{displaymath}

Utilizzando questi simboli i coefficienti dell'equazione della retta saranno dati dalle equazioni:
 

\begin{displaymath}b = \frac{<xy> - <x><y>}{<x^2> - <x>^2}\end{displaymath}

e
 

\begin{displaymath}a = <y> - b<x>\end{displaymath}

Gli errori su questi coefficienti sono ottenuti nel seguente modo.

Definiamo:
 

\begin{displaymath}\sigma^2 = \frac{1}{N-2}\sum^{N}_{i=1} \frac{(y_i - (a + bx_i))^2}{\sigma_i^2}\end{displaymath}

Allora:
 

\begin{displaymath}\sigma_b^2 = \frac{\sigma^2}{N (<x^2> - <x>^2)}\end{displaymath}


\begin{displaymath}\sigma_a^2 = \sigma_b^2 <x^2>\end{displaymath}

mostra una simulazione della procedura di misurare una certa quantita' y che dipenda da x. Sono state raccolti 10 valori di x e in corrispondenza sono stati ottenuti i valori misurati di y con il relativo errore.

Nella figura si possono osservare i punti fluttuare intorno al loro valore medio con un errore che e' dato dalla dimensione della barra di errore verticale.

Premendo Stop si simula una presa dati. La linea rappresenta il risultato del best fit. Tale linea si chiama anche ``retta di regressione''. Sono anche indicati i valori dei parametri con il relativo errore. E' anche riportato il valore del $\chi^2$.

Definiamo ora una nuova quantita' detta ``numero di gradi di liberta' (NDF)''. Il valore del $\chi^2$ dipende non solo dalla distribuzione dei valori e dal loro errore, ma anche dal numero dei parametri utilizzati per fare il fit.

Tale quantita' viene definita quindi come:
 

\begin{displaymath}NDF = N - n_p\end{displaymath}

dove N e' il numero di dati sperimentali e $n_p$ e' il numero di parametri.

Per dare un significato al valore ottenuto occorre ora considerare la figura 13.

Figura 13. Distribuzione della correlazione fra probabilita' e  chi^2 per diversi valori di NDF.

In questa figura, sulle ascisse e' riportato il valore del $\chi^2$, in ordinate la probabilita' del fit. Sono inoltre riportate diverse curve, ognuna per ogni valore del valore di NDF.

La figura si utilizza nel seguente modo. Dal valore del $\chi^2$ ottenuto si manda una linea verticale fino ad intersecare la curva corrispondente al valore di NDF. Da questo punto si manda poi una linea orizzontale che interseca l'asse delle ordinate dive si legge il valore della probabilita'. Ad esempio, per un valore di $\chi^2$ = 10 e per un valore di NDF = 8 otterremo approssimativamente una probabilita' di 0.25 (25 %). Notare che le scale sono logaritmiche.

Come si interpreta ora questo risultato? Una probabilita' del 25 % significa che, se noi dovessimo fare lo stesso esperimento 100 volte diverse, ottenendo sempre diversi valori che fluttuano in accordo alle leggi del caso, 25 volte otterremmo un valore del $\chi^2$ minore di quello ottenuto. Questa probabilita' e' considerata soddisfacente e quindi abbiamo ottenuto una buona rappresentazione dei dati sperimentali.

I fit cominciano a diventare cattivi quando le probabilita' cominciano ad essere inferiori al 5 %.

In generale, un fit e' buono quando il valore del $\chi^2$ e' approssimativamente uguale al valore di NDF.

Cosa dobbiamo fare quando le probabilita' diventano molto piccole? Ovvero quando$\chi^2>>NDF$?

Occorre semplicemente cambiare modello di fit. La funzione utilizzata in questo caso non rappresenta bene i dati sperimentali e quindi bisogna cambiarla.

Un esempio e' rappresentato nella figura 14 dove si puo' osservare che il fit mediante una linea retta non descrive bene i dati sperimentali. In questo caso, cambiando il modello di fit, introducendo un polinomio di secondo grado (premendo sul pulsante 3) si ottiene un nuovo fit che rappresenta bene i dati sperimentali.