Propagación de errores

1 Errores independientes

Si queremos reportar un resultado y el cual es función de otras mediciones independientes \{ x_1, \ldots, x_n \}:

y = f(x_1, \ldots, x_n)

podemos propagar el error de estas mediciones utilizando la fórmula de propagación de errores independientes (Bevington y Robinson 2003, 39):

\begin{align} \sigma_y^2 &= \text{Var}(y) \\ &\approx \sum_{i=1}^n \left( \frac{\partial f}{\partial x_i} \right)^2 \text{Var}(x_i) \\ &= \sum_{i=1}^n \left( \frac{\partial f}{\partial x_i} \sigma_{x_i} \right)^2 \end{align} \tag{1}

donde \{ \sigma_{x_1}, \ldots, \sigma_{x_n} \} son los errores de las mediciones \{ x_1, \ldots, x_n \}, respectivamente.

2 En Python

El paquete uncertainties nos permite definir magnitudes con incertezas y hacer operaciones con ellas, donde usa esta fórmula para propagar errores.

Tip

En Google Colab, no viene pre-instalado. Lo pueden instalar corriendo:

!uv pip install uncertainties

Si tenemos dos mediciones:

\begin{cases} x = 10 \pm 1 \\ y = 10 \pm 1 \end{cases}

utilizamos la función ufloat para definirlas:

import uncertainties

x = uncertainties.ufloat(10, 1)
y = uncertainties.ufloat(10, 1)

x
10.0+/-1.0

Se puede acceder a cada parte por separado con:

x.nominal_value
10.0
x.std_dev
1.0

2.1 Ejemplo: resta

Si nos interesa calcular la resta z de estas mediciones:

z(x, y) = x - y

simplemente hacemos la resta de estas variables:

z = x + y

z
20.0+/-1.4142135623730951

Utilizando la Ecuación 1, podemos hacer el cálculo a mano:

\begin{align*} \sigma_z^2 % &= \left( \frac{\partial z}{\partial x} \sigma_{x} \right)^2 &&+ \left( \frac{\partial z}{\partial y} \sigma_{y} \right)^2 \\ &= \left( +1 \cdot \sigma_{x} \right)^2 &&+ \left( -1 \cdot \sigma_{y} \right)^2 \\ &= \sigma_{x}^2 + \sigma_{y}^2 \end{align*} \tag{2}

Es decir,

\begin{align*} \sigma_z &= \sqrt{\sigma_{x}^2 + \sigma_{y}^2} \\ &= \sqrt{1^2 + 1^2} \\ &= \sqrt{2} \end{align*}

que es lo mismo que obtuvimos con uncertainties.

2.2 Ejemplo: producto

De la misma manera, podemos hacer la cuenta para un producto:

w = x \cdot y \tag{3}

x * y
100.0+/-14.142135623730951

Utilizando la Ecuación 1:

\begin{align*} \sigma_w^2 % &= \left( \frac{\partial w}{\partial x} \sigma_{x} \right)^2 &&+ \left( \frac{\partial w}{\partial y} \sigma_{y} \right)^2 \\ &= \left( y \cdot \sigma_{x} \right)^2 &&+ \left( x \cdot \sigma_{y} \right)^2 \end{align*} \tag{4}

Es decir,

\begin{align*} \sigma_w &= \sqrt{y \cdot \sigma_{x}^2 + x \cdot \sigma_{y}^2} \\ &= \sqrt{(10 \cdot 1)^2 + (10 \cdot 1)^2} \\ &= \sqrt{200} = 10 \sqrt{2} \approx 14.14 \end{align*}

3 Error relativo

Para llegar al número, es mejor dejar que la cuenta la haga uncertainties, así evitamos equivocarnos al hacer la cuenta.

Si queremos analizar la dependencia del error con las variables del problema, necesitamos hacer la cuenta de manera simbólica.

Para el caso de la suma o la resta (Ecuación 2), el error al cuadrado es la suma de los errores al cuadrado.

En cambio, para el producto o la división (Ecuación 5), se puede reescribir en términos de los errores relativos si dividimos a ambos lados por el cuadrado de la Ecuación 3:

\left( \frac{\sigma_w}{w} \right)^2 = \left( \frac{\sigma_x}{x} \right)^2 + \left( \frac{\sigma_y}{y} \right)^2 \tag{5}

donde el cuadrado del error relativo del producto \frac{\sigma_w}{w} es la suma de los cuadrados de los errores relativos \frac{\sigma_x}{x} y \frac{\sigma_y}{y}.

Una posible aplicación de esto es al determinar un ángulo \theta a través de la medición de los lados opuestos y y adyacentes x (Figura 1):

z = \tan(\theta) = \frac{y}{x}

El error \sigma_z en la tangente del ángulo y, por lo tanto, en el ángulo va a depender de los errores relativos de x e y. Entonces, si el error de medición es el mismo para x_1 o x_2, nos conviene medir el más largo, x_2, para reducir el error en el ángulo.

Figura 1: Esquema para la medición de un ángulo \theta a través de los catetos opuestos y y adyacente x. Se marcan dos posibles catetos opuestos y_1 e y_2, con sus correspondientes adyacentes x_1 y x_2.

4 Errores dependientes

La fórmula de propagación de errores más general es (Bevington y Robinson 2003, 40): \text{Cov}(y, z) = \sum_{i=1}^n \sum_{j=1}^n \frac{\partial y}{\partial x_i} \frac{\partial z}{\partial x_j} \text{Cov}(x_i, x_j) \tag{6}

donde y y z son funciones de mediciones \{ x_1, \ldots, x_n \}:

\begin{cases} y = y(x_1, \ldots, x_n) \\ z = z(x_1, \ldots, x_n) \end{cases}

Así como la varianza \text{Var}(x) = \sigma_x^2 es una medida del error (al cuadrado) de la variable x, la covarianza \text{Cov}(x, y) es una medida del error conjunto entre x e y. Si la covarianza es positiva, esperamos un error con el mismo signo tanto para x como y. Si es negativa, el error tendrá distinto signo.

Tip

Una regla para saber si dos variables están correlacionadas es ver si reutilizan la misma medición. Ver Sección 4.1.

La fórmula de la Ecuación 1 es un caso especial de Ecuación 6, y la podemos derivar de esta utilizando que:

  1. la covarianza entre dos variables independientes es 0, y
  2. la covarianza de una variable contra sí misma es la varianza: \text{Cov}(y, y) = \text{Var}(y).

4.1 Ejemplo

Consideremos que queremos calcular la superficie de una arandela (Figura 2, área gris), donde solo medimos el radio externo R con su error \sigma_R y sabemos que el radio interno es r = R / 2.

Figura 2: Esquema de una arandela de radio externo R y radio interno r.

Procedamos de tres maneras:

  1. Calculemos las superficies S_R = \pi R^2 y S_r = \pi r^2 de los círculos de radio R y radio r con sus errores usando la fórmula de la Ecuación 1. Luego, calculemos la superficie S de la arandela como la resta de estas superficies:

S = S_R - S_r \tag{7}

calculando su error con la Ecuación 1.

  1. Igual que el punto anterior, pero utilizando la fórmula correcta Ecuación 6, ya que S_R y S_r (re)utilizan la misma medición R y van a estar correlacionadas.

\begin{align*} \text{Var}(S) &= \text{Cov}(S, S) \\ &= \left( \frac{\partial S}{\partial S_R} \right)^2 \text{Var}(S_R) + \left( \frac{\partial S}{\partial S_r} \right)^2 \text{Var}(S_r) + 2 \frac{\partial S}{\partial S_R} \frac{\partial S}{\partial S_r} \text{Cov}(S_R, S_r) \end{align*}

  1. Reescribamos la Ecuación 7 en términos de la medición R:

\begin{align} S &= \pi R^2 - \pi r^2 \\ &= \pi R^2 - \pi \left( \frac{R}{2} \right)^2 \\ &= \frac{3}{4} \pi R^2 \end{align} \tag{8}

y propaguemos el error para esta expresión.

Tip

La propagación de errores es más simple cuando se reescribe todo en términos de variables independientes. En este caso, cuando se reescribe todo en términos de R desde el principio.

¿Se llega al mismo resultado?

Referencias

Bevington, P., y D. K. Robinson. 2003. Data Reduction and Error Analysis for the Physical Sciences. McGraw-Hill Education.