From 0df14d4e361ea95feea309719464d2283b6c4018 Mon Sep 17 00:00:00 2001 From: Katelyn Horstman <46659723+KHorstman@users.noreply.github.com> Date: Wed, 21 Jan 2026 16:14:01 -0800 Subject: [PATCH 1/3] basic line/gaussian fit tutorial using breads --- demos/breads_simple_fit_tutorial.ipynb | 435 +++++++++++++++++++++++++ 1 file changed, 435 insertions(+) create mode 100644 demos/breads_simple_fit_tutorial.ipynb diff --git a/demos/breads_simple_fit_tutorial.ipynb b/demos/breads_simple_fit_tutorial.ipynb new file mode 100644 index 0000000..e453633 --- /dev/null +++ b/demos/breads_simple_fit_tutorial.ipynb @@ -0,0 +1,435 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "36a2e1d6", + "metadata": {}, + "source": [ + "# Using breads to fit example linear and guassian data sets" + ] + }, + { + "cell_type": "markdown", + "id": "f00451df", + "metadata": {}, + "source": [ + "### Import necessary modules from breads and packages" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "de52fbe7", + "metadata": {}, + "outputs": [], + "source": [ + "from breads.fit import fitfm\n", + "from breads.grid_search import grid_search\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "markdown", + "id": "27d0d289", + "metadata": {}, + "source": [ + "### First, we need to define the function for a line. Since the function for a line only contains linear parameters, no non-linear parameters are included. However, the `fitfm` function requires non-linear parameters, so we must include them in the definition of our line. \n", + "\n", + "The linear forward model function must return:\n", + "\n", + "d: Data as a 1d vector with bad pixels removed (no nans)\n", + "\n", + "M: Linear model as a matrix of shape (Nd,Np) with bad pixels removed (no nans). Nd is the size of the data vector and Np is the number of linear parameters.\n", + "\n", + "s: Noise vector (standard deviation) as a 1d vector matching d.\n", + "\n", + "See `breads.fm.template` for more information." + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "6f75c8bc", + "metadata": {}, + "outputs": [], + "source": [ + "def linear_fm_func(nonlin_paras, dataobj, **fm_paras):\n", + " x = dataobj[\"x\"]\n", + " y = dataobj[\"y\"]\n", + " s = dataobj[\"s\"]\n", + "\n", + " M = np.vstack([x, np.ones_like(x)]).T\n", + "\n", + " # Return data, model, uncertainties\n", + " return y, M, s" + ] + }, + { + "cell_type": "markdown", + "id": "aba90ef8", + "metadata": {}, + "source": [ + "### Next, we need to define our example data set. " + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "73142593", + "metadata": {}, + "outputs": [], + "source": [ + "dataobj = {\n", + " \"x\": np.array([1, 2, 3, 4, 5]),\n", + " \"y\": np.array([2.1, 3.5, 6.1, 9.2, 10.2]),\n", + " \"s\": np.ones(5) * 0.1\n", + "}" + ] + }, + { + "cell_type": "markdown", + "id": "8c29cf42", + "metadata": {}, + "source": [ + "### Finally, we need to use the `fitfm` function to return the best fit linear parameters." + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "id": "ea368364", + "metadata": {}, + "outputs": [], + "source": [ + "results = fitfm(\n", + " nonlin_paras=[], \n", + " dataobj=dataobj,\n", + " fm_func=linear_fm_func,\n", + " fm_paras={}\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "9ffc9c9c", + "metadata": {}, + "outputs": [], + "source": [ + "log_prob, log_prob_H0, rchi2, linparas, linparas_err = results" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "b721d0e8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Slope (m): 2.1899999999999995 ± 0.06920673381926946\n", + "Intercept (b): -0.3500000000000045 ± 0.22953276904451655\n", + "Reduced chi2: 22.93999999999998\n" + ] + } + ], + "source": [ + "print(\"Slope (m):\", linparas[0], \"±\", linparas_err[0])\n", + "print(\"Intercept (b):\", linparas[1], \"±\", linparas_err[1])\n", + "print(\"Reduced chi2:\", rchi2)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "4dc85cb0", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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vZsNGzZcdFtvPIflPT5vO4dNmzZl165d/P777yxZsoR7772XtWvXlvrl7I3nriLH6G3n7+jRozzyyCOsWLGC4ODgcr/PW87jpRyft53DAQMGFP73VVddRadOnWjYsCELFy5k9OjRJb7HivPn07ddYmJiOHbsWJG+9PR0qlSpUmJCrAyuueYafvjhB6vLKNOIESP47LPPWLNmDXXq1ClzW288hxU5vpJ48jkMDAykUaNGtGvXjqSkJFq1asVLL71U4rbeeO6gYsdYEk8+f9u3byc9PZ22bdtSpUoVqlSpwtq1a5k9ezZVqlTBbrcXe483ncdLOb6SePI5vFDVqlW56qqrSq3XqvPn01c+OnXqxOeff16kb8WKFbRr146AgACLqnKtnTt3etxl0AKGYTBixAiWLl1KSkoKCQkJF32PN53DSzm+knjyObyQYRjk5uaW+Jo3nbuylHWMJfHk89erV69iT0bcd999NGvWjHHjxuHv71/sPd50Hi/l+EriyefwQrm5uezfv5+uXbuW+Lpl58+lw1ndLCsry9i5c6exc+dOAzBmzZpl7Ny50zh8+LBhGIYxfvx445577inc/uDBg0ZoaKjx6KOPGvv27TPeeustIyAgwPjoo4+sOoQyVfT4XnjhBWPp0qXG999/b+zdu9cYP368ARhLliyx6hDKNGzYMCMyMtJISUkx0tLSCn+ys7MLt/Hmc3gpx+dN53DChAnGunXrjNTUVGP37t3GY489Zvj5+RkrVqwwDMO7z12Bih6jN52/0lz4NEhlOI9/dLHj87Zz+I9//MNISUkxDh48aGzevNkYNGiQER4ebhw6dMgwDM85f5UqfBQ8EnXhz7333msYhmHce++9Rvfu3Yu8JyUlxWjTpo0RGBho1K9f35gzZ477Cy+nih7fzJkzjYYNGxrBwcFG9erVjS5duhj/+c9/rCm+HEo6NsCYP39+4TbefA4v5fi86RwOHTrUqFevnhEYGGjUrl3b6NWrV+GXsmF497krUNFj9KbzV5oLv5wrw3n8o4sdn7edw9tuu82IjY01AgICjLi4OOOWW24xvv3228LXPeX82QzjfyNLRERERNzApwecioiIiPspfIiIiIhbKXyIiIiIWyl8iIiIiFspfIiIiIhbKXyIiIiIWyl8iIiIiFspfIiIiIhbKXyIiIiIWyl8iIiIiFspfIiIiIhbKXyIiIiIW/1/4P2z9ED11kkAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#model versus data\n", + "model=linparas[0]*dataobj[\"x\"]+linparas[1]\n", + "\n", + "plt.scatter(dataobj[\"x\"], dataobj[\"y\"], label='Data')\n", + "#add error bars\n", + "plt.plot(dataobj[\"x\"], model, label='Model', linestyle='-', color='tab:orange')\n", + "plt.scatter(dataobj[\"x\"], (dataobj[\"y\"]-model), color='tab:green', label='Residuals (Data-Model)')\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "830fa6c1", + "metadata": {}, + "source": [ + "### Now, we will define a a gaussian model with both linear and non-linear parameters. To keep it simple, we will fix sigma, or the standard deviation, so we only need to worry about one non-linear parameter. \n", + "\n", + "The gaussian function now has two parameters:\n", + "\n", + "mu (mean): Non-linear\n", + "\n", + "A (amplitude): Linear" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "db8bc4b0", + "metadata": {}, + "outputs": [], + "source": [ + "def gaussian_mu_only_fm_func(nonlin_paras, dataobj, **fm_paras):\n", + " \"\"\"\n", + " nonlin_paras = [mu]\n", + " sigma is fixed\n", + " \"\"\"\n", + " mu = nonlin_paras[0]\n", + " sigma = fm_paras[\"sigma\"]\n", + "\n", + " x = dataobj[\"x\"]\n", + " y = dataobj[\"y\"]\n", + " s = dataobj[\"s\"]\n", + "\n", + " # Gaussian basis (linear in amplitude)\n", + " A = np.exp(-0.5 * ((x - mu) / sigma) ** 2)\n", + "\n", + " M = A[:, None]\n", + "\n", + " return y, M, s" + ] + }, + { + "cell_type": "markdown", + "id": "97cbbb83", + "metadata": {}, + "source": [ + "### Next, we define the example gaussian data set." + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "id": "6003ad85", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "dataobj = {\n", + " \"x\": np.linspace(0, 10, 30),\n", + " \"y\": 5.0 * np.exp(-0.5 * ((np.linspace(0, 10, 30) - 5.2) / 0.8) ** 2)\n", + " + np.random.normal(0, 0.2, 30),\n", + " \"s\": np.ones(30) * 0.2,\n", + "}\n", + "\n", + "plt.figure()\n", + "plt.errorbar(dataobj[\"x\"], dataobj[\"y\"], yerr=dataobj[\"s\"],fmt='o', label='Data')\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "b56845f1", + "metadata": {}, + "source": [ + "### Finally, we will use the `grid_search` function of breads to find the best value of mu based on the probability of the model marginalized over the linear parameters and plot both our model and data." + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "f8c6a8ab", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sigma_fixed=0.8\n", + "mu_grid = np.linspace(4.5, 6.0, 200)\n", + "\n", + "log_prob, log_prob_H0, rchi2, linparas, linparas_err = grid_search(\n", + " para_vecs=[mu_grid],\n", + " dataobj=dataobj,\n", + " fm_func=gaussian_mu_only_fm_func,\n", + " fm_paras={\"sigma\": sigma_fixed},\n", + " numthreads=None,\n", + " bounds=None\n", + ")\n", + "\n", + "plt.plot(mu_grid, log_prob)\n", + "plt.xlabel(\"mu values\")\n", + "plt.ylabel(\"Log probability\")\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "id": "59851c6b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Best-fit mu: 5.185929648241206\n" + ] + } + ], + "source": [ + "imax = np.nanargmax(log_prob)\n", + "mu_best = mu_grid[imax]\n", + "\n", + "print(\"Best-fit mu:\", mu_best)" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "0e21732c", + "metadata": {}, + "outputs": [], + "source": [ + "results = fitfm(\n", + " nonlin_paras=[mu_best],\n", + " dataobj=dataobj,\n", + " fm_func=gaussian_mu_only_fm_func,\n", + " fm_paras={\"sigma\": sigma_fixed}\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "id": "b5d548aa", + "metadata": {}, + "outputs": [], + "source": [ + "log_prob, log_prob_H0, rchi2, linparas, linparas_err = results" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "id": "a712465a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Amplitude A: 4.96715269229023 ± 0.10625957505635589\n", + "Reduced chi2: 1.3473429646275017\n" + ] + } + ], + "source": [ + "A = linparas[0]\n", + "A_err = linparas_err[0]\n", + "\n", + "print(\"Amplitude A:\", A, \"±\", A_err)\n", + "print(\"Reduced chi2:\", rchi2)" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "id": "de06abaa", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "mu_fit, sigma_fit = mu_best, sigma_fixed\n", + "\n", + "model = A * np.exp(-0.5 * ((dataobj[\"x\"] - mu_fit) / sigma_fit) ** 2)\n", + "\n", + "plt.figure()\n", + "plt.errorbar(dataobj[\"x\"], dataobj[\"y\"], yerr=dataobj[\"s\"],fmt='o', label='Data')\n", + "plt.plot(dataobj[\"x\"], model, color='tab:orange', label='Gaussian model')\n", + "plt.plot(dataobj[\"x\"], dataobj[\"y\"] - model, color='tab:green', label='Residuals')\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "550ba1f5", + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a034f1ef", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python (breads)", + "language": "python", + "name": "breads-env" + }, + "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.18" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From ff3cbde9f9e3702754d1204d20dc8b005230836b Mon Sep 17 00:00:00 2001 From: Katelyn Horstman <46659723+KHorstman@users.noreply.github.com> Date: Wed, 22 Apr 2026 11:28:45 -0700 Subject: [PATCH 2/3] Updated breads tutorial Fixed typo, added high level paragraph, re-formatted, added breads instrument class, added MCMC simulations --- demos/breads_simple_fit_tutorial.ipynb | 417 ++++++++++++++++++++----- 1 file changed, 335 insertions(+), 82 deletions(-) diff --git a/demos/breads_simple_fit_tutorial.ipynb b/demos/breads_simple_fit_tutorial.ipynb index e453633..01cedbe 100644 --- a/demos/breads_simple_fit_tutorial.ipynb +++ b/demos/breads_simple_fit_tutorial.ipynb @@ -2,18 +2,34 @@ "cells": [ { "cell_type": "markdown", - "id": "36a2e1d6", + "id": "d2691389", "metadata": {}, "source": [ - "# Using breads to fit example linear and guassian data sets" + "# Using breads to fit example linear and gaussian data sets" ] }, { "cell_type": "markdown", - "id": "f00451df", + "id": "570c64f1", "metadata": {}, "source": [ - "### Import necessary modules from breads and packages" + "This tutorial will teach you how to use breads to fit models to data by analytically marginalizing over linear parameters, enabling the evaluation of model probabilities without relying on computationally expensive MCMC methods. Through simple linear and Gaussian examples, you will learn how breads performs parameter estimation and how its grid-based approach compares to traditional posterior sampling techniques." + ] + }, + { + "cell_type": "markdown", + "id": "fff45256", + "metadata": {}, + "source": [ + "## Set-up" + ] + }, + { + "cell_type": "markdown", + "id": "c9aca125", + "metadata": {}, + "source": [ + "Import necessary modules from breads and packages" ] }, { @@ -21,20 +37,39 @@ "execution_count": 1, "id": "de52fbe7", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Users/khorstman/opt/anaconda3/envs/breads-env/lib/python3.10/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n", + " from .autonotebook import tqdm as notebook_tqdm\n" + ] + } + ], "source": [ "from breads.fit import fitfm\n", + "from breads.instruments import Instrument\n", "from breads.grid_search import grid_search\n", "import numpy as np\n", - "import matplotlib.pyplot as plt" + "import matplotlib.pyplot as plt\n", + "import emcee" ] }, { "cell_type": "markdown", - "id": "27d0d289", + "id": "f7034dd7", "metadata": {}, "source": [ - "### First, we need to define the function for a line. Since the function for a line only contains linear parameters, no non-linear parameters are included. However, the `fitfm` function requires non-linear parameters, so we must include them in the definition of our line. \n", + "## Linear model fitting" + ] + }, + { + "cell_type": "markdown", + "id": "d195ada8", + "metadata": {}, + "source": [ + "First, we need to define the function for a line. Since the function for a line only contains linear parameters, no non-linear parameters are included. However, the `fitfm` function requires non-linear parameters, so we must include them in the definition of our line. \n", "\n", "The linear forward model function must return:\n", "\n", @@ -49,62 +84,100 @@ }, { "cell_type": "code", - "execution_count": 32, + "execution_count": 2, "id": "6f75c8bc", "metadata": {}, "outputs": [], "source": [ - "def linear_fm_func(nonlin_paras, dataobj, **fm_paras):\n", - " x = dataobj[\"x\"]\n", - " y = dataobj[\"y\"]\n", - " s = dataobj[\"s\"]\n", + "import numpy as np\n", "\n", - " M = np.vstack([x, np.ones_like(x)]).T\n", + "def linear_fm_func(nonlin_paras, instrument: \"Instrument\", **fm_paras):\n", + " \"\"\"\n", + " Build a linear forward model for an Instrument instance.\n", + " \n", + " Parameters\n", + " ----------\n", + " nonlin_paras : array-like\n", + " Non-linear parameters (not used in this simple linear model,but kept for consistency).\n", + " \n", + " instrument : Instrument\n", + " An instance of the Instrument class containing wavelengths and data.\n", + " \n", + " Returns\n", + " -------\n", + " y : np.ndarray\n", + " The dependent variable (instrument data flattened).\n", + " M : np.ndarray\n", + " The design matrix for linear fitting (wavelengths and constant term).\n", + " s : np.ndarray or None\n", + " Uncertainties from instrument.noise, if available.\n", + " \"\"\"\n", "\n", - " # Return data, model, uncertainties\n", + " # Flatten the data for 1D linear fit\n", + " y = instrument.data.flatten()\n", + " x = instrument.wavelengths.flatten()\n", + " \n", + " s = instrument.noise.flatten()\n", + " \n", + " # Design matrix: linear term + constant\n", + " M = np.vstack([x, np.ones_like(x)]).T\n", + " \n", " return y, M, s" ] }, { "cell_type": "markdown", - "id": "aba90ef8", + "id": "6d9b18f0", "metadata": {}, "source": [ - "### Next, we need to define our example data set. " + "Next, we need to define our example data set. " ] }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 3, "id": "73142593", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/Users/khorstman/breads/breads/instruments/instrument.py:55: UserWarning: when feeding data manually, ensure correct units. wavelengths in microns, bary_RV in km/s\n", + " warn(\"when feeding data manually, ensure correct units. wavelengths in microns, bary_RV in km/s\")\n" + ] + } + ], "source": [ - "dataobj = {\n", - " \"x\": np.array([1, 2, 3, 4, 5]),\n", - " \"y\": np.array([2.1, 3.5, 6.1, 9.2, 10.2]),\n", - " \"s\": np.ones(5) * 0.1\n", - "}" + "my_instrument = Instrument(\"example_instrument\")\n", + "\n", + "my_instrument.manual_data_entry(\n", + " wavelengths=np.array([1,2,3,4,5]), \n", + " data=np.array([2.1,3.5,6.1,9.2,10.2]), \n", + " noise=np.ones(5)*0.3,\n", + " bad_pixels=None,\n", + " bary_RV=0\n", + ")" ] }, { "cell_type": "markdown", - "id": "8c29cf42", + "id": "bca59b9f", "metadata": {}, "source": [ - "### Finally, we need to use the `fitfm` function to return the best fit linear parameters." + "Finally, we need to use the `fitfm` function to return the best fit linear parameters." ] }, { "cell_type": "code", - "execution_count": 34, + "execution_count": 4, "id": "ea368364", "metadata": {}, "outputs": [], "source": [ "results = fitfm(\n", - " nonlin_paras=[], \n", - " dataobj=dataobj,\n", + " nonlin_paras=[],\n", + " dataobj=my_instrument,\n", " fm_func=linear_fm_func,\n", " fm_paras={}\n", ")" @@ -130,9 +203,9 @@ "name": "stdout", "output_type": "stream", "text": [ - "Slope (m): 2.1899999999999995 ± 0.06920673381926946\n", - "Intercept (b): -0.3500000000000045 ± 0.22953276904451655\n", - "Reduced chi2: 22.93999999999998\n" + "Slope (m): 2.189999999999999 ± 0.11986957920086994\n", + "Intercept (b): -0.3499999999999976 ± 0.39756241798707526\n", + "Reduced chi2: 2.548888888888885\n" ] } ], @@ -150,7 +223,7 @@ "outputs": [ { "data": { - "image/png": "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vZsNGzZcdFtvPIflPT5vO4dNmzZl165d/P777yxZsoR7772XtWvXlvrl7I3nriLH6G3n7+jRozzyyCOsWLGC4ODgcr/PW87jpRyft53DAQMGFP73VVddRadOnWjYsCELFy5k9OjRJb7HivPn07ddYmJiOHbsWJG+9PR0qlSpUmJCrAyuueYafvjhB6vLKNOIESP47LPPWLNmDXXq1ClzW288hxU5vpJ48jkMDAykUaNGtGvXjqSkJFq1asVLL71U4rbeeO6gYsdYEk8+f9u3byc9PZ22bdtSpUoVqlSpwtq1a5k9ezZVqlTBbrcXe483ncdLOb6SePI5vFDVqlW56qqrSq3XqvPn01c+OnXqxOeff16kb8WKFbRr146AgACLqnKtnTt3etxl0AKGYTBixAiWLl1KSkoKCQkJF32PN53DSzm+knjyObyQYRjk5uaW+Jo3nbuylHWMJfHk89erV69iT0bcd999NGvWjHHjxuHv71/sPd50Hi/l+EriyefwQrm5uezfv5+uXbuW+Lpl58+lw1ndLCsry9i5c6exc+dOAzBmzZpl7Ny50zh8+LBhGIYxfvx445577inc/uDBg0ZoaKjx6KOPGvv27TPeeustIyAgwPjoo4+sOoQyVfT4XnjhBWPp0qXG999/b+zdu9cYP368ARhLliyx6hDKNGzYMCMyMtJISUkx0tLSCn+ys7MLt/Hmc3gpx+dN53DChAnGunXrjNTUVGP37t3GY489Zvj5+RkrVqwwDMO7z12Bih6jN52/0lz4NEhlOI9/dLHj87Zz+I9//MNISUkxDh48aGzevNkYNGiQER4ebhw6dMgwDM85f5UqfBQ8EnXhz7333msYhmHce++9Rvfu3Yu8JyUlxWjTpo0RGBho1K9f35gzZ477Cy+nih7fzJkzjYYNGxrBwcFG9erVjS5duhj/+c9/rCm+HEo6NsCYP39+4TbefA4v5fi86RwOHTrUqFevnhEYGGjUrl3b6NWrV+GXsmF497krUNFj9KbzV5oLv5wrw3n8o4sdn7edw9tuu82IjY01AgICjLi4OOOWW24xvv3228LXPeX82QzjfyNLRERERNzApwecioiIiPspfIiIiIhbKXyIiIiIWyl8iIiIiFspfIiIiIhbKXyIiIiIWyl8iIiIiFspfIiIiIhbKXyIiIiIWyl8iIiIiFspfIiIiIhbKXyIiIiIW/1/4P2z9ED11kkAAAAASUVORK5CYII=", + "image/png": "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zuPO27As6+fu2/CKK64wFixYUOJr7rzt/uxC6+iu2y89Pd1o0KCBsX79eqNz587GhAkTSp3XHbdjedbP3bbh5MmTjZYtW5Z5fqu2n0ft+SivzZs307Nnz2LTevXqxbZt28jNzbUolf21bt2aqKgounXrxoYNG6yOU2apqakAVKlSpdR53HkblmX9CrnbNszPz+fDDz8kMzOT9u3blziPO287KNs6FnK37Td27Fj69u1L9+7dLzqvO27H8qxfIXfahj/++CPVq1cnJiaGW2+9lcOHD5c6r1Xbz+UeLOdMycnJVKtWrdi0atWqkZeXx6lTp4iKirIomX1ERUUxb948rr76arKzs/nXv/5Ft27diI+P54YbbrA63gUZhsFDDz1Ex44dadasWanzues2LOv6uds23Lt3L+3btycrK4tKlSqxYsUKmjRpUuK87rrtyrOO7rb9AD788EN27NjB1q1byzS/u23H8q6fu23Da6+9ln/+8580bNiQEydO8Pzzz9OhQwf2799P1apVz5vfqu3n1eUDwGazFRsb/7vh61+nu6NGjRrRqFGjonH79u05duwYs2bNcsn/aP5s3Lhx7Nmzh6+++uqi87rjNizr+rnbNmzUqBG7du3i999/Z9myZdx1110kJCSU+uXsjtuuPOvobtvv2LFjTJgwgXXr1hEUFFTm97nLdryU9XO3bXjjjTcW/bl58+a0b9+eevXq8f777/PQQw+V+B4rtp9XH3aJjIwkOTm52LSUlBT8/PxKbIie4LrrruPHH3+0OsYFPfDAA6xatYoNGzZQs2bNC87rjtuwPOtXElfehgEBAdSvX5+2bdsyffp0WrZsyT/+8Y8S53XHbQflW8eSuPL22759OykpKVx99dX4+fnh5+dHQkICr7/+On5+fuTn55/3HnfajpeyfiVx5W34VxUrVqR58+al5rVq+3n1no/27duzevXqYtPWrVtH27Zt8ff3tyiVY+3cudPldoMWMgyDBx54gBUrVhAfH09MTMxF3+NO2/BS1q8krrwN/8owDLKzs0t8zZ223YVcaB1L4srbr1u3buddGTFy5EgaN27M448/jq+v73nvcafteCnrVxJX3oZ/lZ2dzYEDB+jUqVOJr1u2/Rx6OquTpaenGzt37jR27txpAMbs2bONnTt3Gj///LNhGIbxxBNPGH/729+K5j98+LARHBxs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", "text/plain": [ "
" ] @@ -160,23 +233,36 @@ } ], "source": [ - "#model versus data\n", - "model=linparas[0]*dataobj[\"x\"]+linparas[1]\n", + "model = linparas[0] * my_instrument.wavelengths + linparas[1]\n", "\n", - "plt.scatter(dataobj[\"x\"], dataobj[\"y\"], label='Data')\n", - "#add error bars\n", - "plt.plot(dataobj[\"x\"], model, label='Model', linestyle='-', color='tab:orange')\n", - "plt.scatter(dataobj[\"x\"], (dataobj[\"y\"]-model), color='tab:green', label='Residuals (Data-Model)')\n", + "plt.errorbar(\n", + " my_instrument.wavelengths, \n", + " my_instrument.data, \n", + " yerr=my_instrument.noise, \n", + " fmt='o', \n", + " label='Data'\n", + ")\n", + "\n", + "plt.plot(my_instrument.wavelengths, model, label='Linear Fit')\n", + "plt.xlabel(\"Wavelength\")\n", "plt.legend()\n", "plt.show()" ] }, + { + "cell_type": "markdown", + "id": "c44947e5", + "metadata": {}, + "source": [ + "## Gaussian model fitting" + ] + }, { "cell_type": "markdown", "id": "830fa6c1", "metadata": {}, "source": [ - "### Now, we will define a a gaussian model with both linear and non-linear parameters. To keep it simple, we will fix sigma, or the standard deviation, so we only need to worry about one non-linear parameter. \n", + "Now, we will define a a gaussian model with both linear and non-linear parameters. To keep it simple, we will fix sigma, or the standard deviation, so we only need to worry about one non-linear parameter. \n", "\n", "The gaussian function now has two parameters:\n", "\n", @@ -187,27 +273,48 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 20, "id": "db8bc4b0", "metadata": {}, "outputs": [], "source": [ - "def gaussian_mu_only_fm_func(nonlin_paras, dataobj, **fm_paras):\n", + "import numpy as np\n", + "\n", + "def gaussian_mu_only_fm_func(nonlin_paras, instrument, **fm_paras):\n", " \"\"\"\n", - " nonlin_paras = [mu]\n", - " sigma is fixed\n", + " Linear forward model for a Gaussian with fixed sigma, fitting only mu.\n", + " \n", + " Parameters\n", + " ----------\n", + " nonlin_paras : list or array\n", + " [mu] - the Gaussian center\n", + " \n", + " instrument : Instrument\n", + " Instrument instance containing wavelengths, data, and noise\n", + " \n", + " fm_paras : dict\n", + " Additional parameters, must include 'sigma'\n", + " \n", + " Returns\n", + " -------\n", + " y : np.ndarray\n", + " The dependent variable (instrument data flattened).\n", + " M : np.ndarray\n", + " The design matrix for linear fitting (gaussian).\n", + " s : np.ndarray or None\n", + " Uncertainties from instrument.noise, if available.\n", " \"\"\"\n", + " # Extract mu and sigma\n", " mu = nonlin_paras[0]\n", " sigma = fm_paras[\"sigma\"]\n", "\n", - " x = dataobj[\"x\"]\n", - " y = dataobj[\"y\"]\n", - " s = dataobj[\"s\"]\n", + " x = instrument.wavelengths.flatten()\n", + " y = instrument.data.flatten()\n", + " s = instrument.noise.flatten()\n", "\n", " # Gaussian basis (linear in amplitude)\n", " A = np.exp(-0.5 * ((x - mu) / sigma) ** 2)\n", - "\n", - " M = A[:, None]\n", + " M = A[:, None] \n", "\n", " return y, M, s" ] @@ -217,18 +324,18 @@ "id": "97cbbb83", "metadata": {}, "source": [ - "### Next, we define the example gaussian data set." + "Next, we define the example gaussian data set." ] }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 21, "id": "6003ad85", "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "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lzV16lRryZIldpcUUx588EFr8uTJdpcR8+bMmWPdfffdfutuvvlma968eTZVFJskWa+88opvuaOjw0pPT7fWrl3rW9fc3Gy53W5r48aNYa/H8R2L1tZWVVRUaNasWX7rZ82apXfeecemqmKf1+uVJKWmptpcSWxavHix5syZoxkzZthdSkzatm2bxo8fr7/9279VWlqaxowZo+eff97usmLO5MmT9dZbb+mTTz6RJB06dEhvv/22brjhBpsri23V1dWqq6vzOy4mJCRo6tSpETkuRvxLyEw7ceKE2tvbNXDgQL/1AwcOVF1dnU1VxTbLsrRs2TJNnjxZ2dnZdpcTc7Zu3arKykqVl5fbXUrM+vTTT1VUVKRly5bpoYceUllZmX7yk58oISFBP/jBD+wuL2Y8+OCD8nq9GjlypOLi4tTe3q7HH39cd9xxh92lxbTOY9/ZjoufffZZ2D/f8cGi07e/gt2yLKNfy47/d++99+r999/X22+/bXcpMaempkZLlizRm2++qcTERLvLiVkdHR0aP3681qxZI0kaM2aMjhw5oqKiIoKFQS+99JJKSkq0ZcsWXXnllaqqqtLSpUs1aNAg3XXXXXaXF/PsOi46Plj0799fcXFxZ3Qn6uvrz0hrCN19992nbdu2af/+/Ro8eLDd5cSciooK1dfXa9y4cb517e3t2r9/vzZs2KCWlhbFxcXZWGFs8Hg8ysrK8lt3xRVX6Le//a1NFcWmn/70p1q+fLluv/12SdKoUaP02WefqbCwkGARRunp6ZK+7lx4PB7f+kgdFx1/jUV8fLzGjRunXbt2+a3ftWuXJk6caFNVsceyLN177716+eWXtXv3bmVmZtpdUky67rrr9MEHH6iqqsr3GD9+vObOnauqqipChSGTJk0643bpTz75RJdeeqlNFcWmpqYm9ejhf5iJi4vjdtMwy8zMVHp6ut9xsbW1Vfv27YvIcdHxHQtJWrZsmb7//e9r/PjxmjBhgjZt2qTjx49r4cKFdpcWMxYvXqwtW7botddeU3Jysq9D5Ha71bt3b5urix3JyclnXLfSp08f9evXj+tZDLr//vs1ceJErVmzRrfeeqvKysq0adMmbdq0ye7SYkp+fr4ef/xxXXLJJbryyiv13nvvaf369br77rvtLs3xTp06pX//93/3LVdXV6uqqkqpqam65JJLtHTpUq1Zs0YjRozQiBEjtGbNGiUlJenOO+8Mf3Fhv+8kQp599lnr0ksvteLj462xY8dyG6Rhks762Lx5s92lxTxuNw2P7du3W9nZ2VZCQoI1cuRIa9OmTXaXFHMaGhqsJUuWWJdccomVmJhoDR061Hr44YetlpYWu0tzvD179pz1/8l33XWXZVlf33JaUFBgpaenWwkJCda1115rffDBBxGpja9NBwAAxjj+GgsAABA9CBYAAMAYggUAADCGYAEAAIwhWAAAAGMIFgAAwBiCBQAAMIZgAQAAjCFYAAjZypUrdfXVV9tdho/L5dKrr75qdxlAt0SwABxk48aNSk5OVltbm2/dqVOn1KtXL02ZMsVv2wMHDsjlcumTTz6JdJkRE22BBgDBAnCU3NxcnTp1SgcPHvStO3DggNLT01VeXq6mpibf+r1792rQoEG67LLL7CgVQDdFsAAc5PLLL9egQYO0d+9e37q9e/fqxhtv1LBhw/TOO+/4rc/NzVVJSYnGjx+v5ORkpaen684771R9fb0kqaOjQ4MHD9bGjRv9PqeyslIul0uffvqpJMnr9epHP/qR0tLSlJKSounTp+vQoUPnrHXz5s264oorlJiYqJEjR+q5557zPXfs2DG5XC69/PLLys3NVVJSkkaPHq0//OEPfu/x/PPPKyMjQ0lJSfre976n9evXq2/fvpKk4uJirVq1SocOHZLL5ZLL5VJxcbHvtSdOnND3vvc9JSUlacSIEdq2bdsF72cAwSNYAA4zbdo07dmzx7e8Z88eTZs2TVOnTvWtb21t1R/+8Afl5uaqtbVVq1ev1qFDh/Tqq6+qurpa8+fPlyT16NFDt99+u371q1/5fcaWLVs0YcIEDR06VJZlac6cOaqrq9Prr7+uiooKjR07Vtddd51Onjx51hqff/55Pfzww3r88cf14Ycfas2aNfrHf/xHvfjii37bPfzww3rggQdUVVWlyy67THfccYdvmOf3v/+9Fi5cqCVLlqiqqkozZ87U448/7nvtbbfdpr//+7/XlVdeqdraWtXW1uq2227zPb9q1Srdeuutev/993XDDTdo7ty5XdYLwKCIfIcqAGM2bdpk9enTx/rqq6+shoYGq2fPntYXX3xhbd261Zo4caJlWZa1b98+S5L15z//+YzXl5WVWZKsxsZGy7Isq7Ky0nK5XNaxY8csy7Ks9vZ26+KLL7aeffZZy7Is66233rJSUlKs5uZmv/cZNmyY9Ytf/MKyLMsqKCiwRo8e7XsuIyPD2rJli9/2q1evtiZMmGBZlmVVV1dbkqwXXnjB9/yRI0csSdaHH35oWZZl3XbbbdacOXP83mPu3LmW2+32LX/7cztJsh555BHf8qlTpyyXy2Xt3LnzjG0BmEXHAnCY3NxcnT59WuXl5Tpw4IAuu+wypaWlaerUqSovL9fp06e1d+9eXXLJJRo6dKjee+893Xjjjbr00kuVnJysadOmSZKOHz8uSRozZoxGjhypX//615Kkffv2qb6+XrfeeqskqaKiQqdOnVK/fv100UUX+R7V1dX685//fEZ9//mf/6mamhrdc889ftv/0z/90xnbX3XVVb6fPR6PJPmGaT7++GPl5OT4bf/t5XP55nv36dNHycnJvvcGED497S4AQGCGDx+uwYMHa8+ePfryyy81depUSVJ6eroyMzP1+9//Xnv27NH06dN1+vRpzZo1S7NmzVJJSYkGDBig48eP6/rrr1dra6vvPefOnastW7Zo+fLl2rJli66//nr1799f0tfXYXg8Hr/rOjp1Xu/wTR0dHZK+Hg75zne+4/dcXFyc33KvXr18P7tcLr/XW5blW9fJsqwL2UVnvHfn+3e+N4DwIVgADpSbm6u9e/fqyy+/1E9/+lPf+qlTp+qNN97Qu+++qwULFuijjz7SiRMntHbtWmVkZEiS3x0lne6880498sgjqqio0L/927+pqKjI99zYsWNVV1ennj17asiQIeetbeDAgbr44ov16aefau7cuUH/jiNHjlRZWZnfum/XHh8fr/b29qA/A4B5BAvAgXJzc7V48WJ99dVXvo6F9HWwWLRokZqbm5Wbm6vExETFx8frmWee0cKFC3X48GGtXr36jPfLzMzUxIkTdc8996itrU033nij77kZM2ZowoQJuummm7Ru3Tpdfvnl+vzzz/X666/rpptu0vjx4894v5UrV+onP/mJUlJSNHv2bLW0tOjgwYP68ssvtWzZsgv6He+77z5de+21Wr9+vfLz87V7927t3LnTr4sxZMgQVVdXq6qqSoMHD1ZycrISEhIC2ZUADOMaC8CBcnNz9T//8z8aPny4Bg4c6Fs/depUNTY2atiwYcrIyNCAAQNUXFys3/zmN8rKytLatWv15JNPnvU9586dq0OHDunmm29W7969fetdLpdef/11XXvttbr77rt12WWX6fbbb9exY8f8PvubfvjDH+qFF15QcXGxRo0apalTp6q4uFiZmZkX/DtOmjRJGzdu1Pr16zV69GiVlpbq/vvvV2Jiom+bW265RXl5ecrNzdWAAQN814kAsI/LCmTQEgBs9Hd/93f66KOPdODAAbtLAdAFhkIARK0nn3xSM2fOVJ8+fbRz5069+OKLfhNtAYg+dCwARK1bb71Ve/fuVWNjo4YOHar77rtPCxcutLssAOdAsAAAAMZw8SYAADCGYAEAAIwhWAAAAGMIFgAAwBiCBQAAMIZgAQAAjCFYAAAAYwgWAADAmP8F8cS7A9hQ1uYAAAAASUVORK5CYII=", "text/plain": [ "
" ] @@ -238,15 +345,31 @@ } ], "source": [ - "dataobj = {\n", - " \"x\": np.linspace(0, 10, 30),\n", - " \"y\": 5.0 * np.exp(-0.5 * ((np.linspace(0, 10, 30) - 5.2) / 0.8) ** 2)\n", - " + np.random.normal(0, 0.2, 30),\n", - " \"s\": np.ones(30) * 0.2,\n", - "}\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", "\n", + "# Set random seed for reproducibility\n", + "np.random.seed(42)\n", + "\n", + "# Generate Gaussian data\n", + "x = np.linspace(0, 10, 30)\n", + "y = 5.0 * np.exp(-0.5 * ((x - 5.2) / 0.8) ** 2) + np.random.normal(0, 0.2, x.size)\n", + "s = np.ones_like(x) * 0.2\n", + "\n", + "# Create an Instrument instance\n", + "my_instrument = Instrument(\"example_instrument\")\n", + "my_instrument.manual_data_entry(\n", + " wavelengths=x, \n", + " data=y, \n", + " noise=s, \n", + " bad_pixels=None,\n", + " bary_RV=0\n", + ")\n", + "\n", + "# Plot the instrument data\n", "plt.figure()\n", - "plt.errorbar(dataobj[\"x\"], dataobj[\"y\"], yerr=dataobj[\"s\"],fmt='o', label='Data')\n", + "plt.errorbar(my_instrument.wavelengths, my_instrument.data, yerr=my_instrument.noise, fmt='o', label='Data')\n", + "plt.xlabel(\"Wavelength\")\n", "plt.legend()\n", "plt.show()" ] @@ -256,18 +379,18 @@ "id": "b56845f1", "metadata": {}, "source": [ - "### Finally, we will use the `grid_search` function of breads to find the best value of mu based on the probability of the model marginalized over the linear parameters and plot both our model and data." + "Finally, we will use the `grid_search` function of breads to find the best value of mu based on the probability of the model marginalized over the linear parameters and plot both our model and data." ] }, { "cell_type": "code", - "execution_count": 48, + "execution_count": 22, "id": "f8c6a8ab", "metadata": {}, "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAj4AAAGwCAYAAACpYG+ZAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAW5dJREFUeJzt3XdcVXXjB/DPHexxmbKXe6Ci4ABXPqZmWpq5cudIzVFZPb98WpaaZvrko5nl1tw5WmqpZSqKIAJOnKAsAQHZcoF7z+8PkCIXF+7l3PF5v168XnK4Fz4n894P53yHRBAEAUREREQmQCp2ACIiIqL6wuJDREREJoPFh4iIiEwGiw8RERGZDBYfIiIiMhksPkRERGQyWHyIiIjIZMjFDqBv1Go10tLSYGdnB4lEInYcIiIiqgFBEFBQUABPT09IpY+/rsPi8w9paWnw8fEROwYRERHVQnJyMry9vR/7dRaff7CzswNQ8R/O3t5e5DRERERUE/n5+fDx8al6H38cFp9/eHB7y97ensWHiIjIwDxtmAoHNxMREZHJYPEhIiIik8HiQ0RERCaDxYeIiIhMBosPERERmQwWHyIiIjIZLD5ERERkMlh8iIiIyGSw+BAREZHJYPEhIiIik2GUxefrr79GQEAALC0tERwcjBMnTogdiYiIiPSA0RWfnTt34s0338T777+P2NhYdOvWDf369UNSUpLY0YiIiEhkEkEQBLFDaFOnTp3Qvn17rFq1qupYixYtMGjQICxcuPCpz8/Pz4dCoUBeXh43KSUSmbJchbz7ZXC2sYBM+uSNB4nItNX0/duodmcvLS3F2bNn8d5771U73qdPH5w6deqRz1EqlVAqlVWf5+fn6zQjET2eSi3g+PW72B2dgrO37yGjoASCAJjJJPBxtEb3pq4Y3sEHLTz4SwkR1Y5RFZ+srCyoVCq4ublVO+7m5ob09PRHPmfhwoX45JNP6iMeET3B7/EZ+PinS0i5d/+hr5WpBCRkFSEhqwgbT91CaENnzH8pEI1cbUVISkSGzKiKzwMSSfVL4oIgPHTsgTlz5mD27NlVn+fn58PHx0en+YjoL7nFpXj/h4vYf/4OAMDB2gyDgrwwoI0HAlxsoLAyQ0aBEvFp+dgbm4LDlzMQkZCNfv87gVn/aoxpzzTmbTAiqjGjKj4uLi6QyWQPXd3JzMx86CrQAxYWFrCwsKiPeET0D8k5xRi3IQoJd4sglQCTujXEm882gbV59ZcmLwcreDlY4dmWbki5V4wPfriIP6/exZJD13ApLR9fDg+CpZlMpLMgIkNiVLO6zM3NERwcjMOHD1c7fvjwYYSFhYmUioge5WJqHl76+hQS7hbBQ2GJH6Z3wX+eb/FQ6fknb0drbBjfAV8MaQNzmRQHL6Zj1NpI5BaX1lNyIjJkRlV8AGD27NlYu3Yt1q9fj/j4eLz11ltISkrC1KlTxY5GRJVuZBZizLpIZBUq0cLDHvte74I23g41fr5EIsHQEB9sntgR9pZynL19D+M3nEFxabnuQhORUTC64jN8+HAsW7YMn376KYKCgnD8+HEcOHAAfn5+YkcjIgDpeSUYtz4K94rL0NZbgV1TOsNdYVmr79W5oTN2TQ2FwsoMccm5mL41BmUqtZYTE5ExMbp1fOqK6/gQ6U5xaTkGf30KV9IL0NDFBt9PDYWzbd3H2J29fQ+j1p5GSZkar3T0wcLBbbSQlogMSU3fv43uig8R6SdBEPDBDxdxJb0ArnYW2Dyxo1ZKDwAE+zli5cj2kEqA7VHJ+D46WSvfl4iMD4sPEdWLXdHJ2BuTCqkEWPFKO3g7Wmv1+/dq4Ya3nm0KAPjwx4u4ks7FSInoYSw+RKRz1zIK8NGPlwAA7/Rths4NnXXyc6b3bIweTV1RUqbG61ticL9UpZOfQ0SGi8WHiHSqXKXGu9+fg7JcjR5NXTG1eyOd/SypVIIvhwfB3d4SCVlF+OK3qzr7WURkmFh8iEinVp9IwLmUPNhbyrF4SBtIdbzKspONORa+3BoAsOFUIs7cytHpzyMiw8LiQ0Q6cz2jAMsOXwcAfPRCK7jZ127auqZ6NmuAYSHeEATg3e/P8ZYXEVVh8SEinRAEAe//cBGlKjV6NnPFy+296vXnv9+/JdztLXEruxgrj96o159NRPqLxYeIdOKnc2mISsyBpZkU8wYFPnajYF1RWJlh7outAACrjycgMauoXn8+EeknFh8i0rpCZTk+OxAPAJj+TGOtT12vqb6t3NC9qStKVWp88vMlcL1WImLxISKtW/H7dWTkK+HnbI3J3RuKlkMikWDuCy1hJpPgz6t3cfhyhmhZiEg/sPgQkVYl5xRjw8lbAICPBrSEpZlM1DwNXW0xuVtF+Vp48Ar38iIycSw+RKRVSw9dRalKjS6NnfGv5g3EjgMAeL1nY7jYmiMxqwjbo5LEjkNEImLxISKtuZiahx/i0gAAc/q1qPcBzY9jayHHG5XbWfzvyHUUlJSJnIiIxMLiQ0Ras/BgxYDml9p5IdBLIXKa6kZ08EFDVxtkF5Xim2M3xY5DRCJh8SEirYi4mY2TN7JhLpPi7T5NxY7zEDOZFO891xwAsD78Fu4WKEVORERiYPEhIq1YduQaAGBERx/Rpq8/Te+WbgjyccD9MhVW/cmrPkSmiMWHiOrsdEI2IhNzYC6TYtozutuEtK4kEglm9664GrUl8jbS80pETkRE9Y3Fh4jq7H9HKvbjGtbBGx4KK5HTPFm3Ji7o6O+E0nI1t7IgMkEsPkRUJ1GJOYhIyIaZTIJpzzQWO85TSSQSzK4cg7TjTBLScu+LnIiI6hOLDxHVyf9+rxjbMzTEB14O+n2154HODZ3RuaETylQC1pxIEDsOEdUjFh8iqrUzt3Jw8kbF1Z7X9Xhsz6NM71lxdWp7VBKyCznDi8hUsPgQUa09GNszJNhbb2dyPU7Xxi5o461ASZm6aosNIjJ+LD5EVCtnb+cg/EYW5FIJXjeAsT3/JJH8lXtTxC3kczVnIpPA4kNEtfL10Yp1cF5u7w0fJ8O62vNAn5ZuaNzAFgUl5dhy+rbYcYioHrD4EJHGrmcU4PcrmZBIgKkGNrbn76TSv8YmrTuRiPulKpETEZGusfgQkcbWnkgEUHHFJMDFRuQ0dfNCW094O1ohu6gUu6KTxY5DRDrG4kNEGsnML8G+2FQAwGvdG4qcpu7MZFJMqTyPb4/dRGm5WuRERKRLLD5EpJFNEbdQqlIj2M8RwX5OYsfRiqEhPnCxtUBaXgl+jEsVOw4R6RCLDxHVWJGyHFtOJwEAJncz/Ks9D1iayTCpWwAAYM2JBAiCIHIiItIVFh8iqrFd0cnIu18Gf2dr9G7pJnYcrXqloy9szGW4llGIE9ezxI5DRDrC4kNENVKuUmNdeMWg5kndGkImlYicSLsUVmYYGuIDAFhbeZ5EZHxYfIioRg5eTEfKvftwsjHHkGBvsePoxIQuAZBIgOPX7uJaRoHYcYhIB1h8iOipBEHA6uMVm3mODfWDpZlM5ES64etsjb4t3QEA63nVh8gosfgQ0VOdvX0PF1LzYCGXYkxnP7Hj6NSDQc57Y1ORxc1LiYwOiw8RPdWmiIrtHAYFecHZ1kLkNLoV7OeItj4OKC1XcxsLIiPE4kNET5SZX4KDF+4AAMaEGvfVHqBi89JJXSuu+nwXcRslZdzGgsiYsPgQ0RNtj0pGuVpAsJ8jAr0UYsepF/0C3eGpsER2USl+iksTOw4RaRGLDxE9VplKja2RFbd7xprA1Z4H5DIpxnfxBwCsDeeChkTGhMWHiB7r0KUMZBYo4WJrgX6BHmLHqVfDO/y1oOHJG9lixyEiLWHxIaLH2hRxCwAwsqMPzOWm9XKhsDKrWq9o46lb4oYhIq0xrVcyIqqxK+n5iErMgUwqwchOpnOb6+/GhvkDAH6/koHknGJxwxCRVrD4ENEjba6cwt63lRvcFZYipxFHI1dbdGviAkEAvuPUdiKjwOJDRA/Ju1+GfTGpAICxof7ihhHZuMrz33kmGfdLObWdyNCx+BDRQ/acTcH9MhWaudmhU4CT2HFE1bN5A/g4WSHvfhl+iEsVOw4R1RGLDxFVo1YLVbd1xoT6QSIxrl3YNSWTSjC2sz8AYNOpW5zaTmTgWHyIqJoTN7KQmFUEOws5XmrnJXYcvTAsxAdWZjJcSS9AZGKO2HGIqA5YfIiomu8qp7C/HOwNGwu5uGH0hMLaDIMqS+AmTm0nMmgsPkRUJTmnGL9fyQRgGvtyaWJcWMV/j0OXM5CWe1/kNERUWyw+RFRly+nbEASgWxMXNHK1FTuOXmnubo/ODZ2gUgvctZ3IgLH4EBEAoKRMhZ3RyQA4hf1xxlcuaLjjTDJ3bScyUCw+RAQA+OlcGnKLy+DlYIV/NW8gdhy99GwLN3gqLJFTVIqfz3HXdiJDxOJDRBAEAZsrBzWPCfWDTGraU9gfRy6TYnTl2KdNEZzaTmSIWHyICLHJubiYmg9zuRTDQnzEjqPXRnTwhblcioup+YhJuid2HCLSEIsPEWFz5RTtF9t6wsnGXNwwes7JxhwD23oCADae4iBnIkPD4kNk4u4WKHHgQjoAYCynsNfIuMpBzgcv3EFmfom4YYhIIyw+RCZu55kklKrUCPJxQBtvB7HjGIRALwVC/BxRrhawNTJJ7DhEpAEWHyITVq5SV71xP1igj2pmbOVVn21RSSgtV4sbhohqjMWHyIQdic/AnbwSONuY4/nWHmLHMSjPtXKHq50F7hYo8euldLHjEFENsfgQmbBNlYNzR3T0gYVcJnIaw2Iul2JUJ18Afw0OJyL9x+JDZKKuZRQgIiEbUgkwqhNvc9XGyI6+kEsliL59DxdT88SOQ0Q1YDDFZ8GCBQgLC4O1tTUcHBwe+ZikpCS88MILsLGxgYuLC2bNmoXS0tL6DUpkIL6LqLja07ulGzwdrEROY5ga2FuiX+UtwgcLQBKRfjOY4lNaWoqhQ4di2rRpj/y6SqVC//79UVRUhPDwcOzYsQN79uzB22+/Xc9JifRfQUkZ9sakAADGcV+uOhlXuQTAj3FpuFfEX7SI9J1c7AA19cknnwAANm7c+MivHzp0CJcvX0ZycjI8PSsWF1u6dCnGjx+PBQsWwN7evr6iEum9vTGpKCpVoXEDW4Q2chY7jkEL9nNESw97XL6Tj13RyZjSo5HYkYjoCQzmis/TREREIDAwsKr0AEDfvn2hVCpx9uzZxz5PqVQiPz+/2geRMRMEAZsqb8uMDfWDRMJ9uepCIpFU7dr+3enbUKm5fxeRPjOa4pOeng43N7dqxxwdHWFubo709MdPNV24cCEUCkXVh48P9yki43byRjYS7hbB1kKOwe29xY5jFF4M8oSDtRlS7t3H0SuZYschoicQtfjMnTsXEonkiR/R0dE1/n6P+s1VEIQn/kY7Z84c5OXlVX0kJyfX6lyIDMWDQbiD23vB1sJg7nbrNUszGYZXbu66iYOcifSaqK96M2bMwIgRI574GH9//xp9L3d3d0RGRlY7du/ePZSVlT10JejvLCwsYGFhUaOfQWToUu4V40h8BgDuy6Vtozv7YfWJBJy4noWbdwvRyNVW7EhE9AiiFh8XFxe4uLho5XuFhoZiwYIFuHPnDjw8KqaXHjp0CBYWFggODtbKzyAydFsjk6AWgC6NndG4gZ3YcYyKj5M1ejVvgCPxmfgu4jbmvthK7EhE9AgGM8YnKSkJcXFxSEpKgkqlQlxcHOLi4lBYWAgA6NOnD1q2bIkxY8YgNjYWv//+O9555x1MnjyZM7qIAJSUqbDzTMWt3DGd/cUNY6Qe7Nq++2wKCpXl4oYhokcymOLz0UcfoV27dvj4449RWFiIdu3aoV27dlVjgGQyGfbv3w9LS0t06dIFw4YNw6BBg7BkyRKRkxPph/3n7yCnqBSeCks826KB2HGMUpdGLmjoaoNCZTn2Va6TRET6RSIIAude/k1+fj4UCgXy8vJ4pYiMysCVJ3EuORfv9m2G6T0bix3HaG08mYi5P19G4wa2OPxWdy4XQFRPavr+bTBXfIio9uKSc3EuORfmMilGdOCSDbr0crA3bMxluJFZiFM3s8WOQ0T/wOJDZAIeTGEf0MYDzracxahLdpZmVesjbeKu7UR6h8WHyMhlFyrxy/k7AICxlYNvSbceLBVwJD4DKfeKRU5DRH/H4kNk5HZGJ6O0XI023goE+TiIHcckNHGzQ5fGzlALFUsIEJH+YPEhMmIqtYCtpyveeMdyF/Z69eC/946oJJSUqcQNQ0RVWHyIjNjv8RlIzb0PR2szDGjjIXYck9KreQN4OVjhXnFZ1a1GIhIfiw+REdsccRsAMLyDLyzNZCKnMS1ymRSjOvsCqBjkzJVDiPQDiw+RkbqRWYjwG1mQSoBRnXzFjmOSRnTwhblcigupeYhNzhU7DhGBxYfIaG05XXG151/N3eDjZC1yGtPkZGOOF9t6AgA2c2o7kV5g8SEyQoXKcuw+W7Flwrgw7sIupnGVg5z3X7iDuwVKccMQEYsPkTHaF1OxSWZDVxt0aeQidhyT1tpbgXa+DihTCdgRxantRGJj8SEyMoIgYGPlbZUxnf0glXKvKLE9uOqzJfI2ylRqccMQmTgWHyIjE34jCzfvFsHGXIYhwd5ixyEA/Vq7w8XWHBn5Shy6lCF2HCKTxuJDZGQe7A81NMQHdpZm4oYhAICFXIaRHSuntlfum0ZE4mDxITIit7OL8PuVTAB/7RdF+mFkJz/IpBJEJeYg/k6+2HGITBaLD5ER2RxxG4IA9GjqioautmLHob9xV1jiuVbuALhrO5GYWHyIjESRshy7opMBAOO7+Isbhh7pwd/L3thUZBdyajuRGFh8iIzE3thUFJSUI8DFBj2auIodhx4hxM8Rrb0UKC1XYzunthOJgsWHyAgIglB1+2RsKKew6yuJRIKJXQMAVNyWLC3n1Hai+sbiQ2QETt7Ixo3MQk5hNwDPt/ZAAzsLZBYosf9CmthxiEwOiw+REdh4KhEAp7AbAnO5tGrG3brwRO7aTlTPWHyIDFxSdjGnsBuYkZ38YCGX4mJqPqJv3xM7DpFJYfEhMnCbI25xCruBcbIxx+D2XgCAdScSRU5DZFpYfIgMWJGyHDs5hd0gvdqlYpDzocvpSM4pFjkNkelg8SEyYJzCbriautmhWxMXqAUuaEhUn1h8iAwUp7AbvgmVU9t3nklGobJc5DREpoHFh8hAhd/I4hR2A9ejiSsautqgQFmO7ytvWRKRbrH4EBmodeGcwm7opFJJ1VifjaduQaXm1HYiXWPxITJA1zMK8OfVu5BIgFc5qNmgvdzeCworM9zOLsYflcsSEJHusPgQGaD1Jyuu9vRp6QY/ZxuR01BdWJvL8UpHXwDAuvAEkdMQGT8WHyIDk12oxN6YVADApG4NRU5D2jA21A8yqQSnE3JwKS1P7DhERo3Fh8jAbI1MgrJcjbbeCoT4OYodh7TA08EKz7f2AACs5YKGRDrF4kNkQErKVNgccQtAxVRoiYRT2I3Fa5VX734+l4a03PsipyEyXiw+RAbkp3NpyCoshYfCsuoKARmH1t4KhDZ0RrlawPpwXvUh0hUWHyIDIQh/vSGOD/OHmYz/fI3Naz0qrvpsj0pC3v0ykdMQGSe+chIZiJM3snElvQDW5jKMqJwFRMblmaauaOpmi6JSFbZFJokdh8gosfgQGYi1lVOdh4X4QGHFBQuNkUQiweTKsT4bTiZCWa4SORGR8WHxITIAXLDQdAwM8oKbvQUyC5T4MS5N7DhERofFh8gAcMFC02Eul1ZtY7HmeALU3MaCSKtYfIj0XHahEnu4YKFJGdnJF7YWclzPLMSxa3fFjkNkVDQuPn/++acOYhDR42yNTEIpFyw0KfaWZnilow8A4NvjN0VOQ2RcNC4+zz33HBo1aoT58+cjOTlZF5mIqFLFgoW3AXDBQlPzapcAyCu3sTifkit2HCKjoXHxSUtLwxtvvIG9e/ciICAAffv2xa5du1BaWqqLfEQmbW9MKrIKlfDkgoUmx9PBCi+29QQAfHucm5cSaYvGxcfJyQmzZs1CTEwMoqOj0axZM0yfPh0eHh6YNWsWzp07p4ucRCZHpRawuvI2x8RuDblgoQma3L1iTNfBC3eQlF0schoi41CnV9KgoCC89957mD59OoqKirB+/XoEBwejW7duuHTpkrYyEpmk3y6l41Z2MRRWZhjRwUfsOCSCFh726N7UFWoBWBfOqz5E2lCr4lNWVobdu3fj+eefh5+fH3777Td89dVXyMjIQGJiInx8fDB06FBtZyUyGYIg4JtjFVd7xoX6wcZCLnIiEsuUyqs+O6OTkVPEIQVEdaVx8Zk5cyY8PDwwdepUNG3aFLGxsYiIiMCkSZNgY2MDHx8fLFq0CFeuXNFFXiKTEHEzG+dT8mBpJsW4MH+x45CIwho5I9DLHiVlamw8yc1LiepK4+Jz+fJlrFixAmlpaVi2bBkCAwMfeoynpyeOHj2qlYBEpmhV5dWeYSE+cLa1EDkNiUkikWD6M40BABtP3UJBCTcvJaoLjYvPxx9/jKFDh8Lc3Lza8fLychw/fhwAIJfL0aNHD+0kJDIxF1PzcOJ6FmTSv/ZtItPWt5U7GrnaIL+kHFtOc/NSorrQuPj07NkTOTk5Dx3Py8tDz549tRKKyJQ9mLrcv7UHfJysRU5D+kAqleD1yqs+68ITUFLGzUuJakvj4iMIwiMXUcvOzoaNDfcQIqqLpOxi7D9fsTHllB682kN/eTHIE96OVsgqLMXOM1w8lqi2ajxVZPDgwQAq7jePHz8eFhZ/jTtQqVQ4f/48wsLCtJ+QyISsOZEAtQB0b+qKVp4KseOQHjGTSTGlRyN8+MNFfHvsJl7p6AtzOdd2ItJUjf/VKBQKKBQKCIIAOzu7qs8VCgXc3d3x2muvYcuWLbrMSmTUsgqV2BVd8Zv8VF7toUcYGuwNVzsLpOWV4Ie4VLHjEBmkGl/x2bBhAwDA398f77zzDm9rEWnZplO3oKzcjDS0obPYcUgPWZrJMLlbAD47cAWr/ryJl9t7Qybl/m1EmqjVrC6WHiLtKlKWV21GOrVHI25GSo81qpMfFFZmSMwqwoELd8SOQ2RwanTFp3379vj999/h6OiIdu3aPfFFOSYmRmvhiEzF9qgk5N0vQ4CLDfq0chc7DukxGws5Xu3ij2VHrmPl0RsY0MaDRZlIAzUqPgMHDqwazDxo0CBd5iEyOcpyFdaFV6zI+1r3hrx1QU81Pswfa44n4Ep6Af64koleLdzEjkRkMCSCIAhih9An+fn5UCgUyMvLg729vdhxyARsi0zCf/ZdgJu9BY7/uycs5DKxI5EBWHggHt8eT0A7XwfsnRbGqz5k8mr6/s25kEQiKlOp8fWfNwAAU7o3YumhGpvYLQDmcilik3IRkZAtdhwig1GjW12Ojo41/m3iUas6E9Gj/RCbipR79+Fia45XOvqKHYcMSAM7SwwP8cF3p29j5dEbCGvkInYkIoNQo+KzbNkyHcd4slu3bmHevHn4448/kJ6eDk9PT4wePRrvv/9+tT3DkpKSMH36dPzxxx+wsrLCyJEjsWTJkof2FSPSB+UqNb7+s2Iz0sndGsLKnFd7SDNTejTE9qgknLyRjehbOQjxdxI7EpHeq1HxGTdunK5zPNGVK1egVqvx7bffonHjxrh48SImT56MoqIiLFmyBEDF6tH9+/eHq6srwsPDkZ2djXHjxkEQBKxYsULU/ESP8sv5O0jMKoKjtRlGd/YTOw4ZIG9HawwN8cb2qGR8eeQatk7qLHYkIr1Xo8HN+fn5VQOF8vPzn/jY+hoQ/MUXX2DVqlVISKjY0PHgwYMYMGAAkpOT4enpCQDYsWMHxo8fj8zMzMfmUiqVUCqVVZ/n5+fDx8eHg5tJp9RqAX2WHceNzEK806cpZvyridiRyECl3CtGzyV/okwlYNeUUHQM4FUfMk1aHdzs6OiIzMxMAICDgwMcHR0f+nhwvL7k5eXByemvf+AREREIDAysKj0A0LdvXyiVSpw9e/ax32fhwoXVtt/w8fHRaW4iADh4MR03MgthbynH2DB/seOQAau46lPxuvXl4WsipyHSfzW61fXHH39UlYyjR4/qNFBN3Lx5EytWrMDSpUurjqWnp8PNrfpaFo6OjjA3N0d6evpjv9ecOXMwe/bsqs8fXPEh0hW1WsCKP64DAMZ3CYC9pZnIicjQTe/ZGN9HJyMiIRunE7LRmVueED1WjYpPjx49Hvnnupo7dy4++eSTJz7mzJkzCAkJqfo8LS0Nzz33HIYOHYpJkyZVe+yjZp4JgvDEGWkWFhbVdpon0rUj8Rm4kl4AG3MZJnTxFzsOGQEvBysM7+CDLaeT8OXha9g5JVTsSER6q8ablP7dvXv3sG7dOsTHx0MikaBFixZ49dVXq916qokZM2ZgxIgRT3yMv79/1Z/T0tLQs2dPhIaGYvXq1dUe5+7ujsjIyIdylpWVPXQliEgsgiBgxR8V6/aMDfOHgzVnHJJ2TO/ZGLvOpCAyMQenbmZxejvRY2i8gOGxY8fg7++P5cuX4969e8jJycHy5csREBCAY8eOafS9XFxc0Lx58yd+WFpaAgBSU1PxzDPPoH379tiwYQOk0urRQ0NDcfHiRdy589emfYcOHYKFhQWCg4M1PU0infjz2l1cSM2DlZkMk7oGiB2HjIiHwgojOlbcpl92+Dq4KD/Ro2m8ZUVgYCDCwsKwatUqyGQV646oVCq8/vrrOHnyJC5evKj1kGlpaejRowd8fX2xefPmqp8LVFzpeZAhKCgIbm5u+OKLL5CTk4Px48dj0KBBGk1n55YVpCuCIODlVacQk5SLSV0D8MGAlmJHIiOTnleC7l8cRWm5GlsndUKXxrzqQ6ZDZ1tW3Lx5E2+//Xa18iGTyTB79mzcvHmzdmmf4tChQ7hx4wb++OMPeHt7w8PDo+rj7xn2798PS0tLdOnSBcOGDcOgQYOq1vkhEtupm9mIScqFuVyK17o3FDsOGSF3hSVGVq4A/uXha7zqQ/QIGhef9u3bIz4+/qHj8fHxCAoK0kamh4wfPx6CIDzy4+98fX3xyy+/oLi4GNnZ2VixYgUHLpNeEAQB/ztSMZPrlQ4+aGBvKXIiMlbTnmkEC7kU0bfvIfxGlthxiPROjQY3nz9/vurPs2bNwhtvvIEbN26gc+eKVUJPnz6NlStXYtGiRbpJSWTgTlzPQtStHJjLpZj6TCOx45ARc7O3xMhOvthw8ha+PHwNXRu7cOd2or+p0RgfqVQKiUTy1MumEokEKpVKa+HEwDE+pG2CIGDQ16dwLjkXE7oE4KMXOLaHdCszvwTdFh+FslyNTRM6okdTV7EjEelcTd+/a3TFJzExUWvBiEzN7/GZOJecCyszGabxag/Vgwb2lhjd2Q/rwhPx30NX0b0Jr/oQPVCj4uPnxw0UiWpDrRawtHIbgXFh/nC145gzqh9TezTC9qgknEvJw2+X0vFcoMfTn0RkAmq1gCEAXL58GUlJSSgtLa12/MUXX6xzKCJj8euldMTfyYethRxTOJOL6pGrnQUmdQ3A8j9u4IvfruLZFm6QyzSez0JkdDQuPgkJCXjppZdw4cKFauN+HlxGNfQxPkTaolIL+G/l1Z6JXQPgaMNVmql+TereEN+dvo2bd4uwNyYVwzpwH0Iijev/G2+8gYCAAGRkZMDa2hqXLl3C8ePHERISgj///FMHEYkM00/nUnEjsxAKKzNM7MZVmqn+2VuaYXrPxgCAL49cQ0kZfzEl0rj4RERE4NNPP4WrqyukUimkUim6du2KhQsXYtasWbrISGRwylRqLKtct+e17g25AzuJZnRnP3goLHEnrwRbTt8WOw6R6DQuPiqVCra2tgAq9tpKS0sDUDEA+urVq9pNR2Sg9sak4HZ2MZxtzDE+zF/sOGTCLM1keOvZpgCAlUdvIL+kTOREROLSuPgEBgZWLWjYqVMnLF68GCdPnsSnn36Khg05eJNIWa7C8t8rdmCf9kwj2FjUeg4BkVYMbu+FRq42uFdchrXHE8SOQyQqjYvPBx98ALVaDQCYP38+bt++jW7duuHAgQNYvny51gMSGZqdZ5KRmnsfbvYWGN2ZS0GQ+OQyKd7p0wwAsDY8EXcLlCInIhKPxr+K9u3bt+rPDRs2xOXLl5GTkwNHR0cukEUmr6RMha/+qLjaM6NnY1iayZ7yDKL68VygO9p4K3A+JQ8rj97A3BdbiR2JSBR1WtQhOTkZKSkpcHJyYukhArA54hYyC5TwcrDi1GHSKxKJBP/3XHMAwNbI20jOKRY5EZE4NC4+5eXl+PDDD6FQKODv7w8/Pz8oFAp88MEHKCvjoDkyXXnFZVh59CYA4I1eTWAh59Ue0i9dGruga2MXlKkEfHnkmthxiEShcfGZMWMGVq9ejcWLFyM2NhaxsbFYvHgx1q1bh5kzZ+oiI5FB+PrYDeTdL0NTN1u8HOwtdhyiR3q3b8VYn32xqbiSni9yGqL6V6Pd2f9OoVBgx44d6NevX7XjBw8exIgRI5CXl6fVgPWNu7NTbaTl3sczS/5Eabka68aFoFcLN7EjET3W61vP4sCFdDzTzBUbX+0odhwirajp+7fGV3wsLS3h7+//0HF/f3+Ym3NJfjJN/z18DaXlanQMcMK/mjcQOw7RE73btznkUgn+vHoXx6/dFTsOUb3SuPhMnz4d8+bNg1L513RIpVKJBQsWYMaMGVoNR2QIrqTnY09MCgBgTr/mHOhPei/AxQZjQ/0BAJ8diIdKrdGFfyKDVqPp7IMHD672+ZEjR+Dt7Y22bdsCAM6dO4fS0lL06tVL+wmJ9NznB69AEIDnW7ujna+j2HGIamRWr8bYE5OCK+kF+D46GSM6+oodiahe1Kj4KBSKap+//PLL1T738eG0XTJNETezcfTqXcilErzbt7nYcYhqzMHaHLN6NcG8Xy5jyaFrGNDWE7ZcZZxMQI3+L9+wYYOucxAZHEEQsOhgPADglY6+CHCxETkRkWbGdPbDdxG3cCu7GN8eu4m3K1d3JjJmtV7A8O7duwgPD8fJkydx9y4Hx5HpOXAhHedS8mBtLsOsXk3EjkOkMXO5FO/1awEAWHMiAWm590VORKR7GhefoqIiTJgwAR4eHujevTu6desGT09PTJw4EcXFXAmUTEOZSo0vfrsCAJjcrSFc7SxETkRUO31buaGjvxNKytRY8ttVseMQ6ZzGxWf27Nk4duwYfv75Z+Tm5iI3Nxc//vgjjh07hrffflsXGYn0zvaoJNzKLoaLrTkmd28odhyiWpNIJPhgQMVVn72xqTifkituICId07j47NmzB+vWrUO/fv1gb28Pe3t7PP/881izZg12796ti4xEeqVQWY7/HbkOoGJrCg4IJUPXxtsBL7XzAgDM3x8PDde1JTIoGhef4uJiuLk9vCptgwYNeKuLTMLXR28gu6gUAS42nAJMRuPdvs1gIZciKjEHhy5niB2HSGc0Lj6hoaH4+OOPUVJSUnXs/v37+OSTTxAaGqrVcET6JjmnGGvDEwFULFZoJqv1/AAiveLpYIXJ3Spu2y48EI/ScrXIiYh0Q+Nr9MuWLUO/fv2qFjCUSCSIi4uDpaUlfvvtN11kJNIbiw5eQWm5GmGNnNG7JffjIuMy9ZlG2HEmGbeyi7Hp1C2OXyOjpPGvq61bt8b169excOFCBAUFoU2bNli0aBGuX7+OVq1a6SIjkV6ITMjG/gt3IJUAHw5oya0pyOjYWsjx78rd2//3+3Vk5pc85RlEhkejKz5lZWVo1qwZfvnlF0yePFlXmYj0jkot4NNfLgMARnT0RQuPx+/8S2TIhgR7Y2tUEs4l52LRwSv47/AgsSMRaZVGV3zMzMygVCr5my6ZnD1nU3ApLR92FnK83bup2HGIdEYqleDTF1tBIqmY3h59K0fsSERapfGtrpkzZ+Lzzz9HeXm5LvIQ6Z1CZTkWVy7sNqtXEzjbcrFCMm5tfRwwPKRiD8aPfrzE3dvJqGg8uDkyMhK///47Dh06hNatW8PGpvr+RHv37tVaOCJ9sPLoDWQVKuHvbI1xYf5ixyGqF+/2bYYDF+7g8p18bI9KwujOfmJHItIKjYuPg4PDQ7uzExmr5JxirDtRMX39/f4tYS7n9HUyDc62Fpjduynm/nwZSw5dRf/WHnC0MRc7FlGdaVx8uFM7mZLPDsSjVKVG18YueLZFA7HjENWr0Z39sONMMq6kF2DJoatY8FJrsSMR1Vmtf33NzMzEiRMnEB4ejszMTG1mItILpxOycfBiOqQS4IMBLTion0yOXCbF3BcrlinZFpWEi6l5IiciqjuNi09+fj7GjBkDLy8v9OjRA927d4eXlxdGjx6NvDz+oyDjoFILmFc5fX1kJ180d+f0dTJNnRs648W2nhAE4OOfLnEfLzJ4GhefSZMmITIyEr/88gtyc3ORl5eHX375BdHR0Vzbh4zGtsjbFdPXLeV461lOXyfT9p/nW8DaXIazt+9hX2yq2HGI6kTj4rN//36sX78effv2hb29Pezs7NC3b1+sWbMG+/fv10VGonqVVajEF5XT19/t24zT18nkuSssMeNfjQEAnx24gvySMpETEdWexsXH2dkZCoXioeMKhQKOjo5aCUUkpkUHryC/pBytPO0xqhOn8BIBwMSuAWjoYoOsQiWWVP5iQGSINC4+H3zwAWbPno07d+5UHUtPT8e7776LDz/8UKvhiOpb9K0c7D6bAgCYNygQMikHNBMBgIVchvmDAgEA352+jdikeyInIqodiaDhSLV27drhxo0bUCqV8PX1BQAkJSXBwsICTZo0qfbYmJgY7SWtJ/n5+VAoFMjLy4O9PQe0mpJylRoDVoTjSnoBhof44PMhbcSORKR3Zu+Kw96YVDR3t8PPM7vCTMa1rUg/1PT9W+N1fAYNGlSXXER6a3PEbVxJL4DCygz/16+52HGI9NL7z7fAH1cycSW9ABtOJuK17o3EjkSkEY2v+Bg7XvExTZn5Jei19BgKlOVY8FIgx/YQPcGuM8n4957zsDKT4fDs7vB2tBY7ElGN3795jZIIFSs0FyjL0dZbgREdfMWOQ6TXhoZ4o2OAE+6XqfDRj1zbhwwLiw+ZvIib2fghLg0SCQc0E9WERCLBZy8FwkwmwR9XMvHrxXSxIxHVGIsPmbQylRof/XgRADCyoy/aeDuIG4jIQDRuYIdpPSrG93z80yWu7UMGg8WHTNqGk4m4nlkIJxtzvNu3mdhxiAzK6z0bw9/ZGpkFSizl2j5kIFh8yGSl3CvGsiPXAQDvPdccDtbmIiciMiyWZrKqHds3n76NuORccQMR1YDG09lnz579yOMSiQSWlpZo3LgxBg4cCCcnpzqHI9IVQRDwwQ8XUVyqQkd/JwwJ9hY7EpFB6tLYBYPbeWFvbCrm7L2An2Z04do+pNc0ns7es2dPxMTEQKVSoVmzZhAEAdevX4dMJkPz5s1x9epVSCQShIeHo2XLlrrKrTOczm4afoxLxRs74mAuk+LAG93QuIGt2JGIDFZ2oRK9/nsMucVleLt3U8zs1eTpTyLSMp1NZx84cCCeffZZpKWl4ezZs4iJiUFqaip69+6NV155BampqejevTveeuutOp0Aka7cKyrFpz9fBgDM+Fdjlh6iOnK2tcAnL7YCACz/4zqupheInIjo8TS+4uPl5YXDhw8/dDXn0qVL6NOnD1JTUxETE4M+ffogKytLq2HrA6/4GL93vj+H3WdT0KSBLfbP6gZzOS/LE9WVIAiYvDkaR+Iz0cZbgb3TwiDnLS+qRzq74pOXl4fMzMyHjt+9exf5+fkAAAcHB5SWlmr6rYl07uSNLOw+mwKJBFj0cmuWHiItkUgkWPBSa9hZynE+JQ9rwxPFjkT0SLW61TVhwgTs27cPKSkpSE1Nxb59+zBx4sSqfbyioqLQtGlTbWclqpOSMhX+s+8CAGB0Jz8E+3EAPpE2udlb4sMBFXcD/nv4Gm5kFoqciOhhGhefb7/9Fr169cKIESPg5+cHX19fjBgxAr169cI333wDAGjevDnWrl2r9bBEdbHsyHXczi6Gu70l/v0c1+wh0oWhwd7o3tQVpeVq/Hv3OajU3M6C9EutNyktLCxEQkICBEFAo0aNYGtrHANEOcbHOF1Ky8OLX52ESi1g9Zhg9GnlLnYkIqOVmnsffb88jkJlOT4c0BITuwaIHYlMgM43KbW1tYWTkxNcXFyMpvSQcVKpBczZewEqtYB+ge4sPUQ65uVghTnPNwcAfPHbFdzKKhI5EdFfNC4+arUan376KRQKRdWtLgcHB8ybNw9qtVoXGYnqZMPJRJxPyYOdpbxqyi0R6dbIjr4Ia+SMkjI1/m/Peah5y4v0hMbF5/3338dXX32FRYsWITY2FjExMfjss8+wYsUKfPjhh7rISFRrCXcLseRQxR5Cc/q1QAN7S5ETEZkGiUSCRYPbwMpMhsjEHGyJvC12JCIAtSg+mzZtwtq1azFt2jS0adMGbdu2xeuvv441a9Zg48aNOohY4cUXX4Svry8sLS3h4eGBMWPGIC0trdpjkpKS8MILL8DGxgYuLi6YNWsWp9WbMJVawLu7z6OkTI2ujV3wSkcfsSMRmRRfZ2v8X+VEgoUHriCRt7xID2hcfHJyctC8efOHjjdv3hw5OTlaCfUoPXv2xK5du3D16lXs2bMHN2/exJAhQ6q+rlKp0L9/fxQVFSE8PBw7duzAnj178Pbbb+ssE+m3DScTcfb2PdhayLHo5daQSCRiRyIyOWND/RHWyBn3y1R4a2ccylUcEkHi0nhWV6dOndCpUycsX7682vGZM2fizJkzOH36tFYDPs5PP/2EQYMGQalUwszMDAcPHsSAAQOQnJwMT09PAMCOHTswfvx4ZGZmPnaEt1KphFKprPo8Pz8fPj4+nNVl4G5kFqL/8hNQlquxaHBrjOjoK3YkIpOVmnsfzy07joKScszu3RSzuJcX6YDOZnUtXrwY69evR8uWLTFx4kRMmjQJLVu2xMaNG/HFF1/UKXRN5eTkYOvWrQgLC4OZmRkAICIiAoGBgVWlBwD69u0LpVKJs2fPPvZ7LVy4EAqFourDx4e3QwydSi3gne/PQVmuRvemrhjegX+nRGLycrDCvIGBAIDlv1/H+ZRccQORSdO4+PTo0QPXrl3DSy+9hNzcXOTk5GDw4MG4evUqunXrpouMVf7v//4PNjY2cHZ2RlJSEn788ceqr6Wnp8PNza3a4x0dHWFubo709PTHfs85c+YgLy+v6iM5OVln+al+rDmRgLjkXNhZyLFoMG9xEemDgUGe6N/aA+VqAW/tjENJmUrsSGSiarWOj6enJxYsWIA9e/Zg7969mD9/PlQqFSZMmKDR95k7dy4kEskTP6Kjo6se/+677yI2NhaHDh2CTCbD2LFj8fc7dY96gxME4YlvfBYWFrC3t6/2QYbrekYB/nv4GgDgwxdawtPBSuRERARUvD7PHxSIBnYWuHm3CIsOXhE7Epkouba+UU5ODjZt2oT169fX+DkzZszAiBEjnvgYf3//qj+7uLjAxcUFTZs2RYsWLeDj44PTp08jNDQU7u7uiIyMrPbce/fuoays7KErQWScylVqvPP9OZSWq9GzmSuGBnuLHYmI/sbRxhxfDG2LceujsPHULfRq0QDdmriKHYtMjNaKT208KDK18eBKz4OByaGhoViwYAHu3LkDDw8PAMChQ4dgYWGB4OBg7QQmvfbt8QScq1yocOHgNrzFRaSHejR1xZjOfvju9G28+/15/PZmdyiszcSORSak1ltW1KeoqCh89dVXiIuLw+3bt3H06FGMHDkSjRo1QmhoKACgT58+aNmyJcaMGYPY2Fj8/vvveOeddzB58mTevjIBV9ML8L8j1wEAc19oBXcFFyok0ldznm+Ohi42SM8vwYc/XhQ7DpkYgyg+VlZW2Lt3L3r16oVmzZphwoQJCAwMxLFjx2BhYQEAkMlk2L9/PywtLdGlSxcMGzYMgwYNwpIlS0ROT7qmLFfhjR2xKFWp8WyLBhjc3kvsSET0BNbmcvx3eBBkUgl+OpeGH+NSxY5EJqTG6/gMHjz4iV/Pzc3FsWPHoFIZ9kh97s5ueBbsv4w1JxLhZGOOX9/shgZ2vNpDZAiWHbmGZUeuw9ZCjgOzusHX2VrsSGTAavr+XeMxPgqF4qlfHzt2bM0TEmnByRtZWHMiEQCw+OU2LD1EBmRGz8Y4eSMLZ27dw8wdsdg9NRRmMoO4EUEGTOOVm40dr/gYjtziUjy37ATS80swspMvPnuptdiRiEhDqbn38fz/TiDvfhmm9GiIOf1aiB2JDJTOVm4m0geCIOA/+y4gPb8EDV1s8EF/vlgSGSIvByt8/nIbAMC3xxJw/NpdkRORsWPxIYO0+2wKDlxIh1wqwf9GtIO1uagrMxBRHTwX6I7RnSv205u9Kw6ZBSUiJyJjxuJDBud2dhHm/nQJAPBW76Zo7f3k8WdEpP8+6N8Szd3tkFVYird3nYNazVEYpBssPmRQylVqvLUzDkWlKnQMcMLUHo3EjkREWmBpJsOKV9rB0kyKE9ezsPpEgtiRyEix+JBB+eroDcQk5cLOUo7/DmsLmZSrMxMZiyZudvj4hVYAgCW/XUVs0j2RE5ExYvEhg3H2dg5W/HEDADB/UCC8HbnmB5GxGdHBB/3bVOziPmtHLPJLysSOREaGxYcMQm5xKWZui4VKLWBgkCcGBnF1ZiJjJJFIsHBwa3g7WiE55z7e/f4cuOoKaROLD+k9QRDwzvfnkZZXAn9nayzgej1ERs3e0gwrR7aHmUyC3y5lYG3lIqVE2sDiQ3pv/clbOBKfAXOZFF+NbA9bC05dJzJ2bX0c8NGAlgCARb9eQVRijsiJyFiw+JBeO5eci0UH4wEAHwxogUAvTl0nMhWjO/thYJAnVGoBM7bFcH0f0goWH9Jb+SVlmLE9BmUqAc+1cseYzn5iRyKievRgvE+TBrbILFBi1vZYlKvUYsciA8fiQ3pJEAS8t+c8knPuw9vRCp8PaQOJhFPXiUyNtbkcq0YHw8ZchtMJOVh6+JrYkcjAsfiQXtoamVS1JcVXI9tDYWUmdiQiEknjBrb4fEjFfl6r/ryJI5czRE5EhozFh/TO5bR8fPrLZQDAe/2aI8jHQdxARCS6AW08MT7MH0DFfl5J2cXiBiKDxeJDeqWgpAwztsWgtFyNXs0bYGLXALEjEZGe+M/zLdDO1wH5JeWYtvUsSspUYkciA8TiQ3pDEAS8+/15JGQVwUNhiSVD23JcDxFVMZdLsXJkezjZmONSWj7m7L3AxQ1JYyw+pDdWH0/Ar5fSYS6TYtXoYDjamIsdiYj0jKeDFb4a2Q4yqQT7YlOxLpyLG5JmWHxIL5y6kYXPf70CAPj4xZYc10NEjxXWyAUf9G8BAPjsQDxOXL8rciIyJCw+JLo7efcxc3ss1AIwJNgbIzv6ih2JiPTc+DB/DAn2hloAZmyLxe3sIrEjkYFg8SFRKctVmLYlBtlFpWjpYY/5gwI5roeInkoikWD+oEC09XFA3v0yvLb5LIqU5WLHIgPA4kOimv9LPOKSc6GwMsM3o4NhaSYTOxIRGQhLMxlWjwmGq50FrmYU4O1d56BWc7AzPRmLD4lmz9kUfHf6NiQSYNmIIPg6W4sdiYgMjJu9Jb4ZHQxzmRS/XkrHyqM3xI5Eeo7Fh0RxKS0P/9l3AQDwRq8m6NmsgciJiMhQBfs5Yt6gVgCApYev4TBXdqYnYPGhepdTVIqpW85CWa5Gz2aumPWvJmJHIiIDN7yDL8aGVmxk/OaOWMTfyRc5EekrFh+qV2UqNV7fehbJOffh62SNL4cHQSrlYGYiqrsPB7REaENnFJWqMHHjGWQWlIgdifQQiw/Vq09/vozTCTmwtZBj7bgQOFhzkUIi0g4zmRTfjA5GQxcbpOWVYPLms7hfym0tqDoWH6o3W07f/msw8/AgNHWzEzsSERkZhbUZ1o/vAAdrM5xLzsXb38dxphdVw+JD9SLiZjbm/nQJAPBu32Z4tqWbyImIyFj5u9jg29HBMJNJcOBCOpYevip2JNIjLD6kc8k5xXh961mUqwW82NYT03o0EjsSERm5Tg2dsWhwGwDAyqM38X10ssiJSF+w+JBOFSrLMWlTNO4Vl6G1lwKLh7ThysxEVC9eDvbGjJ6NAQD/2XcBpxOyRU5E+oDFh3RGrRbw1s44XM0ogKudBVaP5crMRFS/Zvduiv6tPVCmEjB1y1kkZnFPL1PH4kM6s/TwVRy+nAFzmRTfjgmGh8JK7EhEZGKkUgmWDmuLtj4OyC0uw/gNUcgqVIodi0TE4kM6setMMlYevQkA+Gxwa7T3dRQ5ERGZKkszGdaMDYa3oxVuZxdj4sYzKC7lhqamisWHtO7kjayq7Shm9GyMIcHeIiciIlPXwM4SmyZ0hKO1Gc6l5GH61hiUq9RixyIRsPiQVl3PKMDULX/N4Hq7T1OxIxERAQAaudpi3fgOsDST4ujVu3h/30UIAtf4MTUsPqQ1dwuUGL/hDApKyhHi58gZXESkd9r7OmLFK+0hlQA7o5Px5ZHrYkeiesbiQ1pxv1SFSZvOIDX3PvydrbF6bAhncBGRXurd0g3zBgUCAJb/fh3bIpNETkT1icWH6kytFvDmzlicS8mDg7UZNrzaEU423IOLiPTXqE5+mPWvijV+PvjhAo5czhA5EdUXFh+qs4UH4/HbpYpp62vGhiDAxUbsSERET/VW76YYFuINtQDM2B6Ds7fviR2J6gGLD9XJ5ohbWHMiEQDwxdA26ODvJHIiIqKakUgkWPBSa/Rs5oqSMjVe3RCF+Dv5YsciHWPxoVrbf/4OPq7cePTt3k0xMMhL5ERERJoxk0mxclR7BPs5Ir+kHGPWReEWV3c2aiw+VCunbmbhrZ1xEARgTGc/zKi8V05EZGiszeVYP64DmrvbIatQiVFrI5GeVyJ2LNIRFh/S2KW0PLy2+SxKVWr0C3TH3Bdbcdo6ERk0hbUZvpvYCf7O1kjNvY/R6yKRU1QqdizSARYf0khyTjHGbziDQmU5OgU44cvhQZBJWXqIyPC52llgy6RO8FBY4kZmIcatj0JBSZnYsUjLWHyoxrILlRi7Pgp3C5Ro7m7HtXqIyOh4O1rju4md4GRjjgupeZi0KRolZSqxY5EWsfhQjRQpy/HqxjNIzCqCl4MVNk3oCIWVmdixiIi0rnEDW2x6tSNsLeSITMzB9K0xKOO+XkaDxYeeqrRcjalbzuJ8Sh4crc2weWJHuNlbih2LiEhnWnsrsG5cCCzkUvx+JRNv7IjlpqZGgsWHnqhcpcZbO+Nw4noWrMxkWD++Axq52oodi4hI5zo1dMY3Y4JhLpPiwIV0zN51Dio1NzU1dCw+9FhqtYD39l7A/gt3YCaT4JsxwWjn6yh2LCKietOzWQN8Pao95FIJfjqXhne/Z/kxdCw+9EiCIODTXy5j99kUyKQSrHilPXo0dRU7FhFRvXu2pRu+GtkOMqkEe2NTMWfveahZfgwWiw890tJD17Dx1C0AwBdD2uC5QHdxAxERiei5QA8sGx4EqQTYFZ2CD368CEFg+TFELD70kFV/3sRXR28AAOYNCsTg9t4iJyIiEt8LbT3x32FBkEiAbZFJ+PinSyw/BojFh6r5LuIWPv/1CgDgvX7NMaazn8iJiIj0x6B2XvhiSFtIJMDmiNuY90s8y4+BYfGhKnvOpuDDHys2HZ35r8aY2qORyImIiPTPkGBvLBrcGgCw/mQiPvn5MsuPAWHxIQComK2w+xwAYHyYP2b3bipyIiIi/TW8gy8WDm4NiQTYeOoWPvjhIgc8GwgWH8LP59Lw5o5YqAVgRAcffDSgJTcdJSJ6ilc6+mLxy20gkQBbI5Pw3t7znOpuAFh8TNz+83fw5s44qAVgaLA3PnupNaTcdJSIqEaGhvjgy2F/zfZ65/tzXOFZzxlc8VEqlQgKCoJEIkFcXFy1ryUlJeGFF16AjY0NXFxcMGvWLJSWlooT1AAcvHAHs3bEQqUWMCTYG5+/3Ialh4hIQ4PaeWH5KxXr/OyLTcWbO+O4t5cek4sdQFP//ve/4enpiXPnzlU7rlKp0L9/f7i6uiI8PBzZ2dkYN24cBEHAihUrREqrv369mI6Z2ytKz+D2Xiw9RER1MKCNJ+RSKWZuj8Ev5++gXCVg+SvtYC43uOsLRs+g/kYOHjyIQ4cOYcmSJQ997dChQ7h8+TK2bNmCdu3a4dlnn8XSpUuxZs0a5Ofni5BWfx26lI4Z22JQrhbwUuXUTBlLDxFRnTwX6I5vRlfs7fXrpXRM23IWJWUqsWPRPxhM8cnIyMDkyZPx3Xffwdra+qGvR0REIDAwEJ6enlXH+vbtC6VSibNnzz72+yqVSuTn51f7MGaHL2dgemXpGRjkiSVDWXqIiLSlVws3rP3bru7j1kehoKRM7Fj0NwZRfARBwPjx4zF16lSEhIQ88jHp6elwc3OrdszR0RHm5uZIT09/7PdeuHAhFApF1YePj49Ws+uT/efvYNqWsyhTCXihrSeWsvQQEWld96au2DyhI+ws5IhMzMHINZHILlSKHYsqiVp85s6dC4lE8sSP6OhorFixAvn5+ZgzZ84Tv9+jpmALgvDEqdlz5sxBXl5e1UdycnKdz0sf7YtNwcztFVd6XmzriS+HtYVcZhC9l4jI4HRq6Iztr3WGk405LqTmYdi3EUjLvS92LILIg5tnzJiBESNGPPEx/v7+mD9/Pk6fPg0LC4tqXwsJCcGoUaOwadMmuLu7IzIystrX7927h7KysoeuBP2dhYXFQ9/X2GyPSsJ/9l2AIADDQryxcHAbXukhItKxQC8Fdk0Jxdh1kbh5twhDv4nAdxM7oqGrrdjRTJpEMIB1tpOSkqqNvUlLS0Pfvn2xe/dudOrUCd7e3jh48CAGDBiAlJQUeHh4AAB27tyJcePGITMzE/b29jX6Wfn5+VAoFMjLy6vxc/TZhsrl1AFgbKgf5r7QirO3iIjqUWrufYxZG4mErCK42Jpj04SOaOWpEDuW0anp+7dBFJ9/unXrFgICAhAbG4ugoCAAFdPZg4KC4Obmhi+++AI5OTkYP348Bg0apNF0dmMqPqv+vFm14ehr3RtiTr/mXJGZiEgEWYVKjFsfhUtp+bCzkGPd+A7oGOAkdiyjUtP3b6MZ5CGTybB//35YWlqiS5cuGDZsGAYNGvTIqe/GThAE/PfwtarSM6tXE5YeIiIRudhaYPtrndHB3xEFynKMXheJXy/eETuWSTLIKz66ZOhXfARBwGcH4rHmRCIA4N/PNcPrzzQWORUREQHA/VIVZm6PxZH4DEgkwNwXWmFcmL/YsYyCyV3xIaBcpca7u89XlZ6PBrRk6SEi0iNW5jJ8M7o9XunoC0EAPv7pEj7/9Qp4DaL+sPgYiZIyFaZuicHusymQSSVYMrQtJnQNEDsWERH9g1wmxWcvBeLt3k0BVIzHfHvXOZSWc3+v+sDiYwTyS8owbn0UjsRnwFwuxTejgzEk2FvsWERE9BgSiQQzezXB4iEVy4vsjU3FxE1nUKgsFzua0WPxMXB3C5QY8e1pRCbmwM5Cjs0TOqJ3y8evW0RERPpjWIgP1o4LgZWZDCeuZ2H4txHIzC8RO5ZRY/ExYMk5xRj6zSlcvpMPF1tzbH+tMzo3dBY7FhERaaBnswbY8VpnONuY41JaPgatPIn4O8a9b6SYWHwM1JX0fLy86hRuZRfD29EK308NQ6AXF8QiIjJEbX0csPf1MDR0tUFaXgmGrDqFo1cyxY5llFh8DNDJG1kYuioCmQVKNHOzw55pYQhwsRE7FhER1YGfsw32TeuC0IbOKCpVYeKmM9h06pbYsYwOi4+B2RuTgnHro1CgLEfHACfsmhIKN3tLsWMREZEWKKzNsGlCRwwL8Ya6crr73J8uoVzFGV/awuJjIARBwFd/XMfsXedQrhYwoI0HvpvYEQprM7GjERGRFpnLpfj85Tb4v+eaAwA2nrqFyZujOeNLS1h8DEC5So3/7LuAJYeuAQCmdG+I5SPawUIuEzkZERHpgkQiwbRnGuHrUe1hIZfi6NW7GLLqFFLuFYsdzeCx+Oi5ImU5Jm+OxvaoZEgkwKcDW2HO8y24wzoRkQl4vrUHdk4JhYutBa6kF+DFr04iMiFb7FgGjcVHj2Xml2DE6tM4evUuLCoXJhwb6i92LCIiqkdBPg74cUYXtPK0R05RKUatjcSW07fFjmWwWHz01KW0PAxceRIXUvPgZFOxRk/fVu5ixyIiIhF4OVhh99QwDGjjgXK1gA9+uIj/7LvAbS5qgcVHDx26lI6h30TgTl4JGrnaYO+0MLT3dRQ7FhERicjKXIYVr7TDu32bQSIBtkUmYfTaSGQVKsWOZlBYfPSIIAj49thNTNlyFsWlKnRr4oK9r3eBP9foISIiVAx6nt6zMdaODYGthRxRt3Iw8KuTuJSWJ3Y0g8HioydKy9X4vz3nsfDgFQgCMLqzL9aP7wCFFaerExFRdb1auOGH6RWL16bm3sfLq05hX2yK2LEMAouPHrhXVIox6yKxKzoFUgkw94WWmDcwEGYy/vUQEdGjNW5ghx9e74IeTV1RUqbGWzvP4aMfL3Lcz1PwnVVk1zIKMOjrk4hMzIGthRzrx3fA+C4BkEg4XZ2IiJ5MYW2G9eM7YFavJgCAzRG3MWJ1BNLzuMP747D4iOjXi3cwaOVJ3K7caHTv62F4plkDsWMREZEBkUklmN27KdaNC4G9pRwxSbkYsOIEIm5yvZ9HYfERgVot4L+HrmLqlhgUl6oQ1sgZP8/oiqZudmJHIyIiA9WrhRt+ntkVLTzskVVYitHrIrH6+E0IgiB2NL3C4lPPCkrK8Np30Vj+xw0AwMSuAdg8oSMcbcxFTkZERIbOz7liCZTB7bygUgv47MAVTNsSg7z7ZWJH0xssPvXo5t1CDFp5EkfiM2Eul2Lp0Lb4cEBLyDmImYiItMTKXIalw9pi3qBAmMkk+PVSOgasOIHzKbliR9MLfMetJ39cycCgr07i5t0ieCgssXtqKF4O9hY7FhERGSGJRIIxnf2we2oYvB2tkJxTMeV9w8lEk7/1xeJTD+4VlWLmtlgUKMvRwd8RP83oijbeDmLHIiIiI9fWxwH7Z3XDc63cUaYS8MnPlzF1y1nkFZvurS+JYOrV7x/y8/OhUCiQl5cHe3t7rX3fX86nIeJmNj5+oRXM5eybRERUfwRBwKZTt7DgQDzKVAK8Ha3w1cj2CPJxEDua1tT0/ZvF5x90VXyIiIjEdj4lF9O3xSA55z7MZBL8u29zTOwaAKnU8NeOq+n7Ny89EBERmYg23g74ZWY39AusuPW14EA8xm2IQma+6Sx4yOJDRERkQhRWZvh6VHvMHxQISzMpTlzPwnP/O4EjlzPEjlYvWHyIiIhMjEQiwejOfvilcsHDnKJSTNocjY9+vIiSMpXY8XSKxYeIiMhENW5ghx+mh2Fi1wAAFXt9vfhVOOLv5IucTHdYfIiIiEyYhVyGDwe0xOYJHeFia4FrGYUYuPIk1hxPgEptfPOfWHyIiIgI3Zu64tc3u6FX8wYoLVdjwYF4vLL6NJKyi8WOplUsPkRERAQAcLG1wNpxIVg4uDVszGWIupWD5/53HFsjbxvNis8sPkRERFRFIpHglY6++PXN7ugY4ITiUhXe33cR4zecQXqe4U97Z/EhIiKih/g4WWPH5M74oH8LmMulOHbtLvp8eQw/xKYa9NUfFh8iIiJ6JKlUgkndGuLArK5o661Afkk53twZh9e3xiC7UCl2vFph8SEiIqInatzADnumheHt3k0hl0pw8GI6+i47joMX7ogdTWMsPkRERPRUcpkUM3s1wY8zuqCZmx2yCksxbWsMpnwXjQwD2vKCxYeIiIhqrJWnAj/N7IJZ/2oMuVSC3y5l4Nn/HsP2qCSDGPvD4kNEREQasZDLMLtPM/xSOfanoKQcc/ZewCtrTuNWVpHY8Z6IxYeIiIhqpbm7Pfa+3gUf9G8BSzMpTifkoO+y4/jm2E2Uq9Rix3skFh8iIiKqNVnlzK9Db/ZA18YuUJarsejgFQz6+iQupeWJHe8hLD5ERERUZ77O1vhuYkcsHtIG9pZyXEzNx4tfncTCA/EoLi0XO14VFh8iIiLSColEgmEhPjjydg/0b+0BlVrAt8cT0Pu/x3HkcobY8QCw+BAREZGWNbCzxMpR7bFuXAi8HKyQmnsfkzZHY8p30UjLvS9qNhYfIiIi0oleLdxweHZ3TOnRsNrU9/DrWaJlYvEhIiIinbE2l2NOvxb4ZVZXBPs5wtpchtZeCtHyyEX7yURERGQymrvb4/spoUi+VwyFtZloOXjFh4iIiOqFVCqBn7ONuBlE/elERERE9YjFh4iIiEwGiw8RERGZDBYfIiIiMhksPkRERGQyWHyIiIjIZLD4EBERkclg8SEiIiKTweJDREREJoPFh4iIiEwGiw8RERGZDBYfIiIiMhksPkRERGQy5GIH0DeCIAAA8vPzRU5CRERENfXgffvB+/jjsPj8Q0FBAQDAx8dH5CRERESkqYKCAigUisd+XSI8rRqZGLVajbS0NNjZ2UEikYgdp87y8/Ph4+OD5ORk2Nvbix1H50ztfAHTO2eer3Hj+Ro3XZ6vIAgoKCiAp6cnpNLHj+ThFZ9/kEql8Pb2FjuG1tnb25vEP6oHTO18AdM7Z56vceP5Gjddne+TrvQ8wMHNREREZDJYfIiIiMhksPgYOQsLC3z88cewsLAQO0q9MLXzBUzvnHm+xo3na9z04Xw5uJmIiIhMBq/4EBERkclg8SEiIiKTweJDREREJoPFh4iIiEwGi48RWbhwISQSCd58880nPk6pVOL999+Hn58fLCws0KhRI6xfv75+QmpRTc9369ataNu2LaytreHh4YFXX30V2dnZ9ROyjubOnQuJRFLtw93d/YnPOXbsGIKDg2FpaYmGDRvim2++qae0dafp+e7duxe9e/eGq6sr7O3tERoait9++60eE9dNbf5+Hzh58iTkcjmCgoJ0G1KLanO+hvx6VZvzNeTXKwBITU3F6NGj4ezsDGtrawQFBeHs2bNPfE59v2Zx5WYjcebMGaxevRpt2rR56mOHDRuGjIwMrFu3Do0bN0ZmZibKy8vrIaX21PR8w8PDMXbsWHz55Zd44YUXkJqaiqlTp2LSpEnYt29fPaWtm1atWuHIkSNVn8tkssc+NjExEc8//zwmT56MLVu24OTJk3j99dfh6uqKl19+uT7i1pkm53v8+HH07t0bn332GRwcHLBhwwa88MILiIyMRLt27eojbp1pcr4P5OXlYezYsejVqxcyMjJ0GU/rND1fQ3+90uR8Df316t69e+jSpQt69uyJgwcPokGDBrh58yYcHBwe+xwxXrNYfIxAYWEhRo0ahTVr1mD+/PlPfOyvv/6KY8eOISEhAU5OTgAAf3//ekipPZqc7+nTp+Hv749Zs2YBAAICAjBlyhQsXry4PqJqhVwur/FVgG+++Qa+vr5YtmwZAKBFixaIjo7GkiVLDKb4aHK+D87zgc8++ww//vgjfv75Z4MpPpqc7wNTpkzByJEjIZPJ8MMPP+gmmI5ocr7G8Hqlyfka+uvV559/Dh8fH2zYsKHq2NP+vsR4zeKtLiMwffp09O/fH88+++xTH/vTTz8hJCQEixcvhpeXF5o2bYp33nkH9+/fr4ek2qHJ+YaFhSElJQUHDhyAIAjIyMjA7t270b9//3pIqh3Xr1+Hp6cnAgICMGLECCQkJDz2sREREejTp0+1Y3379kV0dDTKysp0HVUrNDnff1Kr1SgoKKh6kzQEmp7vhg0bcPPmTXz88cf1lFC7NDlfY3i90uR8Df316sHf19ChQ9GgQQO0a9cOa9aseeJzxHjNYvExcDt27EBMTAwWLlxYo8cnJCQgPDwcFy9exL59+7Bs2TLs3r0b06dP13FS7dD0fMPCwrB161YMHz4c5ubmcHd3h4ODA1asWKHjpNrRqVMnbN68Gb/99hvWrFmD9PR0hIWFPfaef3p6Otzc3Kodc3NzQ3l5ObKysuojcp1oer7/tHTpUhQVFWHYsGE6Tqodmp7v9evX8d5772Hr1q2Qyw3vgr2m52vor1eanq+hv14lJCRg1apVaNKkCX777TdMnToVs2bNwubNmx/7HFFeswQyWElJSUKDBg2EuLi4qmM9evQQ3njjjcc+p3fv3oKlpaWQm5tbdWzPnj2CRCIRiouLdRm3zmpzvpcuXRI8PDyExYsXC+fOnRN+/fVXoXXr1sKECRPqIbH2FRYWCm5ubsLSpUsf+fUmTZoIn332WbVj4eHhAgDhzp079RFRq552vn+3bds2wdraWjh8+HA9JNONJ51veXm5EBISIqxatarq2Mcffyy0bdu2HhNq19P+fg359epRnna+hv56ZWZmJoSGhlY7NnPmTKFz586PfY4Yr1mG9ysDVTl79iwyMzMRHBxcdUylUuH48eP46quvoFQqHxpI5+HhAS8vLygUiqpjLVq0gCAISElJQZMmTeotv6Zqc74LFy5Ely5d8O677wIA2rRpAxsbG3Tr1g3z58+Hh4dHvZ5DXdnY2KB169a4fv36I7/u7u6O9PT0ascyMzMhl8vh7OxcHxG16mnn+8DOnTsxceJEfP/99zW6BaqvnnS+BQUFiI6ORmxsLGbMmAGg4taeIAiQy+U4dOgQ/vWvf9V35Dp52t+vIb9ePcrTztfQX688PDzQsmXLasdatGiBPXv2PPY5Yrxm8VaXAevVqxcuXLiAuLi4qo+QkBCMGjUKcXFxj5w90KVLF6SlpaGwsLDq2LVr1yCVSuHt7V2f8TVWm/MtLi6GVFr9f/MHjxMMcJs6pVKJ+Pj4x74AhoaG4vDhw9WOHTp0CCEhITAzM6uPiFr1tPMFgO3bt2P8+PHYtm2bwYyFeJwnna+9vf1D//9PnToVzZo1Q1xcHDp16iRC4rp52t+vIb9ePcrTztfQX6+6dOmCq1evVjt27do1+Pn5PfY5orxm6eQ6Eonmn7d+3nvvPWHMmDFVnxcUFAje3t7CkCFDhEuXLgnHjh0TmjRpIkyaNEmEtHX3tPPdsGGDIJfLha+//lq4efOmEB4eLoSEhAgdO3YUIa3m3n77beHPP/8UEhIShNOnTwsDBgwQ7OzshFu3bgmC8PD5JiQkCNbW1sJbb70lXL58WVi3bp1gZmYm7N69W6xT0Iim57tt2zZBLpcLK1euFO7cuVP18fdbI/pM0/P9J0O71aXp+Rr665Wm52vor1dRUVGCXC4XFixYIFy/fl3YunWrYG1tLWzZsqXqMfrwmsXiY2T+WQTGjRsn9OjRo9pj4uPjhWeffVawsrISvL29hdmzZxvk/XJBqNn5Ll++XGjZsqVgZWUleHh4CKNGjRJSUlLqN2gtDR8+XPDw8BDMzMwET09PYfDgwcKlS5eqvv6o8/3zzz+Fdu3aCebm5oK/v3+1MSH6TtPz7dGjhwDgoY9x48bVf/haqM3f798ZWvGpzfka8utVbc7XkF+vBEEQfv75ZyEwMFCwsLAQmjdvLqxevbra1/XhNUsiCAZw/YyIiIhICzjGh4iIiEwGiw8RERGZDBYfIiIiMhksPkRERGQyWHyIiIjIZLD4EBERkclg8SEiIiKTweJDREREJoPFh4job/78809IJBLk5uaKHYWIdIDFh4iIiEwGiw8RERGZDBYfItK5Z555BjNnzsSbb74JR0dHuLm5YfXq1SgqKsKrr74KOzs7NGrUCAcPHqx6zsaNG+Hg4FDt+/zwww+QSCSP/TmhoaF47733qh27e/cuzMzMcPToUQDAli1bEBISAjs7O7i7u2PkyJHIzMx87PecO3cugoKCqh1btmwZ/P39qx3bsGEDWrRoAUtLSzRv3hxff/111ddKS0sxY8YMeHh4wNLSEv7+/li4cOFjfyYR6Q6LDxHVi02bNsHFxQVRUVGYOXMmpk2bhqFDhyIsLAwxMTHo27cvxowZg+Li4lr/jFGjRmH79u34+97LO3fuhJubG3r06AGgooTMmzcP586dww8//IDExESMHz++Tue2Zs0avP/++1iwYAHi4+Px2Wef4cMPP8SmTZsAAMuXL8dPP/2EXbt24erVq9iyZctDxYmI6odc7ABEZBratm2LDz74AAAwZ84cLFq0CC4uLpg8eTIA4KOPPsKqVatw/vx5dO7cuVY/Y/jw4XjrrbcQHh6Obt26AQC2bduGkSNHQiqt+D1vwoQJVY9v2LAhli9fjo4dO6KwsBC2tra1+rnz5s3D0qVLMXjwYABAQEAALl++jG+//Rbjxo1DUlISmjRpgq5du0IikcDPz69WP4eI6o5XfIioXrRp06bqzzKZDM7OzmjdunXVMTc3NwB44m2np3F1dUXv3r2xdetWAEBiYiIiIiIwatSoqsfExsZi4MCB8PPzg52dHZ555hkAQFJSUq1+5t27d5GcnIyJEyfC1ta26mP+/Pm4efMmAGD8+PGIi4tDs2bNMGvWLBw6dKjW50hEdcPiQ0T1wszMrNrnEomk2rEHY3fUajUAQCqVVrtlBQBlZWVP/TmjRo3C7t27UVZWhm3btqFVq1Zo27YtAKCoqAh9+vSBra0ttmzZgjNnzmDfvn0AKm6BPcrTcjzIu2bNGsTFxVV9XLx4EadPnwYAtG/fHomJiZg3bx7u37+PYcOGYciQIU89FyLSPt7qIiK95OrqioKCAhQVFcHGxgYAEBcX99TnDRo0CFOmTMGvv/6Kbdu2YcyYMVVfu3LlCrKysrBo0SL4+PgAAKKjo5+aIz09HYIgVJWzv+dwc3ODl5cXEhISql1Z+id7e3sMHz4cw4cPx5AhQ/Dcc88hJycHTk5OTz0nItIeFh8i0kudOnWCtbU1/vOf/2DmzJmIiorCxo0bn/o8GxsbDBw4EB9++CHi4+MxcuTIqq/5+vrC3NwcK1aswNSpU3Hx4kXMmzfvid/vmWeewd27d7F48WIMGTIEv/76Kw4ePAh7e/uqx8ydOxezZs2Cvb09+vXrB6VSiejoaNy7dw+zZ8/Gl19+CQ8PDwQFBUEqleL777+Hu7v7Q7PWiEj3eKuLiPSSk5MTtmzZggMHDqB169bYvn075s6dW6Pnjho1CufOnUO3bt3g6+tbddzV1RUbN27E999/j5YtW2LRokVYsmTJE79XixYt8PXXX2PlypVo27YtoqKi8M4771R7zKRJk7B27Vps3LgRrVu3Ro8ePbBx40YEBAQAAGxtbfH5558jJCQEHTp0wK1bt3DgwIGqAddEVH8kwj9vXhMREREZKf66QURERCaDxYeIiIhMBosPERERmQwWHyIiIjIZLD5ERERkMlh8iIiIyGSw+BAREZHJYPEhIiIik8HiQ0RERCaDxYeIiIhMBosPERERmYz/B+d8mDC3qdupAAAAAElFTkSuQmCC", + "image/png": "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", "text/plain": [ "
" ] @@ -277,27 +400,146 @@ } ], "source": [ - "sigma_fixed=0.8\n", + "# Fixed sigma\n", + "sigma_fixed = 0.8\n", + "\n", + "# Grid of mu values\n", "mu_grid = np.linspace(4.5, 6.0, 200)\n", "\n", "log_prob, log_prob_H0, rchi2, linparas, linparas_err = grid_search(\n", " para_vecs=[mu_grid],\n", - " dataobj=dataobj,\n", + " dataobj=my_instrument,\n", " fm_func=gaussian_mu_only_fm_func,\n", " fm_paras={\"sigma\": sigma_fixed},\n", " numthreads=None,\n", " bounds=None\n", ")\n", "\n", - "plt.plot(mu_grid, log_prob)\n", + "# Plot log probability vs mu\n", + "plt.figure()\n", + "plt.plot(mu_grid, log_prob, label=\"Log probability\")\n", "plt.xlabel(\"mu values\")\n", "plt.ylabel(\"Log probability\")\n", + "plt.legend()\n", "plt.show()" ] }, + { + "cell_type": "markdown", + "id": "c7600edb", + "metadata": {}, + "source": [ + "### Grid-based approach versus MCMC Sampling" + ] + }, + { + "cell_type": "markdown", + "id": "9498d488", + "metadata": {}, + "source": [ + "We can now compare the 'grid_search' function, which produces the probabilty of the model marginalized over the linear parameters, to a Markov Chain Monte Carlo (MCMC) simulation posterior distribution. Unlike approaches that rely on computationally expensive samplers like emcee to explore parameter space, breads leverages analytic marginalization to recover equivalent posterior information in less time than running an MCMC chain." + ] + }, { "cell_type": "code", - "execution_count": 41, + "execution_count": 14, + "id": "71403f31", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "100%|████████████████████████████████████| 2000/2000 [00:05<00:00, 379.25it/s]\n" + ] + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "def log_likelihood(mu_array, instrument, sigma):\n", + " \"\"\"\n", + " Returns log-likelihood for a proposed mu using the Gaussian FM function.\n", + " \"\"\"\n", + " mu = mu_array[0] # extract scalar mu\n", + " \n", + " # Gaussian FM function returns y, M (design matrix), s\n", + " y_obs, M, s = gaussian_mu_only_fm_func([mu], instrument, sigma=sigma)\n", + " \n", + " # Solve for linear amplitude A using least squares\n", + " amp, residuals, rank, svals = np.linalg.lstsq(M, y_obs, rcond=None)\n", + " model = M @ amp # predicted Gaussian values\n", + " \n", + " # Compare model to observed data\n", + " chi2 = np.sum(((y_obs - model)/s)**2)\n", + " \n", + " # Log-likelihood\n", + " return -0.5 * chi2\n", + "\n", + "# MCMC setup\n", + "ndim = 1 # only mu is free\n", + "nwalkers = 50\n", + "nsteps = 2000\n", + "\n", + "# Start walkers near the approximate mu\n", + "mu_init = 5.2\n", + "p0 = mu_init + 1e-2 * np.random.randn(nwalkers, ndim)\n", + "sampler = emcee.EnsembleSampler(nwalkers, ndim, log_likelihood, args=[my_instrument, sigma_fixed])\n", + "\n", + "\n", + "# Run MCMC\n", + "sampler.run_mcmc(p0, nsteps, progress=True)\n", + "samples = sampler.get_chain(flat=True)\n", + "\n", + "# Plot posterior for mu\n", + "plt.figure(figsize=(8,5))\n", + "\n", + "# Plot MCMC posterior as histogram\n", + "mu_samples = samples[:,0]\n", + "\n", + "# Compute histogram\n", + "hist_vals, bin_edges = np.histogram(mu_samples, bins=50, density=True)\n", + "\n", + "# Normalize so the max is 1 (to match grid-search)\n", + "hist_vals /= np.max(hist_vals)\n", + "\n", + "# Bin centers for plotting\n", + "bin_centers = 0.5 * (bin_edges[:-1] + bin_edges[1:])\n", + "\n", + "plt.figure(figsize=(8,5))\n", + "plt.bar(bin_centers, hist_vals, width=bin_edges[1]-bin_edges[0], alpha=0.7, label='MCMC posterior (normalized)')\n", + "\n", + "# Normalize grid-search probabilities for comparison\n", + "grid_prob = np.exp(log_prob - np.max(log_prob)) # exponentiate and normalize\n", + "plt.plot(mu_grid, grid_prob, color='red', lw=2, label='Grid-search (normalized)')\n", + "\n", + "plt.xlabel(\"mu\")\n", + "plt.ylabel(\"Probability density\")\n", + "plt.title(\"MCMC posterior vs Grid-search\")\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 15, "id": "59851c6b", "metadata": {}, "outputs": [ @@ -305,7 +547,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Best-fit mu: 5.185929648241206\n" + "Best-fit mu: 5.21608040201005\n" ] } ], @@ -318,14 +560,14 @@ }, { "cell_type": "code", - "execution_count": 42, + "execution_count": 16, "id": "0e21732c", "metadata": {}, "outputs": [], "source": [ "results = fitfm(\n", " nonlin_paras=[mu_best],\n", - " dataobj=dataobj,\n", + " dataobj=my_instrument, \n", " fm_func=gaussian_mu_only_fm_func,\n", " fm_paras={\"sigma\": sigma_fixed}\n", ")" @@ -333,7 +575,7 @@ }, { "cell_type": "code", - "execution_count": 43, + "execution_count": 17, "id": "b5d548aa", "metadata": {}, "outputs": [], @@ -343,7 +585,7 @@ }, { "cell_type": "code", - "execution_count": 44, + "execution_count": 18, "id": "a712465a", "metadata": {}, "outputs": [ @@ -351,8 +593,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "Amplitude A: 4.96715269229023 ± 0.10625957505635589\n", - "Reduced chi2: 1.3473429646275017\n" + "Amplitude A: 4.770126399307184 ± 0.08753796912863519\n", + "Reduced chi2: 0.6205713578261557\n" ] } ], @@ -366,15 +608,15 @@ }, { "cell_type": "code", - "execution_count": 45, + "execution_count": 19, "id": "de06abaa", "metadata": {}, "outputs": [ { "data": { - "image/png": "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", + "image/png": "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hQULFmT55ywikl0KkiKSL7Rp04aVK1em3V65ciVt2rShdevWafsTExPZsGEDbdu2JTExkXHjxrFjxw7mz59PeHg4/fr1A8BqtfLggw8ye/bsdM/xzTff0KxZMypWrIhhGHTv3p2TJ0+yaNEitm7dSoMGDWjfvj3nz5/PsMbPPvuMV199lTfffJO9e/cyfvx4/u///o8vv/wy3XGvvvoqw4cPZ/v27VStWpWHHnoordv+jz/+4Pnnn+eFF15g+/btdOzYkTfffDPtsQ888AD/+c9/qFmzJpGRkURGRvLAAw+k3T927Fj69OnDzp076datG3379s20XhGR22aIiOQDn376qVGkSBEjKSnJiI6ONlxdXY1Tp04Z3377rdG8eXPDMAxj9erVBmAcOnTohsdv2rTJAIxLly4ZhmEY27ZtMywWixEREWEYhmGkpKQYZcqUMT766CPDMAxj+fLlhp+fnxEfH5/uPJUqVTI++eQTwzAMY/To0UbdunXT7gsJCTG++eabdMePGzfOaNasmWEYhhEeHm4Axueff552/99//20Axt69ew3DMIwHHnjA6N69e7pz9O3b1/D390+7ff3zpgKM1157Le12TEyMYbFYjMWLF99wrIiII6hFUkTyhbZt2xIbG8vmzZtZu3YtVatWJTAwkNatW7N582ZiY2NZtWoV5cqVo2LFivz111/cfffdlC9fHl9fX9q0aQPA0aNHAahfvz7Vq1dnzpw5AKxevZrTp0/Tp08fALZu3UpMTAzFixfHx8cn7Ss8PJxDhw7dUN+ZM2c4duwYTz31VLrj33jjjRuOr1OnTtp2cHAwQFq3+/79+2nSpEm646+/fTPXnrtIkSL4+vqmnVtExNFczS5ARCQrKleuTNmyZVm5ciUXLlygdevWAAQFBREaGsoff/zBypUradeuHbGxsXTq1IlOnToxa9YsSpYsydGjR+ncuTOJiYlp5+zbty/ffPMNL7/8Mt988w2dO3emRIkSgH0cZXBwcLpxmalSxytey2azAfbu7aZNm6a7z8XFJd1tNze3tG2LxZLu8YZhpO1LZRhGVn5EN5w79fyp5xYRcTQFSRHJN9q2bcuqVau4cOECI0aMSNvfunVrli5dysaNG3niiSfYt28fZ8+e5a233iIkJAQg3RXfqR5++GFee+01tm7dyg8//MD06dPT7mvQoAEnT57E1dWVChUq3LK2UqVKUaZMGQ4fPkzfvn1z/BqrV6/Opk2b0u27vnZ3d3dSUlJy/BwiIo6iICki+Ubbtm0ZOHAgSUlJaS2SYA+S/fv3Jz4+nrZt2+Lp6Ym7uztTpkzh+eefZ/fu3YwbN+6G84WGhtK8eXOeeuopkpOTufvuu9Pu69ChA82aNaNXr15MnDiRatWqceLECRYtWkSvXr1o1KjRDecbM2YMQ4YMwc/Pj65du5KQkMCWLVu4cOECw4YNy9JrHDx4MK1atWLy5Mn06NGDFStWsHjx4nStlBUqVCA8PJzt27dTtmxZfH198fDwyM6PUkTEITRGUkTyjbZt2xIXF0flypUpVapU2v7WrVtz6dIlKlWqREhICCVLlmTmzJl8//33hIWF8dZbbzFp0qQMz9m3b1927NjBvffei5eXV9p+i8XCokWLaNWqFU8++SRVq1blwQcfJCIiIt1zX+vpp5/m888/Z+bMmdSuXZvWrVszc+ZMQkNDs/waW7Rowccff8zkyZOpW7cuS5Ys4cUXX8TT0zPtmPvuu48uXbrQtm1bSpYsmTbOU0Qkr1mM7Ay+ERGRPPfMM8+wb98+1q5da3YpIiLpqGtbRMTJTJo0iY4dO1KkSBEWL17Ml19+mW5icxERZ6EWSRERJ9OnTx9WrVrFpUuXqFixIoMHD+b55583uywRkRsoSIqIiIhIjuhiGxERERHJEQVJEREREckRBUkRERERyREFSRERERHJEQVJEREREckRBUkRERERyREFSRERERHJEQVJEREREckRBUkRERERyZH/B4Jt3BgJgMj2AAAAAElFTkSuQmCC", "text/plain": [ - "
" + "
" ] }, "metadata": {}, @@ -384,12 +626,23 @@ "source": [ "mu_fit, sigma_fit = mu_best, sigma_fixed\n", "\n", - "model = A * np.exp(-0.5 * ((dataobj[\"x\"] - mu_fit) / sigma_fit) ** 2)\n", + "# Compute the Gaussian model\n", + "model = A * np.exp(-0.5 * ((my_instrument.wavelengths - mu_fit) / sigma_fit) ** 2)\n", "\n", - "plt.figure()\n", - "plt.errorbar(dataobj[\"x\"], dataobj[\"y\"], yerr=dataobj[\"s\"],fmt='o', label='Data')\n", - "plt.plot(dataobj[\"x\"], model, color='tab:orange', label='Gaussian model')\n", - "plt.plot(dataobj[\"x\"], dataobj[\"y\"] - model, color='tab:green', label='Residuals')\n", + "# Plot data, model, and residuals\n", + "plt.figure(figsize=(8,5))\n", + "plt.errorbar(\n", + " my_instrument.wavelengths,\n", + " my_instrument.data,\n", + " yerr=my_instrument.noise,\n", + " fmt='o',\n", + " label='Data'\n", + ")\n", + "\n", + "plt.plot(my_instrument.wavelengths, model, color='tab:orange', label='Gaussian model')\n", + "plt.plot(my_instrument.wavelengths, my_instrument.data - model, color='tab:green', label='Residuals')\n", + "plt.xlabel(\"Wavelength\")\n", + "plt.ylabel(\"\")\n", "plt.legend()\n", "plt.show()" ] @@ -405,7 +658,7 @@ { "cell_type": "code", "execution_count": null, - "id": "a034f1ef", + "id": "ae74e75f", "metadata": {}, "outputs": [], "source": [] From c7a860a579201cff3adee5946c93117652b0daa5 Mon Sep 17 00:00:00 2001 From: jruffio Date: Fri, 24 Apr 2026 10:48:00 -0700 Subject: [PATCH 3/3] Moving Katelyn's BREADS examples notebook to the documentation page. Little bit of refactoring too. --- docs/source/framework.rst | 9 ++++ .../breads_simple_fit_tutorial.ipynb | 8 ++-- docs/source/framework/maths.rst | 48 +++++++++++++++++++ docs/source/index.rst | 1 + docs/source/overview.rst | 48 +------------------ docs/source/tutorials.rst | 2 +- 6 files changed, 64 insertions(+), 52 deletions(-) create mode 100644 docs/source/framework.rst rename {demos => docs/source/framework}/breads_simple_fit_tutorial.ipynb (99%) create mode 100644 docs/source/framework/maths.rst diff --git a/docs/source/framework.rst b/docs/source/framework.rst new file mode 100644 index 0000000..62fd8a1 --- /dev/null +++ b/docs/source/framework.rst @@ -0,0 +1,9 @@ +Framework +========================== + +.. toctree:: + :maxdepth: 1 + :caption: Contents: + + framework/maths.rst + framework/breads_simple_fit_tutorial.ipynb diff --git a/demos/breads_simple_fit_tutorial.ipynb b/docs/source/framework/breads_simple_fit_tutorial.ipynb similarity index 99% rename from demos/breads_simple_fit_tutorial.ipynb rename to docs/source/framework/breads_simple_fit_tutorial.ipynb index 01cedbe..f6b809a 100644 --- a/demos/breads_simple_fit_tutorial.ipynb +++ b/docs/source/framework/breads_simple_fit_tutorial.ipynb @@ -1,12 +1,10 @@ { "cells": [ { - "cell_type": "markdown", - "id": "d2691389", "metadata": {}, - "source": [ - "# Using breads to fit example linear and gaussian data sets" - ] + "cell_type": "markdown", + "source": "# Simple notebook examples", + "id": "2a9d32bbc3169760" }, { "cell_type": "markdown", diff --git a/docs/source/framework/maths.rst b/docs/source/framework/maths.rst new file mode 100644 index 0000000..e7f6c3a --- /dev/null +++ b/docs/source/framework/maths.rst @@ -0,0 +1,48 @@ +Mathematical framework +========================== + +The mathematical approach of ``breads`` is presented in `Agrawal et al. 2023 `_. +We reiterate here, adapted from section 3.2 of that paper: + +``breads``, or the Broad Repository for Exoplanet Analysis, Detection, and +Spectroscopy, is a flexible framework that allows forward modeling of data from +moderate to high-resolution spectrographs. The philosophy of ``breads`` is to have +the users choose a *data class*, a *forward model function*, and a *fitting +strategy*. + +:ref:`data_classes` normalize the data format, simplifying reduction across +different spectrographs while allowing for specific behaviors of each +instrument to also be coded into their own specific class. + +The :ref:`forward model +(FM) ` aims to reproduce the data `d` as `d = FM + n`, where `n` is the noise. +The FM is a function not only of relevant *astrophysical parameters* of the +planet and the host star but also some *nuisance parameters*. For a general FM +within `breads`, nuisance parameters do not contain physical information about +the planet but are needed to model the data accurately. For example, +for the specific FM used in Agrawal et al. 2023, the linear parameters that +model the spurious contribution of the host star, the contribution from +telluric-only component, and the contribution from the residual principal +components are all nuisance parameters. Meanwhile, planetary characteristics +(which are needed to model its spectrum) such as effective temperature, surface +gravity, and radial velocity or its position relative to the star are normal +astrophysical parameters and not nuisance parameters. + +We distinguish between *linear and nonlinear parameters* in any forward model +function used within the ``breads`` framework because ``breads`` performs an +analytical marginalization of all of its linear parameters, as described in +Ruffio et al. (2019), to improve the tractability of the problem. For the +specific FM used in Agrawal et al. 2023, the contribution from each FM component +is a linear parameter. Indeed, the posteriors for these linear +parameters can be calculated analytically without a sampling algorithm such as +Markov Chain Monte Carlo (MCMC), allowing for increased speed, and +higher-dimensional or complex models (Ruffio et al. 2019, 2021). The definition +of a data structure and a forward model leads to the definition of a likelihood +assuming Gaussian white noise, which can then be used to either optimize the +parameters through a maximum likelihood or derive their posteriors. + +Examples of :ref:`fitting` include a simple grid search optimization, more +general optimizers (e.g., Nelder-Mead), or even posterior sampling algorithms +such as MCMC. The grid search can, for example, be used to compute detection +maps or cross-correlation functions by varying, respectively, the position of +the planet or its RV. diff --git a/docs/source/index.rst b/docs/source/index.rst index eac75a5..187e95d 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -27,6 +27,7 @@ Breads has been developed by Jean-Baptiste Ruffio (UC San Diego) and collaborato overview.rst installation.rst + framework.rst tutorials.rst data_classes.rst forward_models.rst diff --git a/docs/source/overview.rst b/docs/source/overview.rst index a0df2b5..e29435a 100644 --- a/docs/source/overview.rst +++ b/docs/source/overview.rst @@ -1,50 +1,6 @@ -Overview and core concepts +Quick overview ========================== -The mathematical approach of ``breads`` is presented in `Agrawal et al. 2023 `_. -We reiterate here, adapted from section 3.2 of that paper: - -``breads``, or the Broad Repository for Exoplanet Analysis, Detection, and -Spectroscopy, is a flexible framework that allows forward modeling of data from -moderate to high-resolution spectrographs. The philosophy of ``breads`` is to have -the users choose a *data class*, a *forward model function*, and a *fitting -strategy*. - -:ref:`data_classes` normalize the data format, simplifying reduction across -different spectrographs while allowing for specific behaviors of each -instrument to also be coded into their own specific class. - -The :ref:`forward model -(FM) ` aims to reproduce the data `d` as `d = FM + n`, where `n` is the noise. -The FM is a function not only of relevant *astrophysical parameters* of the -planet and the host star but also some *nuisance parameters*. For a general FM -within `breads`, nuisance parameters do not contain physical information about -the planet but are needed to model the data accurately. For example, -for the specific FM used in Agrawal et al. 2023, the linear parameters that -model the spurious contribution of the host star, the contribution from -telluric-only component, and the contribution from the residual principal -components are all nuisance parameters. Meanwhile, planetary characteristics -(which are needed to model its spectrum) such as effective temperature, surface -gravity, and radial velocity or its position relative to the star are normal -astrophysical parameters and not nuisance parameters. - -We distinguish between *linear and nonlinear parameters* in any forward model -function used within the ``breads`` framework because ``breads`` performs an -analytical marginalization of all of its linear parameters, as described in -Ruffio et al. (2019), to improve the tractability of the problem. For the -specific FM used in Agrawal et al. 2023, the contribution from each FM component -is a linear parameter. Indeed, the posteriors for these linear -parameters can be calculated analytically without a sampling algorithm such as -Markov Chain Monte Carlo (MCMC), allowing for increased speed, and -higher-dimensional or complex models (Ruffio et al. 2019, 2021). The definition -of a data structure and a forward model leads to the definition of a likelihood -assuming Gaussian white noise, which can then be used to either optimize the -parameters through a maximum likelihood or derive their posteriors. - -Examples of :ref:`fitting` include a simple grid search optimization, more -general optimizers (e.g., Nelder-Mead), or even posterior sampling algorithms -such as MCMC. The grid search can, for example, be used to compute detection -maps or cross-correlation functions by varying, respectively, the position of -the planet or its RV. +Brief overview. diff --git a/docs/source/tutorials.rst b/docs/source/tutorials.rst index fe5bde7..d6ecc1f 100644 --- a/docs/source/tutorials.rst +++ b/docs/source/tutorials.rst @@ -1,5 +1,5 @@ -BREADS tutorials +Tutorials ================