2021-10-11 18:31:02 +01:00
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import pyerrors as pe\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"plt.style.use('./base_style.mplstyle')\n",
"plt.rc('text', usetex=True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Read data from the pcac example"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
2022-01-06 12:07:19 +01:00
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Data has been written using pyerrors 2.0.0.\n",
"Format version 0.1\n",
"Written by fjosw on 2022-01-06 11:27:34 +0100 on host XPS139305, Linux-5.11.0-44-generic-x86_64-with-glibc2.29\n",
"\n",
"Description: SF correlation function f_P on a test ensemble\n"
]
}
],
2021-10-11 18:31:02 +01:00
"source": [
2022-01-06 12:07:19 +01:00
"fP = pe.Corr(pe.input.json.load_json(\"./data/f_P\"), padding_front=1, padding_back=1)"
2021-10-11 18:31:02 +01:00
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can now define a custom fit function, in this case a single exponential. __Here we need to use the autograd wrapped version of numpy__ (imported as anp) to use automatic differentiation."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"import autograd.numpy as anp\n",
"def func_exp(a, x):\n",
" y = a[1] * anp.exp(-a[0] * x)\n",
" return y"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Fit single exponential to f_P. The kwarg `resplot` generates a figure which visualizes the fit with residuals."
]
},
{
"cell_type": "code",
2022-01-06 17:51:50 +01:00
"execution_count": 5,
2021-10-11 18:31:02 +01:00
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fit with 2 parameters\n",
"Method: Levenberg-Marquardt\n",
"`xtol` termination condition is satisfied.\n",
2022-01-06 12:07:19 +01:00
"chisquare/d.o.f.: 0.0023324250917749687\n",
"\n",
" Goodness of fit:\n",
"χ²/d.o.f. = 0.002332\n",
"Fit parameters:\n",
"0\t 0.2036(92)\n",
"1\t 16.3(1.3)\n",
"\n"
2021-10-11 18:31:02 +01:00
]
},
{
"data": {
2022-01-06 12:07:19 +01:00
"image/png": "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
2021-10-11 18:31:02 +01:00
"text/plain": [
"<Figure size 800x494.438 with 2 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
2022-01-06 12:07:19 +01:00
"start_fit = 9\n",
"stop_fit = 18\n",
2021-10-11 18:31:02 +01:00
"\n",
2022-01-06 12:07:19 +01:00
"fit_result = fP.fit(func_exp, [start_fit, stop_fit], resplot=True)\n",
"print(\"\\n\", fit_result)"
2021-10-11 18:31:02 +01:00
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The covariance of the two fit parameters can be computed in the following way"
]
},
{
"cell_type": "code",
2022-01-06 17:51:50 +01:00
"execution_count": 6,
2021-10-11 18:31:02 +01:00
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
2022-01-06 12:07:19 +01:00
"Covariance: 0.009831165592706342\n",
"Normalized covariance: 0.8384671239654656\n"
2021-10-11 18:31:02 +01:00
]
}
],
"source": [
2022-01-06 12:07:19 +01:00
"cov_01 = pe.fits.covariance(fit_result[0], fit_result[1])\n",
2021-10-11 18:31:02 +01:00
"print('Covariance: ', cov_01)\n",
2022-01-06 12:07:19 +01:00
"print('Normalized covariance: ', cov_01 / fit_result[0].dvalue / fit_result[1].dvalue)"
2021-10-11 18:31:02 +01:00
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Effective mass"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Calculate the effective mass for comparison"
]
},
{
"cell_type": "code",
2022-01-06 17:51:50 +01:00
"execution_count": 7,
2021-10-11 18:31:02 +01:00
"metadata": {},
"outputs": [],
"source": [
2022-01-06 12:07:19 +01:00
"m_eff_fP = fP.m_eff()\n",
"m_eff_fP.tag = r\"Effective mass of f_P\""
2021-10-11 18:31:02 +01:00
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Calculate the corresponding plateau and compare the two results"
]
},
{
"cell_type": "code",
2022-01-06 17:51:50 +01:00
"execution_count": 8,
2021-10-11 18:31:02 +01:00
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
2022-01-06 12:07:19 +01:00
"Fit with 1 parameters\n",
"Method: Levenberg-Marquardt\n",
"`ftol` termination condition is satisfied.\n",
"chisquare/d.o.f.: 0.13241808096937788\n",
"\n",
"Effective mass:\t 0.2057(68)\n",
"Fitted mass:\t 0.2036(92)\n"
2021-10-11 18:31:02 +01:00
]
}
],
"source": [
2022-01-06 12:07:19 +01:00
"m_eff_plateau = m_eff_fP.plateau([start_fit, stop_fit])\n",
2021-10-11 18:31:02 +01:00
"m_eff_plateau.gamma_method()\n",
2022-01-06 12:07:19 +01:00
"print()\n",
"print('Effective mass:\\t', m_eff_plateau)\n",
"print('Fitted mass:\\t', fit_result[0])"
2021-10-11 18:31:02 +01:00
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
2022-01-06 12:07:19 +01:00
"We can now visualize the effective mass compared to the result of the fit"
2021-10-11 18:31:02 +01:00
]
},
{
"cell_type": "code",
2022-01-06 17:51:50 +01:00
"execution_count": 9,
2021-10-11 18:31:02 +01:00
"metadata": {},
"outputs": [
{
"data": {
2022-01-06 17:51:50 +01:00
"image/png": "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
2021-10-11 18:31:02 +01:00
"text/plain": [
2022-01-06 12:07:19 +01:00
"<Figure size 640x395.55 with 1 Axes>"
2021-10-11 18:31:02 +01:00
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
2022-01-06 12:07:19 +01:00
"m_eff_fP.show(plateau=fit_result[0])"
2021-10-11 18:31:02 +01:00
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Fitting with x-errors"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We first generate pseudo data"
]
},
{
"cell_type": "code",
2022-01-06 17:51:50 +01:00
"execution_count": 10,
2021-10-11 18:31:02 +01:00
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
2022-01-06 17:51:50 +01:00
"(Obs[0.57(35)], Obs[0.49(25)])\n",
"(Obs[2.53(35)], Obs[0.56(25)])\n",
"(Obs[4.17(35)], Obs[-1.52(25)])\n",
"(Obs[5.97(35)], Obs[-1.40(25)])\n",
"(Obs[7.82(35)], Obs[-0.58(25)])\n"
2021-10-11 18:31:02 +01:00
]
}
],
"source": [
"ox = []\n",
"oy = []\n",
"for i in range(0,10,2):\n",
" ox.append(pe.pseudo_Obs(i + 0.35 * np.random.normal(), 0.35, str(i)))\n",
" oy.append(pe.pseudo_Obs(np.sin(i) + 0.25 * np.random.normal() - 0.2 * i + 0.17, 0.25, str(i)))\n",
"\n",
"[o.gamma_method() for o in ox + oy]\n",
"[print(o) for o in zip(ox, oy)];"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"And choose a function to fit"
]
},
{
"cell_type": "code",
2022-01-06 17:51:50 +01:00
"execution_count": 11,
2021-10-11 18:31:02 +01:00
"metadata": {},
"outputs": [],
"source": [
"def func(a, x):\n",
" y = a[0] + a[1] * x + a[2] * anp.sin(x)\n",
" return y"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can then fit this function to the data and get the fit parameter as Obs with the function `odr_fit` which uses orthogonal distance regression."
]
},
{
"cell_type": "code",
2022-01-06 17:51:50 +01:00
"execution_count": 12,
2021-10-11 18:31:02 +01:00
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Fit with 3 parameters\n",
"Method: ODR\n",
"Sum of squares convergence\n",
2022-01-06 17:51:50 +01:00
"Residual variance: 0.4144435658518591\n",
"Parameter 1 : 0.26(28)\n",
"Parameter 2 : -0.228(53)\n",
"Parameter 3 : 0.98(22)\n"
2021-10-11 18:31:02 +01:00
]
}
],
"source": [
"beta = pe.fits.odr_fit(ox, oy, func)\n",
"\n",
"for i, item in enumerate(beta):\n",
" item.gamma_method()\n",
" print('Parameter', i + 1, ':', item)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For the visulization we determine the value of the fit function in a range of x values"
]
},
{
"cell_type": "code",
2022-01-06 17:51:50 +01:00
"execution_count": 13,
2021-10-11 18:31:02 +01:00
"metadata": {},
"outputs": [
{
"data": {
2022-01-06 17:51:50 +01:00
"image/png": "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
2021-10-11 18:31:02 +01:00
"text/plain": [
"<Figure size 640x395.55 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"x_t = np.arange(min(ox).value - 1, max(ox).value + 1, 0.01)\n",
"y_t = func([o.value for o in beta], x_t)\n",
"\n",
"plt.errorbar([e.value for e in ox], [e.value for e in oy], xerr=[e.dvalue for e in ox], yerr=[e.dvalue for e in oy], marker='D', lw=1, ls='none', zorder=10)\n",
"plt.plot(x_t, y_t, '--')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can also take a look at how much the inidividual ensembles contribute to the uncetainty of the fit parameters"
]
},
{
"cell_type": "code",
2022-01-06 17:51:50 +01:00
"execution_count": 14,
2021-10-11 18:31:02 +01:00
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
2022-01-06 12:07:19 +01:00
"Parameter 0\n",
"\n",
"Parameter 1\n",
"\n",
"Parameter 2\n",
"\n"
2021-10-11 18:31:02 +01:00
]
},
{
"data": {
2022-01-06 17:51:50 +01:00
"image/png": "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
2021-10-11 18:31:02 +01:00
"text/plain": [
"<Figure size 640x395.55 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
2022-01-06 17:51:50 +01:00
"image/png": "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
2021-10-11 18:31:02 +01:00
"text/plain": [
"<Figure size 640x395.55 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
2022-01-06 17:51:50 +01:00
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAiQAAAFeCAYAAAC1ogRKAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8/fFQqAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA1I0lEQVR4nO3deXhU5b0H8O97ziQhGxN2EgJhVQIeQTbZiajXtlq9tWr71LbT6lUHsbZea0VtNbWrS9ur7VTcSd2uSxWt1PaiI5ugyCIeIQEkIIssYQlLyDrz3j8mKCJLlpn5nTPn+3meeQghc87Xx2Tynfe873uU1hpEREREkgzpAEREREQsJERERCSOhYSIiIjEsZAQERGROBYSIiIiEsdCQkREROJYSIiIiEgcCwkRERGJYyEhIiIicSwkREREJM4nHYCIWk4p9TMA1c1/zdNa3ysYh4gobjhCQuQSzWUEWutHtNaPAFihlHpYOBYRUVwo3lyPyB2UUvsA9NNaVx/1Oa21VnKpiIjigyMkRC6glOqP2CWa6uP823nJT0REFF8sJETu0P8En68GkJe8GEREicFCQuRuewF0lg5BRNReLCRE7sYyQkQpgYWEyB0qT/D5vJP8GxGRa3CVDZFLNK+yGam1rjzqc1xlQ0QpgSMkRO7xOwCfrahRSl0G4BG5OERE8cMREiIXad4c7cgIyWit9a2SeYiI4oWFhIiIiMTxkg0RERGJYyEhIiIicSwkREREJI6FhIiIiMSxkBAREZE4n3QAInKmvjPm+AD0BFDQ/MgDkNb88DU/0gD4ph5OOzCywecHEAHQ1PxnBMBhAHsA7G7+cw+APdNnTm1M6n8METkel/0SeUzfGXNMfLFo5J/g465o4SjqRTVp84sbfVNaEeMAvlxUtgFYB2AtgLXTZ06tasXxiMjlWEiIUlTzCMdgAMMBDGv+cyiAHojz5do2FJKW2IejCkrzYx2A9dNnTq2L87mISBgLCVEKaB71sACMAzAKn5ePjGScP0GF5ESiiBWTd5ofi6fPnLo2SecmogRhISFyob4z5nRDrHyMAzAWwGgA2VJ5klxIjmc3gMXNj3cAvD995tR6wTxE1EosJEQu0HfGHIVY6bik+TFUNtEXOaCQHKsBwHLEysm/AcznRFoiZ2MhIXKovjPmpAOYilgBuRixiaaO5MBCcqxqAP8E8CqAN6bPnHpQNg4RHYuFhMhB+s6Y4wdwIWIl5CsAOsomahkXFJKjNQB4G7Fy8tr0mVO3CechIrCQEInrO2NOIYD/RKyETEFsbw9XcVkhOZpG7NLOqwD+Pn3m1HLhPK2ilLoWsf1hqgEMAPA7rXW1YCSiNmMhIRLQd8ac7gB+AOBbAEbIpmk/FxeSYy0B8CiA56fPnHpYOszJKKV+BuCRIwVEKZUH4FGt9eWSuYjaioWEKIn6zphzDoAgYiMi6bJp4ieFCskRBwA8B+DR6TOnLpcOczxKqbla6/NP9Tkit2AhIUqwvjPmdEZsNORaAKfLpkmMFCwkR1sJ4DEAz0yfOXW/dJgjlFIvIna55nKtdbVSqj+AW7XW18kmI2obFhKiRCn1D2/U5vVn1j/2zVpkdJaOk0gpXkiOOAzgJQAPT585dbF0mOZLNMsB9AdwL4ANWutHREMRtQMLCVE8lfoNAF8HcBNiE1QRarp44X1N354kmivBPFJIjvYOgN9Mnzn1DckQzZNazwdwGYA30TxaIpmJqK1YSIjiodSfDuBqADcjttrhM7U6fX1x/axBIrmSxIOF5IjlAH4L4JXpM6cm9cVUKXUPgLla6zebL9e8CCBPaz3gFE8lcqS43mCLyHNK/SZK/VchduO3v+KYMgIAmaph0LnG8g+SHY2SYiSAvwOwQ8HwlaFg2EzGSZsLSJ7W+k0A0FpXaq1HAqhWSl2WjAxE8cZCQtQWpX4Dpf7vAFgD4HEAfU/25Xf6nuLdaVPbUABPA6gIBcP/FQqGE72XTH/E9h451sMJPi9RwrCQELVWqf8bAFYBeAbAaS15Sh+1a1QvVG1PaC5ygoGI7WOyIRQMTw8Fw75EnKR5ZGRE88TWo43UWr+UiHMSJRrnkJBjNG/0BDRf9nDc8sVS/1cB/AqxYfpWmxsZOf+axptTcp6Fh+eQnEo5gJumz5z673gfuLmM3AZgD2KjJXk4aqM0IrdhISFHUErdo7W+9ai/PwygvyM2eSr1jwVwP4AJ7TlMVKvdg+tn5TYgLSM+wZyDheSU5iBWTNZLByFyKl6yIXHN7/SOHX5+GMB5zZP3ZJT6O6PU/wiAxWhnGQEAQ+mu15hzlrU/GLnQhQA+CgXD94WCYVfcMJEo2VhIyClGITZR74jK5j/zkh8FQKk/AKACwDUAVLwOO833Wqd4HYtcJx3ATwGsCwXDV4eCYb7+Eh2FPxAkTmtdrbXupLVecdSnz2v+s/J4z0mYUn8xSv1vA5gFoFu8D5+j6oaMM1avjvdxyVV6ILYV/dJQMNzukTeiVMFCQk51G4DrkjZBr9SfiVL/bxFbPVOS0FP5yqoTeXxyjZEAFoWC4VmhYDhPOgyRNBYScpzmHSifT9p9OUr9XwOwGrESlOj9I3Ca2jq6O/ZVJfo85BoBAKtDwfBF0kGIJLGQkKM07zK5QWt9b8JPFpu0+gJiKyD6Jfx8zZRC+h1pT69J1vnIFQoA/CMUDD8VCoY5z4g8iYWEHEMpdR4AHBkZUUrlJWyVTal/CmKXZy5PyPFP4SLjvdNMRJokzk2O9l3ERku+Ih2EKNlYSMgRlFIjAIwAsEIp1b+5iFwLYG9cT1Tq96HU/2sAYQCFcT12K5gqmv89c+77UucnR8sH8EYoGP5LKBjOlA5DlCzcGI3ENe8/shHHWeKrtY7bkluU+osAPAtgfNyO2Q7VOnvV8PpHh0nniAdujJYwFQCunD5z6opTfiWRy3GEhMQdtexXHfuI20lK/VcgdonGEWUEAPJUzbDh6uO10jnI0QYDeDcUDN8iHYQo0ThCQqmt1J8N4EEAV0lHOZ4Po/0WXtzwm0nSOdqLIyRJ8QKAq6bPnFojHYQoEThCQqmr1D8cwHI4tIwAgKU2jvLjULV0DnKFKwAsCQXDcrdTIEogFhJKTaX+KwEsAXC6dJSTUQqZM3zPrZLOQa5hAVgWCob/QzoIUbyxkFBqKfUbKPX/HsDTADpIx2mJy8wF/RWiUekc5BqdAPwzFAz/TDoIUTyxkFDqKPXnApgN4FbhJK2SpiK9LzMX8C7A1BomgHtCwfDzoWA4WzoMUTywkFBqiC3pXQzg69JR2uJnvud90hnIla4AsDgUDCdtp2GiRGEhIfcr9Y8C8B6AM6SjtFVX7D/rdLV5o3QOcqUzEZtXMlk6CFF7sJCQu5X6vw5gHmK3dHctpaB+lfbkFukc5FqdAfwrFAxfKB2EqK1YSMi9Sv03IDZnJCWuoY9Wa8/KRu1B6RzkWpkAZoeC4e9IByFqCxYScqdS/68A/Bkp9D2sFHJv8r20UjoHuZoPwNOhYPh66SBErZUyL+bkIaX+3wH4uXSMRPieObcQ4PbJ1C4KQCgUDN8hHYSoNVhIyF1K/fcCmCEdI1EyVFP/C433OEpC8fDrUDB8v3QIopZiISH3KPX/EUDK32Ts9rRnmqQzUMq4ORQMPx4Khk3pIESnwkJC7lDqfwDATdIxkqEAe0YVqR1bpXNQyrgKwPOhYDhdOgjRybCQkLOV+hVK/SEAN0pHSRalYNztm/WxdA5KKd8E8L8cKSEnYyEh5yr1KwAPAfDcioFJxofDOqC+VjoHpZRvAHhYOgTRibCQkDPFysgjAK6TjiLBUOg0zfca729D8XZ1KBi+VzoE0fGwkJBT/QHAf0mHkHSNOae7dAZKSbfwTsHkRCwk5Dyl/h/BIxNYTyZLNZx+jrHyQ+kclJLuCQXDV0uHIDoaCwk5S6n/EgD/Ix3DKX7he6pGOgOlrIdDwfCl0iGIjmAhIeco9Y8B8Bz4ffmZfmrH6Hzs2SGdg1KSCeDZUDB8rnQQIoAv/OQUpf7+AP6B2A3CqJlS8N2V9rcK6RyUsjIQuyHfaOkgRCwkJK/U3xnAPwF
2021-10-11 18:31:02 +01:00
"text/plain": [
"<Figure size 640x395.55 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"for i, item in enumerate(beta):\n",
" print('Parameter', i)\n",
" item.plot_piechart()\n",
" print()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
2022-01-06 12:07:19 +01:00
"display_name": "Python 3 (ipykernel)",
2021-10-11 18:31:02 +01:00
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
2022-01-06 12:07:19 +01:00
"version": "3.8.10"
2021-10-11 18:31:02 +01:00
}
},
"nbformat": 4,
"nbformat_minor": 4
}