{ "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Using non-orbitize! Posteriors as Priors\n", "\n", "By Jorge Llop-Sayson (2021)\n", "\n", "This tutorial shows how to use posterior distribution from any source as `orbitize!` priors using a Kernel Density Estimator (KDE).\n", "\n", "The user will need their posterior chains, consisiting of any number of correlated parameters, which will be used to get a KDE fit of the chains to be used as priors to `orbitize!`.\n", "\n", "Once the priors are initialized the user can select their favorite fit method." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Read Data" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "scrolled": true }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/bluez3303/miniconda3/envs/python3.10/lib/python3.10/site-packages/scipy/__init__.py:146: UserWarning: A NumPy version >=1.17.3 and <1.25.0 is required for this version of SciPy (detected version 1.25.0\n", " warnings.warn(f\"A NumPy version >={np_minversion} and <{np_maxversion}\"\n" ] } ], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "from orbitize import system, priors, basis, read_input, DATADIR\n", "import pandas as pd\n", "\n", "# Read RadVel posterior chain\n", "pdf_fromRadVel = pd.read_csv(\n", " \"{}/sample_radvel_chains.csv.bz2\".format(DATADIR), compression=\"bz2\", index_col=0\n", ")\n", "\n", "per1 = pdf_fromRadVel.per1 # Period\n", "k1 = pdf_fromRadVel.k1 # Doppler semi-amplitude\n", "secosw1 = pdf_fromRadVel.secosw1\n", "sesinw1 = pdf_fromRadVel.sesinw1\n", "tc1 = pdf_fromRadVel.tc1 # time of conj.\n", "\n", "len_pdf = len(pdf_fromRadVel)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "The `quant_type` column displays the type of data each row contains: astrometry (radec or seppa), or radial velocity (rv). For astrometry, `quant1` column contains right ascension or separation, and the `quant2` column contains declination or position angle. For rv data, `quant1` contains radial velocity data in $\\mathrm{km/s}$, while `quant2` is filled with `nan` to preserve the data structure. The table contains each respective error column. \n", "\n", "We can now initialize the `Driver` class. MCMC samplers take time to converge to absolute maxima in parameter space, and the more parameters we introduce, the longer we expect it to take." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Format Data\n", "\n", "In this example we use data from `RadVel`, so we want to change format to use it in `orbitize`." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# From P to sma:\n", "system_mass = 1 # [Msol]\n", "system_mass_err = 0.01 # [Msol]\n", "per_yr = per1 / 365.25\n", "pdf_msys = np.random.normal(system_mass, system_mass_err, size=len_pdf)\n", "sma_prior = (per_yr**2 * pdf_msys) ** (1 / 3)\n", "\n", "# ecc from RadVel parametrization\n", "ecc_prior = sesinw1**2 + secosw1**2\n", "\n", "# little omega, i.e. argument of the periastron, from RadVel parametrization\n", "w_prior = (\n", " np.arctan2(sesinw1, secosw1) + np.pi\n", ") # +pi bc of RadVel vs Orbitize convention\n", "w_prior[w_prior >= np.pi] = w_prior[w_prior >= np.pi] - 2 * np.pi\n", "\n", "\n", "def Tc_to_Tp(tc, per, ecc, omega): # stolen from radvel\n", " f = np.pi / 2 - omega\n", " ee = 2 * np.arctan(np.tan(f / 2) * np.sqrt((1 - ecc) / (1 + ecc)))\n", " tp = tc - per / (2 * np.pi) * (ee - ecc * np.sin(ee))\n", " return tp\n", "\n", "\n", "# tau, i.e. fraction of elapsed time of node passage, from RadVel parametrization\n", "tp1 = Tc_to_Tp(tc1, per1, ecc_prior, w_prior)\n", "tau_prior = basis.tp_to_tau(tp1, 55000, per1)\n", "\n", "# m1 prior\n", "K_0 = 28.4329\n", "m1sini_prior = (\n", " k1\n", " / K_0\n", " * np.sqrt(1.0 - ecc_prior**2.0)\n", " * pdf_msys ** (2.0 / 3.0)\n", " * per_yr ** (1 / 3.0)\n", ") * 1e-3\n", "sini_prior = priors.SinPrior()\n", "i_prior_samples = sini_prior.draw_samples(len_pdf)\n", "m1_prior = m1sini_prior / np.sin(i_prior_samples)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "We now have the orbital parameters that are accessible with RV: SMA, eccentricity, argument of periastron, and tau. Plus, given that we obtained `Msini` from RV, we draw random values for the inclination to get correlated values for `m1` and `inc`. We thus end in this case with a correlated 6-parameter set." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Initialize Priors\n", "\n", "We initilize the System object to initialize the priors" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'sma1': 0, 'ecc1': 1, 'inc1': 2, 'aop1': 3, 'pan1': 4, 'tau1': 5, 'plx': 6, 'gamma_defrv': 7, 'sigma_defrv': 8, 'm1': 9, 'm0': 10}\n" ] } ], "source": [ "# Initialize System object which stores data & sets priors\n", "data_table = read_input.read_file(\"{}/test_val.csv\".format(DATADIR)) # read data\n", "num_secondary_bodies = 1\n", "\n", "system_orbitize = system.System(\n", " num_secondary_bodies,\n", " data_table,\n", " system_mass,\n", " 1e1,\n", " mass_err=system_mass_err,\n", " plx_err=0.1,\n", " tau_ref_epoch=55000,\n", " fit_secondary_mass=True,\n", ")\n", "\n", "param_idx = system_orbitize.param_idx\n", "\n", "print(param_idx)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "Let's initilize the KDE prior object with the default bandwidth." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "from scipy.stats import gaussian_kde\n", "\n", "# The values go into a matrix\n", "total_params = 6\n", "values = np.empty((total_params, len_pdf))\n", "values[0, :] = sma_prior\n", "values[1, :] = ecc_prior\n", "values[2, :] = i_prior_samples\n", "values[3, :] = w_prior\n", "values[4, :] = tau_prior\n", "values[5, :] = m1_prior\n", "\n", "kde = gaussian_kde(\n", " values, bw_method=None\n", ") # None indicates that the KDE bandwidth is set to default\n", "kde_prior_obj = priors.KDEPrior(\n", " kde, total_params\n", ") # ,bounds=bounds_priors,log_scale_arr=[False,False,False,False,False,False])\n", "\n", "system_orbitize.sys_priors[\n", " param_idx[\"sma1\"]\n", "] = kde_prior_obj # priors.GaussianPrior(np.mean(sma_prior), np.std(sma_prior))#priors.KDEPrior(gaussian_kde(values[0,:], bw_method=None),1)#kde_prior_obj#\n", "system_orbitize.sys_priors[\n", " param_idx[\"ecc1\"]\n", "] = kde_prior_obj # priors.GaussianPrior(np.mean(ecc_prior), np.std(ecc_prior))#kde_prior_obj#priors.GaussianPrior(np.mean(pdf_fromRadVel['e1']), np.std(pdf_fromRadVel['e1']))#priors.KDEPrior(gaussian_kde(values[1,:], bw_method=None),1)#kde_prior_obj\n", "system_orbitize.sys_priors[param_idx[\"inc1\"]] = kde_prior_obj\n", "system_orbitize.sys_priors[\n", " param_idx[\"aop1\"]\n", "] = kde_prior_obj # priors.GaussianPrior(np.mean(w_prior), 0.1)#kde_prior_obj#kde_prior_obj\n", "system_orbitize.sys_priors[\n", " param_idx[\"tau1\"]\n", "] = kde_prior_obj # priors.GaussianPrior(np.mean(tau_prior), 0.01)#np.std(tau_prior))#kde_prior_obj#kde_prior_obj#priors.KDEPrior(gaussian_kde(values[4,:], bw_method=None),1)#kde_prior_obj\n", "system_orbitize.sys_priors[-2] = kde_prior_obj" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "We can plot the KDE fit against the actual distribution to see if the selected bandwidth is adecuate for the data." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.0, 1.0, 0.0, 1.0)" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnwAAAF3CAYAAAA/wpYIAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAAsTAAALEwEAmpwYAABBHklEQVR4nO3de5yedX3n//cnBw4hMRAyIhJyXwPkCCGEjEEtoEhIXWzRFjxj0coGq7asXbd1f7q/BQ9dULFbu6ANFoWWFZBqy0a3gAjIQYkTQkISQNC57xbDYTgkEDkm89k/ruueueae+3y6rvua1/PxmOSe+74On7nu67rvz/U9mrsLAAAA2TUl6QAAAADQWSR8AAAAGUfCBwAAkHEkfAAAABlHwgcAAJBx0xpZeO7cuR4EQYdCAbpr48aNT7l7X9JxFHF9IWvSdo0Bk1lDCV8QBBocHOxULEBXmVkhBTGslbRWkubPn8/1hUxJwzUGIESVLpAgd1/n7gPuPtDXR0EIAKAzSPgAAAAyjoQPAAAg4xpqwwcAwGSzcePG106bNu1bko4RBSVpNyJp6549e85duXLlk0kHkyYkfAAAVDFt2rRvve51r1vS19f37JQpU5iAPsVGRkZseHh46eOPP/4tSWckHU+acKfSa4JAMgv/B3pdEHTuXO7ktjHZHNPX1/ccyV76TZkyxfv6+nYpLI1FTM0SvtJhI5CwQkFyD5M+oNcVOjhqRye3jclmCsle74jeKwq0StQ8IAwbAQAA0NtowwcAQAPMtLKd23PXxlrLTJ06deWCBQte3Lt3rx111FEvXnfddflZs2aN1LuPhx56aJ9bb7115sc+9rFnGo1vxYoVizdt2vRgo+sVHXbYYcsOOOCAvZK0d+9ee8c73vHsRRdd9NiMGTMoNe0iijwBAEi5fffdd+TBBx/c/vDDD2+bPn26X3LJJQ1VuT388MP7XnvttXMaWefVV1+VJDWS7BXXKXX77bf/8pe//OX2e++994GhoaF9zz777Fy966I9SPgAAOghJ5544u5HHnlk3yeeeGLq6tWrj1y4cOHS5cuXL77nnnv2l6Qf/vCHMxcvXrx08eLFS5csWbL02WefnfLZz372sMHBwZmLFy9eeuGFF752z549Ou+88+Ydc8wxSxYuXLj0K1/5ylxJWr9+/ayVK1cuetvb3nbUggULjpGkGTNmrJCkkZERnXfeefMWLFhw9MKFC5defvnlB1Vap5LZs2ePXHnllYWbb775wCeeeGJquXVXr1595NFHH73kqKOOOvqrX/3qXEm64oorDjr33HPnSdIXvvCF186bN2+ZJG3fvn2f448/fnFnjnS2UKULIJ2CIOx4kctJ+XzS0QCp8Oqrr+rGG298zZo1a577i7/4i9cvX778hR//+Me/uuGGG2adc845/Q8++OD2Sy655HVf//rXC2vWrPntrl27psyYMWPkS1/60m8uueSSQ2699dZHJOmrX/3q3NmzZ+/dunXrAy+++KK94Q1vWPz7v//7z0nS9u3bZ2zatGnb4sWLX4nv+6qrrjrw/vvv3/+BBx7Y9thjj01btWrVkjVr1uyutk45c+bMGTnssMNe2bZt237l1r366qvzhxxyyN7du3fbihUrlp599tnPrl69+vmvfe1rr5Oku+66a+aBBx64Z2hoaPott9wy601vetPz7T3K2UQJH4B0KvZIp7ctoJdffnnK4sWLly5btmzpvHnzXjn//POf2rBhw6yPfvSjT0vSGWec8fzOnTunPfPMM1Pe+MY37v70pz99+Be/+MXXPvXUU1OnT58+YXs//vGPX3PdddcdvHjx4qUrVqxY8uyzz07bvn37fpJ07LHH/rZc4nbHHXfMes973vPMtGnTdPjhh+854YQTdt95550zqq1TiftY873SdS+++OJDFi1atHTlypVLHn/88enbtm3bb/78+XteeOGFKc8+++yUHTt27PPud7/76ZtuumnWnXfeOfPkk0/e3cixnKwo4QMAIOWKbfjqWfav/uqvHn/Xu96161/+5V9mn3TSSYt/+MMfPly6jLvbJZdc8m9nnnnmc/Hn169fP2vGjBl1dwYpamSdYtK2bNmyl+65554Z8XXXr18/6/bbb581ODj44KxZs0ZWrVq16MUXX5wiSQMDA7svvfTSuUceeeRLp5xyyu5169bN3bhx48zLLrvs0UbjnYwo4QMAoAedcMIJz3/7298+WAoTpYMOOmjPnDlzRrZt27bvqlWrXvzSl770+LHHHvvbrVu37jd79uy9u3fvnlpc97TTTtv1jW98o+/ll182SdqyZcu+zz33XNWc4OSTT37++uuvn7Nnzx7t2LFj2oYNG2aedNJJv20k5l27dk35yEc+kjvttNN29vX17S19fefOnVNnz569d9asWSObNm3ab/PmzQcUXzvxxBN3X3rppYecdNJJu9/85je/cPfdd8/aZ599Rg4++OAJ28FElPABANCAeoZR6YaLL754xwc/+MFg4cKFS/fff/+R73znO0OS9OUvf/m1d99992vMzBctWvTiWWedtWvKlCmaOnWqL1q0aOkHPvCBpz73uc89mc/n9122bNkSd7c5c+a8+qMf/ehX1fb3oQ99aOfdd989c8mSJUebmV944YWPzp8/f8+WLVtqxvqWt7xlobvbyMiITj/99J0XX3zxjnLLnXnmmbvWrVvXd8QRRxx9xBFHvLR8+fLRhPLUU0/dff755++zevXq56dNm6ZDDz30lQULFrzU4GGbtCxej17LwMCADw4OdjAc1GQ2NtNGA+8dJjKzje4+kHQcRZPy+irOGFPuXG71XK+2bXRF2q6xZm3evDm/fPnyp5KOA/XbvHnz3OXLlwdJx5EmVOmmBDOlAQCATiHhAwAAyDgSPgAAgIwj4QMAAMg4Ej4AAICMI+EDAADIOMbhAwCgEYcdtkw7duzTtu29/vWv6De/ub/aIlOnTl25YMGCF/fu3WtHHXXUi9ddd11+1qxZE2a3WLFixeJNmzY92Gwohx122LIDDjhgryTt3bvX3vGOdzx70UUXPTZjxgzGN+pxJHwAADRix4595N6+wZfNVtZaJD612hlnnNF/ySWX9F1wwQVPFF9/9dVXNX36dDWS7BXXKXX77bf/8tBDD92za9euKWeffXbu7LPPzn3/+9/P17Mu0osqXQAAesiJJ564+5FHHtl3/fr1s1auXLnobW9721ELFiw4RpJmzJixQpJGRkZ03nnnzVuwYMHRCxcuXHr55ZcfJIVTsJWuU8ns2bNHrrzyysLNN9984BNPPDG13LqrV68+8uijj15y1FFHHf3Vr351riRdccUVB5177rnzJOkLX/jCa+fNm7dMkrZv377P8ccfv7hzRwbVUMIHoHuCIPw/n69/nVxubL1CIfy9kfWBDHn11Vd14403vmbNmjXPSdL27dtnbNq0advixYtfiS931VVXHXj//ffv/8ADD2x77LHHpq1atWrJmjVrdldbp5w5c+aMHHbYYa9s27Ztv3LrXn311flDDjlk7+7du23FihVLzz777GdXr179/Ne+9rXXSdJdd90188ADD9wzNDQ0/ZZbbpn1pje96fl2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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, axs = plt.subplots(2, 3, figsize=(11, 6))\n", "# sma\n", "axs[0, 0].hist(\n", " kde.resample(len_pdf)[0, :],\n", " 100,\n", " density=True,\n", " color=\"b\",\n", " label=\"Posterior Draw\",\n", " stacked=True,\n", ")\n", "axs[0, 0].hist(\n", " sma_prior,\n", " 100,\n", " density=True,\n", " color=\"r\",\n", " histtype=\"step\",\n", " label=\"Prior Draw\",\n", " stacked=True,\n", ") # color='r')#\n", "axs[0, 0].set_xlabel(\"SMA [AU]\")\n", "axs[0, 0].set_yticklabels([])\n", "# ecc\n", "axs[0, 1].hist(\n", " kde.resample(len_pdf)[1, :],\n", " 100,\n", " density=True,\n", " color=\"b\",\n", " label=\"Posterior Draw\",\n", " stacked=True,\n", ")\n", "axs[0, 1].hist(\n", " ecc_prior,\n", " 100,\n", " density=True,\n", " color=\"r\",\n", " histtype=\"step\",\n", " label=\"Prior Draw\",\n", " stacked=True,\n", ") # color='r')#\n", "axs[0, 1].set_xlabel(\"eccentricity\")\n", "axs[0, 1].set_yticklabels([])\n", "# mass\n", "masskde_arr = kde.resample(len_pdf)[-1, :]\n", "masskde_arr = masskde_arr[masskde_arr < 0.003]\n", "m1_prior_draw = m1_prior[m1_prior < 0.003]\n", "axs[1, 0].hist(\n", " masskde_arr, 100, density=True, color=\"b\", label=\"Posterior Draw\", stacked=True\n", ")\n", "axs[1, 0].hist(\n", " (m1_prior_draw),\n", " 100,\n", " density=True,\n", " color=\"r\",\n", " histtype=\"step\",\n", " label=\"Prior Draw\",\n", " stacked=True,\n", ") # color='r')#\n", "axs[1, 0].set_xlabel(\"$Mass_b$ [$M_{Jup}$]\")\n", "axs[1, 0].set_yticklabels([])\n", "# inc\n", "axs[1, 1].hist(\n", " np.rad2deg(kde.resample(len_pdf)[2, :]),\n", " 100,\n", " density=True,\n", " color=\"b\",\n", " label=\"Posterior Draw\",\n", " stacked=True,\n", ")\n", "axs[1, 1].hist(\n", " np.rad2deg(i_prior_samples),\n", " 100,\n", " density=True,\n", " color=\"r\",\n", " histtype=\"step\",\n", " label=\"Prior Draw\",\n", " stacked=True,\n", ") # color='r')#\n", "axs[1, 1].set_xlabel(\"inclination [deg]\")\n", "axs[1, 1].set_yticklabels([])\n", "# w\n", "axs[1, 2].hist(\n", " np.rad2deg(kde.resample(len_pdf)[3, :]),\n", " 100,\n", " density=True,\n", " color=\"b\",\n", " label=\"Posterior Draw\",\n", " stacked=True,\n", ")\n", "axs[1, 2].hist(\n", " np.rad2deg(w_prior),\n", " 100,\n", " density=True,\n", " color=\"r\",\n", " histtype=\"step\",\n", " label=\"Prior Draw\",\n", " stacked=True,\n", ") # color='r')#\n", "axs[1, 2].set_xlabel(\"Arg. of periastron [deg]\")\n", "axs[1, 2].set_yticklabels([])\n", "\n", "axs[0, 1].legend(bbox_to_anchor=(1.25, 1), loc=\"upper left\", ncol=1)\n", "axs[0, 2].axis(\"off\")" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "As seen from the plot produced above, `m1` is not well fit by the KDE; the bandwidth selected (we selected the default) is too broad and the lower bound of the mass is not well reproduced." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Select the KDE bandwidth\n", "\n", "A temptation to fix the problem presented above, the oversmoothing of the data, would be to pick a very narrow bandwith, one that reproduces perfectly the data. However, the data from our posterior chains is finite, and contains throughout the distribution peaks and valleys that would introduce artifacts in the KDE fit contaminating the prior probabilities. " ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/var/folders/y8/lw5f1dcj04g4txq4y2znyc200000gn/T/ipykernel_15758/100748084.py:15: DeprecationWarning: Conversion of an array with ndim > 0 to a scalar is deprecated, and will error in future. Ensure you extract a single element from your array before performing this operation. (Deprecated NumPy 1.25.)\n", " lnprior_arr1[idx_prior] = kde1.logpdf(\n", "/var/folders/y8/lw5f1dcj04g4txq4y2znyc200000gn/T/ipykernel_15758/100748084.py:25: DeprecationWarning: Conversion of an array with ndim > 0 to a scalar is deprecated, and will error in future. Ensure you extract a single element from your array before performing this operation. (Deprecated NumPy 1.25.)\n", " lnprior_arr2[idx_prior] = kde2.logpdf(\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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f13pNdOmTSM9PZ2OHTuyf/9+xowZg8/n49RTT2X58uUsXbqUM844gyFDhrBkyRJ27tyJMYZOnZxe+F6fXdskvhVXXTOR9AH9yu9Ztr388svH3Xfnzp1H3gNITU1l587a9eSfMWMGAwYMYOzYsezYseO448XFxWzZsoW0tLTyfStXruSxxx5j3bp1bNmyhcWLFwNwxx13sHz5ctasWUNBQQEffPDBUe+TkZHBr371q6NeT548mYkTJzJt2jTWrF6NVwxzZrzCZecNJ3P9GvwBw9xPF9KtVx/en/cZn362mDPOODI+euDAgeX3rystcajqHdwJr1wOB76D8a9DzwvcjqhpCKJkEApRUVEMGzaM559/nscff7zac+tjPY6HH36Ye+65h2HDhrFkyRIKCgoYOnRo+XocZdOqH0U80LwT015/zU5h4ou1sxWEcP6rMWPGMGHCBGJiYnjmmWe4/vrrj2sz2Lt3Ly1atDhq3+mnn05qaioA6enpbNu2jREjRjB//nweeugh8vPz2b9/P/369WPMmDHl36OKyl5v2LCBrl270rNnTwCuv/56/vWvf3HXXXfRs0d3Avt3sHntKm674xcs+vxzSktLGTFiRPn7tGnThl27dtXL90NLHKpq+zbDCxfZZU+veVuTRhPg8Xh48803WbZsGQ8++GC1565cufKEJ2UsW4/js88+A2D48OEsWbKEL774gqFDh9KnTx/WrVvHkiVLjk8c9g246oY7SL/4etLPvoL09FNIP2VAlSWOjh07HlVKyMrKomPHjkHH26pVK2JibGK66aabWLFixXHnxMXFHbcWR9k1AF6vF7/fT2FhIbfffjvTp09n9erVTJo06ajrmjU7ev2ZY19X5swzz+Tjjz8mJiaan1x2CRu+yWD9qmWceeaZ5ecUFhaWr9BYV5o4VOV2r7FJozgPJr4PacPdjkg1kPj4eD788ENee+01nn/++UrPmTFjBnPmzGHChAknfJ9j1+NYunQpOTk5tGnTBhEpX49j+PDK/+9NmzaNVV9/w6pVq1j1ydus+uhlVi2ex3XXXXfcuZdeeikvv/wyxhiWLl1K8+bNj2vfqE52dnb585kzZ1aaMFu2bEkgEKhxIaey461btyYvL4/p06cHFUOvXr3Ytm0bmZmZALzyyiucddZZAIwcOZLHHnuMoUOHkpKSwv59+9i0cSP9+/cv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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "numtry_prior = 20\n", "sma_arr = np.mean(sma_prior) * np.linspace(0.98, 1.02, numtry_prior)\n", "\n", "# Initialize KDE with default bandwidth\n", "kde1 = gaussian_kde(\n", " values, bw_method=None\n", ") # None indicates that the KDE bandwidth is set to default\n", "# Initialize KDE with narrow bandwidth\n", "bw2 = 0.15\n", "kde2 = gaussian_kde(values, bw_method=bw2)\n", "\n", "lnprior_arr1 = np.zeros((numtry_prior))\n", "lnprior_arr2 = np.zeros((numtry_prior))\n", "for idx_prior, sma in enumerate(sma_arr):\n", " lnprior_arr1[idx_prior] = kde1.logpdf(\n", " [\n", " sma,\n", " np.mean(ecc_prior),\n", " np.pi / 2,\n", " np.mean(w_prior),\n", " np.mean(tau_prior),\n", " np.mean(m1_prior),\n", " ]\n", " )[0]\n", " lnprior_arr2[idx_prior] = kde2.logpdf(\n", " [\n", " sma,\n", " np.mean(ecc_prior),\n", " np.pi / 2,\n", " np.mean(w_prior),\n", " np.mean(tau_prior),\n", " np.mean(m1_prior),\n", " ]\n", " )[0]\n", "\n", "plt.figure(100)\n", "plt.plot(sma_arr, lnprior_arr1, label=\"KDE BW = Default\")\n", "plt.plot(sma_arr, lnprior_arr2, label=\"KDE BW = {} (narrow)\".format(bw2))\n", "plt.xlabel(\"SMA [AU]\")\n", "plt.ylabel(\"log-prior probability\")\n", "plt.legend(loc=\"upper right\") # , fontsize='x-large')" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "The plot above ilustrates that we cannot go arbitrarily narrow for the KDE bandwidth.\n", "\n", "A way of choosing the KDE bandwidth is:\n", "1. Pick an acceptable change in the median and 68th interval limits of the KDE fit w.r.t the actual posterior distribution. This will set a maximum acceptable bandwidth.\n", "2. Pick an acceptable variation of the log-prior probability when evaluating the priors for a SMA around the prior median SMA. This will set a minimum acceptable bandwidth.\n", "\n", "For this we will loop over a set of bandwidths computing the median and 68th interval limits, and for each bandwidth we will compute the variation of log-prior with a set of SMAs around the prior median SMA: we will fit a Gaussian and the standard deviation of the residuals to the fit will be our cost function." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/var/folders/y8/lw5f1dcj04g4txq4y2znyc200000gn/T/ipykernel_15758/2442406081.py:24: DeprecationWarning: Conversion of an array with ndim > 0 to a scalar is deprecated, and will error in future. Ensure you extract a single element from your array before performing this operation. (Deprecated NumPy 1.25.)\n", " lnprior_arr[idx_prior] = kde.logpdf(\n", "/Users/bluez3303/miniconda3/envs/python3.10/lib/python3.10/site-packages/scipy/optimize/_minpack_py.py:833: OptimizeWarning: Covariance of the parameters could not be estimated\n", " warnings.warn('Covariance of the parameters could not be estimated',\n" ] }, { "data": { "text/plain": [ "Text(0.5, 1.0, '3. Std Dev of the Residuals to a Gaussian Fit of Plot #1')" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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cRISEmKz/B5f4dmiRYtUj8Qb2LRo0ULmz58vIiLBwcFPXPs4Z86ckcOHD5tXJh84cEBq1qwpEREREhoaKhUqVDCnn7ApSnh4uHTp0kUmT54sDx8+FJHkN36ZP3++vPXWWyIi0rlzZ1mwYIGIiPzwww/SrVs3ERFp166dHD16VFavXi3169eXTz/9VKKiosTHx0dEREaNGmXejOf+/ftSqVIlCQ8Pl/nz50vJkiXl7t27T+R76NAhadCggfTr10/8/PzklVdekfDwcPM9Ll26tJQqVUq8vb3l4sWLIvLkZkD9+vWT7t27S3x8vBw7dkwqVKiQZBkTyr59+3bJmzevXLlyReLj46Vx48aya9cuEXl09XVwcLA89dRTZj2ff/65jB8/3nzdF198YU7b19dXzp8/b75uwoQJIiKPlLlPnz6yatWqR76jx0l8PvEmOYCsW7dORESeeeYZadOmjcTExEhQUJD4+vqay9WpU6ck71FyZNWVypeBxkopD2VsMwcAJ+ygI0exaNEivL29H/Fr44iICOXKlePDDz+0txSrYDAYePDgAfny5TN3GaXF/XWePHnImzcvIsLJkyfT3Df+119/0atXLwD69u1rdnf91FNPsXPnTnbu3MmoUaPYvXs3+/fvN/tR2rRpE59//jl+fn60bNmSqKgoLl++DECbNm0oWLDgE3nFxcVx8OBB3njjDQ4dOkSePHnM2z/OmTOHadOmceXKFaZNm2ZuRSTFM888g5OTE9WrV+fWrVuplrFhw4aUKlUKJycn/Pz8knQd/ffff3P8+HGaNWuGn58fCxcufMSpXY8ePcz/v/jii484+ksI2759O40aNaJWrVps27aNY8eOpaotKdzc3MxeXmvVqkWLFi1wdXW1q9vrBOwxhvCPUmoFcBCIAw4B39laR07i+vXrbN26ldGjRzv8/H6lFCNGjKBChQp205Be99WJr0/N/XV4eDgGg4F8+fKlW5eLiwslS5ZEKWX2GJpR/P39mTNnDtevX+eTTz5h8uTJBAYG8tRTTwFGw7xy5UqqVKnySLx//vknRbfXpUqVMru37t69u9kgLFy4kBkzZgDwwgsv8OqrryarLbFbaElDt0xa3V63adOGJUuWJJlG4jL16NGDF154geeeew6lFJUqVSIqKoo333yTAwcOULp0acaNG5dht9eurq7m36GjuL1OwC6z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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEWCAYAAACJ0YulAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8qNh9FAAAACXBIWXMAAAsTAAALEwEAmpwYAAA0f0lEQVR4nO3dd3yV9fn/8dc7CSFsCIQ9ArIEBGSJA0RcaFGsdVVFXKW2dql1drd+f7WOWq1aa+u2dc/iXoCiCEGZyghLRpAAYYWdXL8/7jvxELKTc07G9Xw8zuOcc8/rc+5zznXfn899f26ZGc455xxAQrwDcM45V3N4UnDOOVfIk4JzzrlCnhScc84V8qTgnHOukCcF55xzhTwpVANJ6ZJMUlK8YymLpGMlLZO0U9JZ5Zi+xpdN0puSJpUwrtril/SYpFurupz6RtKDkn4Tw/VdJOmdalzedyWtCX8zR1Zw3lWSTqquWGKhziQFSU9JypK0XdJSSVdWYN7Okl6UtEnSNkkLJV0ajqvyn0r4xdgtaYekrZI+kXSVpHh8/n8E7jOzpmb2StGR0fwSSxojKT/8ce2QtETSZVVdrpmdZmaPV0eM0RB+f3rGcH0nS/ow/Iw3S5or6UZJKbGKIZKZXWVmf6ru5Rb5PhU8/mdm/zGzUyKmq+rnfyfwk/A380UxcZik3HD96yT9VVJiJcqytgLT3y5pcvh6laQWEeNOCLf/NkmrKhIH1KGkAPwZSDez5sCZwK2ShpZz3ieBNUA3oDUwEfimmuM7w8yaheu4DbgReLia11Ee3YBFcVhvgfVm1hRoDlwD/EtSnzjGU6dIOhd4Afgv0M3MWgPnA52BLvGMLUrWh3/WBY8zorCO8vxmBoXf6xOBC4EfRCGOSEOBDElpwH4z2xYxLhd4BLi+Uks2szr3APoAWcB55Zx+JzC4hHFfAxZOsxM4Gkgk2HvYBKwArg6nSSphGauAk4oMGwHkAwPC9w3DZX5NkJAeBBqF474CxkfMmwRkA0NKWN8PgExgC/Aa0DEcvjxc5+6wLA2LzPdkkfE3AOlh2SaFsW0CfhUxTwJwU7jszcBzQGoJcY0B1hYZthE4t6xlASnAU+HwrcBsoF04bipwZfi61G1TdFsAvweeinj/PLAB2AZMB/pHjHsMuDV83QaYEsayBfgISCimzNPD9eeGn+n5pW2jEj63EmMqMp0Idm6uK+P7PgL4NIw9C7gPSA7HFWzvpIjpIz/fnsC0MJZNwLMR67473J7bgQV8+92O/NxahZ9bNpATvu5cZF1/AmYAO4B3gDbl/T6Fwy8FPi7t8y8yfQLwa2B1GP8TQAuC3+TOiPmXlxCHAT2LbK/7in7fwuX9DVgfPv4WDmtC8JvL59v/mdK+Dwq/D8nAacBzJUx3ErCqPP+BkY+6dKSApAck7QIWE3zZ3yjnrDOB+yVdIKlrkXGjw+eWFuyJfErwgx4PHAkMA86paKxmNgtYC4wKB90G9AYGE/zwOgG/Dcc9DXw/YvZTgU1m9nnR5UoaS3DUdB7QgeCL/ky4zsMI/tjPCMuyt0hME4uMvz1i9HEEyfZE4LeSDg+H/xQ4Czge6EjwQ7+/rPJLSpB0JsGfa2Y5ljWJ4IfaheBo7iqCH1JRVd02bwK9gLbA58B/SpjuOoLtlwa0A24h+HM4iJkVfH8GhZ/ps6VtoyrG1IfgiODFUpYFkEdwlNaGYCfnRODHZcxT4E8Ef9StwnX9PRx+CsFvpTfBdjqPIIEXlQA8SrD33ZVgG95XZJoLgcsIypsM/LKcsR2iuM+/mMkuDR8nAD2ApgR/6nst2PsvmP+wstYnqR/Bb/qQaibgV8BIgt/4IILk/GszyyX4c4886llfzLJ7SdpKkJDbECSwl4EzwmrpiWXFVy4VzSI1/UGwp3gcQeZvUM55WhH8KS8i+MHMBYZbyXtOHwBXRbw/peg0RZa/iiJHCuHwmeEXRQR7IodFjDsaWBm+7kmw19Q4fP8f4LclrOth4PaI902B/QRVayXGUlKsEeWP3JubBVwQvv4KODFiXIdwfYd8FgR7dvkEe6h7w8/6FxHjS1wWcDnwCTCwmOVO5ds92VK3TTHl+z0RRwpFltsynLdF+P4xvt3j/SPwKhF7iKV8pkX3JEvdRmUs66CYiow7LhyXEjHsmfDz3gVMLGGZvwBeLuX7Hvn5PgE8FPl9CIePBZYS/OklFBlX+LkVs+7BQE6Rdf064v2PgbdKmDfy+1TwOI+II4XiPv9ilvM+8OOI932I+A6XY34jODrKITjKvbXgM+DgI4XlwOkR851KuCdPCUc9JazvVuDnBP8b84FOJUznRwoAZpZnZh8T7MX8qJzz5JjZTWbWn2Cvby7wiiSVMEtHgsP0AqsrGW4nguqDNKAxMCfM+FuBt8LhmFkmwR/mGZIaE7SZ/LeU2ArjMbOdBHtsnSoZY4ENEa93EfyRQbDH93JE3F8R/Nm3K2E5682sJUGbwr0EfyYFSlvWk8DbwDOS1ocNbQ2KWX6lt42kREm3SVouaTvBDxqCvbKi7iA4wnlH0gpJN5V3PVRgG1UwpoI98w4Ry74g/Lw/J9hhQlJvSVMkbQiX+f9KWF5xbiD4M5olaZGky8P1fECwx38/sFHSQ5KaF1OexpL+KWl1uO7pQMsiDbMlfdeKs97MWkY8nitnOSIdtD3C10mU/B0uzhAza2Vmh5nZr80sv5zr6VjeFYQnqGwFbibYKdkOHA4skvRCBWItVZ1LChGSgDIP94oys00EddIdgVSKqRIgqJqKbLQrWuVUJknDCf4EPiaom91NUFdc8OVuYd8eusK3VUgTgC/DRFGc9QR/rgXraUJQ3bKunKEVV97SrAFOK/LDTDGzUtdnQdXVjcAR+vbU2BKXZWb7zewPZtYPOIagiuiSYhZd1rbJJUjABdpHvL6Q4PM9iaAKJD0cfsjOgZntMLPrzKwHQZK+VtKJpZU5QkW2UbljApaEyzi7jPX/g6CKtZcFJ2bcErG83PC52M/IzDaY2Q/MrCPwQ+CBgjN7zOxeMxsK9COoRiquofM6gj3xo8J1F1TvlLQDFgsHbQ+C78wBqv9kk+LWU1BNVObvzsyOAfoCy8ysBUFtyF/C30mFq7BLUieSgqS2YXtA03DP6lSCP9D3yzn/XyQNkJQkqRnBEUammW0maBDLJ6hrLPAc8DMFp7K2ImgcLW+szSWNJzisf8rMFoR7Ff8C7pbUNpyuU1iOAs8QVIX8iJKPEiBIHpdJGiypIcFe4GdmtqqcIX7DwWUty4PA/0nqFsadJmlCeWY0s33AXXzbdlLissLT7I4I9yi3ExzeF7c3Vta2mQtcIKmBpKJtDs0IqrU2E/wp/r+SYpc0XlLP8GhyG8ERTXHxwKGfaUW2UbljCr9H1wG/k/QDSa0U6MXBe73NCD7DnZL6EnFEbWbZBInl4vC3dDkRO1eSzpXUOXybQ/Bnli9puKSjwqO3XGBPCZ9HM4IdoK2SUoHflVSealTWd/pp4BpJ3SU1JfiMnzWzA9Ucx9PAr8PvdRuC7/1TETG2VsSppSUYyrftFUOAjKIThO11KUCD4K1SJCWXO8qK1jfVxAdBNcs0gjrFgjMffhAxvitBi37XEub/O7AsnCab4IyIwyPG/zEcvpWgzjSJ4EyLzcBKynf20W6CdoFtBGd+XA0kRkyTQvBlXBGW4SvgZ0WW8z7BHkz7Mj6PqwjqL7dw6Nkdqyi9TWECQWPzVoIGvvSiZePgOuYE4FqCvdQd4Xr/XwnLHsOhZx81JjhSOqO0ZREk+SUEfzjfEFQ9JRUTT6nbhuDP4bNwW78eLuepcFxTgnaCHQSH9pcQUZ/MwW0K14SfZS5Bg/NvytgeWeFnel5Z26jIvKXGVMI84wh+DwXVUl8Q7LU3CcePJjhS2Elw1tQfObgO/rTws9tKkLSnRXy+txMkjZ1h/JPD4ScS1G/vDLfnf4CmxXxuHcPttZOgDeKHRbZP4bYM318aGVtZ36fi5inu8y8yfQLBH/Qagt/5U0CriPHlaVModjwHtymkEHzfssLHvRzc/vMI355dV+zZR2Gc14evFwBdSvhcrMhjamn/GZEPhQtxzjnn6kb1kXPOuerhScE551whTwrOOecKeVJwzjlXqMZ2h1webdq0sfT09HiH4ZxztcqcOXM2mVlaceNqdVJIT08nI+OQ03Sdc86VQlKJV/p79ZFzzrlCnhScc84V8qTgnHOukCcF55xzhTwpOOecK+RJwTnnXCFPCs455wrVy6SQtW03f/jfIvbnldT9vXPO1U/1MinMW7ONR2es4v4PS7p5mXPO1U/1MimMG9CeCYM7ct8HmSxcty3e4TjnXI1RL5MCwB/O7E9qk2Sue24eew/kxTsc55yrEaKWFCQ9ImmjpIURwwZLmilprqQMSSPC4ZJ0r6RMSfMlDYlWXAVaNk7mtu8dwZJvdnDPe8uivTrnnKsVonmk8BjBvWIj3Q78wcwGE9xr9PZw+GlAr/AxGfhHFOMqNLZvO84d2pkHpy3ni69zYrFK55yr0aKWFMxsOsFNyQ8aDDQPX7cA1oevJwBPWGAm0FJSh2jFFuk3Z/SjffMUrnt+Hnv2ezWSc65+i3Wbwi+AOyStAe4Ebg6HdwLWREy3NhwWdc1TGvCXcwayIjuXO99eEotVOudcjRXrpPAj4Boz6wJcAzxc0QVImhy2R2RkZ2dXS1CjeqVx0VFdeXjGSmatLHpw45xz9Uesk8Ik4KXw9fPAiPD1OqBLxHSdw2GHMLOHzGyYmQ1LSyv2xkGVcsvph9O5VSOuf2Eeu/YdqLblOudcbRLrpLAeOD58PRYoOO3nNeCS8CykkcA2M8uKZWBNGiZxxzmDWL15F7e9uTiWq3bOuRojarfjlPQ0MAZoI2kt8DvgB8A9kpKAPQRnGgG8AZwOZAK7gMuiFVdpRvZozWXHpvPojFWc2r89x/ZsE48wnHMubmRm8Y6h0oYNG2bVfY/m3fvyOP3ej9h3IJ+3fjGKZikNqnX5zjkXb5LmmNmw4sbV2yuaS9IoOZE7zx1E1rbd/N/rX8U7HOeciylPCsUY2q0VPxjdg2dmr+HDJRvjHY5zzsWMJ4USXHNSb3q1bcpNL85n26798Q7HOediwpNCCVIaJPLX8wazaec+/vC/RfEOxznnYsKTQimO6NyCq8ccxktfrOOdRRviHY5zzkWdJ4Uy/GRsL/p1aM4tLy9gS+6+eIfjnHNR5UmhDMlJCdx13iC27d7Pb15dWPYMzjlXi3lSKIfDOzTn5yf24vX5WUyZv77sGZxzrpbypFBOVx1/GIM6t+A3rywke8feeIfjnHNR4UmhnJISg2qk3H153PLyAmrzleDOOVcSTwoV0LNtM355Sm/e/fIbXv6i2E5cnXOuVvOkUEFXHNeDod1a8bvXFrFh2554h+Occ9XKk0IFJSaIO88dxP68fG58cb5XIznn6hRPCpXQvU0TbhzXl2lLs3l29pqyZ3DOuVrCk0IlTTo6nZE9Urn19a9Ym7Mr3uE451y18KRQSQkJ4o5zBmFm3PDCfPLzvRrJOVf7eVKogi6pjbnlO4fzyfLNPPXZ6niH45xzVeZJoYouHNGVUb3a8Oc3FrNqU268w3HOuSrxpFBFkvjL9waSlCCuf2EeeV6N5JyrxTwpVIOOLRvx2zP6MXtVDo/OWBnvcJxzrtKilhQkPSJpo6SFRYb/VNJiSYsk3R4x/GZJmZKWSDo1WnFFyzlDO3Ni37bc/vYSMjfujHc4zjlXKdE8UngMGBc5QNIJwARgkJn1B+4Mh/cDLgD6h/M8ICkxirFVO0n8+ewjaNQgkeuen8eBvPx4h+SccxUWtaRgZtOBLUUG/wi4zcz2htNsDIdPAJ4xs71mthLIBEZEK7Zoads8hT9O6M+8NVv55/QV8Q7HOecqLNZtCr2BUZI+kzRN0vBweCcg8tLgteGwQ0iaLClDUkZ2dnaUw624Mwd15LQB7fnbe0tZvGF7vMNxzrkKiXVSSAJSgZHA9cBzklSRBZjZQ2Y2zMyGpaWlRSPGKpHErWcNoHlKA657bh77vRrJOVeLxDoprAVessAsIB9oA6wDukRM1zkcViu1btqQ//vuABat3879H2bGOxznnCu3WCeFV4ATACT1BpKBTcBrwAWSGkrqDvQCZsU4tmo1bkAHJgzuyH0fZLJw3bZ4h+Occ+USzVNSnwY+BfpIWivpCuARoEd4muozwKTwqGER8BzwJfAWcLWZ5UUrtlj5w5n9SW2SzHXPzWPvgVpfHOdcPaDafD+AYcOGWUZGRrzDKNUHi7/h8scy+PGYw7hhXN94h+Occ0iaY2bDihvnVzRH2di+7Th3aGcenLacL77OiXc4zjlXKk8KMfCbM/rRvnkK1z0/jz37vRrJOVdzeVKIgeYpDfjLOQNZkZ3LnW8viXc4zjlXIk8KMTKqVxoXHdWVh2esZNbKohd6O+dczeBJIYZuOf1wOrdqxPUvzGPXvgPxDsc55w7hSSGGmjRM4o5zBrF68y5ue3NxvMNxzrlDeFKIsZE9WnPZsek88elqZmRuinc4zjl3EE8KcXDDqX3p3qYJN7wwnx179sc7HOecK+RJIQ4aJSdy57mDyNq2m1unfBXvcJxzrpAnhTgZ2q0VPzz+MJ7NWMO/P/J7LzjnaoakeAdQn/3ylD6s2pTLra9/ReumyXz3yM7xDsk5V8/5kUIcJSaIv10wmKN7tOb65+fz4eKNZc/knHNR5EkhzhomJfLQJUPp074ZP/rPHOas9v6RnHPx40mhBmiW0oDHLhtB++YpXP7YbJZ+syPeITnn6ilPCjVEWrOGPHnFUSQnJXDJw7NYt3V3vENyztVDnhRqkC6pjXni8hHk7jvAxIc/Y0vuvniH5JyrZzwp1DCHd2jOw5OGsy5nN5c9Oovcvd5HknMudjwp1EAjuqdy34VDWLh+O1c9NYd9B/LjHZJzrp7wpFBDndyvHX/+7hF8tGwT1z0/j/z82nvbVOdc7eEXr9Vg5w3vwubcffzlrcW0bpLM787oh6R4h+Wcq8OidqQg6RFJGyUtLGbcdZJMUpvwvSTdKylT0nxJQ6IVV21z1fE9uPK47jz2ySru/zAz3uE45+q4aFYfPQaMKzpQUhfgFODriMGnAb3Cx2TgH1GMq1aRxC2nH853j+zEne8s5b+ffV32TM45V0lRSwpmNh0o7r6TdwM3AJGV5BOAJywwE2gpqUO0YqttEhLE7ecMZEyfNH79ygLeXJAV75Ccc3VUTBuaJU0A1pnZvCKjOgFrIt6vDYcVt4zJkjIkZWRnZ0cp0pqnQWICD1w0hMFdWvLzZ+byyXK/QY9zrvrFLClIagzcAvy2Kssxs4fMbJiZDUtLS6ue4GqJxslJPHLpcLq1bszkJ+awcN22eIfknKtjYnmkcBjQHZgnaRXQGfhcUntgHdAlYtrO4TBXRMvGyTxxxQiapyRx6aOzWLUpN94hOefqkBKTgqRuklpEvD9B0j2SrpWUXNEVmdkCM2trZulmlk5QRTTEzDYArwGXhGchjQS2mZlXnJegQ4tGPHHFUeTlGxMf+YyN2/fEOyTnXB1R2pHCc0ATAEmDgecJzhgaBDxQ1oIlPQ18CvSRtFbSFaVM/gawAsgE/gX8uDzB12c92zbl0ctGsHnnPiY9Opttu/1ez865qpNZ8VfKSppvZgPD13cC+WZ2g6QEYG7BuHgaNmyYZWRkxDuMuJq+NJsrHp/NkV1b8cTlI0hpkBjvkJxzNZykOWY2rLhxpR0pRF46OxZ4H8DMvCOeGmR07zTuPHcQs1dt4adPf8GBPN88zrnKKy0pfCDpOUn3AK2ADwDC6we8T+caZMLgTvxufD/e/fIbbnl5ASUd/TnnXFlK6/voF8D5QAfgODMrqLRuD/wqynG5Crr02O5szt3H3z/IpE3Thtwwrm+8Q3LO1UIlJgULdjefKWb4F1GNyFXatSf3ZtPOfTwwdTmpTZK5clSPeIfknKtlSkwKknZwcFcUCt+LIGc0j3JsroIkcetZA8jJ3cetr39F66bJfPfIzvEOyzlXi5TWpvA+8CVwKzDAzJqZWfOC59iE5yoqMUH87YLBHN2jNdc/P58Pl2yMd0jOuVqkxKRgZmcBpwLZwL8kTZP0Y0mpsQrOVU5Kg0QeumQofdo340dPzWHO6px4h+ScqyVK7ebCzLaZ2aMEXVv/E/gjcGkM4nJV1CylAY9dNoJ2zVO4/LHZLP1mR7xDcs7VAqUmBUnHSPo78DlwDPBdM/trTCJzVZbWrCFPXn4UyUkJXPLwLNZt3R3vkJxzNVxpfR+tIujOYh3BjW8eAXIlDfE7o9UeXVs35vHLRpC79wCXPPwZW3L9EhPnXMlK6+ZiKt+efVRw1lEBM7Ox0Q2tbN7NRfl9tmIzEx+ZxeEdmvPfK4+iSUO/Pbdz9VVp3VyUdp3CmKhF5GLuqB6tue/7R3LVU3O46qk5PDxpOMlJMb3HknOuFqjwv4KkkyW9G41gXHSd0r89t509kI+WbeKXz88jP9+7w3DOHay0i9fGAg8CHYFXgL8AjxJUI/1fLIJz1e+84V3YlLuX299aQmqTZH53Rj8klT2jc65eKK1i+S6CBuZPCU5J/RS4yczui0VgLnp+dPxhbN65j4c/Xkmbpsn8ZGyveIfknKshSksKZmZTw9evSFrnCaFukMSvTj+cLbn7uPOdpbRu2pDvj+ga77CcczVAaUmhpaSzI6eNfG9mL0UvLBdtCQni9nMGkrNrH796eQEtGjXg9CM6xDss51ycldbQPA04I+IxPeL1+OiH5qKtQWICD1w0hMFdWvKT/37Owx+v9HsxOFfPlXZK6mWxDMTFR+PkJJ684iiueXYuf5ryJcu+2cEfJwzw01Wdq6ei9suX9IikjZIWRgy7Q9JiSfMlvSypZcS4myVlSloi6dRoxeUO1aRhEg9ePJSrTziMZ2avYaJf+excvRXN3cHHgHFFhr1L0A33QGApcDOApH7ABUD/cJ4HJPkd6GMoIUFcf2pf/nb+YL5Ys5Wz7p/BMu9Ez7l6p6wO8RIkHVOZBZvZdGBLkWHvmNmB8O1MoOAOMBOAZ8xsr5mtBDKBEZVZr6uas47sxDOTR7JrXx5nP/CJ34/BuXqmrK6z84H7o7Tuy4E3w9edgDUR49aGww4habKkDEkZ2dnZUQqtfhvStRWv/uRYOqc25orHZnsDtHP1SHmqj96X9D1V42Wvkn4FHAD+U9F5zewhMxtmZsPS0tKqKyRXRKeWjXjhqqM56fB2/GnKl9z80gL2HciPd1jOuSgrT1L4IfA8sE/Sdkk7JG2v7AolXUpwSutF9u3u5zqgS8RkncNhLo68Adq5+qfMpBDekznBzBpU9R7NksYBNwBnmtmuiFGvARdIaiipO9ALmFWZdbjq5Q3QztUv5Tr7SNKZku4MH+W6cE3S0wT9JfWRtFbSFcB9QDPgXUlzJT0IYGaLgOeAL4G3gKvNLK8S5XFR4g3QztUPJd5kp3AC6TZgON/W/38fyDCzm6McW5n8Jjuxt27rbq58PIMlG7bzq+/04/Jj072XVedqmdJuslOeI4XTgZPN7BEze4TgOoLvVGeArvbwBmjn6rbyXrzWMuJ1iyjE4WoRb4B2ru4qT1L4M/CFpMckPQ7MwW+yU+95A7RzdVN5zj56GhgJvAS8CBxtZs9GOzBXO3gDtHN1S4lJQVLf8HkI0IHgKuO1QMdwmHOAXwHtXF1S2k12riW4HeddxYwzYGxUInK1UkEDtHfB7VztVtr9FCZLSgB+bWYzYhiTq6UKGqDvencJ93+4nJWbcvnHxUNJbZIc79Ccc+VUng7x/L7Mrty8Adq52i0uHeK5us8boJ2rnWLeIZ6rP7wB2rnaJ6Yd4rn6x6+Adq52KW+HeGdL+qukuySdFeWYXB3jV0A7V3uUmRQkPQBcBSwAFgJXSYrW3dhcHeUN0M7VDuU5UhgLnGpmj5rZowQd5Pk1Cq5SvAHauZqtPEkhE+ga8b5LOMy5SvEGaOdqrvIkhWbAV5KmSppKcCOc5pJek/RaVKNzdZY3QDtXM5XWzUWB30Y9Clcv+RXQztU8Zd557aCJpfFmNiWK8VSI33mt7njli3Xc8OJ8WjRqwJ8m9GfcgA7xDsm5Oquqd16L9MdqiMe5Q5x1ZCde/vExtG3WkKue+pwfPTWHjTv2xDss5+qdiiYF7+rCRU3/ji145epjuXFcX95fvJGT7prG8xlrvBHauRiqaFL4YXknlPSIpI2SFkYMS5X0rqRl4XOrcLgk3SspU9J8v19D/dUgMYEfjTmMN38+ij7tm3H9C/O55JFZrNmyK96hOVcvlOfitbMLHkDn8PWJktqWMetjwLgiw24C3jezXsD74XuA04Be4WMy8I8KlMHVQYelNeXZyUfzpwn9+Xx1DqfcPZ1HZ6wkL9+PGpyLpvIcKVwB/Bu4KHz8C7gRmCFpYkkzmdl0YEuRwROAx8PXjwNnRQx/wgIzgZaSvKWxnktIEBOPTueda4/nqB6p/OF/X3Lug5/4ldDORVF5kkIScLiZfc/Mvgf0I7jz2lEEyaEi2plZVvh6A9AufN0JWBMx3dpw2CEkTZaUISkjOzu7gqt3tVGnlo149NLh3H3+IFZuyuU7937M399f5tc1OBcF5UkKXczsm4j3G8NhW4D9lV2xBa2HFa4LMLOHzGyYmQ1LS0ur7OpdLSOJ7x7ZmXevPZ5TB7TnrneXcuZ9HzN/7dZ4h+ZcnVKepDBV0hRJkyRNAl4LhzUBtlZwfd8UVAuFzwUd36wj6D6jQOdwmHMHadO0IX///pH865Jh5Ozax1n3z+DPb3zF7n158Q7NuTqhPEnhauBRYHD4eBy42sxyzeyECq7vNWBS+HoS8GrE8EvCs5BGAtsiqpmcO8TJ/drx7rXHc/7wLvxz+gpOu2c6ny7fHO+wnKv1ynOTHQM+Bj4gOGNoupXjxHFJTwOfAn0krZV0BXAbcLKkZcBJ4XuAN4AVBB3t/Qv4cSXK4uqZ5ikN+PPZA/nvlUeRb/D9f83klpcXsH1PpWs1nav3yuzmQtJ5wB3AVIKL10YB15vZC1GPrgzezYUrsHtfHn99dwkPf7ySts1SuPWsAZzUr13ZMzpXD5XWzUV5ksI84GQz2xi+TwPeM7NB1R5pBXlScEXNW7OVG1+cz+INOzhzUEd+d0Y/WjdtGO+wnKtRqtr3UUJBQghtLud8zsXcoC4tee0nx3Htyb15c2EWJ/11Gq/OXeddZThXTuX5c39L0tuSLpV0KfA6QRuAczVSclICPzuxF6//bBTpbZrw82fmcsXjGazfujveoTlX45Wr62xJ3wOODd9+ZGYvRzWqcvLqI1eWvHzj8U9WccfbS0hMEDed1pcLR3QlIcH7dnT1V5XaFGoyTwquvNZs2cXNLy3g48xNjOieym1nH0GPtKbxDsu5uKhUm4KkHZK2F/PYIWl79MJ1rvp1SW3Mk1eM4PZzBrI4azun3fMRD05bzoE87yrDuUglJgUza2ZmzYt5NDOz5rEM0rnqIInzhnXhvWuPZ0yfNG57czFnPTCDL9f7Po5zBfwsIlfvtG2ewj8nDuMfFw1hw7a9nHnfx9z59hL27PeuMpzzpODqrdOO6MB7147mrCM7cd+HmXzn3o/IWFW0t3fn6hdPCq5ea9k4mTvPHcQTl49gz/58zv3np/zu1YXeVYartzwpOAeM7p3GO9eMZtLR6TwxczWjb/+QB6ZmsmvfgXiH5lxMeVJwLtSkYRK/P7M///vJcQzp2orb31rC6Ns/5OGPV3p7g6s3/DoF50owZ3UOf313CTMyN9O+eQpXj+3J+cO6kJzk+1KudvOL15yrgk+Wb+Kv7ywlY3UOnVs14mcn9uLsIzuRlOjJwdVOVe0Qz7l67ZjD2vD8VUfz2GXDSW2SzA0vzOfku6fz6tx15OfX3p0q54rjScG5cpDEmD5tefXqY3lo4lAaJiXw82fmMu6e6by1MMt7YXV1hicF5ypAEqf0b88bPxvF379/JAfyjaue+pwz7vuYDxdv9OTgaj1PCs5VQkKCOGNQR975xWjuOncQ23bv57LHZnP2Pz5hRuYmTw6u1vKGZueqwf68fJ7PWMvfP1hG1rY9jOyRynWn9GF4emq8Q3PuEDWuoVnSNZIWSVoo6WlJKZK6S/pMUqakZyUlxyM25yqjQWICFx7VlQ9/OYbfn9GPzI25nPvgp0x6ZBbz126Nd3jOlVvMk4KkTsDPgGFmNgBIBC4A/gLcbWY9gRzgiljH5lxVpTRI5NJju/PRDSdwy+l9mb92K2feN4MfPJHBV1neG6ur+eLVppAENJKUBDQGsoCxwAvh+MeBs+ITmnNV1yg5kcmjD+OjG8dy3cm9mbliM6fd8xE/+e/nZG7cGe/wnCtRzJOCma0D7gS+JkgG24A5wFYzK+hoZi3Qqbj5JU2WlCEpIzs7OxYhO1dpTRsm8dMTe/HxDWP56diefLh4I6fcPY1rn5vL15t3xTs85w4Rj+qjVsAEoDvQEWgCjCvv/Gb2kJkNM7NhaWlpUYrSuerVonEDrjulD9NvOIErR/Xg9flZjL1rKje/tID1W3fHOzznCsWj+ugkYKWZZZvZfuAl4FigZVidBNAZWBeH2JyLqtZNG3LL6Yfz0Q0ncPHIbrw4Zy1j7pjK719bxMbte+IdnnNxSQpfAyMlNZYk4ETgS+BD4JxwmknAq3GIzbmYaNs8hd+f2Z8Prx/D94Z24smZqxl9x4f8+Y2v2JK7L97huXosLtcpSPoDcD5wAPgCuJKgDeEZIDUcdrGZ7S1tOX6dgqsrVm3K5d73l/HK3HU0apDI5cd158pRPWjRqEG8Q3N1kPeS6lwtkblxB3e/t4zX52fRLCWJ84d14eKR3Uhv0yTeobk6xJOCc7XMl+u3c//UTN5euIED+cbo3mlMHNmNsX3bkpigeIfnajlPCs7VUhu37+GZ2Wv472dfs2H7Hjq1bMSFR3Xl/OFdaNO0YbzDc7WUJwXnarkDefm899U3PDlzNTMyN5OcmMDpR7Rn4tHdGNK1FcE5G86VT2lJIam4gc65miUpMYFxAzowbkAHMjfu5KmZq3lxzlpembuefh2aM/HobkwY3JHGyf6TdlXjRwrO1VK5ew/w6tz1PPHpKhZv2EGzlCTOGdqZi0d247C0pvEOz9VgXn3kXB1mZsxZncOTM1fzxoIs9ucZx/ZszcSR3Tjp8HZ+L2l3CE8KztUTm3bu5dmwYXrd1t20b57ChUd15YLhXWjbPCXe4bkawpOCc/VMXr7xweKNPPHpKj5atomkBDFuQHsmjuzGiO6p3jBdz3lDs3P1TGKCOLlfO07u146Vm3L5z8zVPJexhinzs+jTrhkXH92N7x7ZiaYN/S/AHcyPFJyrJ3bvy+N/89bzxMxVLFy3nSbJiZw9pDMTj+5G73bN4h2eiyGvPnLOFTIz5q7ZypMzVzNlfhb7DuRzVPdULjk6nVP6t6OBN0zXeZ4UnHPF2pK7j+cy1vDUzNWszdlN22YNuWBEVy4c0ZX2Lbxhuq7ypOCcK1VevjF9aTZPfLqKqUuzSZA4pV87Jo7sxtGHtfaG6TrGG5qdc6VKTBAn9G3LCX3b8vXmXfxn1mqem72GNxduoEdaE84c1JHxAzvSs61fFFfX+ZGCc65Ye/bn8fr8LJ7LWMOsVVswg77tm3HGoI6MH9iBbq29O+/ayquPnHNV8s32PbyxIIsp87OYszoHgCM6tWD8wA58Z2AHOrdqHOcIXUV4UnDOVZt1W3fzxvwspsxfz7y12wA4smtLxg/syHeO6OAN1LWAJwXnXFR8vXkXUxasZ8q8LL7M2o4Ew7ulMn5QB04b0IG0Zn7Ph5rIk4JzLuqWZ+/k9fAIYuk3O0kQjOzRmvEDOzJuQHtSmyTHO0QX8qTgnIuppd/sYMq89UyZn8WKTbkkJohje7Zh/MAOnNqvPS0aN4h3iPVajUsKkloC/wYGAAZcDiwBngXSgVXAeWaWU9pyPCk4V7OZGV9mbWdKeASxZstuGiSK0b3SGD+oAycd3o5mKZ4gYq0mJoXHgY/M7N+SkoHGwC3AFjO7TdJNQCszu7G05XhScK72MDPmr93GlPnreX1+Fuu37SE5KYET+qQxfmBHTjy8rd85LkZqVFKQ1AKYC/SwiJVLWgKMMbMsSR2AqWbWp7RleVJwrnbKzze+WJPD/+Zl8fqCLLJ37KVRg0TGHt6WMwZ2YEyftqQ0SIx3mHVWTUsKg4GHgC+BQcAc4OfAOjNrGU4jIKfgfZH5JwOTAbp27Tp09erVMYnbORcdefnG7FVbmDJ/PW8u2MDm3H00SU7k5H7tGD+wI6N6t6FhkieI6lTTksIwYCZwrJl9JukeYDvw08gkICnHzFqVtiw/UnCubjmQl8/MFUGCeGvRBrbu2k+zlCRO7d+e049oz9E92tAo2RNEVdW0pNAemGlm6eH7UcBNQE+8+sg5F9qfl8/HmZuYMi+LdxZtYMfeAyQnJXBU91SO753GmD5pHJbW1Dvrq4QalRQAJH0EXGlmSyT9HijoRGVzRENzqpndUNpyPCk4Vz/sPZDHrJVbmLokm2lLs8ncuBOATi0bMbp3Gsf3TuPYnq39TKZyqolJYTDBKanJwArgMiABeA7oCqwmOCV1S2nL8aTgXP20NmcX05duYtrSjczI3MzOvQdIShBDu7Xi+D5BkujXobkfRZSgxiWF6uJJwTm3Py+fz1fnMHVpNtOWZPNl1nYA0po1ZHSvNI7vk8aonm1o5VdUF/Kk4JyrNzZu38P0ZZuYtjSbj5Zls3XXfhIEg7q05Piwqmlg55YkJtTfowhPCs65eikv35i3divTwraIeWu3YgYtGzdgVK80xvROY1TvNrRtVr96dvWk4JxzQE7uPj7K3MTUJRuZvnQTm3buBaB/x+aFRxFDurWiQWJCnCONLk8KzjlXRH5+0C/TtKXBUcSc1Tnk5RvNGiZxbM82HN8njdG90+jUslG8Q612nhScc64M2/fs55PMzUxbupFpS7JZv20PAL3aNg2OIvqkMTw9tU50v+FJwTnnKsDMyNy4s/Ao4rMVW9iXl0+jBokMS2/FiPRUhqWncmTXlrUySXhScM65Kti17wCfrdjC1CUbmbliC0u+2QFAg0QxoFOLwiQxrFurWnHqqycF55yrRtt27Sdj9RZmr8ph9qotzF+7lf15wX9pr7ZNGd49leHprRienkqnlo1q3EV0nhSccy6K9uzPY96arWSszmHWyi18vjqHHXsPANChRQrD08Mk0T2V3m2bkRDnayQ8KTjnXAzl5RuLN2wnY1UOs1ZtYfbKLWzcEZz+2jwlKahqCtsmjujcIuZdg5eWFPw2R845V80SE0T/ji3o37EFk45Jx8xYs2U3s1dtKXx8sHgjAMlJCQzu3JJh4ZHEkK6taNEofh37+ZGCc87Fweade8lYncPslVuYvTqHReu2cSDfkKBv++aFbRLD01Np36J6r7j26iPnnKvhdu07wNyvtzJr1RYyVuXw+dc57NqXB0CX1EYM75Za2IBd1ftIePWRc87VcI2TkzimZxuO6dkGCO5C92XWdmatDJLEtKXZvPTFOgBaNW7A1Sf05MpRPao9Dk8KzjlXAyUlJjCwc0sGdm7JlaOCC+pWbsotbLxu2zw6nfh5UnDOuVpAEj3SmtIjrSnnDe8StfXU7a4AnXPOVYgnBeecc4U8KTjnnCsUt6QgKVHSF5KmhO+7S/pMUqakZyXV/F6lnHOujonnkcLPga8i3v8FuNvMegI5wBVxico55+qxuCQFSZ2B7wD/Dt8LGAu8EE7yOHBWPGJzzrn6LF5HCn8DbgDyw/etga1mdiB8vxboFIe4nHOuXot5UpA0HthoZnMqOf9kSRmSMrKzs6s5Ouecq9/icfHascCZkk4HUoDmwD1AS0lJ4dFCZ2BdcTOb2UPAQwCSsiWtrmQcbYBNlZy3tvIy1w9e5vqhKmXuVtKIuHaIJ2kM8EszGy/peeBFM3tG0oPAfDN7IIrrziipQ6i6ystcP3iZ64dolbkmXadwI3CtpEyCNoaH4xyPc87VO3Ht+8jMpgJTw9crgBHxjMc55+q7mnSkEGsPxTuAOPAy1w9e5vohKmWu1TfZcc45V73q85GCc865IjwpOOecK1Qnk4KkcZKWhJ3r3VTM+IZhp3uZYSd86eHwdEm7Jc0NHw/GPPhKqmyZw3EDJX0qaZGkBZKic0unalaF7XxRxDaeKylf0uBYx18ZVShzA0mPh9v3K0k3xzz4SqhCeZMlPRqWd154+nutUI4yj5b0uaQDks4pMm6SpGXhY1KlAjCzOvUAEoHlQA8gGZgH9CsyzY+BB8PXFwDPhq/TgYXxLkOMy5wEzAcGhe9bA4nxLlM0y1xkmiOA5fEuTwy284XAM+HrxsAqID3eZYpiea8GHg1ftwXmAAnxLlM1lTkdGAg8AZwTMTwVWBE+twpft6poDHXxSGEEkGlmK8xsH/AMMKHINBMIOt2DoBO+E8NO+WqrqpT5FIILBecBmNlmM8uLUdxVUV3b+fvhvLVBVcpsQBNJSUAjYB+wPTZhV1pVytsP+ADAzDYCW4HacHFbmWU2s1VmNp9v+44rcCrwrpltMbMc4F1gXEUDqItJoROwJuJ9cZ3rFU5jQbca2wj2kAG6h/d5mCZpVLSDrSZVKXNvwCS9HR6S3hCDeKtDVbdzgfOBp6MUY3WrSplfAHKBLOBr4E4z2xLtgKuoKuWdR9CdTpKk7sBQIHo3Nq4+5SlzNOYtFNeL12qgLKCrmW2WNBR4RVJ/M6vpe1RVkQQcBwwHdgHvS5pjZu/HN6zok3QUsMvMFsY7lhgYAeQBHQmqFj6S9J4FF43WRY8AhwMZwGrgE4LyuzLUxSOFdRy8R1Bc53qF04SH0y2AzWa218w2A1jQi+tygj3pmq7SZSbYm5huZpvMbBfwBjAk6hFXXVXKXOACas9RAlStzBcCb5nZ/rA6ZQY1vzqlKr/lA2Z2jZkNNrMJQEtgafRDrrLylDka8xaqi0lhNtBLwe09kwl++K8VmeY1oKBl/hzgAzMzSWmSEgEk9QB6ETTW1HSVLjPwNnCEpMbhj+p44MsYxV0VVSkzkhKA86g97QlQtTJ/TXAjKyQ1AUYCi2MSdeVV5bfcOCwnkk4GDphZXflel+Rt4BRJrSS1ImgvfLvCEcS7tT1KLfinE+wVLAd+FQ77I3Bm+DoFeB7IBGYBPcLh3wMWAXOBz4Ez4l2WaJc5HHdxWO6FwO3xLkuMyjwGmBnvMsSqzEDTcPgigqR/fbzLEuXypgNLCG75+x7QLd5lqcYyDyc4ws8lOApcFDHv5eFnkQlcVpn1ezcXzjnnCtXF6iPnnHOV5EnBOedcIU8KzjnnCnlScM45V8iTgnPOuUKeFJyLIGlnxOvTJS2V1E3S7yWtC3tVXSbpJUn9IqadGvZsWdDz6gvFLPtSSdnh+EWSXgjPp/+5pL9FTPdPSe9FvP+ppHujWGznCnlScK4Ykk4E7gVOM7PV4eC7LbhCthfwLPCBpLSI2S4Kxw82s3OKLjP0bDi+P0GndOcTXF18TMQ0g4AWBRdShuM+qaaiOVcqTwrOFSFpNPAvYLyZLS9uGjN7FniHoPuIyqwjCWgC5BBcLNlbUiNJLYDd4bAjwsmPIUgczkWdd4jn3MEaAq8AY8ysrG4gPgf6Rrz/j6Td4et3zez6YuY5X9JxQAeCq1b/Z2Z5kr4guFK1EfAZsAw4RlI2wb3U1xSzLOeqnR8pOHew/QRVNVeUY9qi92aIrD4qLiFAWH0EtAcWAAXTfUJwRHAM8Gn4KHjvVUcuZjwpOHewfIKO8kZIuqWMaY8k6FunwizoX+Z/wOhwUEG7wtEECeErghvFeFJwMeVJwbkiLOhC/DvARZKKPWKQ9D2CXiir0vX2cQSdnkGQCEYCaWa2MUwa2QR33fL2BBcz3qbgXDHMbIukccD0sF4f4BpJFxM0EC8ExppZdsRskW0Km8zspGIWXdCmkEDQ0+Wl4fpywvUsipj2U+BYgruIORcT3kuqc865Ql595JxzrpAnBeecc4U8KTjnnCvkScE551whTwrOOecKeVJwzjlXyJOCc865Qv8ftbFaMk+zwpEAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from scipy.optimize import curve_fit\n", "\n", "\n", "def gaussian(x, amp, cen, wid, bias):\n", " return amp * np.exp(-((x - cen) ** 2) / wid) + bias\n", "\n", "\n", "numtry_bw = 10\n", "kde_bw_arr = np.linspace(0.05, 0.1, numtry_bw)\n", "diff_mean_arr = np.zeros((numtry_bw))\n", "diff_p_arr = np.zeros((numtry_bw))\n", "diff_m_arr = np.zeros((numtry_bw))\n", "res_fit_prior2gauss = np.zeros((numtry_bw))\n", "\n", "numtry_prior = 20\n", "sma_arr = np.mean(sma_prior) * np.linspace(0.98, 1.02, numtry_prior)\n", "\n", "for idx_bw, kde_bw in enumerate(kde_bw_arr):\n", " kde = gaussian_kde(values, bw_method=kde_bw)\n", "\n", " # Check pdf\n", " lnprior_arr = np.zeros((numtry_prior))\n", " for idx_prior, sma in enumerate(sma_arr):\n", " lnprior_arr[idx_prior] = kde.logpdf(\n", " [\n", " sma,\n", " np.mean(ecc_prior),\n", " np.pi / 2,\n", " np.mean(w_prior),\n", " np.mean(tau_prior),\n", " np.mean(m1_prior),\n", " ]\n", " )[0]\n", "\n", " # Quarentiles comparison\n", " masskde_arr = kde.resample(len_pdf)[5, :]\n", " masskde_arr = masskde_arr[masskde_arr < 0.004]\n", " masskde_quantiles = np.quantile(\n", " masskde_arr * 1000, [(1 - 0.68), 0.5, 0.5 + (1 - 0.68)]\n", " )\n", " massprior_quantiles = np.quantile(\n", " m1_prior_draw * 1000, [(1 - 0.68), 0.5, 0.5 + (1 - 0.68)]\n", " )\n", " diff_mean_arr[idx_bw] = (\n", " masskde_quantiles[1] - massprior_quantiles[1]\n", " ) / massprior_quantiles[1]\n", " diff_p_arr[idx_bw] = (\n", " (masskde_quantiles[1] - masskde_quantiles[0])\n", " - (massprior_quantiles[1] - massprior_quantiles[0])\n", " ) / massprior_quantiles[1]\n", " diff_m_arr[idx_bw] = np.abs(\n", " (\n", " (masskde_quantiles[2] - masskde_quantiles[1])\n", " - (massprior_quantiles[2] - massprior_quantiles[1])\n", " )\n", " / massprior_quantiles[1]\n", " )\n", "\n", " # fit to Gaussian\n", " n = len(sma_arr)\n", " mean = np.mean(sma_prior)\n", " sigma = 0.04 # note this correction\n", " best_vals, covar = curve_fit(\n", " gaussian,\n", " sma_arr,\n", " lnprior_arr,\n", " p0=[\n", " np.abs(np.max(lnprior_arr) - np.min(lnprior_arr)),\n", " np.mean(sma_prior),\n", " 0.04,\n", " np.mean(lnprior_arr) * 4,\n", " ],\n", " ) # [np.mean(lnprior_arr),mean,sigma])\n", " gauss_fit = gaussian(sma_arr, *best_vals)\n", " if idx_bw % 3 == 0:\n", " plt.figure(101)\n", " plt.plot(sma_arr, lnprior_arr, label=\"KDE BW = {:.2f}\".format(kde_bw))\n", "\n", " res_fit_prior2gauss[idx_bw] = np.std(gauss_fit - lnprior_arr)\n", "plt.figure(101)\n", "plt.legend(loc=\"upper right\")\n", "plt.xlabel(\"SMA [AU]\")\n", "plt.ylabel(\"log-prior\")\n", "plt.title(\"1. Log-prior Variation around Median Prior SMA\")\n", "\n", "plt.figure(301)\n", "plt.plot(kde_bw_arr, diff_mean_arr * 100, color=\"k\", label=\"diff median\")\n", "plt.plot(\n", " kde_bw_arr,\n", " diff_p_arr * 100,\n", " color=\"k\",\n", " linestyle=\"--\",\n", " label=\"diff upper 68th interval limit\",\n", ")\n", "plt.plot(\n", " kde_bw_arr,\n", " diff_m_arr * 100,\n", " color=\"k\",\n", " linestyle=\"-.\",\n", " label=\"diff lower 68th interval limit\",\n", ")\n", "plt.xlabel(\"KDE BW\")\n", "plt.ylabel(\"% of prior median\")\n", "plt.legend(loc=\"upper right\") # , fontsize='x-large')\n", "plt.title(\"2. Median and 68th Interv. Limits Changes w.r.t. Prior PDF\")\n", "\n", "plt.figure(302)\n", "plt.plot(kde_bw_arr, res_fit_prior2gauss, label=\"\")\n", "plt.xlabel(\"KDE BW\")\n", "plt.ylabel(\"log-prior RMS\")\n", "plt.title(\"3. Std Dev of the Residuals to a Gaussian Fit of Plot #1\")" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "The above plots #2 and #3 give us the information to select the most adecuate KDE bandwidth. For instance, if we decide that a ~3-4% difference in the median and 68th interval limits is acceptable, that sets a maximum bandwidth of ~0.9 \n", "\n", "To make a choice for the log-prior probability variation in the SMA range we picked, we can see what variation does the log-likelihood present for the same SMA range. For the same SMA range, we compute the log-likelihood of our model and see the peak-to-valley to assess what variation we want to allow for a narrow bandwidth. \n", "\n", "Once you've chosen the bandwidth that best fits your posteriors you can use them as priors for a MCMC fit. Link to [MCMC tutotial](MCMC_tutorial.ipynb).\n" ] } ], "metadata": { "interpreter": { "hash": "e899b22145868d3cd465733d82c36c2ae3ac0d3591d6a0807ec2e5e577a9cf5c" }, "kernelspec": { "display_name": "Python 3.7.5 64-bit ('python3.7': conda)", "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", "version": "3.10.4" } }, "nbformat": 4, "nbformat_minor": 2 }