Automatisieren von Fehlerrechnung

$$ \sigma_{f} = \sqrt{\sum_{i=1}^m \left( \frac{\partial f}{\partial x_i}\right)^{\!2} \sigma_{x_i}^2} $$ $$ \sigma_{f} = \sqrt{\sum_{i=1}^m \left( \frac{\partial f}{\partial x_i}\right)^{\!2} \sigma_{x_i}^2 + \sum_{j\neq k} \frac{\partial f}{\partial x_j} \frac{\partial f}{\partial x_k} \operatorname{cov}(x_j, x_k)} $$

uncertainties

Korrelationen werden von uncertainties beachtet:

uncertainties.unumpy ergänzt numpy:

Man muss daran denken, die Funktionen aus unumpy zu benutzen (exp, cos, etc.)

Zugriff auf Wert und Standardabweichung mit n und s:

Bei unumpy mit nominal_values und std_devs

Kann man natürlich auch abkürzen:

Korrelierte Werte

vermute eine lineare Korrelation der Messwerte. Stützen der Hypothese mit Korrelationskoeffizient:

$$r = \frac{cov(x, y)}{\sigma_x \sigma_y}, \quad -1 \leq r \leq 1$$

Korrelation zwischen Variablen mit correlated_values erzeugen:

Vorsicht bei Fits:

korrelierte Fit-Parameter führen zu nichts-sagenden Ergebnissen. Kontrolle: Korrelationsmatrix.

Vorsicht

Man kann keine ufloats plotten:

Sympy

SymPy importieren:

Mathematische Variablen erzeugen mit var():

Differenzieren mit diff():

Eine Funktion, die automatisch die Fehlerformel generiert:

$$f= E + q^2 r \quad\rightarrow\quad \sigma_f = \sqrt{\sigma_{E_{x}}^{2} + 4 \sigma_{q}^{2} q^{2} r^{2} + \sigma_{r}^{2} q^{4}}$$