diff --git a/environment.yml b/environment.yml index 2aa55e7..6452f96 100644 --- a/environment.yml +++ b/environment.yml @@ -10,7 +10,8 @@ dependencies: - pip>=20.1 - ipykernel - nbconvert + - mpi4py<4 - pip: - festim==1.3 - pyparsing - - h-transport-materials==0.16 \ No newline at end of file + - h-transport-materials==0.16 diff --git a/tasks/task11.ipynb b/tasks/task11.ipynb new file mode 100644 index 0000000..544431e --- /dev/null +++ b/tasks/task11.ipynb @@ -0,0 +1,295 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Radioactive decay ☢️\n", + "\n", + "In this demo, we will learn how to set radioactive decay in a FESTIM model.\n", + "\n", + "We will set a simple 1D model with one trap.\n", + "\n", + "The sample will be at 300 K and exposed to tritium for a half a year.\n", + "\n", + "After that, the source of tritium will be turned off and the sample will be stored for several half-lives (about 12 years).\n", + "\n", + "## FESTIM model" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import festim as F\n", + "import numpy as np\n", + "import sympy as sp\n", + "\n", + "my_model = F.Simulation()\n", + "\n", + "vertices = np.concatenate(\n", + " [\n", + " np.linspace(0, 2e-5, num=1000),\n", + " np.linspace(2e-5, 1e-4, num=300),\n", + " np.linspace(1e-4, 1e-2, num=100),\n", + " ]\n", + ")\n", + "my_model.mesh = F.MeshFromVertices(vertices)\n", + "\n", + "my_model.materials = F.Material(id=1, D_0=1e-7, E_D=0.2)\n", + "\n", + "my_model.traps = F.Trap(\n", + " k_0=1e-16,\n", + " E_k=0.2,\n", + " p_0=1e13,\n", + " E_p=1.2,\n", + " density=1.3e24,\n", + " materials=my_model.materials[0],\n", + ")\n", + "\n", + "exposure_time = 2e7\n", + "my_model.boundary_conditions = [\n", + " F.DirichletBC(\n", + " surfaces=[1],\n", + " value=sp.Piecewise((1e17, F.t < exposure_time), (0, True)),\n", + " field=\"solute\",\n", + " )\n", + "]\n", + "\n", + "\n", + "my_model.T = F.Temperature(300)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Radioactive decay is implemented as a volumetric source in FESTIM.\n", + "The ``RadioactiveDecay`` class takes a decay constant as argument as well as a volume (here there is only one) and a field to which the source is applied.\n", + "\n", + "By default, ``field`` is set to ``\"all\"`` but it is also possible to set it only for some species." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "half_life = 12 * 365 * 24 * 3600 # 12 years\n", + "decay_constant = np.log(2) / half_life\n", + "\n", + "my_model.sources = [\n", + " F.RadioactiveDecay(decay_constant=decay_constant, volume=1, field=\"all\"),\n", + "]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We then set some derived quantities exports as well as profile exports:" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "derived_quantities = F.DerivedQuantities(\n", + " [\n", + " F.TotalVolume(\"retention\", volume=1),\n", + " F.TotalVolume(\"solute\", volume=1),\n", + " F.TotalVolume(\"1\", volume=1),\n", + " ],\n", + " show_units=True,\n", + ")\n", + "txt_export = F.TXTExport(\n", + " \"retention\",\n", + " times=[\n", + " exposure_time,\n", + " exposure_time + 1 * half_life,\n", + " exposure_time + 2 * half_life,\n", + " exposure_time + 3 * half_life,\n", + " ],\n", + " filename=\"task11/profiles.txt\",\n", + ")\n", + "\n", + "my_model.exports = [derived_quantities, txt_export]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The simulation will go on for three half-lives after the exposure." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defining initial values\n", + "Defining variational problem\n", + "Defining source terms\n", + "Defining boundary conditions\n", + "Time stepping...\n", + "100.0 % 1.2e+09 s Elapsed time so far: 12.5 s\n" + ] + } + ], + "source": [ + "my_model.dt = F.Stepsize(\n", + " initial_value=1e3, stepsize_change_ratio=1.1, milestones=txt_export.times\n", + ")\n", + "\n", + "my_model.settings = F.Settings(\n", + " absolute_tolerance=1e6,\n", + " relative_tolerance=1e-10,\n", + " final_time=exposure_time + 3 * half_life,\n", + " traps_element_type=\"DG\",\n", + ")\n", + "\n", + "my_model.initialise()\n", + "my_model.run()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Results\n", + "\n", + "We can plot the total inventory as a function of time. After the exposure, the inventory decreases as a geometric law expected from the 12 years half-life of tritium." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/remidm/miniconda3/envs/festim-workshop/lib/python3.11/site-packages/IPython/core/pylabtools.py:77: DeprecationWarning: backend2gui is deprecated since IPython 8.24, backends are managed in matplotlib and can be externally registered.\n", + " warnings.warn(\n", + "/home/remidm/miniconda3/envs/festim-workshop/lib/python3.11/site-packages/IPython/core/pylabtools.py:77: DeprecationWarning: backend2gui is deprecated since IPython 8.24, backends are managed in matplotlib and can be externally registered.\n", + " warnings.warn(\n", + "/home/remidm/miniconda3/envs/festim-workshop/lib/python3.11/site-packages/IPython/core/pylabtools.py:77: DeprecationWarning: backend2gui is deprecated since IPython 8.24, backends are managed in matplotlib and can be externally registered.\n", + " warnings.warn(\n" + ] + }, + { + "data": { + "text/plain": [ + "Text(0, 0.5, 'Inventory (T/m$^{2}$)')" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "time = np.array(derived_quantities[0].t)\n", + "retention = derived_quantities[0].data\n", + "\n", + "solute = derived_quantities[1].data\n", + "trapped = derived_quantities[2].data\n", + "one_year = 365 * 24 * 3600\n", + "plt.plot(time / one_year, retention)\n", + "plt.xlabel(\"Time (years)\")\n", + "plt.ylabel(\"Inventory (T/m$^{2}$)\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "By plotting the retention profiles, we also observe the decrease of the tritium concentration." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0, 0.5, 'Retention (T m$^{-3}$)')" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkEAAAHACAYAAAClALxNAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABf0ElEQVR4nO3deVxU5f4H8M+ZGYYdFAQERcAFU3ELrDAtLcWoTLNumiYuWJGaGpdK89eidcWW63XLrauY5XbLJSuiuJlbJglKWnrVFEIFRFRA1oGZ+f0xMDAyAzPMwBmYz/u+5jVnzvod0cun5znneQS1Wq0GERERkY2RiF0AERERkRgYgoiIiMgmMQQRERGRTWIIIiIiIpvEEEREREQ2iSGIiIiIbBJDEBEREdkkhiAiIiKySQxBREREZJMYgoiIiMgmMQTpcejQIYwePRp+fn4QBAF79+416fgDBw5gzJgx8PX1hbOzMwYMGICtW7ca3P/nn3+GTCbDgAEDzCuciIiIjMYQpEdJSQn69++P1atXN+n4o0ePol+/fti1axdOnTqF6dOnIyoqCl9//XW9fQsLCxEVFYWHH37Y3LKJiIjIBAInUG2YIAjYs2cPxo4dq12nUCjwf//3f9i6dSsKCgoQEhKC999/H8OGDTN4nsceeww+Pj7YtGmTzvoJEyagR48ekEql2Lt3L9LT05vnixAREZEOtgQ1wbRp0/Dzzz9jx44dOHXqFP72t7/hkUcewYULFwweU1hYCA8PD511CQkJuHjxIt5+++3mLpmIiIjuIBO7gNbm4sWL2L59O65cuQI/Pz8AQFxcHJKSkpCQkIAlS5bUO+bLL7/E8ePHsX79eu26CxcuYP78+Th8+DBkMv4YiIiIWhp/+5roxIkTUKvVCA4O1llfUVEBT0/PevsfOHAAU6dOxSeffII+ffoAAJRKJSZOnIhFixbVOw8RERG1DIYgE6lUKkilUqSlpUEqlepsc3Fx0fl88OBBjB49GsuWLUNUVJR2/e3bt5GamoqTJ09i9uzZ2vOq1WrIZDL88MMPeOihh5r/yxAREdkwhiATDRw4EEqlEnl5eRg6dKjB/Q4cOIDHH38c77//Pl544QWdbW5ubjh9+rTOujVr1mD//v348ssvERQU1Cy1ExERUS2GID2Ki4vx559/aj9nZGQgPT0dHh4eCA4OxqRJkxAVFYV//vOfGDhwIPLz87F//3707dsXjz76KA4cOIDHHnsMc+fOxVNPPYXc3FwAgFwuh4eHByQSCUJCQnSu6e3tDQcHh3rriYiIqHnw6TA9UlNTMXDgQAwcOBAAEBsbi4EDB+Ktt94CoHmqKyoqCn//+9/Rs2dPPPHEE0hJSYG/vz8AYPPmzSgtLUV8fDx8fX21r3Hjxon2nYiIiEgXxwkiIiIim8SWICIiIrJJDEFERERkk3hjdDWVSoXs7Gy4urpCEASxyyEiIiIjqNVq3L59G35+fpBITGvbYQiqlp2drb2xmYiIiFqXy5cvo3PnziYdwxBUzdXVFYDmD9HNzU3kaoiIiMgYRUVF8Pf31/4eNwVDULWaLjA3NzeGICIiolamKbey8MZoIiIiskkMQURERGSTGIKIiIjIJvGeICIiajVUKhUUCoXYZVALsrOzg1QqbZZzMwQREVGroFAokJGRAZVKJXYp1MLatWuHjh07WnwcP4YgIiKyemq1Gjk5OZBKpfD39zd5UDxqndRqNUpLS5GXlwcA8PX1tej5GYKIiMjqVVVVobS0FH5+fnBychK7HGpBjo6OAIC8vDx4e3tbtGuMUZqIiKyeUqkEAMjlcpErITHUBN/KykqLnpchiIiIWg3O7WibmuvnzhBERERENokhiIiIiGwSQxAREVEzGTZsGObNm9ci11qzZg2CgoLg4OCA0NBQHD58uNFjKioqsHDhQgQEBMDe3h7dunXDpk2btNt3796NsLAwtGvXDs7OzhgwYAA+++yz5vwaLYpPhzVCrVZDrQaUajVUNcsqzbJKDZRUVMFeJoEgCFCr1brH6pyn7nq13p10jzZ8jNrAMXWvf7tcU5e8ujYAqOlRrelaFarX1H6u3UnvNqDRc0Ew/Zi6Xb0N1gZAJmVuJyK6086dOzFv3jysWbMG999/P9avX4/IyEicOXMGXbp0MXjcM888g2vXrmHjxo3o3r078vLyUFVVpd3u4eGBhQsX4q677oJcLsc333yDadOmwdvbG6NGjWqJr9asBPWdv7ltVFFREdzd3eE/7z+Q2PPxS2vmJJdqA961ogqdbZlLHxOpKiJqTuXl5cjIyNC2dLQGU6dOxaeffqqzLiMjA4GBgRa/1r333ou7774ba9eu1a7r1asXxo4di/j4eL3HJCUlYcKECbh06RI8PDyMvtbdd9+Nxx57DO+++269bSUlJfD19cWmTZvw9NNPa9d//fXXmDBhAnJzc+Hq6mrCN9No6Odf8/u7sLAQbm5uJp2X/1ndwgSh9iW54yWVCNqX7I6XnbT2JZdKdF+y2pe9TPdHqt1evW/NOWrOW3O9mhoEQbdlxhqVKpS4VVpZLwABwIufpYpQERG1NLVajVJFlSgvY9sOVqxYgfDwcDz//PPIyclBTk4O/P399e4bExMDFxeXBl9ZWVl6j1UoFEhLS0NERITO+oiICBw9etRgffv27UNYWBg++OADdOrUCcHBwYiLi0NZWZnBP/Mff/wR586dwwMPPKB3H2dnZ0yYMAEJCQk66xMSEvD00083KQA1J3aH3WHL9EEI8PVCRZUSHs5ySAUBkpqXBPWWBWjCS11t8RHOmn/0Nf/21Xeu136u2a7Gnf8/UXebKeeqWVGsqIJMIqCiUoWKKiUqqlS4XV6FI39ex8c/XQQAfP/HtaZ/SSJqNcoqlej91veiXPvM4lFwkjf+69Pd3R1yuRxOTk7o2LFjg/suXrwYcXFxDe7j5+end31+fj6USiV8fHx01vv4+CA3N9fg+S5duoQjR47AwcEBe/bsQX5+PmbOnImbN2/q3BdUWFiITp06oaKiAlKpFGvWrMHIkSMNnnfGjBkYPHgwsrOz4efnh/z8fHzzzTdITk5u8PuJgSHoDncHeMDNzVnsMqyO9r6eevmu5QKfu5Od3vXh3Ty1IYiIqDXy9vaGt7e3Wee48z/A1Wp1g/9RrlKpIAgCtm7dCnd3dwDAsmXL8PTTT+Pjjz/WjtTs6uqK9PR0FBcX48cff0RsbCy6du2KYcOG6T3vPffcgz59+mDLli2YP38+PvvsM3Tp0sVg65GYGIKIiKjVcbST4sxicW7MdbSz/IzmMTEx+Pzzzxvcx9BNzh06dIBUKq3X6pOXl1evdaguX19fdOrUSRuAAM19RGq1GleuXEGPHj0AABKJBN27dwcADBgwAGfPnkV8fLzBEARoWoNWr16N+fPnIyEhAdOmTbPKXhKGICIianUEQTCqS0pscrlcO+VHQ8zpDpPL5QgNDUVycjKefPJJ7frk5GSMGTPG4Pnuv/9+fPHFFyguLoaLiwsA4Pz585BIJOjcubPB49RqNSoq6t+TWddzzz2H1157DStXrsQff/yBKVOmNLi/WKz/bxAREVErFRgYiJSUFGRmZsLFxQUeHh6QSOo/k2Rud1hsbCwmT56MsLAwhIeHY8OGDcjKykJMTIx2nwULFuDq1avYsmULAGDixIl49913MW3aNCxatAj5+fl49dVXMX36dG1XWHx8PMLCwtCtWzcoFAokJiZiy5YtOk+h6dO+fXuMGzcOr776KiIiIhoMVWLi02HUJjx0l3l96UREzSEuLg5SqRS9e/eGl5eXwSe8zDV+/HgsX74cixcvxoABA3Do0CEkJiYiICBAu09OTo7O9V1cXJCcnIyCggKEhYVh0qRJGD16NFauXKndp6SkBDNnzkSfPn0wePBgfPnll/j8888xY8aMRmuKjo6GQqHA9OnTLftlLYjjBFUzZ5wBEt+C3aew/dfLADhWEFFb1BrHCbJ1W7duxdy5c5GdnQ25XG7WuZprnCB2h1Gb4OXK/1MkIrIGpaWlyMjIQHx8PF588UWzA1BzYncYtQlervZil0BERAA++OADDBgwAD4+PliwYIHY5TSIIYjaBC+X2hCkUrGHl4hILO+88w4qKyvx448/ap86s1YMQdQmeDjXNrcWlFWKWAkREbUWDEHUJni61IagiqrGx+QgIiJiCKI2wcW+9h7/MgVDEBERNY4hiNoER3ntMPalDEFERGQEhiBqE+TS2r/KJRVVIlZCREStBUMQtQl2dUIQW4KIiMgYDEHUJkgltbMTlyjYEkRERI1jCKI2p7SCLUFEZB2GDRuGefPmNft1Dh06hNGjR8PPzw+CIGDv3r062ysrK/H666+jb9++cHZ2hp+fH6KiopCdnd3ouQsKCjBr1iz4+vrCwcEBvXr1QmJionb72rVr0a9fP7i5ucHNzQ3h4eH47rvvLP0VmwVDELU5xbwniIhsTElJCfr374/Vq1fr3V5aWooTJ07gzTffxIkTJ7B7926cP38eTzzxRIPnVSgUGDlyJDIzM/Hll1/i3Llz+OSTT9CpUyftPp07d8bSpUuRmpqK1NRUPPTQQxgzZgz++OMPi37H5sC5w6jNKWV3GBFZgalTp+LgwYM4ePAgVqxYAQDIyMhAYGCgxa8VGRmJyMhIg9vd3d2RnJyss27VqlW45557kJWVhS5duug9btOmTbh58yaOHj0KOzs7ANCZmR4ARo8erfP5H//4B9auXYtjx46hT58+9c6ZmZmJrl274tdff0VYWJhOPR999BEyMzMhCEK945qDVbYENdasd6fdu3dj5MiR8PLy0jbFff/99y1TLFmdEt4YTdT2qdWAokScl9q4qXlWrFiB8PBwPP/888jJyUFOTg78/f317hsTEwMXF5cGX1lZWZb8E0RhYSEEQUC7du0M7rNv3z6Eh4dj1qxZ8PHxQUhICJYsWQKlUv//zyqVSuzYsQMlJSUIDw/Xu09gYCBGjBiBhIQEnfUJCQmYOnVqiwUgwEpbgmqa9aZNm4annnqq0f0PHTqEkSNHYsmSJWjXrh0SEhIwevRopKSkYODAgS1QMVmTUnaHEbV9laXAEj9xrv1GNiB3bnQ3d3d3yOVyODk5oWPHjg3uu3jxYsTFxTW4j5+f5b5veXk55s+fj4kTJ8LNzc3gfpcuXcL+/fsxadIkJCYm4sKFC5g1axaqqqrw1ltvafc7ffo0wsPDUV5eDhcXF+zZswe9e/c2eN4ZM2YgJiYGy5Ytg729PX777Tekp6dj9+7dFvuOxrDKENRYs96dli9frvN5yZIl+Oqrr/D1118zBNmgYt4YTUStjLe3N7y9vVvkWpWVlZgwYQJUKhXWrFnT4L4qlQre3t7YsGEDpFIpQkNDkZ2djQ8//FAnBPXs2RPp6ekoKCjArl27MGXKFBw8eNBgEBo7dixmz56NPXv2YMKECdi0aROGDx/eLF2FDbHKEGQulUqF27dvw8PDQ+xSSAQpGTfELoGImpudk6ZFRqxrW1hMTAw+//zzBvc5c+aMwXt3jFVZWYlnnnkGGRkZ2L9/f4OtQADg6+sLOzs7SKW1o/L36tULubm5UCgUkMs18zbK5XJ0794dABAWFobjx49jxYoVWL9+vd7zyuVyTJ48GQkJCRg3bhy2bdtWr0GjJbTJEPTPf/4TJSUleOaZZwzuU1FRgYqKCu3noqKiliiNWkBQh8abqYmolRMEo7qkxCaXyw3eP1NXS3SH1QSgCxcu4KeffoKnp2ejx9x///3Ytm0bVCoVJBLNbcTnz5+Hr6+vNgDpo1ardX7H6jNjxgyEhIRgzZo1qKysxLhx40z7QhbQ5kLQ9u3b8c477+Crr75qsGkxPj4eixYtasHKqKUYec8iEVGzCwwMREpKCjIzM+Hi4gIPDw9tmKjL3O6w4uJi/Pnnn9rPGRkZSE9Ph4eHB7p06YKqqio8/fTTOHHiBL755hsolUrk5uYCADw8PLSBJioqCp06dUJ8fDwA4KWXXsKqVaswd+5cvPzyy7hw4QKWLFmCOXPmaK/1xhtvIDIyEv7+/rh9+zZ27NiBAwcOICkpqcGae/Xqhfvuuw+vv/46pk+fDkdHxyZ//6ayyqfDmmrnzp2Ijo7Gf/7zH4wYMaLBfRcsWIDCwkLt6/Llyy1UJTU3hVIldglERACAuLg4SKVS9O7dG15eXhZ/wqtGamoqBg4cqL0PNjY2FgMHDtTet3PlyhXs27cPV65cwYABA+Dr66t9HT16VHuerKws5OTkaD/7+/vjhx9+wPHjx9GvXz/MmTMHc+fOxfz587X7XLt2DZMnT0bPnj3x8MMPIyUlBUlJSRg5cmSjdUdHR0OhUGD69OmW+qMwSZtpCdq+fTumT5+O7du347HHHmt0f3t7e9jb27dAZdTSKhmCiMhKBAcH45dffmn26wwbNgzqBprBAwMDG9xe48CBA/XWhYeH49ixYwaP2bhxo1E16pOTk4OQkBAMGjSoyecwh1WGoMaa9RYsWICrV69iy5YtADQBKCoqCitWrMB9992nbeJzdHSEu7u7KN+BxKOoYggiIrJmxcXFOHv2LFatWoV3331XtDqssjussWa9nJwcnSbF9evXo6qqSju3Sc1r7ty5otRP4qpgCCIismqzZ8/GkCFD8OCDD4rWFQZYaUtQY816mzdv1vmsr/mObBe7w4iIrNvmzZvr/S4Xg1W2BBGZg91hRERkDIYganMYgoiIyBgMQdTm8BF5IiIyBkMQtTlsCSIiImMwBFGbw5YgIiIyBkMQtTmcNoOIiIzBEEREREQ2iSGIiIiomQwbNgzz5s1r9uvEx8dj0KBBcHV1hbe3N8aOHYtz584Z3P/FF1+EIAhYvnx5o+cuKCjQDkbs4OCAXr16ITExUbt97dq16NevH9zc3ODm5obw8HB89913lvhazc4qB0skIiIi4x08eBCzZs3CoEGDUFVVhYULFyIiIgJnzpyBs7Ozzr579+5FSkoK/Pz8Gj2vQqHAyJEj4e3tjS+//BKdO3fG5cuX4erqqt2nc+fOWLp0Kbp37w4A+PTTTzFmzBicPHkSffr0sewXtTC2BBERETWDqVOn4uDBg1ixYgUEQYAgCMjMzGyWayUlJWHq1Kno06cP+vfvj4SEBGRlZSEtLU1nv6tXr2L27NnYunUr7OzsGj3vpk2bcPPmTezduxf3338/AgICMGTIEPTv31+7z+jRo/Hoo48iODgYwcHB+Mc//gEXFxeDk65mZmZCIpEgNTVVZ/2qVasQEBBg1ESvlsKWICIianXUajXKqspEubajzBGCIDS634oVK3D+/HmEhIRg8eLFAAAvLy+9+8bExODzzz9v8HxnzpxBly5djKqxsLAQAODh4aFdp1KpMHnyZLz66qtGt9Ds27cP4eHhmDVrFr766it4eXlh4sSJeP311yGVSuvtr1Qq8cUXX6CkpATh4eF6zxkYGIgRI0YgISEBYWFh2vUJCQmYOnWqUX+2lsIQRERErU5ZVRnu3XavKNdOmZgCJzunRvdzd3eHXC6Hk5MTOnbs2OC+ixcvRlxcXIP7GNN9BWgCYmxsLIYMGYKQkBDt+vfffx8ymQxz5swx6jwAcOnSJezfvx+TJk1CYmIiLly4gFmzZqGqqko7qTkAnD59GuHh4SgvL4eLiwv27NmD3r17GzzvjBkzEBMTg2XLlsHe3h6//fYb0tPTsXv3bqNrswSGICIiIpF5e3vD29vbIueaPXs2Tp06hSNHjmjXpaWlYcWKFThx4oRJLS0qlQre3t7YsGEDpFIpQkNDkZ2djQ8//FAnBPXs2RPp6ekoKCjArl27MGXKFBw8eNBgEBo7dixmz56NPXv2YMKECdi0aROGDx+OwMDAJn/vpmAIIiKiVsdR5oiUiSmiXdvSLNUd9vLLL2Pfvn04dOgQOnfurF1/+PBh5OXl6RyvVCrx97//HcuXLzd4r5Kvry/s7Ox0ur569eqF3NxcKBQKyOVyAIBcLtfeGB0WFobjx49jxYoVWL9+vd7zyuVyTJ48GQkJCRg3bhy2bdtm1JNqlsYQRERErY4gCEZ1SYlNLpdDqVQ2up+53WFqtRovv/wy9uzZgwMHDiAoKEhn++TJkzFixAiddaNGjcLkyZMxbdo0g+e9//77sW3bNqhUKkgkmmepzp8/D19fX20AMlRPRUVFg99nxowZCAkJwZo1a1BZWYlx48Y1uH9zYAgiIiJqJoGBgUhJSUFmZiZcXFzg4eGhDRN1mdsdNmvWLGzbtg1fffUVXF1dkZubC0BzX5KjoyM8PT3h6empc4ydnR06duyInj17atdFRUWhU6dOiI+PBwC89NJLWLVqFebOnYuXX34ZFy5cwJIlS3TuK3rjjTcQGRkJf39/3L59Gzt27MCBAweQlJTUYM29evXCfffdh9dffx3Tp0+Ho6PlW9gaw0fkiYiImklcXBykUil69+4NLy8vZGVlNct11q5di8LCQgwbNgy+vr7a186dO006T1ZWFnJycrSf/f398cMPP+D48ePo168f5syZg7lz52L+/Pnafa5du4bJkyejZ8+eePjhh5GSkoKkpCSMHDmy0etFR0dDoVBg+vTpJtVpKWwJIiIiaibBwcH45Zdfmv06TRlbR999QAcOHKi3Ljw83OCYPwCwceNGk69dIycnByEhIRg0aFCTz2EOtgQRERFRiyouLsbx48exatUqkx7ZtzSGICIiImpRs2fPxpAhQ/Dggw+K1hUGsDuMiIiIWtjmzZuxefNmsctgSxARERHZJoYgIiIiskkMQURERGSTGIKIiIjIJjEEERERkU1iCCIiIiKbxBBERETUTIYNG4Z58+Y1+3XWrl2Lfv36wc3NDW5ubggPD8d3331Xb7+zZ8/iiSeegLu7O1xdXXHfffc1OpVHQUEBZs2aBV9fXzg4OKBXr15ITEw0+drWiOMEERERtXKdO3fG0qVL0b17dwDAp59+ijFjxuDkyZPo06cPAODixYsYMmQIoqOjsWjRIri7u+Ps2bNwcHAweF6FQoGRI0fC29sbX375JTp37ozLly/D1dXVpGtbK0HdlAlH2qCioiK4u7ujsLAQbm5uYpdDTRA4/1vtcubSx0SshIgsrby8HBkZGQgKCmrwl7Y1mTp1Kj799FOddRkZGQgMDGyR63t4eODDDz9EdHQ0AGDChAmws7PDZ599ZvQ51q1bhw8//BD/+9//YGdn1+Rr15WZmYmuXbvi119/RVhYmHb9qlWr8NFHHyEzMxOCIOgc09DP35zf3+wOIyIiagYrVqxAeHg4nn/+eeTk5CAnJwf+/v56942JiYGLi0uDL2NnoFcqldixYwdKSkoQHh4OAFCpVPj2228RHByMUaNGwdvbG/feey/27t3b4Ln27duH8PBwzJo1Cz4+PggJCcGSJUugVCqNvvadAgMDMWLECCQkJOisT0hIwNSpU+sFoObE7jAiImp11Go11GVlolxbcHQ06he1u7s75HI5nJyc0LFjxwb3Xbx4MeLi4hrcx8/Pr8Htp0+fRnh4OMrLy+Hi4oI9e/agd+/eAIC8vDwUFxdj6dKleO+99/D+++8jKSkJ48aNw08//YQHH3xQ7zkvXbqE/fv3Y9KkSUhMTMSFCxcwa9YsVFVV4a233jLq2vrMmDEDMTExWLZsGezt7fHbb78hPT0du3fvbvA7WhpDEBERtTrqsjKcuztUlGv3PJEGwcnJouf09vaGt7e3Wefo2bMn0tPTUVBQgF27dmHKlCk4ePAgevfuDZVKBQAYM2YMXnnlFQDAgAEDcPToUaxbt85gCFKpVPD29saGDRsglUoRGhqK7OxsfPjhhzohqKFr6zN27FjMnj0be/bswYQJE7Bp0yYMHz68xboKa7A7jIiISGSW6A6Ty+Xo3r07wsLCEB8fj/79+2PFihUAgA4dOkAmk9ULJb169WrwvL6+vggODoZUKtU5Jjc3FwqFwqhrG6p18uTJSEhIgEKhwLZt20SZTZ4tQURE1OoIjo7oeSJNtGsbSy6XG7x/pi5LdIfdSa1Wo6KiQlvHoEGDcO7cOZ19zp8/j4CAAIPnuP/++7Ft2zaoVCpIJBLtMb6+vpDL5UZd25AZM2YgJCQEa9asQWVlJcaNG2fsV7MYhiAiImp1BEGweJdUcwgMDERKSgoyMzPh4uICDw8PbZioy9zusDfeeAORkZHw9/fH7du3sWPHDhw4cABJSUnafV599VWMHz8eDzzwAIYPH46kpCR8/fXXOHDggHafqKgodOrUCfHx8QCAl156CatWrcLcuXPx8ssv48KFC1iyZAnmzJlj0rX16dWrF+677z68/vrrmD59OhxNCJeWwhBERETUTOLi4jBlyhT07t0bZWVlzfaI/LVr1zB58mTk5OTA3d0d/fr1Q1JSEkaOHKnd58knn8S6desQHx+POXPmoGfPnti1axeGDBmi3ScrK0snpPn7++OHH37AK6+8gn79+qFTp06YO3cuXn/9dZOubUh0dDSOHj0qSlcYwHGCtDhOUOvHcYKI2q7WOE4QNe4f//gHduzYgdOnTze4H8cJIiIiojahuLgYx48fx6pVq3S61loaQxARERG1qNmzZ2PIkCF48MEHResKA3hPEBEREbWwzZs3Y/PmzWKXYZ0tQYcOHcLo0aPh5+cHQRAaHdYbAA4ePIjQ0FA4ODiga9euWLduXfMXSkRERK2WVYagkpIS9O/fH6tXrzZq/4yMDDz66KMYOnQoTp48iTfeeANz5szBrl27mrlSIiIiaq2ssjssMjISkZGRRu+/bt06dOnSBcuXLwegGXsgNTUVH330EZ566qlmqpKIiFoaH2i2Tc31c7fKliBT/fLLL4iIiNBZN2rUKKSmpqKyslLvMRUVFSgqKtJ5ERGRdaqZtqHuVA1kO0pLSwEAdnZ2Fj2vVbYEmSo3Nxc+Pj4663x8fFBVVYX8/Hz4+vrWOyY+Ph6LFi1qqRKJiMgMMpkMTk5OuH79Ouzs7PSOukxtj1qtRmlpKfLy8tCuXTudOcwsoU2EIEAzhHpdNU1nd66vsWDBAsTGxmo/FxUVwd/fv/kKJCKiJhMEAb6+vsjIyMBff/0ldjnUwtq1a4eOHTta/LxtIgR17NgRubm5Ouvy8vIgk8ng6emp9xh7e3vY29u3RHlERGQBcrkcPXr0YJeYjbGzs7N4C1CNNhGCwsPD8fXXX+us++GHHxAWFmbx/kMiIhKPRCLhtBlkMVbZqVpcXIz09HSkp6cD0DwCn56ejqysLACarqyoqCjt/jExMfjrr78QGxuLs2fPYtOmTdi4cSPi4uLEKJ+IiIhaAatsCUpNTcXw4cO1n2vu3ZkyZQo2b96MnJwcbSACgKCgICQmJuKVV17Bxx9/DD8/P6xcuZKPxxMREZFBnEW+GmeRb/04izwRke3hLPJEADyc5WKXQERErQhDELUZ0wYHAgCeDu0sbiFERNQqMARRm1EzJJTUwNhQREREdTEEUZtRMzCmGrzNjYiIGscQRG0Ob/UnIiJjMARRm1HTC8YMRERExmAIojZDQHV3GFMQEREZgSGI2ozaliCmICIiahxDELUZ2mfCmIGIiMgIDEHUZki0T4cRERE1jiGI2gxtdxhvCiIiIiMwBFGbwwhERETGYAiiNkM7WCJTEBERGYEhiNqMmhujVUxBRERkBIYgajM4WCIREZmCIYjaDD4iT0REpmAIojaDE6gSEZEpGIKozah9RF7cOoiIqHVgCKI2o6Y7jCGIiIiMwRBEbQe7w4iIyAQMQdRmsCWIiIhMwRBEbQYfkSciIlMwBFGbIeGI0UREZAKZJU5SWVmJ3NxclJaWwsvLCx4eHpY4LZFJtOMEsS2IiIiM0OSWoOLiYqxfvx7Dhg2Du7s7AgMD0bt3b3h5eSEgIADPP/88jh8/bslaiRrER+SJiMgUTQpB//rXvxAYGIhPPvkEDz30EHbv3o309HScO3cOv/zyC95++21UVVVh5MiReOSRR3DhwgVL101Uj4Cap8OIiIga16TusKNHj+Knn35C37599W6/5557MH36dKxbtw4bN27EwYMH0aNHD7MKJWpUdUsQJ1AlIiJjNCkEffHFF0btZ29vj5kzZzblEkQm4yPyRERkCpO7w27duoWbN28CAK5fv45du3bh999/t3hhRKaqnTuMiIiocSaFoH//+98ICwtDaGgo1q5diyeffBI//vgjJkyYgA0bNjRXjURGqW0JYgwiIqLGmdQdtmrVKvzxxx8oLS1Fly5dkJGRAS8vLxQVFeGBBx7ACy+80Fx1EjVKEBrfh4iIqIZJIUgqlcLBwQEODg7o3r07vLy8AABubm7arggisfAReSIiMoVJ3WEymQzl5eUAgIMHD2rX375927JVETVB7SPyTEFERNQ4k0LQ/v37YW9vDwBwd3fXri8rK8PGjRstWxmRidgSREREpjCpO8zFxUXvem9vb3h7e1ukIKKmEjh3GBERmcCsCVRzc3MtVQeR2bRPh7E7jIiIjGBWCIqIiLBUHURmY3cYERGZwqwQxPFYyJpw7jAiIjKFWSGIj8WTNRFq+8OIiIgaZVYIIrImNRmIE6gSEZExGIKozdDeEyRuGURE1EqYFYLkcrml6qhnzZo1CAoKgoODA0JDQ3H48OEG99+6dSv69+8PJycn+Pr6Ytq0abhx40az1UfWqOYRecYgIiJqnFkhKDU11VJ16Ni5cyfmzZuHhQsX4uTJkxg6dCgiIyORlZWld/8jR44gKioK0dHR+OOPP/DFF1/g+PHjmDFjRrPUR9aJLUFERGQKkwZLNKS8vBynTp1CXl4eVCqVzrYnnnjC5PMtW7YM0dHR2hCzfPlyfP/991i7di3i4+Pr7X/s2DEEBgZizpw5AICgoCC8+OKL+OCDD5rwbai1qp1FXtQyiIiolTA7BCUlJSEqKgr5+fn1tgmCAKVSadL5FAoF0tLSMH/+fJ31EREROHr0qN5jBg8ejIULFyIxMRGRkZHIy8vDl19+iccee8zgdSoqKlBRUaH9XFRUZFKdZH20I0aLXAcREbUOZt8YPXv2bPztb39DTk4OVCqVzsvUAAQA+fn5UCqV8PHx0Vnv4+NjcITqwYMHY+vWrRg/fjzkcjk6duyIdu3aYdWqVQavEx8fD3d3d+3L39/f5FrJumgHbGBTEBERGcHsEJSXl4fY2Nh6ocVcd45BpFarDY5LdObMGcyZMwdvvfUW0tLSkJSUhIyMDMTExBg8/4IFC1BYWKh9Xb582aL1U8uTVP9tZgQiIiJjmN0d9vTTT+PAgQPo1q2bJepBhw4dIJVK67X65OXlGQxa8fHxuP/++/Hqq68CAPr16wdnZ2cMHToU7733Hnx9fesdY29vD3t7e4vUTNZBO2I0UxARERnB7BC0evVq/O1vf8Phw4fRt29f2NnZ6WyvuVnZWHK5HKGhoUhOTsaTTz6pXZ+cnIwxY8boPaa0tBQyme5XkUqlAPi4tE3RPh3GnzkRETXO7BC0bds2fP/993B0dMSBAwd0uqwEQTA5BAFAbGwsJk+ejLCwMISHh2PDhg3IysrSdm8tWLAAV69exZYtWwAAo0ePxvPPP4+1a9di1KhRyMnJwbx583DPPffAz8/P3K9IrQSfDiMiIlOYHYL+7//+D4sXL8b8+fMhkVhmAOrx48fjxo0bWLx4MXJychASEoLExEQEBAQAAHJycnTGDJo6dSpu376N1atX4+9//zvatWuHhx56CO+//75F6qHWQft0GEMQEREZQVCb2V/k4eGB48ePW+yeILEUFRXB3d0dhYWFcHNzE7scaoJD568jatOv6OXrhu/mDhW7HCIiagHm/P42u+lmypQp2Llzp7mnITKbdsRoNgUREZERzO4OUyqV+OCDD/D999+jX79+9W6MXrZsmbmXIDIKnw4jIiJTmB2CTp8+jYEDBwIAfv/9d51thsb1IWoOAp8OIyIiE5gdgn766SdL1EFkNj4dRkREprDM41xE1oCzyBMRkQkYgqjNqL0niDGIiIgaxxBEbYbAliAiIjIBQxC1GRKmICIiMkGTQ9D06dNx+/ZtS9ZCZBZmICIiMkWTQ9Cnn36KsrIyS9ZCZJbap8MYg4iIqHFNDkH8RUPWhi1BRERkCrPuCeJgiGRdOGI0EREZz6zBEoODgxsNQjdv3jTnEkRG44jRRERkCrNC0KJFi+Du7m6pWojMUhPHVSpRyyAiolbCrBA0YcIEeHt7W6oWIrOwe5aIiEzR5HuC+AuHrA2fDiMiIlPw6TBqM/h0GBERmaJJISgrKwsqlcrorrCrV6825TJEJhH4dBgREZmgSSFo0KBBeOGFF/Drr78a3KewsBCffPIJQkJCsHv37iYXSGQsPh1GRESmaNKN0WfPnsWSJUvwyCOPwM7ODmFhYfDz84ODgwNu3bqFM2fO4I8//kBYWBg+/PBDREZGWrpuonq0IYgZiIiIjNCkliAPDw989NFHyM7Oxtq1axEcHIz8/HxcuHABADBp0iSkpaXh559/ZgCiFqPtDhO5DiIiah3MekTewcEB48aNw7hx4yxVD1GTsSWIiIhMYda0GUTWpHbUBqYgIiJqHEMQtRl8OoyIiEzBEERtBscJIiIiUzAEUZvBEaOJiMgUDEHUZtS0BKmYgYiIyAgMQdSG1NwTxBRERESNM+sR+Ro//vgjfvzxR+Tl5UGlUuls27RpkyUuQdQo3hNERESmMDsELVq0CIsXL0ZYWBh8fX05u7wlKCuBylJAUap5zzsLOLYHJDJAVQWoKgFlVe2yqkrz+cIPgIM74DcQ2iigbRWpEw3qrqtSAKd2AD0jAbfOmmtIpNXvNct1P8uAm5eADsGamuycADtHzbvUru5z6i2OT8gTEZEpzA5B69atw+bNmzF58mRL1NM2qVTA9bNA2S2gIAv45hXA0QPoci9QehMo+Au4lanZV2KnCTYt7Wqa+ecQpIBaWfu5y2DAyQNw8gSu/a4JdSPeBtoFAO0DALmz+dese3mBI0YTEZHxzA5BCoUCgwcPtkQtbUdJPnDqP8D3CwC5K6C4XX+f29nAH3vqr68bgAQJoK7Tvdg+UBOSpHbVrTM1y9UtNhmHNPv1iKg5QZ1z1W2hEWrXFWUDOemAVA4EPVDduqSsfq/7UmneCy9rWqcAzXerLKmtsW4AAoCso/W/3/YJup/vehwovAL0nwAMmqH5Pk3Ep8OIiMgUZoegGTNmYNu2bXjzzTctUU/rVVEM/GcycHG/7vo7A1DXYcClA5pAc2+MpkXIyQOoKgfc/QFnL033ktxZE0ysvXtRra7tvqss07znpGu65SpuA6U3NK1dB5ZqQpJvfyDnt9rj//eN5j0nHUiar1n+22ZNODIxEEnYEkRERCYwOwSVl5djw4YN+O9//4t+/frBzk73F9eyZcvMvYR1U1YBKwcChVn6t49aAnQfAXh0A6QWuQ/duggCIJNrXo7tNOs8u9Xf78HXdD8XZAG3/gIuHwP2v6e77Yupmve7pwCP/0vTymVkKQBHjCYiIuOY/Vv51KlTGDBgAADg999/19nW5m+SzjgEfDpad133EcAjS4EOPcSpqbVo10XzChoKPPCqprstLQH45WPg5kXNPic+1bwm7wG6PWT0qdVsCyIiIiOYHYJ++uknS9TR+vy4GDj8z9rPfgOB6GSz7mmxaRIJMCha86q4DXzyMJB/TrPtsyeBUfFA+MwGT8GWICIiMoVF+mcKCgqwceNGnD17FoIgoHfv3pg+fTrc3d0tcXrr89tO3QA0LQkICBevnrbG3hWY/Stw7Q9gbfVN998vAFy8gb5PGzyMT4cREZEpzB4xOjU1Fd26dcO//vUv3Lx5E/n5+Vi2bBm6deuGEydOWKJG61KSD+x5ofZz3J8MQM3Fpw+wMLf2867o2ifg9OA4QUREZAqzQ9Arr7yCJ554ApmZmdi9ezf27NmDjIwMPP7445g3b54FSrQyH9a56feVM4CLl3i12AI7R2DhtdrPn47WPG2mR+2I0UxBRETUOIu0BL3++uuQyWp71mQyGV577TWkpqaae3rrcvrL2uUnVgPuncSrxZbYOQB/P1/7+fNxencTqtuCOIEqEREZw+wQ5Obmhqys+o+HX758Ga6urk0+75o1axAUFAQHBweEhobi8OHDDe5fUVGBhQsXIiAgAPb29ujWrZvl5y3bFa15lzkAd3OE7Bbl6gMMX6hZzj4JZB2rt0vtjdFMQURE1DizQ9D48eMRHR2NnTt34vLly7hy5Qp27NiBGTNm4Nlnn23SOXfu3Il58+Zh4cKFOHnyJIYOHYrIyEi9YavGM888gx9//BEbN27EuXPnsH37dtx1111N/Vr1ZR6pXZ70peH9qPk88Grt8vdv1NusHTG6ZaohIqJWzuynwz766CMIgoCoqChUVVUBAOzs7PDSSy9h6dKlTTrnsmXLEB0djRkzZgAAli9fju+//x5r165FfHx8vf2TkpJw8OBBXLp0CR4eHgCAwMDApn0hQzY/pnlvF6AZ24ZaniAAz+4Eto/XzHWWfbJ6stia7Zo3NgQREZExzG4JksvlWLFiBW7duoX09HScPHkSN2/exL/+9S/Y29ubfD6FQoG0tDRERETorI+IiMDRo3rmogKwb98+hIWF4YMPPkCnTp0QHByMuLg4lJWVNek71VNRXLvcb7xlzklNEzyqdvmXNTqbBLTxwTmJiMiiLDaPg5OTE/r27Wv2efLz86FUKuHj46Oz3sfHB7m5uXqPuXTpEo4cOQIHBwfs2bMH+fn5mDlzJm7evGnwvqCKigpUVFRoPxcVFRkuanedR+KH1++GoRYkCMB9M4Fja4DT/wHGbdDeDCSpk4HUanXbH7GciIjM0qQQFBsbi3fffRfOzs6IjY1tcN+mzh125y+whn6pqVQqCIKArVu3agdoXLZsGZ5++ml8/PHHcHR0rHdMfHw8Fi1aZFwx576tW5hxx1DzCZuuCUEAcP0c4K2596vu3w+1mj8qIiJqWJNC0MmTJ1FZWaldNqQp/yXeoUMHSKXSeq0+eXl59VqHavj6+qJTp046I1T36tULarUaV65cQY8e9efxWrBggU6AKyoqgr+/f/2Tq1S1yxO2m/htqFnUnZctMQ6YqpmJvu7fNt4WREREjWlSCKo7X5il5w6Ty+UIDQ1FcnIynnzySe365ORkjBkzRu8x999/P7744gsUFxfDxcUFAHD+/HlIJBJ07txZ7zH29vbG3bOUsrZ2ucdI478INS+3zkDRFSCzdugE4Y7uMPAeISIiaoDZN0ZnZWUZHJeloUfaGxIbG4t///vf2LRpE86ePYtXXnkFWVlZiImJAaBpxYmKitLuP3HiRHh6emLatGk4c+YMDh06hFdffRXTp0/X2xVmkrqPYnNyVOvxdJ17vSpuA9C9MZotQURE1BizQ1BQUBCuX79eb/2NGzcQFBTUpHOOHz8ey5cvx+LFizFgwAAcOnQIiYmJCAgIAADk5OToBCwXFxckJyejoKAAYWFhmDRpEkaPHo2VK1c27UvV1SlU837X4+afiyyny721y+nbNO86LUEtWw4REbU+Zj8dZuiG5eLiYjg4ODT5vDNnzsTMmTP1btu8eXO9dXfddReSk5ObfD2DrqZp3gdFW/7cZBnfvQbc+6JudxjbgoiIqBFNDkE1NxULgoA333wTTk5O2m1KpRIpKSkYMGCA2QWKqu7UDHUH5SPrEDAE+Kt2JG+dG6OZgYiIqBFNDkE1T4Wp1WqcPn0acrlcu00ul6N///6Ii4szv0IxndlXu+zYXrw6SL/HPgLW3AdI7QGVst4j8kRERA1pcgiqeSps2rRpWLlypVmTpVqtmlniZWbeXE3No0Ow5l1ZAZzZC6FH7dOD7A4jIqLGmH1PUEJCAn788Uf8+OOPyMvLg6ruuDqA5Wdyb0m3MjXv9zwvahlkgERau/zldAhv3NB+ZEsQERE1xuwQtHjxYixatAhhYWHw9fVtW1MV/LpB8+7ZXdw6qHGdB/EReSIiMonZIWjt2rXYvHkzJk+ebIl6rFPZLbErIEMeWwZ8Gws4ttczWCIREZFhZo8TpFAoMHjwYEvUYl3qBp/uD4tXBzXMu5fm/cIPdzwiT0RE1DCzQ9CMGTOwbds2S9RiXUpq7y+BT4h4dVDDvO7SLgr5F7TLbAgiIqLGmN0dVl5ejg0bNuC///0v+vXrBzs73aklmjqLvOgKq0ek9urF6citmZOHdlF6ahuA6pGkGYKIiKgRZoegU6dOaQdF/P3333W2teqbpAsua97d9U/ASlbIo5t2kY/IExFRY8wOQZaeRd5q5J7SvLv5iVsHNa7vM8Dp/0AouwWgAwB2hxERUePMvieozTr+b837+e/FrYMa1z4QACAUZGpXMQMREVFjLBKCDh8+jOeeew7h4eG4evUqAOCzzz7DkSNHGjmyFSjOFbsCakx1l6WQlqBdxUfkiYioMWaHoF27dmHUqFFwdHTEyZMnUVFRAQC4ffs2lixZYnaBohvYhsc/aitqRvaugxGIiIgaY3YIeu+997Bu3Tp88sknOk+GDR48GCdOnDD39OILnyV2BdQY3/7aRTkqAQAqtgQREVEjzA5B586dwwMPPFBvvZubGwoKCsw9vTiqFLXLzt7i1UHGCX5Eu+gulGoWmIGIiKgRZocgX19f/Pnnn/XWHzlyBF27djX39OIozde8C1LAsb24tVDj7By0YdVH0Iz0zQxERESNMTsEvfjii5g7dy5SUlIgCAKys7OxdetWxMXFYebMmZaoseUV52nenb0ACR+gaxXcfAEAHWtCEFMQERE1wuxxgl577TUUFhZi+PDhKC8vxwMPPAB7e3vExcVh9uzZlqix5ZVc17w7e4lbBxnP1RfI+Q2+kpuAkoMlEhFR48wOQVlZWXj33XexcOFCnDlzBiqVCr1794azszOysrLQpUsXS9TZsi6naN5vZYhbBxnPxQcA0BU5ANgSREREjTO7rycoKAj5+flwcnJCWFgY7rnnHri4uODmzZsICgqyRI0t79CHmndFsbh1kPHOfg0AmCZNBMB7goiIqHFmhyBDg9IVFxfDwcHB3NMTGafsps5HDpZIRESNaXJ3WGxsLADNJKlvvfUWnJyctNuUSiVSUlK0E6sSNbuO/WrnewO7w4iIqHFNDkEnT54EoPkv7tOnT0Mul2u3yeVy9O/fH3FxceZXKKb7OFBiqxH5PpAQKXYVRETUijQ5BNXMHj9t2jSsWLECbm5uFitKdAFDgL+OAJ1Dxa6EjOXWCQBQobYDoGZLEBERNcrsp8MSEhIa36m1KS/QvDu0E7MKMoVzBwCAvVAJZ5TzEXkiImoUZ5HXp6xA884Q1HrInQGZIwDAQyhiSxARETWKs8jrU6QJcnBsJ2oZZKLqwS07oIgTqBIRUaM4i/ydKoqhHWXGwV3UUshEzp4AqluCRC6FiIisH2eRv9OV47XLDEGtS7bmicXHpcfYHUZERI3iLPJ3un6udllqZ3g/slpPSn8Gx4wmIqLGcBb5O9UNQdRqsSWIiIgaw1nk7+TVE7ggdhFkLmYgIiJqjEUekf/HP/6B/Px8/Prrrzh27BiuX7+Od999V/u4fKvi2U3z3j5Q1DKoCR54FQBwRd2BLUFERNQoi4QgADqzyBcXF+Pll19G9+7dLXX6lqMo0by7+4tbB5muQ08AwF8qHw6WSEREjWpyCCooKMCkSZPg5eUFPz8/rFy5EiqVCm+99Ra6du2KY8eOYdOmTZastWVUFGve7V3FrYNMVz2uk7tQwpYgIiJqVJPvCXrjjTdw6NAhTJkyBUlJSXjllVeQlJSE8vJyfPfdd3jwwQctWWfLqaxuCZK7iFsHma56hG93lOA2QxARETWiyS1B3377LRISEvDRRx9h3759UKvVCA4Oxv79+1tvAAJqu8PkzuLWQaarHtfJTShhdxgRETWqySEoOzsbvXv3BgB07doVDg4OmDFjhsUKE422O4wtQa1OdXeYK8qgVqnErYWIiKxek0OQSqXSmSZDKpXC2bkNtJ6c3ad5L74ubh1kuuqWIImghkRRJHIxRERk7Zp8T5BarcbUqVNhb28PACgvL0dMTEy9ILR7927zKmxpxbmAvQCc2gGMWy92NWQKmT1UECCBGkJFodjVEBGRlWtyS9CUKVPg7e0Nd3d3uLu747nnnoOfn5/2c82rqdasWYOgoCA4ODggNDQUhw8fNuq4n3/+GTKZDAMGDGjytan1klTfC+ScfUzkSoiIyNo1uSUoISHBknXo2LlzJ+bNm4c1a9bg/vvvx/r16xEZGYkzZ86gS5cuBo8rLCxEVFQUHn74YVy7dq3Z6iPr5/XHJuDhF8Qug4iIrJjFBku0pGXLliE6OhozZsxAr169sHz5cvj7+2Pt2rUNHvfiiy9i4sSJCA8PN7+IdobDFlk/h5v/E7sEIiKyclYXghQKBdLS0hAREaGzPiIiAkePHjV4XEJCAi5evIi3337bMoV07GeZ85AoBD4iT0REjTB7AlVLy8/Ph1KphI+Pj856Hx8f5Obm6j3mwoULmD9/Pg4fPgyZzLivVFFRgYqKCu3noqI7nia67yXTCierUuLZF23gWUUiImpGVtcSVEMQBJ3ParW63joAUCqVmDhxIhYtWoTg4GCjzx8fH69zA7e/f/VcYS7V4YvTZrRKibKHAQAFXUaKXAkREVk7qwtBHTp0gFQqrdfqk5eXV691CABu376N1NRUzJ49GzKZDDKZDIsXL8Zvv/0GmUyG/fv3673OggULUFhYqH1dvnxZs6GyTPMuc7To96KWcbu6/UdaWSxyJUREZO2srjtMLpcjNDQUycnJePLJJ7Xrk5OTMWbMmHr7u7m54fTp0zrr1qxZg/379+PLL79EUFCQ3uvY29trxzjSUVkO2AGwYwhqjcoEJwCApGYOOCIiIgOsLgQBQGxsLCZPnoywsDCEh4djw4YNyMrKQkxMDABNK87Vq1exZcsWSCQShISE6Bzv7e0NBweHeuuNolIAEBiCWqkyQfNzk7AliIiIGmGVIWj8+PG4ceMGFi9ejJycHISEhCAxMREBAQEAgJycHGRlZTVvEQxBrVJpdUuQVMEQREREDRPUajWfJYbm6TB3d3cUzneFm70AvHULkFjdLVPUiPeWLsb/lf8ThT73wf2l78Uuh4iImpn293dhIdzc3Ew6lr/l9ZHaMwC1UjX3BPHGaCIiagx/0+tj5yB2BdREpQxBRERkJIYgfco5A3lrVSbR3Msl5dNhRETUCIYgalMqqluC5OXXRa6EiIisHUMQtSlVgrT2QwW7xIiIyDCGIGpTfstT1X7IPy9eIUREZPUYgqhNKYJT7Yebl8QrhIiIrB5DELUxdSbZvZkhXhlERGT1rHLEaNKlVqtRpapChbICSrUSgiBArVZrXtX/U6k13UAqtap2/R3bC8oL4GznDLlUDkEQIIEEgiBAgACJULuss63u9uptarUacqkcMomV//UpzRe7AiIismJW/lus9VKr1cgvy0dSZhI8HTxxW3Ebv9/4HXv/3IsBXgPg5eSF0spSlFWV4UTeCe1xXo5eqFJVoVJViSpVlealrhLxmxgmESSwk9hBLpHDTmoHmUSmXbaT2OH8Lc09Off73Y92Du3gYucCV7kr/iz4E5XKSkT1joKPsw98nHzgInexfIE9Iix/TiIiajMYgvTxHWDyIZeLLmNZ2jJcKb6C/938X4P7pl9PN7jtelnTH+2u24oDAdrWHIkgQVlVmXY/R5mjtpWobsuRSq2CGsbPoqJSq1ChrECFsgKoNLzfz9k/G7V+gNcAnMo/hYl3TURM/xi427sbXUtdv6sCESLJBNSqRvclIiLbxRCkT0fjZp+vUFZgxYkV+OzMZ43u+5D/Q1CpVThw5QCe6/Ucurh1gZPMCU52TnCQOuBS4SUM9B4IO4mmFUUmkUEmkeksyyQySAQJpIJUbzeVpdwZitRq3eVyZTmkghSVqkoolAqd97rLfxX9hczCTPRo3wPFimLcrryNYkUxtv1vGwCge7vuyCnJQUn1wIY14fDzs5/j87OfAwBi+sfg2buehYeDh9H1l8Jes6DggIlERGQYQ5A+UvtGd1n/23qsTl9db/0DnR9AR6eOGH/XeAS6BUIulRt1yaGdh5pcZnOpG7D0cbJz0rv+ToP9Butdv+DeBTqfb5TdwJXiKzh38xzePfauzrZ1v63Dut/WIcwnDBtHbTRYU11l6uqfX2WpUXUSEZFtYgjSp4HgolarEbk7EleLr2rXOds54/PIz9G9ffeWqK7N8XT0hKejJ/p79cczPZ8BAPx2/TdsPbMV32V+BwBIvZaK/lv645snv0GAW0CD52NLEBERGYOPyOsjMxyCBnw2QCcA/fzszzg28RgDkIX19+qPDx78AGnPpcHL0Uu7/vE9j+No9tEGj9WGILYEERFRAxiC9DHQHbYsbZn2UXR3e3ecijoFN7lbS1Zmc+RSOfY/sx+LBy/Wrnsx+UXkleYZPEbbHaZgCCIiIsMYgvTR0xJ0/tZ5JPyeoP18ZMIRi96MTA17sseTWDtirfbzw188bHDfUjhoFjiTPBERNYAhSB89LUFP7XtKu3ziuRP1tlPzG9JpCGYPmK39PClxkt79ysCWICIiahxDkD4y3RCUXZytXf7HkH/ATmrX0hVRtRf7v6hdPnX9FBRKRb19Svl0GBERGYEhSJ87ng4btWuUdvmJbk+0dDV0h5SJKdrl0M9D623n02FERGQMhiB96oQgpUqpXR7ayXrG8rFlTnZOsK/TZVn3ZwTU6Q6rLAMREZEhDEH61OkO++riV9rl5cOXi1AM6XNo/CHtcsx/Y3S2sTuMiIiMwRCkT52WoLePvq1dNnb0Z2p+dUetPpZzTGdbGbvDiIjICAxB+kjqD6T9XK/nRCiEGrLjsR3a5YsFF7XLZRwskYiIjMAQpM//vgUAnL1xVrtq5oCZYlVDBvT27K1dTsxI1C6XcrBEIiIyAkOQPtUtCM9884x2lavcVaxqyABBEDDcfzgAYO+fe7Xra6fNYHcYEREZxhCkj2N7AECP9j1ELoQaM9B7IAAgrzRPO6WJdtqMsltilUVERK0AQ5A+ju0AAAI002J8+MCHIhZDDRnXY5x2ObMoEwAgCOraHcqLWrgiIiJqLRiC9HFoh4LyApy/dR4A0Mezj8gFkSHu9u64y+MuAMB///ovAKBIXfvkGG5lilAVERG1BgxB+ji2x5YzW7QfO7t2FrEYakzNtCarTq4CABTBuXZj4WUxSiIiolaAIUgfx3bwcPDQfuRs8datr1ffO9bU+XkVZLVoLURE1HowBOnj0A6FikIAuveckHV6f+j7tR8kdzwWzxBEREQGMATp49geJ/NOAgC6uncVuRhqjLu9u3ZZ5nxJd6OTB4iIiPRhCNLHzQ8pOZqZymV6Ro8m6+XY+XMAgFJd3SXmN1DEaoiIyJoxBOmhqHMPkJPMqYE9yVqdVFeP8cSZ5ImIyACGID0Kq2rvKxkVOErESshYNfcFqas0oZVTZxARUWMYgvTILcsHALjYuejMVk7WK6RDiGZBogCgQjnkms+cRJWIiAxgCKpHguzSXABA93bdRa6FjNXJpRPspfYQJFUQ7G7VmT+MIYiIiPRjCLqTRIac4hwAgK+Lr8jFkLGkEikqlBUAAJnzn7XdYQxBRERkAEPQnaR2SPgjAQBQXlUucjHUFA6+e1AO3hNEREQNYwi6k0SGm+U3AQA/Xf5J5GKoqdgdRkREjbHaELRmzRoEBQXBwcEBoaGhOHz4sMF9d+/ejZEjR8LLywtubm4IDw/H999/37QL1xkXyN/Vv2nnIFHMv2c+AM0TYmXsDiMiokZYZQjauXMn5s2bh4ULF+LkyZMYOnQoIiMjkZWlfwqEQ4cOYeTIkUhMTERaWhqGDx+O0aNH4+TJk6ZfXFobgl4f9HpTvwKJoG8HzRxiarUMZewOIyKiRlhlCFq2bBmio6MxY8YM9OrVC8uXL4e/vz/Wrl2rd//ly5fjtddew6BBg9CjRw8sWbIEPXr0wNdff23ytdUSO+0o0cHtg836HtSyalruJHZFuC1Uh1kOlkhERAZYXQhSKBRIS0tDRESEzvqIiAgcPXrUqHOoVCrcvn0bHh6G542qqKhAUVGRzgsAiqRSVKmqAACejp5N/BYkhnb27aBWalqAbsk0P0NUlohYERERWTOrC0H5+flQKpXw8fHRWe/j44Pc3FyjzvHPf/4TJSUleOaZZwzuEx8fD3d3d+3L31/TinCjujvMVe4KuVTexG9BYhDqTHdy0766BYjdYUREZIDVhaAadX+hAYBara63Tp/t27fjnXfewc6dO+Ht7W1wvwULFqCwsFD7unz5MgDgpkTzR9LBsYMZ1ZNYBKlmrKALfr9qVrA7jIiIDLC6KdI7dOgAqVRar9UnLy+vXuvQnXbu3Ino6Gh88cUXGDFiRIP72tvbw97evt76yzJN0FKqlCZWTlaJ3WFERGSA1bUEyeVyhIaGIjk5WWd9cnIyBg8ebPC47du3Y+rUqdi2bRsee+yxJl//fTtN90nWbf1PopF1qyruobuCLUFERGSA1bUEAUBsbCwmT56MsLAwhIeHY8OGDcjKykJMTAwATVfW1atXsWXLFgCaABQVFYUVK1bgvvvu07YiOTo6wt3dXbTvQS1PcSscMpcLkJV5A8jiPUFERGSQVYag8ePH48aNG1i8eDFycnIQEhKCxMREBAQEAABycnJ0xgxav349qqqqMGvWLMyaNUu7fsqUKdi8eXNLl08iUle2AwBU2RVrVrA7jIiIDLDKEAQAM2fOxMyZM/VuuzPYHDhwwOLXjwyKtMh51FVVUBUXQ1lYiPLz52Hn4wO1QgF1ZSXUCgVUCgXUCgWKEr+DPCAA8qBAQKkC1CqoVSpApQZUSqhVakBVvb7O9oIvvoTE0RFukQbqNXQzuaF7zPXsX376d5T88gs8X3geErkckEghSCWad5lU97NUAkhl2s+qkhKU/+8sXB96CBJHRwgOjpA4OkBwcIDEyQkSuRyC3HJP4amqqlv+ZKWoEAB7VRWgrASkdha7BhERtQ1WG4LEEiY44SQq8GDnB43aX61Wo+TIz6jMzkbu229D6u4OwcEBVdeuNXOluvI//rj5r7FyVZOPvbXlswa3y7t1gyIrC6ishNvo0XDs1w/Sdu3g9mgkBKnU+AspnaBW2UGQVOKaVIYuVVWAogRwbNfk2omIqG1iCLpDUXkB4OAId/uG7yUqTU3FX89NrrdeWVgIFBY2eKw8IABCdQuIIJcDEgnK0tIAAC4PPQRIBAgSKSCRQJAIgCABpBIIggSQSHS2F+zcCQBo9+wEwxdUqxv+0o1sLj50CFU5OXAbPRqCVAq1UgkolZqWKp13JVClu77me0lcXCB1d4eqvBzqsjKoysp06lJcvKhdLvr6axRVj/ad/eqrAADPF16Ax7SpkLVv33CxEKCqbAep/XXk2NlpQlBlGUMQERHVwxB0hyKp5oE5d7n+EGQo/NRwezQSrhGjoK6qgkPvXpC2bw+piwsEu+bpjvFd9E6znLe5qdVqqBUKKG/cgKqkBFU3bqLi0kXc+OTfcAoNRdE33+jsf2PDBtzYsAEyP190++YbSJycDJ+7sh1gfx259k5AWRknUSUiIr0Ygu5QVD1Yor6WoLx/LceN9et11nm+8AI6zHwJEgeHFqmvrRAEAYK9PSR+fgAA+x6A8333wmPiRABAp48+hLqqCiXHUnD1lVegun0bAFCVnYNzd4fC7/2lcB8zRu+51VWuAIALNeNAKXhzNBER1Wd14wSJrdRACLr56ac6AShwx3b0+t9ZeMe+wgDUTASZDC5D7kfP47/irt9Pw3XkSO227NfnI++fy/QeJ3P/DQDwqRMnUSUiIsMYgvQQIMDFzkX7uSo/H9fil2o/B6ceh+OAASJUZrsEmQydV61E0L6vtOtufPIJCr/+pv6+wh2jffMxeSIi0oMhSA811JBKap9IujBkqHa5x+FDkLq46DuMWoBDcDCCf03Rfs5+9VUoq7vKalQW9tc9iC1BRESkB0NQI2598YV22eetNyHz8hKxGgIAqZsbuiV9p/18ftA9Otsr8mvnjVMDHDWaiIj0YghqRO6bb2mXa27aJfHJAwPhNW+e9nPxoUPaZXVl7f1cxYLA7jAiItKLIagBxYcPa5e7JGwSsRLSp0PMi9rlyy/ULkMth7pK8wj9NZmM3WFERKQXQ1ADLs+snYfMOTxcxErIkM6ra0exLvn1V+2yqsoNAJArk/IReSIi0oshSA8/Z83YNaisBAB4Pv+8iNVQQ1xHjIDg6AgAyIqaol2vrp5D7JpUypYgIiLSiyFIj+FdhqNw3z7tZ4/p00SshhrT4YXakOpa3eqjqp5NXtMdxhujiYioPoYgPZztnFFx6ZL2c+PzVZGYOrz0knb572k7AADqyjrdYYWXRamLiIisG0OQHi52LrixTjM6dIeZLzWyN1kDaXVQvffaWQCAqm532NmvRauLiIisF0OQHs6S2mkwpO3YCtQaBHy2RbvcoaxAM4kqgGsyqYEjiIjI1jEE6dEuv0K77D5unIiVkLHsu3eH4913AwAGZ/+ubQnKlXGOYCIi0o8hSA+3S3kAAPuePSF1cRa5GjKW48ABAICXTu/VDphYIpFoBkwkIiK6A0OQHu5LEwAAEicnkSshUzj2q50zzEmhglv1X292iRERkT4MQQ0o+/13sUsgE7iNitAu982/CJ/q8Z7YJUZERPowBN1JrdYudl7+LxELoab4Jkgzsvfdeefh4+QNALhmzy5NIiKqjyHoDu41MywIApyHDBG1FjLdSa9gAMDd18/Dx9kXAHANlYBKJWZZRERkhRiC7tD5hqYlSB4QAIm9vcjVkKl+69AdANC5+Dp6XtbcEJ0rkwGK22KWRUREVogh6A6d8zXv8u7dxC2EmqRE7qhd7rviewDVAyZWMAQREZEuhqA7TDyg6TZRZGaKWwg1iUQAzrXzBwCoO3UEUP10GEMQERHdgSHIAMWfF8UugZrASS7Dv0MeBwDIrt0C1GpNd1jWLyJXRkRE1oYhyICOixeJXQI1gZNcinPtA1AutQNuFaBzPlAskaD4+EaxSyMiIivDEGSA68iRYpdATeAkl6JSKsMfnkEAgL6Zmhvdr948J2ZZRERkhRiC9JA4OUHarp3YZVATOMk1AyPWPCUW8pcmBMV7ciJcIiLSxRCkh52/PwTON9UqOck1U2T85qUJQb2z1BBUaqQ5OohZFhERWSGGID3s/DuLXQI1Uc1433+26wyJqyucK4CuucAouY+odRERkfVhCNJHpW58H7JKNS1BKkECp3vuAaDpEquoKhezLCIiskIMQXoU798vdgnUREEdaucJc773XgBASKYal6o4ThAREeliCNLDzt9f7BKoiTyda6c6cQ6/DwBw1xU1slVKVCorxSqLiIisEEOQHn7vLxW7BGoiTxe5dlnevTukLnLYVwE9soFvM74VsTIiIrI2DEF6yIOCxC6BmqiDi+6ktzIPTwBA9A9KqKoqxCiJiIisFEPQHVQyCccIasXqtgSVV6qguHYTANDlOvDVhV1ilUVERFaIIegOVe2dOUZQK+bhXBuCCsoUCNqzW/v5ysUzYpRERERWiiHoDsp2TmKXQGbwcq3tDrt8swz2Xbuiyl4z5MFb25WoUlWJVRoREVkZhqA73HKTil0CmcHVXqZd/jOvGABgL1EBALwLgQ3p60Spi4iIrI/VhqA1a9YgKCgIDg4OCA0NxeHDhxvc/+DBgwgNDYWDgwO6du2Kdeua9stO8HBv0nFkHep2ZZ6/phkbqFtknnad9/yPW7wmIiKyTlYZgnbu3Il58+Zh4cKFOHnyJIYOHYrIyEhkZWXp3T8jIwOPPvoohg4dipMnT+KNN97AnDlzsGuX6TfCyrw8zS2frMQ3p3IAANIpO7Tr+mQBZXm5YpVERERWxCpD0LJlyxAdHY0ZM2agV69eWL58Ofz9/bF27Vq9+69btw5dunTB8uXL0atXL8yYMQPTp0/HRx99ZPK1XXNLzC2frER+cfUj8T0i4P632tagzAeGQ61QiFQVERFZC1nju7QshUKBtLQ0zJ8/X2d9REQEjh49qveYX375BRERETrrRo0ahY0bN6KyshJ2dnZGX18e3M30oslq/X61EO6OdvCXVmHHfUDkMc36//XrDwC4PWMcyts7walzECSl5ShycISbgx0klSUot5NDIsgglxj/90cf4WYB1B7tAD51SERkccUlpU0+1upCUH5+PpRKJXx8dGf99vHxQW6u/m6M3NxcvftXVVUhPz8fvr6+9Y6pqKhARUXt4HlFRUUAANd+A839CmRFHl91BADQWViBw4FzsamwEwafrZ0g1/Xfu+FaZ3/HOsu6wy4SEZE1qlQqm3ys1YWgGneO1aNWqxscv0ff/vrW14iPj8eiRYvqrfcbNNLUUsnKnHvvEfT8vySddfkyH4xTxmN3/wV4M7wDJiTIIVXrP77CDrhzU72/RQaOvZN9nSfyFVb7r42IqPVSmNHIbnX/t9yhQwdIpdJ6rT55eXn1WntqdOzYUe/+MpkMnp76b3ResGABYmNjtZ+Liorg7+8PicQqb5MiE9jLpMhc+piBrTPxHgC81oIFERFRsykqKgLcm/Zkt9X9xpfL5QgNDUVycrLO+uTkZAwePFjvMeHh4fX2/+GHHxAWFmbwfiB7e3u4ubnpvIiIiMh2WF0IAoDY2Fj8+9//xqZNm3D27Fm88soryMrKQkxMDABNK05UVJR2/5iYGPz111+IjY3F2bNnsWnTJmzcuBFxcXFifQUiIiKyclbXHQYA48ePx40bN7B48WLk5OQgJCQEiYmJCAgIAADk5OTojBkUFBSExMREvPLKK/j444/h5+eHlStX4qmnnhLrKxAREZGVE9Q1dxDbuKKiIri7u6OwsJBdY0RERK2EOb+/rbI7jIiIiKi5MQQRERGRTWIIIiIiIpvEEEREREQ2iSGIiIiIbBJDEBEREdkkhiAiIiKySQxBREREZJMYgoiIiMgmMQQRERGRTbLKucPEUDN7SFFRkciVEBERkbFqfm83ZRYwhqBqN27cAAD4+/uLXAkRERGZ6saNG3B3dzfpGIagah4eHgCArKwsk/8QybKKiorg7++Py5cvczJbkfFnYV3487Ae/FlYj8LCQnTp0kX7e9wUDEHVJBLN7VHu7u78C20l3Nzc+LOwEvxZWBf+PKwHfxbWo+b3uEnHNEMdRERERFaPIYiIiIhsEkNQNXt7e7z99tuwt7cXuxSbx5+F9eDPwrrw52E9+LOwHub8LAR1U54pIyIiImrl2BJERERENokhiIiIiGwSQxARERHZJIYgAGvWrEFQUBAcHBwQGhqKw4cPi12STTp06BBGjx4NPz8/CIKAvXv3il2SzYqPj8egQYPg6uoKb29vjB07FufOnRO7LJu0du1a9OvXTzseTXh4OL777juxyyJo/p0IgoB58+aJXYpNeueddyAIgs6rY8eOJp3D5kPQzp07MW/ePCxcuBAnT57E0KFDERkZiaysLLFLszklJSXo378/Vq9eLXYpNu/gwYOYNWsWjh07huTkZFRVVSEiIgIlJSVil2ZzOnfujKVLlyI1NRWpqal46KGHMGbMGPzxxx9il2bTjh8/jg0bNqBfv35il2LT+vTpg5ycHO3r9OnTJh1v80+H3Xvvvbj77ruxdu1a7bpevXph7NixiI+PF7Ey2yYIAvbs2YOxY8eKXQoBuH79Ory9vXHw4EE88MADYpdj8zw8PPDhhx8iOjpa7FJsUnFxMe6++26sWbMG7733HgYMGIDly5eLXZbNeeedd7B3716kp6c3+Rw23RKkUCiQlpaGiIgInfURERE4evSoSFURWZ/CwkIAaNLcPGQ5SqUSO3bsQElJCcLDw8Uux2bNmjULjz32GEaMGCF2KTbvwoUL8PPzQ1BQECZMmIBLly6ZdLxNzx2Wn58PpVIJHx8fnfU+Pj7Izc0VqSoi66JWqxEbG4shQ4YgJCRE7HJs0unTpxEeHo7y8nK4uLhgz5496N27t9hl2aQdO3bgxIkTOH78uNil2Lx7770XW7ZsQXBwMK5du4b33nsPgwcPxh9//AFPT0+jzmHTIaiGIAg6n9Vqdb11RLZq9uzZOHXqFI4cOSJ2KTarZ8+eSE9PR0FBAXbt2oUpU6bg4MGDDEIt7PLly5g7dy5++OEHODg4iF2OzYuMjNQu9+3bF+Hh4ejWrRs+/fRTxMbGGnUOmw5BHTp0gFQqrdfqk5eXV691iMgWvfzyy9i3bx8OHTqEzp07i12OzZLL5ejevTsAICwsDMePH8eKFSuwfv16kSuzLWlpacjLy0NoaKh2nVKpxKFDh7B69WpUVFRAKpWKWKFtc3Z2Rt++fXHhwgWjj7Hpe4LkcjlCQ0ORnJyssz45ORmDBw8WqSoi8anVasyePRu7d+/G/v37ERQUJHZJVIdarUZFRYXYZdichx9+GKdPn0Z6err2FRYWhkmTJiE9PZ0BSGQVFRU4e/YsfH19jT7GpluCACA2NhaTJ09GWFgYwsPDsWHDBmRlZSEmJkbs0mxOcXEx/vzzT+3njIwMpKenw8PDA126dBGxMtsza9YsbNu2DV999RVcXV21raXu7u5wdHQUuTrb8sYbbyAyMhL+/v64ffs2duzYgQMHDiApKUns0myOq6trvfvinJ2d4enpyfvlRBAXF4fRo0ejS5cuyMvLw3vvvYeioiJMmTLF6HPYfAgaP348bty4gcWLFyMnJwchISFITExEQECA2KXZnNTUVAwfPlz7uaZPd8qUKdi8ebNIVdmmmiEjhg0bprM+ISEBU6dObfmCbNi1a9cwefJk5OTkwN3dHf369UNSUhJGjhwpdmlEorpy5QqeffZZ5Ofnw8vLC/fddx+OHTtm0u9vmx8niIiIiGyTTd8TRERERLaLIYiIiIhsEkMQERER2SSGICIiIrJJDEFERERkkxiCiIiIyCYxBBEREZFNYggiIiIim8QQRERERCY5dOgQRo8eDT8/PwiCgL179zbr9d555x0IgqDz6tixo9nnZQgiojZr48aNiIiIMOsceXl58PLywtWrVy1UFVHrV1JSgv79+2P16tUtds0+ffogJydH+zp9+rTZ52QIIqI2qaKiAm+99RbefPNNs87j7e2NyZMn4+2337ZQZUStX2RkJN577z2MGzdO73aFQoHXXnsNnTp1grOzM+69914cOHDArGvKZDJ07NhR+/Ly8jLrfABDEBG1Ubt27YKLiwuGDh1q9rmmTZuGrVu34tatWxaojKjtmzZtGn7++Wfs2LEDp06dwt/+9jc88sgjuHDhQpPPeeHCBfj5+SEoKAgTJkzApUuXzK6TIYiIrNr169fRsWNHLFmyRLsuJSUFcrkcP/zwg8HjduzYgSeeeEJn3dSpUzF27FgsWbIEPj4+aNeuHRYtWoSqqiq8+uqr8PDwQOfOnbFp0yad4/r27YuOHTtiz549lv1yRG3QxYsXsX37dnzxxRcYOnQounXrhri4OAwZMgQJCQlNOue9996LLVu24Pvvv8cnn3yC3NxcDB48GDdu3DCrVoYgIrJqXl5e2LRpE9555x2kpqaiuLgYzz33HGbOnNng/T6HDx9GWFhYvfX79+9HdnY2Dh06hGXLluGdd97B448/jvbt2yMlJQUxMTGIiYnB5cuXdY675557cPjwYYt/P6K25sSJE1Cr1QgODoaLi4v2dfDgQVy8eBEAkJmZWe9G5ztfs2fP1p4zMjISTz31FPr27YsRI0bg22+/BQB8+umnZtUqM+toIqIW8Oijj+L555/HpEmTMGjQIDg4OGDp0qUG9y8oKEBBQQH8/PzqbfPw8MDKlSshkUjQs2dPfPDBBygtLcUbb7wBAFiwYAGWLl2Kn3/+GRMmTNAe16lTJ5w8edLyX46ojVGpVJBKpUhLS4NUKtXZ5uLiAkDz7+ns2bMNnqd9+/YGtzk7O6Nv375mda8BDEFE1Ep89NFHCAkJwX/+8x+kpqbCwcHB4L5lZWUAoHefPn36QCKpbQT38fFBSEiI9rNUKoWnpyfy8vJ0jnN0dERpaam5X4OozRs4cCCUSiXy8vIM3pNnZ2eHu+66q8nXqKiowNmzZ82+54/dYUTUKly6dAnZ2dlQqVT466+/GtzX09MTgiDovZHZzs5O57MgCHrXqVQqnXU3b960yNMoRG1BcXEx0tPTkZ6eDgDIyMhAeno6srKyEBwcjEmTJiEqKgq7d+9GRkYGjh8/jvfffx+JiYlNul5cXBwOHjyIjIwMpKSk4Omnn0ZRURGmTJli1vdgCCIiq6dQKDBp0iSMHz8e7733HqKjo3Ht2jWD+8vlcvTu3RtnzpyxWA2///47Bg4caLHzEbVmqampGDhwoPbfRGxsLAYOHIi33noLAJCQkICoqCj8/e9/R8+ePfHEE08gJSUF/v7+TbrelStX8Oyzz6Jnz54YN24c5HI5jh07hoCAALO+B7vDiMjqLVy4EIWFhVi5ciVcXFzw3XffITo6Gt98843BY0aNGoUjR45g3rx5Zl+/tLQUaWlpOk+oEdmyYcOGQa1WG9xuZ2eHRYsWYdGiRRa53o4dOyxynjuxJYiIrNqBAwewfPlyfPbZZ3Bzc4NEIsFnn32GI0eOYO3atQaPe/7555GYmIjCwkKza/jqq6/QpUsXi4w5RETWQ1A3FOWIiFqxZ555BgMHDsSCBQvMOs8999yDefPmYeLEiRaqjIisAVuCiKjN+vDDD7WP5DZVXl4enn76aTz77LMWqoqIrAVbgoiIiMgmsSWIiIiIbBJDEBEREdkkhiAiIiKySQxBREREZJMYgoiIiMgmMQQRERGRTWIIIiIiIpvEEEREREQ2iSGIiIiIbNL/AxfSofAmI1TiAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "data = np.genfromtxt(\"task11/profiles.txt\", delimiter=\",\", names=True)\n", + "\n", + "for time in my_model.exports[1].times:\n", + " name = f\"t={time:.2e}s\"\n", + " name_clean = name.translate(str.maketrans(\"\", \"\", \"+.=\"))\n", + " plt.plot(data[\"x\"], data[name_clean], label=f\"t = {time/one_year:.2f} y\")\n", + "\n", + "plt.legend()\n", + "plt.xlim(0, 5e-5)\n", + "plt.xlabel(\"x (m)\")\n", + "plt.ylabel(\"Retention (T m$^{-3}$)\")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "festim-workshop", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/tasks/task12.ipynb b/tasks/task12.ipynb new file mode 100644 index 0000000..7585566 --- /dev/null +++ b/tasks/task12.ipynb @@ -0,0 +1,263 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Soret effect\n", + "\n", + "This task will demonstrate how to setup a FESTIM model including the Soret effect.\n", + "\n", + "When including the Soret effect, the flux of hydrogen is not only driven by the gradient of concentration:\n", + "$$\n", + "J = -D \\nabla c_\\mathrm{m} - D\\frac{Q^* c_\\mathrm{m}}{k_B T^2} \\nabla T\n", + "$$\n", + "\n", + "We will model a 6 mm slab in steady state with $c=0$ on the boundaries and a volumetric source of particle representing a plasma implantation in the first few nanometres.\n", + "\n", + "## FESTIM model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's start with a mesh, a volumetric source and the boundary conditions." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import festim as F\n", + "\n", + "my_model = F.Simulation()\n", + "\n", + "import numpy as np\n", + "\n", + "vertices = np.concatenate(\n", + " [\n", + " np.linspace(0, 30e-9, num=200),\n", + " np.linspace(30e-9, 3e-6, num=300),\n", + " np.linspace(3e-6, 6e-3, num=200),\n", + " ]\n", + ")\n", + "\n", + "my_model.mesh = F.MeshFromVertices(vertices)\n", + "\n", + "source_term = F.ImplantationFlux(\n", + " flux=2.5e19, imp_depth=4.5e-9, width=2.5e-9, volume=1\n", + ")\n", + "\n", + "my_model.sources = [source_term]\n", + "\n", + "my_model.boundary_conditions = [F.DirichletBC(surfaces=[1, 2], value=0, field=0)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For this example, we will choose a very high temperature gradient. The temperature will evolve linearly from 1200 K to 300 K over the domain. " + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "T_val = lambda x: 1200 - 900 * x / 6e-3\n", + "my_model.T = T_val(F.x)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In FESTIM, the Soret coefficient (also called heat of diffusion) is set in the ``Q`` argument of ``F.Material`` in units eV.\n", + "It can take a float or a function of temperature. Here we choose $Q^* = -0.0045 \\ k_B \\ T^2$.\n", + "\n", + "It is also important to set the Soret flag to True in the simulation settings." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "my_model.materials = F.Material(\n", + " id=1,\n", + " D_0=2.83e-7, # m2/s\n", + " E_D=0.38, # eV,\n", + " Q=lambda T: -0.0045 * F.k_B * T**2, # eV\n", + ")\n", + "\n", + "my_model.settings = F.Settings(\n", + " absolute_tolerance=1e8,\n", + " relative_tolerance=1e-09,\n", + " transient=False,\n", + " soret=True,\n", + ")\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's now add a few exports and run the model:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defining initial values\n", + "Defining variational problem\n", + "Defining source terms\n", + "Defining boundary conditions\n", + "Solving steady state problem...\n", + "Solved problem in 0.00 s\n" + ] + } + ], + "source": [ + "derived_quantities = F.DerivedQuantities(\n", + " [F.TotalVolume(\"solute\", volume=1)],\n", + " show_units=True,\n", + ")\n", + "\n", + "txt_export = F.TXTExport(field=\"solute\", filename=\"task12/profile_soret.txt\")\n", + "\n", + "my_model.exports = [derived_quantities, txt_export]\n", + "\n", + "my_model.initialise()\n", + "my_model.run()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's run the same simulation but without the Soret effect:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defining initial values\n", + "Defining variational problem\n", + "Defining source terms\n", + "Defining boundary conditions\n", + "Solving steady state problem...\n", + "Solved problem in 0.00 s\n" + ] + } + ], + "source": [ + "my_model.settings.soret = False\n", + "txt_export.filename = \"task12/profile_no_soret.txt\"\n", + "my_model.materials[0].Q = None\n", + "my_model.initialise()\n", + "my_model.run()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Results\n", + "\n", + "We can plot the steady-state concentration profiles with or without the Soret effect included.\n", + "With very high gradients (and the Soret coefficient that was used for this demo), it is clear that neglecting the Soret effect could have a huge impact on the results." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/remidm/miniconda3/envs/festim-workshop/lib/python3.11/site-packages/IPython/core/pylabtools.py:77: DeprecationWarning: backend2gui is deprecated since IPython 8.24, backends are managed in matplotlib and can be externally registered.\n", + " warnings.warn(\n", + "/home/remidm/miniconda3/envs/festim-workshop/lib/python3.11/site-packages/IPython/core/pylabtools.py:77: DeprecationWarning: backend2gui is deprecated since IPython 8.24, backends are managed in matplotlib and can be externally registered.\n", + " warnings.warn(\n", + "/home/remidm/miniconda3/envs/festim-workshop/lib/python3.11/site-packages/IPython/core/pylabtools.py:77: DeprecationWarning: backend2gui is deprecated since IPython 8.24, backends are managed in matplotlib and can be externally registered.\n", + " warnings.warn(\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkQAAAHACAYAAABDKXcJAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB/10lEQVR4nO3deXwM9/8H8NfuZrO5N3LvEpG4cxHUXfct1PfbQ79t0VaV3igtbbX0ELRVbZXSOlo99FB+FfdRNKWOIJeIKwTZSEROubPz+2PYiCTk2M3sJq/n4zEPuzOfnXnPIPvKzGc+IxMEQQARERFRIyaXugAiIiIiqTEQERERUaPHQERERESNHgMRERERNXoMRERERNToMRARERFRo8dARERERI0eAxERERE1egxERERE1OgxEBEREVGjx0BUQwcOHMCoUaOg1Wohk8mwadOmGn2+oKAATz/9NIKCgmBlZYUxY8ZU2u6rr75C+/btYWtri7Zt2+L777+ve/FERERUKQaiGrp58yY6dOiApUuX1urzpaWlsLW1xauvvopBgwZV2mb58uWYPXs25s6di7i4OMybNw8vvfQSNm/eXJfSiYiIqAoyPty19mQyGTZu3FjuLE9RURHeeecd/Pjjj8jMzERgYCAWLlyIfv36Vfj8008/jczMzApnmXr27IlevXrh448/NsybOnUqjh07hoiICBPtDRERUeNlJXUBDc0zzzyDixcvYv369dBqtdi4cSOGDRuGmJgYtG7dulrrKCwshI2NTbl5tra2OHLkCIqLi6FUKk1ROhERUaPFS2ZGdP78efz888/47bff8OCDD6Jly5aYMWMGevfujTVr1lR7PUOHDsW3336LyMhICIKAY8eOYfXq1SguLsb169dNuAdERESNE88QGdHx48chCALatGlTbn5hYSFcXV2rvZ45c+YgJSUF3bt3hyAI8PT0xNNPP41FixZBoVAYu2wiIqJGj4HIiPR6PRQKBSIjIysEFwcHh2qvx9bWFqtXr8aKFStw7do1aDQarFy5Eo6OjnBzczN22URERI0eA5ERhYSEoLS0FKmpqXjwwQfrvD6lUolmzZoBANavX4/Q0FDI5bzKSUREZGwMRDWUm5uLc+fOGd4nJibi5MmTcHFxQZs2bfDkk09i/Pjx+PTTTxESEoLr169j7969CAoKwogRIwAAp06dQlFR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kg6Jl9pc/G4NtXANOLb6/tuI/R3Wsb/jog2wo7QLTl8NMHogqi6LC0TXr19HaWkpPD09y8339PRESkpKpZ9JSUmptH1JSQmuX78OjUZT4TNhYWGYN2+e8Qq/j1yvrvW2LSIiojqTK8R+WB3GitPdQj8re12UJ/ZH2vYGcPHvSlc3VHEMh4qTALQwRbX3ZXGB6DbZXdchBUGoMO9+7Subf9vs2bMxffp0w/vs7Gx4e3vXttwqXXnqH1w9vhWdRlcypD4REVFDYG0HePoDT4eXn19SBMT/ify/l+KU2zB07dZbmvpggYHIzc0NCoWiwtmg1NTUCmeBbvPy8qq0vZWVFVxdXSv9jEqlgkpl+tFLm7UKRLNWgSbfDhERkdmxsgaCHoFt0CPoLHEpcom3X2PW1tbo3Lkzdu3aVW7+rl270LNnz0o/06NHjwrtd+7ciS5dulTaf4iIiIgaF4sLRAAwffp0fPvtt1i9ejXi4+Mxbdo0JCUlGcYVmj17NsaPH29oP2XKFFy6dAnTp09HfHw8Vq9ejVWrVmHGjBlS7QIRERGZEYu7ZAYAY8eORXp6Ot5//33odDoEBgZi69at8PHxAQDodDokJSUZ2vv6+mLr1q2YNm0avvrqK2i1WnzxxRccg4iIiIgAWOg4RFIw2ThEREREZDINdhwiqdzOjRyPiIiIyHLc/t6+3/kfBqJqyskRhzc3xa33REREZFo5OTlQq6se9JGXzKpJr9cjOTkZjo6O9xzvqKZuj290+fJlXoq7Dx6rmuHxqj4eq+rjsao+HqvqM+WxEgQBOTk50Gq1kMurvpeMZ4iqSS6Xo1mzZiZbv5OTE//DVBOPVc3weFUfj1X18VhVH49V9ZnqWN3rzNBtFnnbPREREZExMRARERFRo8dAJDGVSoX33nuvXh4TYul4rGqGx6v6eKyqj8eq+nisqs8cjhU7VRMREVGjxzNERERE1OgxEBEREVGjx0BEREREjR4DERERETV6DERERETU6DEQERERUaPHQERERESNHgMRERERNXoMRERERNToMRARERFRo8dARERERI0eAxERERE1egxERERE1OgxEBEREVGjx0BEREREjR4DERERETV6DERERETU6DEQERERUaPHQERERESNHgMRERERNXoMRERERNToMRARERFRo8dARERERI0eAxERERE1egxERERE1OgxEBEREVGjZyV1AZZCr9cjOTkZjo6OkMlkUpdDRERE1SAIAnJycqDVaiGXV30eiIGompKTk+Ht7S11GURERFQLly9fRrNmzapczkBUTY6OjgDEA+rk5CRxNURERFQd2dnZ8Pb2NnyPV4WBqJpuXyZzcnJiICIiIrIw9+vuImmn6gMHDmDUqFHQarWQyWTYtGmTYVlxcTHefPNNBAUFwd7eHlqtFuPHj0dycnK5dRQWFuKVV16Bm5sb7O3tMXr0aFy5cqVcm4yMDIwbNw5qtRpqtRrjxo1DZmZmPewhERERWQJJA9HNmzfRoUMHLF26tMKyvLw8HD9+HHPmzMHx48fxxx9/4MyZMxg9enS5dlOnTsXGjRuxfv16REREIDc3F6GhoSgtLTW0eeKJJ3Dy5Els374d27dvx8mTJzFu3DiT7x8RERFZBpkgCILURQDiqayNGzdizJgxVbY5evQounbtikuXLqF58+bIysqCu7s71q1bh7FjxwIo6/y8detWDB06FPHx8fD398e///6Lbt26AQD+/fdf9OjRA6dPn0bbtm2rVV92djbUajWysrJ4yYyIiMhCVPf726LGIcrKyoJMJoOzszMAIDIyEsXFxRgyZIihjVarRWBgIA4ePAgAOHToENRqtSEMAUD37t2hVqsNbSpTWFiI7OzscpMpRF66gT6L/sJbG2Nws7DEJNsgIiKie7OYQFRQUIBZs2bhiSeeMCS8lJQUWFtbo0mTJuXaenp6IiUlxdDGw8Ojwvo8PDwMbSoTFhZm6HOkVqtNdsv9+iOXkXQjDz8dTkLnD3fhxR8jsTVGh/yi0vt/mIiIiIzCIgJRcXExHn/8cej1eixbtuy+7QVBKNebvLKe5Xe3udvs2bORlZVlmC5fvly74u/jrRHtAQAu9tYoKNZja0wKXvzxODp/uAuv/HwCO+JSUFDMcERERGRKZn/bfXFxMR577DEkJiZi79695a7/eXl5oaioCBkZGeXOEqWmpqJnz56GNteuXauw3rS0NHh6ela5XZVKBZVKZcQ9qVwTe2tcXDASgiAgLjkbm6OTsSVahysZ+dgclYzNUclwUFlhsL8nQoM1eLC1O6ytLCLHEhERWQyz/ma9HYbOnj2L3bt3w9XVtdzyzp07Q6lUYteuXYZ5Op0OsbGxhkDUo0cPZGVl4ciRI4Y2hw8fRlZWlqGNOZDJZAhsqsbs4e3x9xv9semlXniuty80ahvkFpZg44mrmPjdMXT5cBdm/BaFfQmpKC7VS102ERFRgyDpXWa5ubk4d+4cACAkJASLFy9G//794eLiAq1Wi4cffhjHjx9HeHh4ubM5Li4usLa2BgC88MILCA8Px9q1a+Hi4oIZM2YgPT0dkZGRUCgUAIDhw4cjOTkZK1asAAA8//zz8PHxwebNm6tdq1R3men1Ak5czsDmKB22xuiQmlNoWOZsp8SwAC+EBmvR3c8FVgqzzrdERET1rrrf35IGon379qF///4V5k+YMAFz586Fr69vpZ/766+/0K9fPwBiZ+uZM2fip59+Qn5+PgYOHIhly5aV6wR948YNvPrqq/jzzz8BAKNHj8bSpUsNd6tVhzncdq/XCzh68QbCo3XYFqvD9dwiwzJXe2sMCxTDUVdfFyjkfAAtERGRRQQiS2IOgehOJaV6HEm8gc3ROmyP1SEjr9iwzN1RhZFBGowM1qBz8yaQMxwREVEjxUBkZOYWiO5UXKrHwfPp2BKdjO2xKcguKBvPSKO2wYggDUKDNejo7XzfZ7kQERE1JAxERmbOgehORSV6RJxLQ3i0DrviriHnjsEemzrbIjRYg9BgLQKbOjEcERFRg8dAZGSWEojuVFBcigNn0rAlRofdp67h5h2DPfq42mFkkBiO2mscGY6IiKhBYiAyMksMRHcqKC7FX6dTER6jw574aygoLrtl38/dHqFBGoR20KKNp6OEVRIRERkXA5GRWXogulNeUQn2xKciPDoZfyWkoaikLBy18XTAyCAtQjto0NLdQcIqiYiI6o6ByMgaUiC6U05BsSEc7T+ThuLSsn8O7TVOt/ocaeDjai9hlURERLXDQGRkDTUQ3Skrvxi7Tl1DeHQyIs5eR4m+7J9GUFM1QoM1GBGkgbeLnYRVEhERVR8DkZE1hkB0p4ybRdh5KgXh0TocPJ+O0jvCUUdvZ4QGi+McadS2ElZJRER0bwxERtbYAtGd0nMLsT0uBeFROvybmI47/8V08WliOHPk4WQjXZFERESVYCAyssYciO6UmlOAbTEpCI9OxtGLGYb5MhnQtYULQjtoMTzQC24OKgmrJCIiEjEQGRkDUUUpWQXYEqNDeHQyTiRlGubLZUCPlq4IDdZiWIAXmthbS1ckERE1agxERsZAdG9XMvKwNUaH8Ggdoq9kGeYr5DL0auWG0GANhvp7QW2nlLBKIiJqbBiIjIyBqPqS0vMQHpOM8CgdTumyDfOVChn6tHbHyGANBvt7wtGG4YiIiEyLgcjIGIhq50JaLrZEi2eOEq7lGOZbW8nRr40Yjga194S9ykrCKomIqKFiIDIyBqK6O3stB+HRYp+j82k3DfNtlHIMaOeB0GAt+rf1gK21QsIqiYioITFqIJo+fXqNC3jnnXfg4uJS48+ZKwYi4xEEAadTchAenYzwaB0upecZltlZKzCwvSdCgzXo28YdNkqGIyIiqj2jBiK5XI4ePXrA2rp6dwtFREQgISEBfn5+1a/YzDEQmYYgCIhLzsbm6GRsidbhSka+YZmDygqD/cVw9GBrd1hbySWslIiILJHRA1FKSgo8PDyqtXFHR0dERUUxEFGNCIKAqCtZCI9KxpYYHXRZBYZlTjZWGBLghdBgDXq1coNSwXBERET3V93v72r1ZF2zZg3UanW1N75ixQp4enpWuz0RAMhkMnT0dkZHb2e8NaI9TlzOwOYoHbbG6JCaU4jfI6/g98grcLZTYliAF0KDteju5wIrhiMiIqojo3aqvnr1Kpo2bWqs1ZkVniGSjl4v4OjFGwiP1mFbrA7Xc4sMy1ztrTEsUAxHXX1doJDLJKyUiIjMjdHvMnvttdfw+eefV7n86tWr6N+/P86cOVPzai0AA5F5KCnV43CiGI62x+qQkVdsWObuqMLIIPGhs52bN4Gc4YiIqNEzeiBq0qQJpk2bhnfffbfCsuTkZPTr1w9eXl44cOBA7as2YwxE5qe4VI+D59OxJToZ22NTkF1QYlimUdtgRJAGocEadPR2hkzGcERE1BgZPRD9/fffGDZsGBYtWoSXXnrJMF+n06Ffv35wc3PDzp07YW9vX/fqzRADkXkrKtEj4lwawqN12BV3DTmFZeGoqbMtQoM1CA3WIrCpE8MREVEjUt3v72r3Rn3wwQfx66+/4vXXX8fPP/8MAEhJSUH//v3h4uKCHTt21DgMHThwAKNGjYJWq4VMJsOmTZvKLRcEAXPnzoVWq4WtrS369euHuLi4cm0KCwvxyiuvwM3NDfb29hg9ejSuXLlSrk1GRgbGjRsHtVoNtVqNcePGITMzs0a1knmztpJjQDtPLH6sI46+Mwgrx3XGQx21sLdW4GpmPlYcuIBRSyPQ75N9WLT9NE4lZ4NjkhIR0W01uj1n5MiRWL16NZ599lmsXbsW/fv3h5OTE3bs2AEHB4cab/zmzZvo0KEDli5dWunyRYsWYfHixVi6dCmOHj0KLy8vDB48GDk5ZY+AmDp1KjZu3Ij169cjIiICubm5CA0NRWlpqaHNE088gZMnT2L79u3Yvn07Tp48iXHjxtW4XrIMNkoFhgR44fPHQxA5ZzCWP9kJI4M0sFHKcSk9D8v2nceIL/7GwMX7sXhnAs7c8UgRIiJqnGp1l9myZcvwyiuvoFOnTti9e3eNbsmvshCZDBs3bsSYMWMAiGeHtFotpk6dijfffBOAeDbI09MTCxcuxOTJk5GVlQV3d3esW7cOY8eOBSD2Z/L29sbWrVsxdOhQxMfHw9/fH//++y+6desGAPj333/Ro0cPnD59Gm3btq1WfbxkZvluFpZg7+lUhEcn46+ENBSV6A3L2ng6YGSQFqEdNGjpXvNwT0RE5smo4xABQEhISLm+F0qlEpmZmejfv3+5dsePH69FuRUlJiYiJSUFQ4YMMcxTqVTo27cvDh48iMmTJyMyMhLFxcXl2mi1WgQGBuLgwYMYOnQoDh06BLVabQhDANC9e3eo1WocPHiwykBUWFiIwsJCw/vs7OxK25HlsFdZYVQHLUZ10CKnoBh74sVwtP9MGs5cy8WZa2fw2e4zaK9xutXnSAMf14bZJ46IiMqrdiC6febmtoceesjYtZSTkpICABUGePT09MSlS5cMbaytrdGkSZMKbW5/vqoRtj08PAxtKhMWFoZ58+bVaR/IfDnaKDEmpCnGhDRFVn4xdp26hvDoZEScvY54XTbiddn4eEcCgpqqMTJYg5FBGni72EldNhERmUi1A9F7771nyjqqdPcdQYIg3PcuobvbVNb+fuuZPXt2uYfaZmdnw9vbu7plkwVR2yrxSOdmeKRzM2TcLMLOUykIj9bh4Pl0xFzNQszVLCzYdhodvZ0RGiyOc6RR20pdNhERGVG1A1F98/LyAiCe4dFoNIb5qamphrNGXl5eKCoqQkZGRrmzRKmpqejZs6ehzbVr1yqsPy0t7Z6PF1GpVFCpVEbZF7IcTeytMfaB5hj7QHOk5xZiW2wKtkTr8G9iOk5ezsTJy5n4cEs8uvg0QWiwBiOCNPBwspG6bCIiqqNq3WXWqVMnZGRkVHulvXv3xtWrV2tdFAD4+vrCy8sLu3btMswrKirC/v37DWGnc+fOUCqV5drodDrExsYa2vTo0QNZWVk4cuSIoc3hw4eRlZVlaENUGVcHFZ7q7oOfn++Ow28NxLzRAXighRi8j13KwNzNp9AtbA/GrjiEdf9ewvXcwvuskYiIzFW1n3a/d+9euLi4VGulPXv2RHR09H2fdp+bm4tz584BEDttL1682DCuUfPmzbFw4UKEhYVhzZo1aN26NebPn499+/YhISEBjo6OAIAXXngB4eHhWLt2LVxcXDBjxgykp6cjMjISCoUCADB8+HAkJydjxYoVAIDnn38ePj4+2Lx5c7X2B+BdZlQmJasAW2J0CI9OxomkTMN8uQzo0dIVocFaDAvwQhN7a+mKJCIiAEYeqVoul0Mmk1V7IDuZTIazZ8/eNxDt27evwl1qADBhwgSsXbsWgiBg3rx5WLFiBTIyMtCtWzd89dVXCAwMNLQtKCjAzJkz8dNPPyE/Px8DBw7EsmXLyvX3uXHjBl599VX8+eefAIDRo0dj6dKlcHZ2rtb+AAxEVLkrGXnYGqNDeLQO0VeyDPMVchl6tXJDaLAGQ/29oLZTSlglEVHjZdRAdPuurppo1qyZ4QxNQ8BARPeTlJ6H8JhkhEfpcEpXNkyDUiFDn9buGBmswWB/TzjaMBwREdUXoz/LrLFjIKKauJCWiy3R4pmjhDtGwra2kqNfGzEcDWrvCXuV2d7XQETUIDAQGRkDEdXW2Ws52Bwt9jm6kHbTMN9GKceAdh4IDdaif1sP2Fo3nDOqRETmgoHIyBiIqK4EQcDplByERycjPFqHS+l5hmV21goMbO+J0GAN+rZxh42S4YiIyBgYiIyMgYiMSRAExCVnY3N0MrZE63AlI9+wzEFlhcH+Yjjq3doNKiuGIyKi2mIgMjIGIjIVQRAQdSUL4VHJ2BKjgy6rwLDM0cYKQwO8EBqsQa9WblAqqjV0GBER3WLSQJSZmYnff/8d58+fx8yZM+Hi4oLjx4/D09MTTZs2rVPh5oqBiOqDXi/gxOUMbI7SYWuMDqk5ZYM9OtspMSzAC6HBWnT3c4EVwxER0X2ZLBBFR0dj0KBBUKvVuHjxIhISEuDn54c5c+bg0qVL+P777+tcvDliIKL6VqoXcOziDYRH67AtVofruUWGZa721hgWKIajrr4uUMjv/Xw/IqLGymSBaNCgQejUqRMWLVoER0dHREVFwc/PDwcPHsQTTzyBixcv1rV2s8RARFIqKdXjcKIYjrbH6pCRV2xY5u6owsgg8aGznZs3gZzhiIjIwGSBSK1W4/jx42jZsmW5QHTp0iW0bdsWBQUF91+JBWIgInNRXKrHwfPp2BKdjO2xKcguKDEs06htMOJWOArxdoZMxnBERI1bdb+/azwqnI2NDbKzsyvMT0hIgLu7e01XR0Q1pFTI0beNO/q2cceHY4IQcS4N4VE67Dx1DbqsAqyKSMSqiEQ0dbZFaLAGocFaBDZ1YjgiIrqHGp8hev7555GWloZff/0VLi4uiI6OhkKhwJgxY9CnTx8sWbLERKVKi2eIyNwVFJfiwJk0hEfrsDv+GvKKSg3LfFztMDJIDEftNY4MR0TUaJjskll2djZGjBiBuLg45OTkQKvVIiUlBT169MDWrVthb29f5+LNEQMRWZKC4lL8dToV4dE67Dl9DQXFesMyP3d7hAZpENpBizaejhJWSURkeiYfh2jv3r04fvw49Ho9OnXqhEGDBtW6WEvAQESW6mZhCfaeTkV4dDL+SkhDUUlZOGrj6YCRQVqEdtCgpbuDhFUSEZmGSQJRSUkJbGxscPLkSQQGBhqlUEvBQEQNQU5BMfbEi+Fo/5k0FJeW/fdvr3G61edIAx/Xhnmml4gaH5N0qraysoKPjw9KS0vv35iIzI6jjRJjQppiTEhTZOUXY2dcCrbE6BBx9jriddmI12Xj4x0JCGqqxshgDUYGaeDtYid12UREJlfjS2Zr1qzBb7/9hh9++AEuLi6mqsvs8AwRNWQZN4uw41Y4Ong+HaX6sh8LHb2dERos3sqvUdtKWCURUc2ZrA9RSEgIzp07h+LiYvj4+FToRH38+PHaVWzmGIiosUjPLcS22BRsidbh38R03PkTootPE4QGazAiSAMPJxvpiiQiqiaTjUM0ZsyYutRFRGbO1UGFp7r74KnuPkjNKcC2mBSERyfj6MUMHLskTvPCT6FrCxeEdtBieKAX3BxUUpdNRFQnfNp9NfEMETV2KVkF2BKjQ3h0Mk4kZRrmy2VAj5auCA3WYliAF5rYW0tXJBHRXUx+231jw0BEVOZKRh62xugQHq1D9JUsw3yFXIZerdwQGqzBUH8vqO2UElZJRGTCQCSXy+85ym1DvQONgYiocpfSb4pnjqJ0OKUre6yPUiHDg63dERqswWB/TzjaMBwRUf0zWSD6v//7v3Lvi4uLceLECXz33XeYN28eJk6cWLuKzRwDEdH9XUjLxZZo8cxRwrUcw3xrKzn6tXHHyGANBrX3hL2qxt0XiYhqpd4vmf3000/45ZdfKgSmhoKBiKhmzl7LweZosc/RhbSbhvk2SjkGtPNAaLAW/dt6wNZaIWGVRNTQVff7W26sDXbr1g27d+821uoAiCNjv/POO/D19YWtrS38/Pzw/vvvQ68ve/SAIAiYO3cutFotbG1t0a9fP8TFxZVbT2FhIV555RW4ubnB3t4eo0ePxpUrV4xaKxGV19rTEdMHt8Ge6X2x7bUH8VL/lvBxtUNBsR5bY1Lw4o/H0fnDXXjl5xPYEZeCguKGebmdiCyDUc5b5+fn48svv0SzZs2MsTqDhQsX4uuvv8Z3332HgIAAHDt2DM888wzUajVee+01AMCiRYuwePFirF27Fm3atMGHH36IwYMHIyEhAY6O4oMrp06dis2bN2P9+vVwdXXF66+/jtDQUERGRkKh4G+nRKYkk8nQXuOE9honzBjSFnHJ2dgcnYwt0TpcycjH5qhkbI5KhoPKCoP9PREarEHv1m5QWfH/JhHVnxpfMmvSpEm5TtWCICAnJwd2dnb44YcfMHr0aKMVFxoaCk9PT6xatcow7+GHH4adnR3WrVsHQRCg1WoxdepUvPnmmwDEs0Genp5YuHAhJk+ejKysLLi7u2PdunUYO3YsACA5ORne3t7YunUrhg4dWq1aeMmMyLgEQUDUlSyERyVjS4wOuqwCwzJHGysMDfBCaLAGvVq5Qakw2slsImpkTDYw42effVYuEMnlcri7u6Nbt25o0qRJ7aqtQu/evfH111/jzJkzaNOmDaKiohAREYElS5YAABITE5GSkoIhQ4YYPqNSqdC3b18cPHgQkydPRmRkJIqLi8u10Wq1CAwMxMGDB6sMRIWFhSgsLDS8z87OrrQdEdWOTCZDR29ndPR2xlsj2uPE5QxsjtJha4wOqTmF+D3yCn6PvAJnOyWGBXghNFiL7n4usGI4IiITqHEgGjBgALy9vSu99T4pKQnNmzc3SmEA8OabbyIrKwvt2rWDQqFAaWkpPvroI/zvf/8DAKSkpAAAPD09y33O09MTly5dMrSxtrauENY8PT0Nn69MWFgY5s2bZ7R9IaKqyeUydPZxQWcfF8wJ9cexizcQHq3DtlgdrucWYf3Ry1h/9DJc7a0xLFAMR119XaCQVz0ECBFRTdQ4EPn6+kKn08HDw6Pc/PT0dPj6+hp1HKJffvkFP/zwA3766ScEBATg5MmTmDp1KrRaLSZMmGBod3c4EwThnmMlVafN7NmzMX36dMP77OxseHt713JPiKi6FHIZuvm5opufK94b5Y/DiWI42h6rQ/rNIvx4OAk/Hk6Cu6MKI4PEh852bt4EcoYjIqqDGgeiqroc5ebmwsbGuA97nDlzJmbNmoXHH38cABAUFIRLly4hLCwMEyZMgJeXFwDxLJBGozF8LjU11XDWyMvLC0VFRcjIyCh3lig1NRU9e/asctsqlQoqFZ/PRCQlK4UcvVq5oVcrN7z/UAAOnk9HeFQydsSlIC2nEGsPXsTagxehUdtgxK1wFOLtfN9fiIiI7lbtQHT7bIlMJsO7774LOzs7w7LS0lIcPnwYHTt2NGpxeXl5kMvL9xdQKBSG2+59fX3h5eWFXbt2ISQkBABQVFSE/fv3Y+HChQCAzp07Q6lUYteuXXjssccAADqdDrGxsVi0aJFR6yUi01Eq5Ojbxh1927jjo/8EIeJcGsKjdNh56hp0WQVYFZGIVRGJaOpsi9BgMRwFNVUzHBFRtVQ7EJ04cQKAeIYoJiYG1tZlD3C0trZGhw4dMGPGDKMWN2rUKHz00Udo3rw5AgICcOLECSxevBjPPvssADGcTZ06FfPnz0fr1q3RunVrzJ8/H3Z2dnjiiScAAGq1GhMnTsTrr78OV1dXuLi4YMaMGQgKCsKgQYOMWi8R1Q9rKzkGtPPEgHaeKCguxYEzaQiP1mF3/DVczczHigMXsOLABfi42mFkkAahwVq01zgyHBFRlWp82/0zzzyDzz//vF5uPc/JycGcOXOwceNGpKamQqvV4n//+x/effddQyATBAHz5s3DihUrkJGRgW7duuGrr75CYGCgYT0FBQWYOXMmfvrpJ+Tn52PgwIFYtmxZjfoE8bZ7IvNXUFyKv06nIjxahz2nr6GguGwQVz93e4QGaRDaQYs2no4SVklE9YlPuzcyBiIiy3KzsAR7T6ciPDoZfyWkoaikLBy18XTAyCAtQjto0NLdQcIqicjUTBqIjh49it9++w1JSUkoKioqt+yPP/6oebUWgIGIyHLlFBRjT7wYjvafSUNxadmPvfYaJ4QGaxAarIGPq72EVRKRKZgsEK1fvx7jx4/HkCFDsGvXLgwZMgRnz55FSkoK/vOf/2DNmjV1Lt4cMRARNQxZ+cXYGZeCLTE6RJy9jhJ92Y/AoKZqjAzWYGSQBt4udvdYCxFZCpMFouDgYEyePBkvvfQSHB0dERUVBV9fX0yePBkajabBDmbIQETU8GTcLMKOW+Ho4Pl0lN4Rjjp6OxvuVtOobSWskojqwmSByN7eHnFxcWjRogXc3Nzw119/ISgoCPHx8RgwYAB0Ol2dizdHDEREDVt6biG2xaZgS7QO/yam486fjF18miA0WIMRQRp4OBl3vDUiMi2TPcvMxcUFOTk5AICmTZsiNjYWQUFByMzMRF5eXu0rJiKSkKuDCk9198FT3X2QmlOAbTEpCI9OxtGLGTh2SZzmhZ9C1xYuCO2gxfBAL7g5cPBWooaixoHowQcfxK5duxAUFITHHnsMr732Gvbu3Ytdu3Zh4MCBpqiRiKheeTjaYELPFpjQswVSsgqwJUaH8OhknEjKxOHEGziceAPv/V8serR0RWiwFsMCvNDE3vr+KyYis1XjS2Y3btxAQUEBtFot9Ho9PvnkE0RERKBVq1aYM2eO0Z94by54yYyIrmTkYWuMDuHROkRfyTLMV8hl6NXKDaHBGgz194LaTilhlUR0J5P0ISopKcGPP/6IoUOHGp4j1lgwEBHRnS6l3xTPHEXpcEqXbZivVMjwYGt3hAZrMNjfE442DEdEUjJZp2o7OzvEx8fDx8enzkVaEgYiIqrKhbRcbIkWzxwlXMsxzLe2kqNfG3eMDNZgUHtP2Ktq3EuBiOrIZIGof//+eO211zBmzJi61mhRGIiIqDrOXsvB5mixz9GFtJuG+TZKOQa080BosBb923rA1lohYZVEjYfJAtFvv/2GWbNmYdq0aejcuTPs7cuP7BocHFy7is0cAxER1YQgCDidkoPw6GSER+twKb3sLlw7awUGtvdEaLAGfdu4w0bJcERkKiYLRHK5vOJKZDIIggCZTIbS0tKaV2sBGIiIqLYEQUBccjY2RydjS7QOVzLyDcscVFYY7C+Go96t3aCyYjgiMiaTBaJLly7dc3lD7VvEQERExiAIAqKuZCE8KhlbYnTQZRUYljnaWGFogBdCgzXo1coNSkXFX0CJqGb4tHsjYyAiImPT6wWcuJyBzVE6bI3RITWn0LDM2U6JYQFeCA3WorufC6wYjohqxaSBaN26dfj666+RmJiIQ4cOwcfHB0uWLIGvry8eeuihOhVurhiIiMiUSvUCjl68gS3ROmyL1eF6bpFhmau9NYYFiuGoq68LFHKZhJUSWZbqfn/X+FeO5cuXY/r06RgxYgQyMzMNfYacnZ2xZMmSWhdMRNSYKeQydPdzxQdjAvHv7IH48blu+F9XbzSxUyL9ZhF+PJyE/33zL7qH7cHcP+Nw9OIN6PU8wU9kLDU+Q+Tv74/58+djzJgxhqfd+/n5ITY2Fv369cP169dNVaukeIaIiKRQXKrHwfPpCI9Kxo64FGQXlBiWadQ2GBGkwchgDUK8nSGT8cwR0d1MdsnM1tYWp0+fho+PT7lAdPbsWQQHByM/P//+K7FADEREJLWiEj0izqUhPEqHnaeuIbewLBw1dbZFaLAYjoKaqhmOiG4x2dPufX19cfLkyQp3k23btg3+/v41r5SIiKrF2kqOAe08MaCdJwqKS3HgTBrCo3XYHX8NVzPzseLABaw4cAE+rnYYGaRBaLAW7TWODEdE1VDjQDRz5ky89NJLKCgogCAIOHLkCH7++WeEhYXh22+/NUWNRER0FxulAkMCvDAkwAv5RaXYl5CK8Ggd9py+hkvpeVi27zyW7TsPP3d7hAZpENpBizaejlKXTWS2anWX2TfffIMPP/wQly9fBgA0bdoUc+fOxcSJE41eoLngJTMisgQ3C0uw53QqtkQn46+ENBSV6A3L2ng6YGSQFqEdNGjp7iBhlUT1p17GIbp+/Tr0ej08PDxquwqLwUBERJYmp6AYu+OvYUu0DvvPpKG4tOzHfXuNE0KDNQgN1sDH1f4eayGybCYPRKmpqUhISIBMJkPbtm3h7u5e62ItAQMREVmyrPxi7IxLwZYYHSLOXkfJHbfsBzVVY2SwBiODNPB2sZOwSiLjM9k4RNnZ2Rg3bhy0Wi369u2LPn36QKvV4qmnnkJWVladiq7M1atX8dRTT8HV1RV2dnbo2LEjIiMjDcsFQcDcuXOh1Wpha2uLfv36IS4urtw6CgsL8corr8DNzQ329vYYPXo0rly5YvRaiYjMldpWiUe7eGPtM11x9O1BWPDfIDzY2g0KuQwxV7OwYNtpPLjoL4z56h98+/cFJGc2zDuGiapS40D03HPP4fDhw9iyZQsyMzORlZWF8PBwHDt2DJMmTTJqcRkZGejVqxeUSiW2bduGU6dO4dNPP4Wzs7OhzaJFi7B48WIsXboUR48ehZeXFwYPHoycnBxDm6lTp2Ljxo1Yv349IiIikJubi9DQ0Ab7IFoiontpYm+Nx7s2x7qJ3XDkrYH4cEwguvu5QCYDTl7OxIdb4tFzwV48svwg1v6TiNTsgvuvlMjC1fiSmb29PXbs2IHevXuXm//3339j2LBhuHnzptGKmzVrFv755x/8/ffflS4XBAFarRZTp07Fm2++CUA8G+Tp6YmFCxdi8uTJyMrKgru7O9atW4exY8cCAJKTk+Ht7Y2tW7di6NCh1aqFl8yIqKFLzS7AttgUhEcn4+jFDMN8mQzo2sIFoR20GB7oBTcHlYRVEtWMyS6Zubq6Qq1WV5ivVqvRpEmTmq7unv7880906dIFjz76KDw8PBASEoJvvvnGsDwxMREpKSkYMmSIYZ5KpULfvn1x8OBBAEBkZCSKi4vLtdFqtQgMDDS0qUxhYSGys7PLTUREDZmHkw0m9GyB36b0xKHZAzAn1B8hzZ0hCMDhxBuYsykWXT/ajSe//Rc/H0lCxs2i+6+UyELUOBC98847mD59OnQ6nWFeSkoKZs6ciTlz5hi1uAsXLmD58uVo3bo1duzYgSlTpuDVV1/F999/b9guAHh6epb7nKenp2FZSkoKrK2tK4S1O9tUJiwsDGq12jB5e3sbc9eIiMyaRm2Lib19sfHFXoh4sz/eGtEOwc3U0AvAP+fSMfuPGHT5aDfGrz6CX49dRlZesdQlE9VJjQdmXL58Oc6dOwcfHx80b94cAJCUlASVSoW0tDSsWLHC0Pb48eN1Kk6v16NLly6YP38+ACAkJARxcXFYvnw5xo8fb2h39yisgiDcd2TW+7WZPXs2pk+fbnifnZ3NUEREjVKzJnZ4vk9LPN+nJS6l38SWGB3Co3Q4pcvGgTNpOHAmDW8rYvBga3eEBmsw2N8TjjZKqcsmqpEaB6IxY8aYoIzKaTSaCo8Dad++PTZs2AAA8PLyAiCeBdJoNIY2qamphrNGXl5eKCoqQkZGRrmzRKmpqejZs2eV21apVFCpeJ2ciOhOPq72eLFfK7zYrxUupOUiPFqHLdE6JFzLwd7Tqdh7OhXWVnL0bSOGo0HtPWGvqvFXDVG9q/G/0vfee88UdVSqV69eSEhIKDfvzJkzhueo+fr6wsvLC7t27UJISAgAoKioCPv378fChQsBAJ07d4ZSqcSuXbvw2GOPAQB0Oh1iY2OxaNGietsXIqKGxs/dAa8ObI1XB7bGmWs5CI/WITw6GRfSbmLXqWvYdeoabJRyDGjngdBgLfq39YCttULqsokqVaeRqnNzc6HX68vNM+YdWEePHkXPnj0xb948PPbYYzhy5AgmTZqElStX4sknnwQALFy4EGFhYVizZg1at26N+fPnY9++fUhISICjo/jcnhdeeAHh4eFYu3YtXFxcMGPGDKSnpyMyMhIKRfX+c/IuMyKi+xMEAadTchAenYzwaB0upecZltlZKzCwvSdCgzXo28YdNkqGIzI9k41UnZiYiJdffhn79u1DQUHZ2BS3++QYe2yf8PBwzJ49G2fPnoWvry+mT59ebrwjQRAwb948rFixAhkZGejWrRu++uorBAYGGtoUFBRg5syZ+Omnn5Cfn4+BAwdi2bJlNeoTxEBERFQzgiAgLjkbm6OTsSVahysZZYM9OqisMNhfDEe9W7tBZcVwRKZhskB0u9/Na6+9Bk9Pzwodk/v27VuLcs0fAxERUe0JgoCoK1kIj0rGlhgddFllv1A72lhhaIAXQoM16NXKDUpFjW+AJqqSyQKRg4MDIiMj0bZt2zoXaUkYiIiIjEOvF3A8KQPh0TpsjdEhNafQsMzZTolhAV4IDdaiu58LrBiOqI5MFoj69++Pt99+G4MGDapzkZaEgYiIyPhK9QKOXryB8OhkbItJQfodgz262ltjWKAYjrr6ukAhv/dwKkSVMVkgOn/+PKZMmYKnnnoKgYGBUCrLjzURHBxcu4rNHAMREZFplZTqcThRDEfbY1OQccdgj+6OKowM0mBksAadmzeBnOGIqslkgejff//FE088gYsXL5atRCYzWadqc8FARERUf4pL9Th4Ph3hUcnYEZeC7IISwzKN2gYjboWjEG/n+w7ES42byQKRv78/2rdvjzfeeKPSTtW3xwhqaBiIiIikUVSiR8S5NIRH6bDz1DXkFpaFo6bOtggNFsNRUFM1wxFVYLJAZG9vj6ioKLRq1arORVoSBiIiIukVFJfiwJk0hEfrsDv+GvKKyq5K+LjaGS6r+WucGI4IgAkD0ahRo/D000/j4YcfrnORloSBiIjIvOQXlWJfQirCo3XYc/oaCorLBgr2c7NHaLAGoR20aOPpKGGVJDWTBaKVK1fiww8/xLPPPougoKAKnapHjx5du4rNHAMREZH5ullYgj2nU7ElOhl/JaShqKQsHLXxdMDIIC1CO2jQ0t1BwipJCiYLRHJ51WNCsFM1ERFJLaegGLvjr2FLtA77z6ShuLTsa669xkk8cxSsgY+rvYRVUn0xWSBqrBiIiIgsT1Z+MXbGpWBLjA4RZ6+jRF/2lRfUVI2RwRqMDNLA28VOwirJlOolEBUUFMDGxqa2H7coDERERJYt42YRdsSlIDxah4Pnr+OObISO3s4IDdZgRJAGWmdb6YokozNZICotLcX8+fPx9ddf49q1azhz5gz8/PwwZ84ctGjRAhMnTqxz8eaIgYiIqOG4nluI7bEpCI9OxuHEG7jzm7CLTxNDOPJwahy/9DdkJgtE77//Pr777ju8//77mDRpEmJjY+Hn54dff/0Vn332GQ4dOlTn4s0RAxERUcOUml2AbbfC0dGLGYb5MhnQtYULQjtoMTzQC24OKgmrpNoyWSBq1aoVVqxYgYEDB8LR0RFRUVHw8/PD6dOn0aNHD2RkZNx/JRaIgYiIqOHTZeVja4wYjk4kZRrmy2VAj5auCA3WYliAF5rYW0tXJNVIdb+/rWq64qtXr1Y6KKNer0dxcXElnyAiIrIMGrUtJvb2xcTevriSkYetMTqER+sQfSUL/5xLxz/n0vHOplj0auWG0GANhvp7QW2nvP+KyezVOBAFBATg77//rvCIjt9++w0hISFGK4yIiEhKzZrY4fk+LfF8n5a4lH4T4dE6bInW4ZQuGwfOpOHAmTS8rYjBg63dERqswWB/TzjaMBxZqmoHomeffRaff/453nvvPYwbNw5Xr16FXq/HH3/8gYSEBHz//fcIDw83Za1ERESS8HG1x0v9W+Gl/q1wPi0XW26Fo4RrOdh7OhV7T6fC2kqOvm3EcDSovSfsVTU+50ASqnYfIoVCAZ1OBw8PD+zYsQPz589HZGQk9Ho9OnXqhHfffRdDhgwxdb2SYR8iIiK625lrOQiP1iE8OhkX0m4a5tso5RjQzgMjg7QY0M4DttYKCats3IzeqVoulyMlJQUeHh5GK9KSMBAREVFVBEHA6ZQchEcnIzxah0vpeYZldtYKDGzvidBgDfq2cYeNkuGoPpkkEF27dg3u7u5GK9KSMBAREVF1CIKAuORsbI5OxpZoHa5k5BuWOaisMNhfDEe9W7tBZcVwZGomCURqtRoymeye7W7cuFGzSi0EAxEREdWUIAiIupKF8KhkbInRQZdVYFjmaGOFoQFeCA3WoFcrNygVVT8rlGrPJIFoyZIlUKvV92w3YcKEmlVqIRiIiIioLvR6AceTMhAercPWGB1ScwoNy5ztlBgW4IXQYC26+7nAiuHIaNiHyMgYiIiIyFhK9QKOXryB8OhkbItJQfrNIsMyV3trDAsUw1FXXxco5Pe+MkP3Vt3v72pH0PtdKqsPYWFhkMlkmDp1qmGeIAiYO3cutFotbG1t0a9fP8TFxZX7XGFhIV555RW4ubnB3t4eo0ePxpUrV+q5eiIiIpFCLkN3P1d8OCYIh98aiB+f64b/dfVGEzsl0m8W4cfDSfjfN/+ie9gezP0zDkcv3oBeX+tnsVM1VDsQ1fAJH0Z39OhRrFy5EsHBweXmL1q0CIsXL8bSpUtx9OhReHl5YfDgwcjJyTG0mTp1KjZu3Ij169cjIiICubm5CA0NRWlpaX3vBhERUTlWCjl6tXJD2H+DceTtQfju2a54tHMzONlYIS2nEGsPXsSjXx9Cr4V78UH4KRxPypD8O7khqvGzzKSQm5uLTp06YdmyZfjwww/RsWNHLFmyBIIgQKvVYurUqXjzzTcBiGeDPD09sXDhQkyePBlZWVlwd3fHunXrMHbsWABAcnIyvL29sXXrVgwdOrRaNfCSGRER1aeiEj0izqUhPEqHnaeuIbewxLCsqbMtQoM1GBmsQVDT+9/w1JgZ/ZKZlF566SWMHDkSgwYNKjc/MTERKSkp5QaEVKlU6Nu3Lw4ePAgAiIyMRHFxcbk2Wq0WgYGBhjaVKSwsRHZ2drmJiIiovlhbyTGgnScWj+2IY+8MwspxnTG6gxZ21gpczczHigMXMHrpP+j3yT4s2n4acclZPHNUB2Y/rvj69etx/PhxHD16tMKylJQUAICnp2e5+Z6enrh06ZKhjbW1NZo0aVKhze3PVyYsLAzz5s2ra/lERER1ZqNUYEiAF4YEeCG/qBT7ElIRHq3DntPXcCk9D8v2nceyfefh52aP0GANQjto0cbTUeqyLYpZB6LLly/jtddew86dO2FjY1Nlu7tPFQqCcN/Th/drM3v2bEyfPt3wPjs7G97e3tWsnIiIyDRsrRUYHqTB8CANbhaWYM/pVGyJTsZfCWm4cP0mvth7Dl/sPYc2ng4YGaRFaAcNWro7SF222TPrQBQZGYnU1FR07tzZMK+0tBQHDhzA0qVLkZCQAEA8C6TRaAxtUlNTDWeNvLy8UFRUhIyMjHJniVJTU9GzZ88qt61SqaBSqYy9S0REREZjr7LC6A5ajO6gRU5BMXbHX0N4lA4HzqbhzLVcnLl2Bp/tPoP2GifxzFGwBj6u9lKXbZbMug/RwIEDERMTg5MnTxqmLl264Mknn8TJkyfh5+cHLy8v7Nq1y/CZoqIi7N+/3xB2OnfuDKVSWa6NTqdDbGzsPQMRERGRJXG0UeI/Ic2w6ukHcOydwfj4kWD0beMOK7kM8bpsfLwjAX0/3odRX0bg6/3ncflG3v1X2oiY9RkiR0dHBAYGlptnb28PV1dXw/ypU6di/vz5aN26NVq3bo358+fDzs4OTzzxBABArVZj4sSJeP311+Hq6goXFxfMmDEDQUFBFTppExERNQRqWyUe7eKNR7t4I+NmEXbEpSA8WoeD568j5moWYq5mYcG20+jo7YzQYA1GBGmgdbaVumxJmXUgqo433ngD+fn5ePHFF5GRkYFu3bph586dcHQs60z22WefwcrKCo899hjy8/MxcOBArF27FgoFH6pHREQNWxN7azzetTke79oc13MLsT02BeHRyTiceAMnL2fi5OVMfLglHl18mmBksAYjgzTwcKq6325DZRHjEJkDjkNEREQNSWp2AbbdCkdHL2YY5stkQNcWLgjtoMXwQC+4OVh2f1qjP8ussWMgIiKihkqXlY+tMWI4OpGUaZgvlwE9WroiNFiLYQFeaGJvLV2RtcRAZGQMRERE1BhcycjDlmgdtsToEH0lyzBfIZehVys3hAZrMNTfC2o7pYRVVh8DkZExEBERUWNzKf0mwqN12BKtwyld2RMblAoZHmztjtBgDQb7e8LRxnzDEQORkTEQERFRY3Y+LVc8cxStQ8K1sgeoW1vJ0beNGI4GtfeEvcq87tdiIDIyBiIiIiLRmWs5CI/WITw6GRfSbhrm2yjlGNDOAyODtBjQzgO21tLfzc1AZGQMREREROUJgoDTKTkIj05GeLQOl9LLBnu0s1ZgYHtPhAZr0LeNO2yU0oQjBiIjYyAiIiKqmiAIiL2ajfCYZIRH6XA1M9+wzEFlhcH+Yjjq3doNKqv6C0cMREbGQERERFQ9giDg5OVMw91quqwCwzJHGysMDfBCaLAGvVq5Qakw7VPEGIiMjIGIiIio5vR6AceTMhAercPWGB1ScwortJnStyWmDW5tkjNHDERGxkBERERUN6V6AUcv3kB4dDJ++DepwvLIdwbB1cgjY1f3+9usn3ZPREREDYdCLkN3P1d8OCYICR8Ow0v9W5ZbXlCil6gyniGqNp4hIiIiMo3CklIIAkxyJ1p1v7/Na/QkIiIianTq866zqvCSGRERETV6DERERETU6DEQERERUaPHQERERESNHjtVV9Ptm/Gys7MlroSIiIiq6/b39v1uqmcgqqacnBwAgLe3t8SVEBERUU3l5ORArVZXuZzjEFWTXq9HcnIyHB0dIZPJjLbe7OxseHt74/Llyxzf6D54rGqGx6v6eKyqj8eq+nisqs+Ux0oQBOTk5ECr1UIur7qnEM8QVZNcLkezZs1Mtn4nJyf+h6kmHqua4fGqPh6r6uOxqj4eq+oz1bG615mh29ipmoiIiBo9BiIiIiJq9BiIJKZSqfDee+9BpTLu030bIh6rmuHxqj4eq+rjsao+HqvqM4djxU7VRERE1OjxDBERERE1egxERERE1OgxEBEREVGjx0BUR8uWLYOvry9sbGzQuXNn/P333/dsv3//fnTu3Bk2Njbw8/PD119/XaHNhg0b4O/vD5VKBX9/f2zcuLHO2zUHUhyrAwcOYNSoUdBqtZDJZNi0aZMxd8mkpDheYWFheOCBB+Do6AgPDw+MGTMGCQkJRt0vU5DiWC1fvhzBwcGGcVN69OiBbdu2GXW/TEGqn1m3hYWFQSaTYerUqXXdFZOT4ljNnTsXMpms3OTl5WXU/TIFqf5dXb16FU899RRcXV1hZ2eHjh07IjIysnY7IVCtrV+/XlAqlcI333wjnDp1SnjttdcEe3t74dKlS5W2v3DhgmBnZye89tprwqlTp4RvvvlGUCqVwu+//25oc/DgQUGhUAjz588X4uPjhfnz5wtWVlbCv//+W+vtmgOpjtXWrVuFt99+W9iwYYMAQNi4caOpd9UopDpeQ4cOFdasWSPExsYKJ0+eFEaOHCk0b95cyM3NNfk+15ZUx+rPP/8UtmzZIiQkJAgJCQnCW2+9JSiVSiE2Ntbk+1xbUh2r244cOSK0aNFCCA4OFl577TVT7aZRSHWs3nvvPSEgIEDQ6XSGKTU11eT7WxdSHasbN24IPj4+wtNPPy0cPnxYSExMFHbv3i2cO3euVvvBQFQHXbt2FaZMmVJuXrt27YRZs2ZV2v6NN94Q2rVrV27e5MmThe7duxveP/bYY8KwYcPKtRk6dKjw+OOP13q75kCqY3UnSwpE5nC8BEEQUlNTBQDC/v37a7oL9cZcjpUgCEKTJk2Eb7/9tibl1yspj1VOTo7QunVrYdeuXULfvn3NPhBJdazee+89oUOHDnWsvn5JdazefPNNoXfv3nUt34CXzGqpqKgIkZGRGDJkSLn5Q4YMwcGDByv9zKFDhyq0Hzp0KI4dO4bi4uJ7trm9ztpsV2pSHStLZU7HKysrCwDg4uJS4/2oD+ZyrEpLS7F+/XrcvHkTPXr0qO3umJTUx+qll17CyJEjMWjQoLruislJfazOnj0LrVYLX19fPP7447hw4UJdd8lkpDxWf/75J7p06YJHH30UHh4eCAkJwTfffFPrfWEgqqXr16+jtLQUnp6e5eZ7enoiJSWl0s+kpKRU2r6kpATXr1+/Z5vb66zNdqUm1bGyVOZyvARBwPTp09G7d28EBgbWdndMSupjFRMTAwcHB6hUKkyZMgUbN26Ev79/XXfLJKQ8VuvXr8fx48cRFhZmjF0xOSmPVbdu3fD9999jx44d+Oabb5CSkoKePXsiPT3dGLtmdFIeqwsXLmD58uVo3bo1duzYgSlTpuDVV1/F999/X6t94cNd60gmk5V7LwhChXn3a3/3/Oqss6bbNQdSHStLJfXxevnllxEdHY2IiIga1S0FqY5V27ZtcfLkSWRmZmLDhg2YMGEC9u/fb7ahCKj/Y3X58mW89tpr2LlzJ2xsbOpUe32T4t/V8OHDDa+DgoLQo0cPtGzZEt999x2mT59e852oJ1IcK71ejy5dumD+/PkAgJCQEMTFxWH58uUYP358jfeBZ4hqyc3NDQqFokICTk1NrZBqb/Py8qq0vZWVFVxdXe/Z5vY6a7NdqUl1rCyVORyvV155BX/++Sf++usvNGvWrC67Y1JSHytra2u0atUKXbp0QVhYGDp06IDPP/+8rrtlElIdq8jISKSmpqJz586wsrKClZUV9u/fjy+++AJWVlYoLS011i4ajdT/ru5kb2+PoKAgnD17tja7YnJSHiuNRlPhl4/27dsjKSmpVvvCQFRL1tbW6Ny5M3bt2lVu/q5du9CzZ89KP9OjR48K7Xfu3IkuXbpAqVTes83tddZmu1KT6lhZKimPlyAIePnll/HHH39g79698PX1NcYumYy5/dsSBAGFhYU13Y16IdWxGjhwIGJiYnDy5EnD1KVLFzz55JM4efIkFAqFsXbRaMzp31VhYSHi4+Oh0WhqsysmJ+Wx6tWrV4VhQc6cOQMfH5/a7YzRumc3QrdvNVy1apVw6tQpYerUqYK9vb1w8eJFQRAEYdasWcK4ceMM7W/fajht2jTh1KlTwqpVqyrcavjPP/8ICoVCWLBggRAfHy8sWLCgytvuq9quOZLqWOXk5AgnTpwQTpw4IQAQFi9eLJw4ccKshygQBOmO1wsvvCCo1Wph37595W77zcvLq7+dryGpjtXs2bOFAwcOCImJiUJ0dLTw1ltvCXK5XNi5c2f97XwNSXWs7mYJd5lJdaxef/11Yd++fcKFCxeEf//9VwgNDRUcHR35872SY3XkyBHByspK+Oijj4SzZ88KP/74o2BnZyf88MMPtdoPBqI6+uqrrwQfHx/B2tpa6NSpU7nbkydMmCD07du3XPt9+/YJISEhgrW1tdCiRQth+fLlFdb522+/CW3bthWUSqXQrl07YcOGDTXarrmS4lj99ddfAoAK04QJE0yxi0YlxfGq7FgBENasWWOKXTQaKY7Vs88+a9imu7u7MHDgQLMOQ7dJ9TPrTpYQiARBmmM1duxYQaPRCEqlUtBqtcJ///tfIS4uziT7Z0xS/bvavHmzEBgYKKhUKqFdu3bCypUra70PfNo9ERERNXrsQ0RERESNHgMRERERNXoMRERERNToMRARERFRo8dARERERI0eAxERERE1egxERERE1OgxEBEREVGjx0BERI3KxYsXIZPJIJPJ0LFjxzqv7/a6nJ2d67wuIpIOAxERNUq7d+/Gnj176rwenU6HJUuW1L0gIpIUAxERNUqurq5wdXWt83q8vLygVquNUBERSYmBiIgsVlpaGry8vDB//nzDvMOHD8Pa2ho7d+6s0bqefvppjBkzBvPnz4enpyecnZ0xb948lJSUYObMmXBxcUGzZs2wevVqY+8GEZkBK6kLICKqLXd3d6xevRpjxozBkCFD0K5dOzz11FN48cUXMWTIkBqvb+/evWjWrBkOHDiAf/75BxMnTsShQ4fQp08fHD58GL/88gumTJmCwYMHw9vb2wR7RERS4RkiIrJoI0aMwKRJk/Dkk09iypQpsLGxwYIFC2q1LhcXF3zxxRdo27Ytnn32WbRt2xZ5eXl466230Lp1a8yePRvW1tb4559/jLwXRCQ1BiIisniffPIJSkpK8Ouvv+LHH3+EjY1NrdYTEBAAubzsx6KnpyeCgoIM7xUKBVxdXZGamlrnmonIvDAQEZHFu3DhApKTk6HX63Hp0qVar0epVJZ7L5PJKp2n1+trvQ0iMk/sQ0REFq2oqAhPPvkkxo4di3bt2mHixImIiYmBp6en1KURkQXhGSIismhvv/02srKy8MUXX+CNN95A+/btMXHiRKnLIiILw0BERBZr3759WLJkCdatWwcnJyfI5XKsW7cOERERWL58udTlEZEF4SUzIrJY/fr1Q3Fxcbl5zZs3R2ZmZo3XtXbt2grz9u3bV2HexYsXa7xuIjJ/DERE1Cj17NkTHTt2xMGDB+u0HgcHB5SUlNT6zjYiMg8MRETUqDRr1gxnz54FAKhUqjqv7+TJkwDEW/KJyHLJBEEQpC6CiIiISErsVE1ERESNHgMRERERNXoMRERERNToMRARERFRo8dARERERI0eAxERERE1egxERERE1OgxEBEREVGjx0BEREREjd7/A+SILdJQU4obAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "data = np.genfromtxt(\"task12/profile_soret.txt\", delimiter=\",\", names=True)\n", + "data_no_soret = np.genfromtxt(\"task12/profile_no_soret.txt\", delimiter=\",\", names=True)\n", + "\n", + "name = data_no_soret.dtype.names[1]\n", + "\n", + "fig, axs = plt.subplots(2, 1, sharex=True)\n", + "\n", + "axs[0].plot(data_no_soret[\"x\"], data_no_soret[name], label=\"No Soret\")\n", + "\n", + "name = data.dtype.names[1]\n", + "axs[0].plot(data[\"x\"], data[name], label=\"Soret\")\n", + "\n", + "axs[0].legend()\n", + "axs[0].set_ylabel(\"Retention [T m$^{-3}$]\")\n", + "\n", + "axs[1].plot(data[\"x\"], T_val(data[\"x\"]))\n", + "axs[1].set_xlabel(\"x [m]\")\n", + "axs[1].set_ylabel(\"Temperature [K]\")\n", + "plt.show()\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "festim-workshop", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/tasks/task13.ipynb b/tasks/task13.ipynb new file mode 100644 index 0000000..516b0ac --- /dev/null +++ b/tasks/task13.ipynb @@ -0,0 +1,392 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Modelling discontinuous trapped concentration profiles\n", + "\n", + "It is possible to set the finite element type of trapped concentration in FESTIM.\n", + "But why even bother?\n", + "\n", + "It basically helps have a better approximation of concentration fields in presence of discontinuities.\n", + "To illustrate this, we will present two equivalent examples.\n", + "\n", + "A multi-material case with a trap defined in only one subdomain.\n", + "And a single-material with a trap defined only in a subregion." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Multi-material\n", + "\n", + "Let's define a case with 2 materials on $\\Omega = [0, 1]$ with the interface at $x=0.5$.\n", + "\n", + "We will set the trap only in the first subdomain $x \\in [0, 0.5]$.\n", + "\n", + "Let's start with the default argument in ``F.Settings``: using CG (Continuous Galerkin) finite elements for the trapped concentration." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defining initial values\n", + "Defining variational problem\n", + "Defining source terms\n", + "Defining boundary conditions\n", + "Solving steady state problem...\n", + "Solved problem in 0.00 s\n" + ] + } + ], + "source": [ + "import festim as F\n", + "import numpy as np\n", + "\n", + "my_model = F.Simulation()\n", + "\n", + "my_model.mesh = F.MeshFromVertices(np.linspace(0, 1, 100))\n", + "my_model.materials = [\n", + " F.Material(id=1, D_0=1, E_D=0, borders=[0, 0.5]),\n", + " F.Material(id=2, D_0=1, E_D=0, borders=[0.5, 1]),\n", + "]\n", + "\n", + "my_model.traps = F.Trap(\n", + " k_0=1,\n", + " E_k=0,\n", + " p_0=1,\n", + " E_p=0,\n", + " density=1,\n", + " materials=my_model.materials[0],\n", + ")\n", + "\n", + "my_model.T = 300\n", + "\n", + "my_model.boundary_conditions = [F.DirichletBC(surfaces=[1, 2], value=1, field=\"solute\")]\n", + "\n", + "my_model.settings = F.Settings(\n", + " absolute_tolerance=1e-10,\n", + " relative_tolerance=1e-10,\n", + " transient=False,\n", + ")\n", + "\n", + "my_model.exports = [F.TXTExport(filename=\"task13/trapped_concentration_multi.txt\", field=1)]\n", + "\n", + "my_model.initialise()\n", + "my_model.run()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It seems to have solved without any issue. Let's have a look at the produced concentration profile for the trapped particles." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/remidm/miniconda3/envs/festim-workshop/lib/python3.11/site-packages/IPython/core/pylabtools.py:77: DeprecationWarning: backend2gui is deprecated since IPython 8.24, backends are managed in matplotlib and can be externally registered.\n", + " warnings.warn(\n", + "/home/remidm/miniconda3/envs/festim-workshop/lib/python3.11/site-packages/IPython/core/pylabtools.py:77: DeprecationWarning: backend2gui is deprecated since IPython 8.24, backends are managed in matplotlib and can be externally registered.\n", + " warnings.warn(\n", + "/home/remidm/miniconda3/envs/festim-workshop/lib/python3.11/site-packages/IPython/core/pylabtools.py:77: DeprecationWarning: backend2gui is deprecated since IPython 8.24, backends are managed in matplotlib and can be externally registered.\n", + " warnings.warn(\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkMAAAGwCAYAAACq12GxAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA76UlEQVR4nO3de3hU1b3/8c8kM5MLkiAGIpcIAZWLgGCoEPhRpGpEaanaKpYeUAGP1HIQI0U4qFyOFG0toFWgeJAeLcV4wdZajhKpIHdLSNQWDlpEEyABApKLQC6T/fsjzOQKZse5MFnv1/PMU2bPnuSbXcx8+K6113JYlmUJAADAUBGhLgAAACCUCEMAAMBohCEAAGA0whAAADAaYQgAABiNMAQAAIxGGAIAAEZzhrqAC11VVZUOHz6s1q1by+FwhLocAADQBJZlqaSkRB07dlRExPl7P4Shb3D48GElJSWFugwAANAMeXl56ty583nPIQx9g9atW0uqvphxcXEhrgYAADRFcXGxkpKSfJ/j50MY+gbeobG4uDjCEAAAYaYpU1yYQA0AAIxGGAIAAEYjDAEAAKMRhgAAgNEIQwAAwGiEIQAAYDTCEAAAMBphCAAAGI0wBAAAjEYYAgAARiMMAQAAoxGGAACA0QhDAIxzutwjy7JCXQaACwRhCIBR/nW0RH3mvqtH//SPUJcC4AJBGAJglEWZn8pTZWn1ztxQlwLgAkEYAmCU/KIzoS4BwAWGMATAKPknCUMA6iIMATBKQTFhCEBdhCEAxiivrAp1CQAuQIQhAMbIPXGqzvMKD+EIAGEIgEE+P1Za5/npCk+IKgFwISEMATDGgcKv6zw/XU4YAkAYAmCQz48RhgA0RBgCYIzPC+sOk50iDAEQYQiAQRp0hpgzBECEIQCGKDpVoeNfl0uSOrWJkSSdIQwBEGEIgCH2nx0iS4yLUkLrKEkMkwGo5gx1AQAQDN4hsm4JF/mOMUwGQKIzBMAQB852hpLbtVKMO1KSdLq8MpQlAbhAEIYAGKGmM9RKMS5vGKIzBIAwBMAQ3jDUvd1Fvs7QKYbJAIgwBMAAnipLB46f7Qy1q+kMnaEzBECEIQAGOHzytMorq+SOjFDni2MV650zRGcIgAhDAAyw/+wGrV0uiVVkhEPRZztD3FoPQArDMLR06VIlJycrOjpaKSkp2rx58znP3bhxoxwOR4PH//3f/wWxYgDBVHSqQpZl1Tnm3aC1W7tWklRzNxmdIQAKszCUkZGhadOmafbs2crOztawYcN08803Kzc397zv27dvn/Lz832PK664IkgVAwgGy7K0bX+hxq3cqavnr9e8v+yp87p38nTy2TWGfMNkdIYAKMwWXVy0aJEmTpyoSZMmSZKWLFmid999V8uWLdPChQvP+b727durTZs2QaqyabK+PKHt+4/bfp/D4QhANfW/h83zZb+m5vwYdt/SvO9h701B+L/j7PexWVezvofN85v1Pey964vjXyvhoiiVVXh0prJKFZ4qtW8draS2Mep8caw6Xxyj7NyTev79fykn76Tvff+z/Qv9OKWz+nSKl1SzQau3M+QdJqMzBEAKozBUXl6urKwszZw5s87xtLQ0bdu27bzvHTBggM6cOaPevXvr0Ucf1YgRI855bllZmcrKynzPi4uLv13h57DzwAk9vf7TgHxtwERuZ4TGDExSftEZvbf3iJ746x6tuW+wHA5Hrdvqq8MQnSEAtYVNGCosLJTH41FiYmKd44mJiSooKGj0PR06dNCKFSuUkpKisrIyvfzyy7r++uu1ceNGffe73230PQsXLtS8efP8Xn99vTrE6SfXJtl6T71pEH4/X5Is2XtT875HM95j92dvznex/T2a8S2accHsviMY/58E4+f4v/xiXdUxXtGuCEW7IhXtipTDIR0pOqODX53Wwa9O60jJGbVyOzUutYsmDE1Wu9ZROnTytDZ/dkw7Pj+h9XuOaNgVCcovOiOpZiuOGDpDAGoJmzDkVb/NblnWOVvvPXr0UI8ePXzPU1NTlZeXp6effvqcYWjWrFlKT0/3PS8uLlZSkr3Q0hQjerTXiB7t/f51AZOUVXoU4XDIFVkz/bFTmxjdN6ybnnv/X1q4bq/aj+kvSbo41qWLW7kl1ZpATWcIgMJoAnVCQoIiIyMbdIGOHj3aoFt0PoMHD9Znn312ztejoqIUFxdX5wHgwhTljKwThLx+dl13tWsdpS+On9Lcs5Opu7Wr2aA1hlvrAdQSNmHI7XYrJSVFmZmZdY5nZmZqyJAhTf462dnZ6tChg7/LA3ABaRXl1C/SqrvCH52dWJ2c0Mr3urczdIZhMgAKs2Gy9PR0jRs3TgMHDlRqaqpWrFih3NxcTZ48WVL1ENehQ4f00ksvSaq+26xr16666qqrVF5erj/84Q9644039MYbb4TyxwAQBD9K6azfb/tCe/Krb4Lw3kkmSbGu6l99zBkCIIVZGBozZoyOHz+u+fPnKz8/X3369NG6devUpUsXSVJ+fn6dNYfKy8s1ffp0HTp0SDExMbrqqqv017/+VbfcckuofgQAQRIZ4dCj3++lsS/slCQlX1IThqLd1U3x0xWe8847BGAGh9Wc20IMUlxcrPj4eBUVFTF/CAhD8/+yR9v2F+qNnw1Rq6jqf/+VllWqz5x3JUn/918jfesOAWg57Hx+h1VnCADsevwHvRsci3bWTJc8Ve4hDAGGC5sJ1ADgL87ICLkja4bKAJiNMATASKw1BMCLMATASL5VqAlDgPEIQwCM5NufjGEywHiEIQBGivatQl0Z4koAhBphCICRYlmFGsBZhCEARvJOoGZ/MgCEIQBG8g6TMWcIAGEIgJFiubUewFmEIQBG4tZ6AF6EIQBGiuHWegBnEYYAGCnGxQRqANUIQwCM5A1D3FoPgDAEwEgMkwHwIgwBMBLrDAHwIgwBMBIrUAPwIgwBMBITqAF4EYYAGCnG7ZTEOkMACEMADMXdZAC8CEMAjMQwGQAvwhAAI3FrPQAvwhAAI8WwUSuAswhDAIwUe3aYrNxTpUpPVYirARBKhCEARvJ2hiSGygDTEYYAGCnKGSGHo/rPhCHAbIQhAEZyOBw1t9eXM0wGmIwwBMBYvtvrKypDXAmAUCIMATAWd5QBkAhDAAzm7QwRhgCzEYYAGCuWhRcBiDAEwGDRLsIQAMIQAIN55wyxPxlgNsIQAGN5h8nYuR4wG2EIgLGi2bkegAhDAAwWy631AEQYAmAw3wrUDJMBRiMMATBWDMNkAEQYAmCwGLdTErfWA6YjDAEwVoyr+lcgc4YAsxGGABgrls4QABGGABgs2rfoIrvWAyYLuzC0dOlSJScnKzo6WikpKdq8eXOT3rd161Y5nU71798/sAUCCBuxvu04qkJcCYBQCqswlJGRoWnTpmn27NnKzs7WsGHDdPPNNys3N/e87ysqKtL48eN1/fXXB6lSAOHAux3HGeYMAUYLqzC0aNEiTZw4UZMmTVKvXr20ZMkSJSUladmyZed93/3336+xY8cqNTU1SJUCCAe+FagrGCYDTBY2Yai8vFxZWVlKS0urczwtLU3btm075/tWrVql/fv3a86cOU36PmVlZSouLq7zANAy1axAzTAZYLKwCUOFhYXyeDxKTEysczwxMVEFBQWNvuezzz7TzJkztXr1ajmdziZ9n4ULFyo+Pt73SEpK+ta1A7gweRddPM0EasBoYROGvBwOR53nlmU1OCZJHo9HY8eO1bx583TllVc2+evPmjVLRUVFvkdeXt63rhnAhcnXGarwyLKsEFcDIFSa1i65ACQkJCgyMrJBF+jo0aMNukWSVFJSol27dik7O1tTpkyRJFVVVcmyLDmdTq1fv17f+973GrwvKipKUVFRgfkhAFxQvLfWV1lSuadKUc7IEFcEIBTCpjPkdruVkpKizMzMOsczMzM1ZMiQBufHxcXpk08+UU5Oju8xefJk9ejRQzk5ORo0aFCwSgdwgfIOk0msQg2YLGw6Q5KUnp6ucePGaeDAgUpNTdWKFSuUm5uryZMnS6oe4jp06JBeeuklRUREqE+fPnXe3759e0VHRzc4DsBMrsgIuSIdqvBYOl3hUZtQFwQgJMIqDI0ZM0bHjx/X/PnzlZ+frz59+mjdunXq0qWLJCk/P/8b1xwCgNqiXZGq8FSycz1gMIfFrMHzKi4uVnx8vIqKihQXFxfqcgD42aBfvqcjxWV6+z/+n/p0ig91OQD8xM7nd9jMGQKAQPDOGzrDZq2AsQhDAIwWc3bneobJAHMRhgAYLcZV/WvwNJ0hwFiEIQBGi/FtyUEYAkxFGAJgtBhX9TAZnSHAXIQhAEbzdoaYMwSYizAEwGix3E0GGI8wBMBozBkCQBgCYDSGyQA0azuOTz/9VBs3btTRo0dVVVVV57XHH3/cL4UBQDB4F11kAjVgLtth6IUXXtDPfvYzJSQk6NJLL5XD4fC95nA4CEMAwoovDJVXhrgSAKFiOww98cQTWrBggR555JFA1AMAQeWbM0RnCDCW7TlDX331le64445A1AIAQVczTFb1DWcCaKlsh6E77rhD69evD0QtABB0sW6GyQDT2R4mu/zyy/XYY49px44d6tu3r1wuV53Xp06d6rfiACDQohkmA4xnOwytWLFCF110kTZt2qRNmzbVec3hcBCGAIQV7zAZt9YD5rIdhg4cOBCIOgAgJLzDZGcIQ4CxvtWii5ZlybIsf9UCAEHHOkMAmhWGXnrpJfXt21cxMTGKiYlRv3799PLLL/u7NgAIOFagBmB7mGzRokV67LHHNGXKFA0dOlSWZWnr1q2aPHmyCgsL9dBDDwWiTgAICG9nqKyySlVVliIiHN/wDgAtje0w9Nvf/lbLli3T+PHjfcd++MMf6qqrrtLcuXMJQwDCSqy75tfg6QqPWkU1a5ciAGHM9jBZfn6+hgwZ0uD4kCFDlJ+f75eiACBYopw1vwaZNwSYyXYYuvzyy/Xqq682OJ6RkaErrrjCL0UBQLBERDgU7ar+VXiaeUOAkWz3g+fNm6cxY8bogw8+0NChQ+VwOLRlyxZt2LCh0ZAEABe6WLdTZyrK6QwBhrLdGfrRj36knTt3KiEhQX/605+0du1aJSQk6MMPP9Rtt90WiBoBIKBqdq4nDAEmatZMwZSUFP3hD3/wdy0AEBLcXg+YrUlhqLi4WHFxcb4/n4/3PAAIF97O0BmGyQAjNSkMXXzxxcrPz1f79u3Vpk0bORwN1+GwLEsOh0MeD79MAIQX9icDzNakMPS3v/1Nbdu2lSS9//77AS0IAIIt6uzdZOX8Yw4wUpPC0PDhw31/Tk5OVlJSUoPukGVZysvL8291ABAEzrOrTld42GsRMJHtu8mSk5N17NixBsdPnDih5ORkvxQFAMHkjKz+VVhJGAKMZDsMeecG1VdaWqro6Gi/FAUAweSK9HaGqkJcCYBQaPKt9enp6ZIkh8Ohxx57TLGxsb7XPB6Pdu7cqf79+/u9QAAINNfZzhBhCDBTk8NQdna2pOrO0CeffCK32+17ze126+qrr9b06dP9XyEABJgz4uwwWRXDZICJmhyGvHeR3XvvvXrmmWdYTwhAi+EdJqukMwQYyfYK1KtWrQpEHQAQMs5I7iYDTNas7Tj+/ve/67XXXlNubq7Ky8vrvLZ27Vq/FAYAweIdJmPOEGAm23eTvfLKKxo6dKj27NmjN998UxUVFdqzZ4/+9re/KT4+PhA1AkBAuZ3MGQJMZjsM/fKXv9TixYv19ttvy+1265lnntHevXt155136rLLLgtEjQAQUDWLLtIZAkxkOwzt379fo0aNkiRFRUXp66+/lsPh0EMPPaQVK1b4vUAACDQWXQTMZjsMtW3bViUlJZKkTp066R//+Ick6eTJkzp16pR/qwOAIHCd7QxVVtEZAkxkewL1sGHDlJmZqb59++rOO+/Ugw8+qL/97W/KzMzU9ddfH4gaASCgXGfnDJVX0hkCTGS7M/Tcc8/prrvukiTNmjVL06dP15EjR3T77bdr5cqVfi+wvqVLlyo5OVnR0dFKSUnR5s2bz3nuli1bNHToUF1yySWKiYlRz549tXjx4oDXCCC8OOkMAUaz1RmqrKzUX/7yF910002SpIiICM2YMUMzZswISHH1ZWRkaNq0aVq6dKmGDh2q3/3ud7r55pu1Z8+eRidvt2rVSlOmTFG/fv3UqlUrbdmyRffff79atWqlf//3fw9KzQAufC7mDAFGc1iWZeu//tjYWO3du1ddunQJVE3nNGjQIF1zzTVatmyZ71ivXr106623auHChU36GrfffrtatWqll19+uUnnFxcXKz4+XkVFRay6DbRQq3d+qdlv/kNpvRO1YvzAUJcDwA/sfH7bHiYbNGiQb5+yYCovL1dWVpbS0tLqHE9LS9O2bdua9DWys7O1bds2DR8+/JznlJWVqbi4uM4DQMvmYtFFwGi2J1A/8MADevjhh3Xw4EGlpKSoVatWdV7v16+f34qrrbCwUB6PR4mJiXWOJyYmqqCg4Lzv7dy5s44dO6bKykrNnTtXkyZNOue5Cxcu1Lx58/xSM4Dw4HJ65wwxTAaYyHYYGjNmjCRp6tSpvmMOh0OWZcnhcMjj8fivukY4HI46z73f93w2b96s0tJS7dixQzNnztTll1+un/zkJ42eO2vWLKWnp/ueFxcXKykp6dsXDuCCxXYcgNlsh6EDBw4Eoo5vlJCQoMjIyAZdoKNHjzboFtWXnJwsSerbt6+OHDmiuXPnnjMMRUVFKSoqyj9FAwgLNbvW0xkCTGR7ztCXX36pTp06qUuXLnUenTp10pdffhmIGiVJbrdbKSkpyszMrHM8MzNTQ4YMafLXsSxLZWVl/i4PQBjzdYYYJgOMZLszNGLECOXn56t9+/Z1jhcVFWnEiBEBHSZLT0/XuHHjNHDgQKWmpmrFihXKzc3V5MmTJVUPcR06dEgvvfSSJOn555/XZZddpp49e0qqXnfo6aef1n/8x38ErEYA4cd5tjNUUckwGWAi22HoXHN0jh8/3mAytb+NGTNGx48f1/z585Wfn68+ffpo3bp1vtv88/PzlZub6zu/qqpKs2bN0oEDB+R0OtW9e3c9+eSTuv/++wNaJ4Dw4vauM8Sii4CRmrzO0O233y5J+vOf/6yRI0fWmVfj8Xj08ccfq0ePHnrnnXcCU2mIsM4Q0PJ9eOCE7vzddnVLaKW/Tb8u1OUA8AM7n99N7gzFx8dLqu4MtW7dWjExMb7X3G63Bg8erPvuu6+ZJQNA6PiGyegMAUZqchhatWqVJKlr166aPn16wIfEACBYvIsucjcZYCbbc4bmzJkTiDoAIGR8nSHWGQKMZPvW+iNHjmjcuHHq2LGjnE6nIiMj6zwAINx4N2qtoDMEGMl2Z+iee+5Rbm6uHnvsMXXo0OEbV38GgAtdzaKLdIYAE9kOQ1u2bNHmzZvVv3//AJQDAMHnjGTRRcBktofJkpKS1MS78QEgLLgi6AwBJrMdhpYsWaKZM2fqiy++CEA5ABB83s5QlSV56A4BxmnWrvWnTp1S9+7dFRsbK5fLVef1EydO+K04AAgG75whqfqOssgIbgYBTGI7DC1ZsiQAZQBA6HjvJpOkSjpDgHFsh6G77747EHUAQMg4I2o6Q8wbAsxje86QJO3fv1+PPvqofvKTn+jo0aOSpHfeeUf//Oc//VocAARDZETtYTI6Q4BpbIehTZs2qW/fvtq5c6fWrl2r0tJSSdLHH3/M6tQAwpLD4fDNG2IVasA8tsPQzJkz9cQTTygzM1Nut9t3fMSIEdq+fbtfiwOAYPHOG2J/MsA8tsPQJ598ottuu63B8Xbt2un48eN+KQoAgs07b4id6wHz2A5Dbdq0UX5+foPj2dnZ6tSpk1+KAoBgozMEmMt2GBo7dqweeeQRFRQUyOFwqKqqSlu3btX06dM1fvz4QNQIAAHHzvWAuWyHoQULFuiyyy5Tp06dVFpaqt69e+u73/2uhgwZokcffTQQNQJAwDkjvDvXE4YA09heZ8jlcmn16tX6r//6L+3evVtVVVUaMGCArrjiikDUBwBB4XaeHSZj0UXAOLbDkFe3bt3UrVs3f9YCACHjm0BNZwgwju1hsh//+Md68sknGxz/9a9/rTvuuMMvRQFAsDmZQA0Yq1mLLo4aNarB8ZEjR+qDDz7wS1EAEGzeRRcrubUeMI7tMFRaWlpnsUUvl8ul4uJivxQFAMHmHSYrr6QzBJjGdhjq06ePMjIyGhx/5ZVX1Lt3b78UBQDB5ltniM4QYBzbE6gfe+wx/ehHP9L+/fv1ve99T5K0YcMGrVmzRq+99prfCwSAYGDRRcBctsPQ6NGj9ac//Um//OUv9frrrysmJkb9+vXTe++9p+HDhweiRgAIOBZdBMzVrFvrR40a1egkagAIV95FF1lnCDBPs9cZKi8v19GjR1VVb3z9sssu+9ZFAUCwuegMAcayHYY+++wzTZgwQdu2batz3LIsORwOeTwevxUHAMHinTNUwZwhwDi2w9A999wjp9Opt99+Wx06dJDD4QhEXQAQVN45Q5V0hgDj2A5DOTk5ysrKUs+ePQNRDwCEhIs5Q4CxbK8z1Lt3bxUWFgaiFgAIGW9nqLySzhBgGtth6KmnntKMGTO0ceNGHT9+XMXFxXUeABCOWHQRMJftYbIbbrhBknT99dfXOc4EagDhzLc3GROoAePYDkPvv/9+IOoAgJBycjcZYCzbYYhVpgG0RK4Idq0HTNWsRRdPnjyplStXau/evXI4HOrdu7cmTJig+Ph4f9cHAEFR0xkiDAGmsT2BeteuXerevbsWL16sEydOqLCwUIsWLVL37t21e/fuQNQIAAFXszcZw2SAaWx3hh566CGNHj1aL7zwgpzO6rdXVlZq0qRJmjZtmj744AO/FwkAgeb27VpPZwgwje0wtGvXrjpBSJKcTqdmzJihgQMH+rU4AAgW59k5QxUsuggYx/YwWVxcnHJzcxscz8vLU+vWrf1SFAAEm5POEGAs22FozJgxmjhxojIyMpSXl6eDBw/qlVde0aRJk/STn/wkEDUCQMC5mDMEGMt2GHr66ad1++23a/z48eratau6dOmie+65Rz/+8Y/11FNPBaLGOpYuXark5GRFR0crJSVFmzdvPue5a9eu1Y033qh27dopLi5OqampevfddwNeI4Dw44zgbjLAVLbDkNvt1jPPPKOvvvpKOTk5ys7O1okTJ7R48WJFRUUFokafjIwMTZs2TbNnz1Z2draGDRumm2++udFhO0n64IMPdOONN2rdunXKysrSiBEj9IMf/EDZ2dkBrRNA+HE5vcNkdIYA0zgsy7L1X35RUZE8Ho/atm1b5/iJEyfkdDoVFxfn1wJrGzRokK655hotW7bMd6xXr1669dZbtXDhwiZ9jauuukpjxozR448/3qTzi4uLFR8fr6KiooD+bABC638/ydfPVu/Wd7perNcmDwl1OQC+JTuf37Y7Q3fddZdeeeWVBsdfffVV3XXXXXa/XJOVl5crKytLaWlpdY6npaVp27ZtTfoaVVVVKikpaRDkaisrK2PzWcBAbMcBmMt2GNq5c6dGjBjR4Ph1112nnTt3+qWoxhQWFsrj8SgxMbHO8cTERBUUFDTpa/zmN7/R119/rTvvvPOc5yxcuFDx8fG+R1JS0reqG0B4qFl0kTlDgGlsh6GysjJVVlY2OF5RUaHTp0/7pajzcTgcdZ5bltXgWGPWrFmjuXPnKiMjQ+3btz/nebNmzVJRUZHvkZeX961rBnDhc0UwZwgwle0w9J3vfEcrVqxocHz58uVKSUnxS1GNSUhIUGRkZIMu0NGjRxt0i+rLyMjQxIkT9eqrr+qGG24477lRUVGKi4ur8wDQ8vlurWejVsA4tlegXrBggW644QZ99NFHuv766yVJGzZs0N///netX7/e7wV6ud1upaSkKDMzU7fddpvveGZmpn74wx+e831r1qzRhAkTtGbNGo0aNSpg9QEIbzWLLtIZAkxjuzM0dOhQbd++XUlJSXr11Vf1l7/8RZdffrk+/vhjDRs2LBA1+qSnp+u///u/9eKLL2rv3r166KGHlJubq8mTJ0uqHuIaP3687/w1a9Zo/Pjx+s1vfqPBgweroKBABQUFKioqCmidAMKPtzPECtSAeWx3hiSpf//+Wr16tb9r+UZjxozR8ePHNX/+fOXn56tPnz5at26dunTpIknKz8+vs+bQ7373O1VWVurnP/+5fv7zn/uO33333fr9738f7PIBXMC8iy6W0xkCjGN7nSHTsM4QYIbPjpToxsUfqE2sSzmPp33zGwBc0AK6zhAAtEQu5gwBxiIMAYBYZwgwGWEIAFSrM1RFZwgwDWEIACQ5I6o7Q54qS1UEIsAoTbqb7Pbbb2/yF1y7dm2ziwGAUPGuMyRVL7wYFREZwmoABFOTOkO19+qKi4vThg0btGvXLt/rWVlZ2rBhg+Lj4wNWKAAEkrtWGGISNWCWJnWGVq1a5fvzI488ojvvvFPLly9XZGT1v5w8Ho8eeOABbj0HELa8E6glwhBgGttzhl588UVNnz7dF4QkKTIyUunp6XrxxRf9WhwABIt3zpDE/mSAaWyHocrKSu3du7fB8b1796qKXyAAwpTD4fAFIm6vB8xiezuOe++9VxMmTNC//vUvDR48WJK0Y8cOPfnkk7r33nv9XiAABIsz0qHKKothMsAwtsPQ008/rUsvvVSLFy9Wfn6+JKlDhw6aMWOGHn74Yb8XCADB4oqM0JmKKjpDgGFsh6GIiAjNmDFDM2bMUHFxsSQxcRpAi8DCi4CZmrXoYmVlpd577z2tWbNGDkf1GPvhw4dVWlrq1+IAIJi8c4bKK+kMASax3Rn68ssvNXLkSOXm5qqsrEw33nijWrdurV/96lc6c+aMli9fHog6ASDg6AwBZrLdGXrwwQc1cOBAffXVV4qJifEdv+2227Rhwwa/FgcAweRda6iSOUOAUWx3hrZs2aKtW7fK7XbXOd6lSxcdOnTIb4UBQLB5O0MV3E0GGMV2Z6iqqkoej6fB8YMHD6p169Z+KQoAQsE7Z6iSNdMAo9gOQzfeeKOWLFnie+5wOFRaWqo5c+bolltu8WdtABBUNZ0hwhBgEtvDZIsXL9aIESPUu3dvnTlzRmPHjtVnn32mhIQErVmzJhA1AkBQeOcMMUwGmMV2GOrYsaNycnK0Zs0a7d69W1VVVZo4caJ++tOf1plQDQDhxhVx9m4ywhBgFNthSJJiYmI0YcIETZgwwd/1AEDIuJzMGQJM1KwwtG/fPv32t7/V3r175XA41LNnT02ZMkU9e/b0d30AEDTOCO4mA0xkewL166+/rj59+igrK0tXX321+vXrp927d6tv37567bXXAlEjAASFK5Jd6wET2e4MzZgxQ7NmzdL8+fPrHJ8zZ44eeeQR3XHHHX4rDgCCyembM0QYAkxiuzNUUFCg8ePHNzj+b//2byooKPBLUQAQCtxNBpjJdhi67rrrtHnz5gbHt2zZomHDhvmlKAAIBbdvbzI6Q4BJbA+TjR49Wo888oiysrI0ePBgSdKOHTv02muvad68eXrrrbfqnAsA4YLOEGAmh2VZtv6rj4hoWjPJ4XA0um1HuCkuLlZ8fLyKiooUFxcX6nIABNB/vvmJ/rgzV9NuuELTbrgy1OUA+BbsfH7b7gxV0T4G0EK5vHuT0RkCjGJ7zhAAtFRO795k/KMPMEqzwtCGDRv0/e9/X927d9fll1+u73//+3rvvff8XRsABJV3o1Y6Q4BZbIeh5557TiNHjlTr1q314IMPaurUqYqLi9Mtt9yi5557LhA1AkBQeBddZJ0hwCy25wwtXLhQixcv1pQpU3zHpk6dqqFDh2rBggV1jgNAOPEuulhOZwgwiu3OUHFxsUaOHNngeFpamoqLi/1SFACEgpPOEGAk22Fo9OjRevPNNxsc//Of/6wf/OAHfikKAELBN0xWRWcIMIntYbJevXppwYIF2rhxo1JTUyVVL7q4detWPfzww3r22Wd9506dOtV/lQJAgHknULNRK2AW22Fo5cqVuvjii7Vnzx7t2bPHd7xNmzZauXKl77nD4SAMAQgrTu4mA4xkOwwdOHAgEHUAQMh5F12kMwSYhUUXAeCsmkUX6QwBJrHdGZKkgwcP6q233lJubq7Ky8vrvLZo0SK/FAYAwcY6Q4CZbIehDRs2aPTo0UpOTta+ffvUp08fffHFF7IsS9dcc00gagSAoGAFasBMtofJZs2apYcfflj/+Mc/FB0drTfeeEN5eXkaPny47rjjjkDUCABB4fTOGWJvMsAotsPQ3r17dffdd0uSnE6nTp8+rYsuukjz58/XU0895fcC61u6dKmSk5MVHR2tlJQUbd68+Zzn5ufna+zYserRo4ciIiI0bdq0gNcHIHxxaz1gJtthqFWrViorK5MkdezYUfv37/e9VlhY6L/KGpGRkaFp06Zp9uzZys7O1rBhw3TzzTcrNze30fPLysrUrl07zZ49W1dffXVAawMQ/mpWoGaYDDCJ7TA0ePBgbd26VZI0atQoPfzww1qwYIEmTJigwYMH+73A2hYtWqSJEydq0qRJ6tWrl5YsWaKkpCQtW7as0fO7du2qZ555RuPHj1d8fHxAawMQ/rx7k9EZAsxiewL1okWLVFpaKkmaO3euSktLlZGRocsvv1yLFy/2e4Fe5eXlysrK0syZM+scT0tL07Zt2/z2fcrKynydL0nstwYYxO1kOw7ARLbCkMfjUV5envr16ydJio2N1dKlSwNSWH2FhYXyeDxKTEysczwxMVEFBQV++z4LFy7UvHnz/Pb1AIQPb2eIYTLALLaGySIjI3XTTTfp5MmTASrnmzkcjjrPLctqcOzbmDVrloqKinyPvLw8v31tABc275yhcobJAKPYHibr27evPv/8cyUnJweinnNKSEhQZGRkgy7Q0aNHG3SLvo2oqChFRUX57esBCB816wwRhgCT2J5AvWDBAk2fPl1vv/228vPzVVxcXOcRKG63WykpKcrMzKxzPDMzU0OGDAnY9wVgDu86QwyTAWax3RkaOXKkJGn06NF1hqe8w1Uej8d/1dWTnp6ucePGaeDAgUpNTdWKFSuUm5uryZMnS6oe4jp06JBeeukl33tycnIkSaWlpTp27JhycnLkdrvVu3fvgNUJIDz51hli0UXAKLbD0Pvvvx+IOppkzJgxOn78uObPn6/8/Hz16dNH69atU5cuXSRVL7JYf82hAQMG+P6clZWlP/7xj+rSpYu++OKLYJYOIAzULLpIZwgwicOyLFv/1efm5iopKanRicx5eXm67LLL/FpgqBUXFys+Pl5FRUWKi4sLdTkAAqiwtEwDn3hPknRg4S1+vTkDQHDZ+fy2PWcoOTlZx44da3D8xIkTQZ9UDQD+5Iqo+ZVIdwgwh+0wdK5b2UtLSxUdHe2XogAgFLy31ktSJfOGAGM0ec5Qenq6pOp1fh577DHFxsb6XvN4PNq5c6f69+/v9wIBIFi8c4YkOkOASZochrKzsyVVd4Y++eQTud1u32tut1tXX321pk+f7v8KASBIXLU6Q+xPBpijyWHIexfZvffeq2eeeYbJxABaHIfDocgIhzxVFmsNAQaxfWv9qlWrAlEHAFwQnGfDEJ0hwBy2J1ADQEvm25KDnesBYxCGAKAW77wh9icDzEEYAoBanGc7Q+xcD5iDMAQAtbjYrBUwDmEIAGpx+uYM0RkCTEEYAoBavKtQs+giYA7CEADU4vZ2hghDgDEIQwBQS01niGEywBSEIQCoxXl253rCEGAOwhAA1OJbZ4hFFwFjEIYAoBY6Q4B5CEMAUIvLyQRqwDSEIQCoxbvoIp0hwByEIQCoxXc3GXOGAGMQhgCgFt8K1HSGAGMQhgCgFvYmA8xDGAKAWlxnO0MV7E0GGIMwBAC1eIfJKirpDAGmIAwBQC01iy7SGQJMQRgCgFpqFl2kMwSYgjAEALX4OkPcTQYYgzAEALV4J1CzNxlgDsIQANTiXXSxnM4QYAzCEADU4mLRRcA4hCEAqMXJoouAcQhDAFBLzaKLDcNQWaUn2OUACALCEADUcq67yf5n2xfq9dg72vTpsVCUBSCACEMAUItvBep6YWjb/kJVWdKrf88LRVkAAogwBAC1eOcM1V908atTFZKkzZ8dY3I10MIQhgCglpp1huoGnq++LpckFZ+pVHbeyWCXBSCACEMAUItvAvU5OkOStGkf84aAloQwBAC1eBddrD1nyLIsnTxV7nu+8dOjQa8LQOAQhgCglpq7yWo6QyVllXW25/jHoWIdKykLem0AAoMwBAC11OxaX9MZ8s4XinFF6qqOcZKkD7jFHmgxCEMAUIt3mKx2J8g7X6htK7eGX9lOklhvCGhBCEMAUIu7kb3Jvjo7X6hNrEvX9WgvSfrgs2PysLM90CKEXRhaunSpkpOTFR0drZSUFG3evPm852/atEkpKSmKjo5Wt27dtHz58iBVCiAcORu5m8w7THZxrFsDLmuj1lFOnTxVoY8PngxFiQD8LKzCUEZGhqZNm6bZs2crOztbw4YN080336zc3NxGzz9w4IBuueUWDRs2TNnZ2frP//xPTZ06VW+88UaQKwcQLmoWXazdGaoeJru4lVuuyAj9vysSJEkb691if6bCo/X/LND+Y6WyLLpGQLhwhroAOxYtWqSJEydq0qRJkqQlS5bo3Xff1bJly7Rw4cIG5y9fvlyXXXaZlixZIknq1auXdu3apaefflo/+tGPglk6gDBRs+hiY50hlyRp+JXt9L//KNCmT4/poRuvlCSVnKnQxP/ZpQ8PnJAktW8dpdTul2hwt0vU9ZJWKj5ToaLTFSo6VaGSMxWqsqQIhySHQxEOKeLs/zocDjnOPncE8ec2jYOLe0Hpn3Sxrk1uG7LvHzZhqLy8XFlZWZo5c2ad42lpadq2bVuj79m+fbvS0tLqHLvpppu0cuVKVVRUyOVyNXhPWVmZyspqbpktLi72Q/UAwkVj6wx55wxdHOuWJA3vUT2J+qODJ3Xi63I5JN296kN9fLBI0a4IVVnS0ZIy/TnnsP6cczi4PwAQhh64rjthqCkKCwvl8XiUmJhY53hiYqIKCgoafU9BQUGj51dWVqqwsFAdOnRo8J6FCxdq3rx5/iscQFipmUBd+26yup2hDvEx6pHYWvuOlGjt7oN6dVeePj1Sqrat3HppwrW6vP1F2p37lXZ8fkI79h9XYWmZ4mNdio9xqU2MS3ExLkU4HLIsS1WWZOns/1qWqqqqn7P9WeBYYgjzQnNVx/iQfv+wCUNejnq9TcuyGhz7pvMbO+41a9Yspaen+54XFxcrKSmpueUCCDONdoa+rpkz5HVdj3bad6RET/x1ryQpMS5KqycN0uXtW0uShnRP0JDuCdKNwaocQHOFzQTqhIQERUZGNugCHT16tEH3x+vSSy9t9Hyn06lLLrmk0fdERUUpLi6uzgOAObyLLlZWWb5/PNUfJpPkW29IkpLaxuj1yUN8QQhAeAmbMOR2u5WSkqLMzMw6xzMzMzVkyJBG35Oamtrg/PXr12vgwIGNzhcCAO92HFLNJOrGwtDArm3Vt1O8+naK12v3D1FS29jgFgrAb8JqmCw9PV3jxo3TwIEDlZqaqhUrVig3N1eTJ0+WVD3EdejQIb300kuSpMmTJ+u5555Tenq67rvvPm3fvl0rV67UmjVrQvljALiAedcZkqrnDTkjrFq31tf8I8rtjNBbU4ZKOvewO4DwEFZhaMyYMTp+/Ljmz5+v/Px89enTR+vWrVOXLl0kSfn5+XXWHEpOTta6dev00EMP6fnnn1fHjh317LPPcls9gHOq3RmqqKpSVbml8srq+UO1O0MSIQhoKcIqDEnSAw88oAceeKDR137/+983ODZ8+HDt3r07wFUBaClcETWdoYrKKhVXeCRVd4Ji3ZGhKgtAAIXNnCEACIaIiOrFD6XqOUO+O8liXXSCgBaKMAQA9dTsT1bV6ORpAC0LYQgA6nGdbQ1VeizCEGAAwhAA1ONyetcaqqrZl6wVy3EALRVhCADq8S68WF5Z67Z6OkNAi0UYAoB6vLfXV1YxZwgwAWEIAOqp2Z+s9oKLhCGgpSIMAUA93rWGKj215gzFMmcIaKkIQwBQjyuyZrNWhsmAlo8wBAD1eIfJyj1VOskwGdDiEYYAoB7voouVHksnGCYDWjzCEADU41108euySp0+uzcZnSGg5SIMAUA93mGyYyVl1c8jHGodFXb7WgNoIsIQANTjnUB9tOSMJKkNm7QCLRphCADqqQlD1Z0h7iQDWjbCEADU44yoO0xGGAJaNsIQANTToDPEJq1Ai0YYAoB66k+gpjMEtGyEIQCox9sZKjrNgouACQhDAFCPd9d6LxZcBFo2whAA1OOMqPursQ3DZECLRhgCgHqc9TpDbQlDQItGGAKAerxzhry4mwxo2QhDAFBPwzlDdIaAlowwBAD11J8zRBgCWjbCEADUU7sz5HBIcTEMkwEtGWEIAOpx1poz1CbGpcgINmkFWjLCEADU46wVfhgiA1o+whAA1ON21vxqZPVpoOUjDAFAPbUnULP6NNDyEYYAoJ7aiy4yTAa0fIQhAKin9t1kDJMBLR9hCADqqT1M1oZhMqDFIwwBQD21t+NgXzKg5SMMAUA9tYfJ2LEeaPkIQwBQT+1FF9syZwho8QhDAFCPq86ii8wZAlo6whAA1ONwMEwGmIQwBAD1nCqv9P2Zu8mAlo8wBAD1nKmo8v259p1lAFomZ6gLAIALzfW92qtvp3h9p2vbUJcCIAgIQwBQT7QrUn/5j/8X6jIABEnY9H+/+uorjRs3TvHx8YqPj9e4ceN08uTJ875n7dq1uummm5SQkCCHw6GcnJyg1AoAAMJH2IShsWPHKicnR++8847eeecd5eTkaNy4ced9z9dff62hQ4fqySefDFKVAAAg3ITFMNnevXv1zjvvaMeOHRo0aJAk6YUXXlBqaqr27dunHj16NPo+b1j64osvglUqAAAIM2HRGdq+fbvi4+N9QUiSBg8erPj4eG3bts2v36usrEzFxcV1HgAAoOUKizBUUFCg9u3bNzjevn17FRQU+PV7LVy40DcvKT4+XklJSX79+gAA4MIS0jA0d+5cORyO8z527dolqe6KsF6WZTV6/NuYNWuWioqKfI+8vDy/fn0AAHBhCemcoSlTpuiuu+467zldu3bVxx9/rCNHjjR47dixY0pMTPRrTVFRUYqKivLr1wQAABeukIahhIQEJSQkfON5qampKioq0ocffqhrr71WkrRz504VFRVpyJAhgS4TAAC0YGExZ6hXr14aOXKk7rvvPu3YsUM7duzQfffdp+9///t17iTr2bOn3nzzTd/zEydOKCcnR3v27JEk7du3Tzk5OX6fZwQAAMJXWIQhSVq9erX69u2rtLQ0paWlqV+/fnr55ZfrnLNv3z4VFRX5nr/11lsaMGCARo0aJUm66667NGDAAC1fvjyotQMAgAuXw7IsK9RFXMiKi4sVHx+voqIixcXFhbocAADQBHY+v8OmMwQAABAIhCEAAGA0whAAADBaWOxNFkreKVVsywEAQPjwfm43ZWo0YegblJSUSBLbcgAAEIZKSkoUHx9/3nO4m+wbVFVV6fDhw2rdurXft/4oLi5WUlKS8vLyuFMtgLjOwcF1Dg6uc3BwnYMjkNfZsiyVlJSoY8eOiog4/6wgOkPfICIiQp07dw7o94iLi+M/tiDgOgcH1zk4uM7BwXUOjkBd52/qCHkxgRoAABiNMAQAAIxGGAqhqKgozZkzR1FRUaEupUXjOgcH1zk4uM7BwXUOjgvlOjOBGgAAGI3OEAAAMBphCAAAGI0wBAAAjEYYAgAARiMMBdDSpUuVnJys6OhopaSkaPPmzec9f9OmTUpJSVF0dLS6deum5cuXB6nS8GfnWq9du1Y33nij2rVrp7i4OKWmpurdd98NYrXhy+7faa+tW7fK6XSqf//+gS2whbB7ncvKyjR79mx16dJFUVFR6t69u1588cUgVRu+7F7n1atX6+qrr1ZsbKw6dOige++9V8ePHw9SteHpgw8+0A9+8AN17NhRDodDf/rTn77xPSH5LLQQEK+88orlcrmsF154wdqzZ4/14IMPWq1atbK+/PLLRs///PPPrdjYWOvBBx+09uzZY73wwguWy+WyXn/99SBXHn7sXusHH3zQeuqpp6wPP/zQ+vTTT61Zs2ZZLpfL2r17d5ArDy92r7PXyZMnrW7dullpaWnW1VdfHZxiw1hzrvPo0aOtQYMGWZmZmdaBAwesnTt3Wlu3bg1i1eHH7nXevHmzFRERYT3zzDPW559/bm3evNm66qqrrFtvvTXIlYeXdevWWbNnz7beeOMNS5L15ptvnvf8UH0WEoYC5Nprr7UmT55c51jPnj2tmTNnNnr+jBkzrJ49e9Y5dv/991uDBw8OWI0thd1r3ZjevXtb8+bN83dpLUpzr/OYMWOsRx991JozZw5hqAnsXuf//d//teLj463jx48Ho7wWw+51/vWvf21169atzrFnn33W6ty5c8BqbGmaEoZC9VnIMFkAlJeXKysrS2lpaXWOp6Wladu2bY2+Z/v27Q3Ov+mmm7Rr1y5VVFQErNZw15xrXV9VVZVKSkrUtm3bQJTYIjT3Oq9atUr79+/XnDlzAl1ii9Cc6/zWW29p4MCB+tWvfqVOnTrpyiuv1PTp03X69OlglByWmnOdhwwZooMHD2rdunWyLEtHjhzR66+/rlGjRgWjZGOE6rOQjVoDoLCwUB6PR4mJiXWOJyYmqqCgoNH3FBQUNHp+ZWWlCgsL1aFDh4DVG86ac63r+81vfqOvv/5ad955ZyBKbBGac50/++wzzZw5U5s3b5bTya+apmjOdf7888+1ZcsWRUdH680331RhYaEeeOABnThxgnlD59Cc6zxkyBCtXr1aY8aM0ZkzZ1RZWanRo0frt7/9bTBKNkaoPgvpDAWQw+Go89yyrAbHvun8xo6jIbvX2mvNmjWaO3euMjIy1L59+0CV12I09Tp7PB6NHTtW8+bN05VXXhms8loMO3+fq6qq5HA4tHr1al177bW65ZZbtGjRIv3+97+nO/QN7FznPXv2aOrUqXr88ceVlZWld955RwcOHNDkyZODUapRQvFZyD/XAiAhIUGRkZEN/oVx9OjRBonX69JLL230fKfTqUsuuSRgtYa75lxrr4yMDE2cOFGvvfaabrjhhkCWGfbsXueSkhLt2rVL2dnZmjJliqTqD23LsuR0OrV+/Xp973vfC0rt4aQ5f587dOigTp06KT4+3nesV69esixLBw8e1BVXXBHQmsNRc67zwoULNXToUP3iF7+QJPXr10+tWrXSsGHD9MQTT9C995NQfRbSGQoAt9utlJQUZWZm1jmemZmpIUOGNPqe1NTUBuevX79eAwcOlMvlClit4a4511qq7gjdc889+uMf/8iYfxPYvc5xcXH65JNPlJOT43tMnjxZPXr0UE5OjgYNGhSs0sNKc/4+Dx06VIcPH1Zpaanv2KeffqqIiAh17tw5oPWGq+Zc51OnTikiou5HZmRkpKSazgW+vZB9FgZ0erbBvLdtrly50tqzZ481bdo0q1WrVtYXX3xhWZZlzZw50xo3bpzvfO/thA899JC1Z88ea+XKldxa30R2r/Uf//hHy+l0Ws8//7yVn5/ve5w8eTJUP0JYsHud6+Nusqaxe51LSkqszp07Wz/+8Y+tf/7zn9amTZusK664wpo0aVKofoSwYPc6r1q1ynI6ndbSpUut/fv3W1u2bLEGDhxoXXvttaH6EcJCSUmJlZ2dbWVnZ1uSrEWLFlnZ2dm+JQwulM9CwlAAPf/881aXLl0st9ttXXPNNdamTZt8r919993W8OHD65y/ceNGa8CAAZbb7ba6du1qLVu2LMgVhy8713r48OGWpAaPu+++O/iFhxm7f6drIww1nd3rvHfvXuuGG26wYmJirM6dO1vp6enWqVOnglx1+LF7nZ999lmrd+/eVkxMjNWhQwfrpz/9qXXw4MEgVx1e3n///fP+vr1QPgsdlkV/DwAAmIs5QwAAwGiEIQAAYDTCEAAAMBphCAAAGI0wBAAAjEYYAgAARiMMAQAAoxGGAACA0QhDAADAaIQhAABgNMIQAAAwGmEIgFGOHTumSy+9VL/85S99x3bu3Cm3263169eHsDIAocJGrQCMs27dOt16663atm2bevbsqQEDBmjUqFFasmRJqEsDEAKEIQBG+vnPf6733ntP3/nOd/TRRx/p73//u6Kjo0NdFoAQIAwBMNLp06fVp08f5eXladeuXerXr1+oSwIQIswZAmCkzz//XIcPH1ZVVZW+/PLLUJcDIIToDAEwTnl5ua699lr1799fPXv21KJFi/TJJ58oMTEx1KUBCAHCEADj/OIXv9Drr7+ujz76SBdddJFGjBih1q1b6+233w51aQBCgGEyAEbZuHGjlixZopdffllxcXGKiIjQyy+/rC1btmjZsmWhLg9ACNAZAgAARqMzBAAAjEYYAgAARiMMAQAAoxGGAACA0QhDAADAaIQhAABgNMIQAAAwGmEIAAAYjTAEAACMRhgCAABGIwwBAACj/X+0LuBTT8cHQAAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "data = np.genfromtxt(\"task13/trapped_concentration_multi.txt\", delimiter=\",\", skip_header=1)\n", + "\n", + "import matplotlib.pyplot as plt\n", + "\n", + "sorted_data = data[data[:, 0].argsort()]\n", + "plt.plot(sorted_data[:, 0], sorted_data[:, 1])\n", + "\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"trapped concentration\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "These oscillations around the interface discontinuity overshoots and undershoots are due to the [Gibbs phenomenon](https://en.wikipedia.org/wiki/Gibbs_phenomenon).\n", + "\n", + "This phenomenon occurs in finite element when trying to approximate a discontinuous function with continuous elements (see [ten Eikelder et al](https://doi.org/10.1142/S0218202524500040) for more info).\n", + "\n", + "The best way to get rid of this behaviour is to use discontinuous elements.\n", + "Here, we'll change the ``traps_element_type`` in ``my_model.settings`` to ``\"DG\"`` (Discontinuous Galerkin). " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defining initial values\n", + "Defining variational problem\n", + "Defining source terms\n", + "Defining boundary conditions\n", + "Solving steady state problem...\n", + "Solved problem in 0.00 s\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAGwCAYAAABVdURTAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA3bklEQVR4nO3de3xU9Z3/8fdcSAJIYjUaQQIGUAG5mlRI+FGKlyhS8VZNtQteYFdElkukCIsWYcVoazF4CYqL+MAixgta67KViAIBlEoMSgurLKIJEMSAJsRLYibn9weZgcxMxjlhkmHOeT0fj3nUOXNm8sl50OSdz/leHIZhGAIAALAIZ7QLAAAAiCTCDQAAsBTCDQAAsBTCDQAAsBTCDQAAsBTCDQAAsBTCDQAAsBR3tAtoaw0NDdq/f786deokh8MR7XIAAEAYDMPQkSNH1KVLFzmdoXsztgs3+/fvV2pqarTLAAAALVBeXq6uXbuGPMd24aZTp06Sjl6cxMTEKFcDAADCUV1drdTUVN/v8VBsF268t6ISExMJNwAAxJhwhpQwoBgAAFgK4QYAAFgK4QYAAFgK4QYAAFgK4QYAAFgK4QYAAFgK4QYAAFgK4QYAAFgK4QYAAFgK4QYAAFhK1MNNQUGB0tLSlJCQoPT0dBUXFzd77rp16+RwOAIe//u//9uGFQMAgJNZVMNNYWGhpk2bpjlz5qi0tFTDhw/XqFGjVFZWFvJ9n3zyiSoqKnyPc889t40qBgAAJzuHYRhGtL74kCFDdOGFF2rx4sW+Y3369NE111yjvLy8gPPXrVunkSNH6uuvv9app57aoq9ZXV2tpKQkVVVVRXTjTE+DoYqq7yP2eQDMST4lXgntXL7n39d51D7OFeIdAGKJmd/fUdsVvK6uTiUlJZo1a1aT49nZ2dq8eXPI9w4ePFg//PCD+vbtq3vvvVcjR45s9tza2lrV1tb6nldXV59Y4c049G2t/t/D77bKZwP4acmnxGnd70bqlHi3/rm/Stc+uVn/9osemnH5+dEuDUAbi1q4qayslMfjUUpKSpPjKSkpOnDgQND3dO7cWUuWLFF6erpqa2v1/PPP65JLLtG6dev0i1/8Iuh78vLyNG/evIjXH0y8O+pDmABbqq1vUGVNnfZ+/Z16n5WoTw4cUZ2nQdvKv4l2aQCiIGrhxsvhcDR5bhhGwDGv888/X+eff+yvsMzMTJWXl+uRRx5pNtzMnj1bubm5vufV1dVKTU2NQOVNndkpQZ88MCrinwvgp1204G0dPFIrT0PTu+z+zwHYQ9RaDcnJyXK5XAFdmoMHDwZ0c0IZOnSodu3a1ezr8fHxSkxMbPIAYC0u59E/iAg3AKQohpu4uDilp6erqKioyfGioiJlZWWF/TmlpaXq3LlzpMsDEEOaDTfRmy8BIIqielsqNzdXY8eOVUZGhjIzM7VkyRKVlZVp4sSJko7eUtq3b5+WL18uScrPz9c555yjCy64QHV1dfrzn/+sV199Va+++mo0vw0AUdZcuKmncwPYUlTDTU5Ojg4dOqT58+eroqJC/fr10+rVq9W9e3dJUkVFRZM1b+rq6jRjxgzt27dP7du31wUXXKD//u//1pVXXhmtbwHASaC5cNNAuAFsKeoDiidNmqRJkyYFfe25555r8nzmzJmaOXNmG1QFIJa4HHRuABzD3GUAMc/XuTHo3AAg3ACwAG+48e/U1Dc0RKMcAFFGuAEQ87zhxr9TQ+MGsCfCDYCY1/xsKTo3gB0RbgDEvOYGFJNtAHsi3ACIec0NKGaFYsCeCDcAYh6L+AE4HuEGQMxrdhE/tl8AbIlwAyDmNTsV3MOgG8COCDcAYp6bqeAAjkO4ARDznA4W8QNwDOEGQMxzuxo7NwHbL0SjGgDRRrgBEPN8nRsPnRsAhBsAFuAbc+PfuTEkgxlTgO0QbgDEPGczs6UkFvID7IhwAyDmuZtZ50YKXLUYgPURbgDEvOYW8WvuGABrI9wAiHnOZjbObO4YAGsj3ACIec0NKJYIN4AdEW4AxDwGFAM4HuEGQMxrbvsFiQHFgB0RbgDEPDo3AI5HuAEQ80JOBSfcALZDuAEQ81zMlgJwHMINgJjnch79URZsfA3hBrAfwg2AmOdq/Enm8RBuABBuAFhAyM4Ns6UA2yHcAIh5vs5NkC5NfZBuDgBrI9wAiHm+zk2QcBNs1WIA1ka4ARDzXEcnSwXv3DDmBrAdwg2AmOdyhejcEG4A2yHcAIh53nVugnVp6NwA9kO4ARDzQu0KTucGsB/CDYCY5wyx/QKdG8B+CDcAYl6oqeCscwPYD+EGQMwLNRU82KrFAKyNcAMg5oXcOJPODWA7hBsAMc/lHXPDgGIAItwAsABvuGEqOACJcAPAAnxTwdl+AYAINwAswBmqc8OAYsB2CDcAYl6ozg0DigH7IdwAiHlO3/YLDQGvBZtBBcDaCDcAYp7b5d1+IfA1wg1gP4QbADGPzg2A4xFuAMS8Y2NuAl8j3AD2Q7gBEPOOrXND5wYA4QaABfhWKA7WuWG2FGA7hBsAMc8bboIt2EfnBrAfwg2AmOe7LRWkdUO4AeyHcAMg5nl3BQ+WY9hbCrAfwg2AmBdqQDG7ggP2Q7gBEPNcoaaCM6AYsB3CDYCYx1RwAMcj3ACIecdmS0mGX6eGcAPYD+EGQMzzDiiWAsMM4QawH8INgJjnch0XbujcALYX9XBTUFCgtLQ0JSQkKD09XcXFxWG9b9OmTXK73Ro0aFDrFgjgpBeqc8NUcMB+ohpuCgsLNW3aNM2ZM0elpaUaPny4Ro0apbKyspDvq6qq0rhx43TJJZe0UaUATmbeMTdSYLhhKjhgP1ENNwsXLtT48eM1YcIE9enTR/n5+UpNTdXixYtDvu+OO+7QzTffrMzMzJ/8GrW1taqurm7yAGAtocINnRvAfqIWburq6lRSUqLs7Owmx7Ozs7V58+Zm37ds2TLt3r1bc+fODevr5OXlKSkpyfdITU09oboBnHxC3ZYKtt8UAGuLWriprKyUx+NRSkpKk+MpKSk6cOBA0Pfs2rVLs2bN0ooVK+R2u8P6OrNnz1ZVVZXvUV5efsK1Azi5OJ0OefMNnRsA4SWEVuQ47i8u6egaFf7HJMnj8ejmm2/WvHnzdN5554X9+fHx8YqPjz/hOgGc3NxOh370GAGzpRhzA9hP1MJNcnKyXC5XQJfm4MGDAd0cSTpy5Ii2bt2q0tJSTZ48WZLU0NAgwzDkdru1Zs0aXXzxxW1SO4CTj9PhkGQE6dwE2ZMBgKVF7bZUXFyc0tPTVVRU1OR4UVGRsrKyAs5PTEzU9u3btW3bNt9j4sSJOv/887Vt2zYNGTKkrUoHcBJyNw4qDlzELxrVAIimqN6Wys3N1dixY5WRkaHMzEwtWbJEZWVlmjhxoqSj42X27dun5cuXy+l0ql+/fk3ef+aZZyohISHgOAD7cTYbbkg3gN1ENdzk5OTo0KFDmj9/vioqKtSvXz+tXr1a3bt3lyRVVFT85Jo3ACCF6Nww5AawHYfhv8ucxVVXVyspKUlVVVVKTEyMdjkAIiTjgSJV1tTpb9OGa8f+auW+9JEkaViv07ViwtAoVwfgRJn5/R317RcAIBKcjbMs6z3sLQXYHeEGgCV4b0v5L9rHkBvAfgg3ACzBO6DYf9E+poID9kO4AWAJvs4NA4oB2yPcALCE5jo3TAUH7IdwA8ASmu3ckG0A2yHcALAE32wpOjeA7RFuAFiC29W4iJ/BVHDA7gg3ACzB1di58bDODWB7hBsAluByNtO5sdci7ABEuAFgEa7mBhQzFxywHcINAEtwNTcVnM4NYDuEGwCW4Gpm+wXG3AD2Q7gBYAku59EfZ2ycCYBwA8ASGmeCB9yG8r9NBcD6CDcALMHbufHv1PgPMAZgfYQbAJbgavxp5h9uGFAM2A/hBoAl+Na5Cdh+gXAD2I27JW/69NNPtW7dOh08eFANfvu2/P73v49IYQBgRnO3pQg3gP2YDjfPPPOM7rzzTiUnJ+uss86So3HJc0lyOByEGwBR4RtQ7D/mxpAMw2jyswqAtZkONw888IAWLFige+65pzXqAYAW8XVugoyx8TQYvo01AVif6TE3X3/9tW644YbWqAUAWqy5AcUS08EBuzEdbm644QatWbOmNWoBgBZrbsyNFLhqMQBrM31bqlevXrrvvvv0/vvvq3///mrXrl2T16dMmRKx4gAgXN7OTbAuDZ0bwF5Mh5slS5bolFNO0fr167V+/fomrzkcDsINgKhwN3Zugi3ax0J+gL2YDjd79uxpjToA4IQ4G2dDBRtQTOcGsJcTWsTPMAwZ3MsGcBLwzoYKOuaGcAPYSovCzfLly9W/f3+1b99e7du314ABA/T8889HujYACJuvc8OYG8D2TN+WWrhwoe677z5NnjxZw4YNk2EY2rRpkyZOnKjKykpNnz69NeoEgJDczWy/0NwxANZlOtw8/vjjWrx4scaNG+c7dvXVV+uCCy7Q/fffT7gBEBVOwg2ARqZvS1VUVCgrKyvgeFZWlioqKiJSFACY5e3cBLsFxc7ggL2YDje9evXSSy+9FHC8sLBQ5557bkSKAgCzvLuCBxs8TOcGsBfTt6XmzZunnJwcbdiwQcOGDZPD4dDGjRu1du3aoKEHANqCK1TnhnAD2Irpzs3111+vLVu2KDk5Wa+//rpWrVql5ORk/f3vf9e1117bGjUCwE9yNc6WCrbVAuEGsBfTnRtJSk9P15///OdI1wIALeakcwOgUVjhprq6WomJib7/DsV7HgC0JXeoMTcMKAZsJaxw87Of/UwVFRU688wzdeqpp8rR2P49nmEYcjgc8ng8ES8SAH7Ksc5NQ8BrdG4Aewkr3Lzzzjs67bTTJEnvvvtuqxYEAC1xbBG/wNcIN4C9hBVuRowY4fvvtLQ0paamBnRvDMNQeXl5ZKsDgDC5fNsv0LkB7M70bKm0tDR99dVXAccPHz6stLS0iBQFAGZ5p4J7guQYwg1gL6bDjXdsjb+amholJCREpCgAMItF/AB4hT0VPDc3V5LkcDh03333qUOHDr7XPB6PtmzZokGDBkW8QAAIh4sBxQAahR1uSktLJR3t3Gzfvl1xcXG+1+Li4jRw4EDNmDEj8hUCQBiOdW4CXwu29g0A6wo73HhnSd12221atGgR69kAOKmE6twEW7UYgHWZXqF42bJlrVEHAJwQ32ypIDmGzg1gLy3afuGDDz7Qyy+/rLKyMtXV1TV5bdWqVREpDADMcLmanwoebJAxAOsyPVvqxRdf1LBhw7Rjxw699tpr+vHHH7Vjxw698847SkpKao0aAeAnHVvnJvA1OjeAvZgONw8++KAeffRRvfnmm4qLi9OiRYu0c+dO3XjjjerWrVtr1AgAP+nYCsV0bgC7Mx1udu/erdGjR0uS4uPj9e2338rhcGj69OlasmRJxAsEgHA4feEmMMjQuQHsxXS4Oe2003TkyBFJ0tlnn61//OMfkqRvvvlG3333XWSrA4AwuUOEG3YFB+zF9IDi4cOHq6ioSP3799eNN96oqVOn6p133lFRUZEuueSS1qgRAH6Sr3MTJMhwWwqwF9Ph5oknntAPP/wgSZo9e7batWunjRs36rrrrtN9990X8QIBIBy+AcVB5oJzWwqwF1Phpr6+Xn/96191+eWXS5KcTqdmzpypmTNntkpxABAuF50bAI1Mjblxu9268847VVtb21r1AECLuBhQDKCR6QHFQ4YM8e0zBQAni1ADitl+AbAX02NuJk2apLvvvlt79+5Venq6Onbs2OT1AQMGRKw4AAhXyKngwfZkAGBZpjs3OTk52rNnj6ZMmaJhw4Zp0KBBGjx4sO9/zSooKFBaWpoSEhKUnp6u4uLiZs/duHGjhg0bptNPP13t27dX79699eijj5r+mgCsh6ngALxMd2727NkTsS9eWFioadOmqaCgQMOGDdPTTz+tUaNGaceOHUFXO+7YsaMmT56sAQMGqGPHjtq4caPuuOMOdezYUf/2b/8WsboAxB6no/kBxcFWLQZgXabDzRdffKGsrCy53U3fWl9fr82bN6t79+5hf9bChQs1fvx4TZgwQZKUn5+vt956S4sXL1ZeXl7A+YMHD27SHTrnnHO0atUqFRcXNxtuamtrmwyArq6uDrs+ALHD7QrRuSHbALZi+rbUyJEjdfjw4YDjVVVVGjlyZNifU1dXp5KSEmVnZzc5np2drc2bN4f1GaWlpdq8ebNGjBjR7Dl5eXlKSkryPVJTU8OuEUDsOLZxJp0bwO5MhxvDMORo/CFyvEOHDgUMLg6lsrJSHo9HKSkpTY6npKTowIEDId/btWtXxcfHKyMjQ3fddZev8xPM7NmzVVVV5XuUl5eHXSOA2OGdCt5gSP53pujcAPYS9m2p6667TpLkcDh06623Kj4+3veax+PRxx9/rKysLNMF+Ael5sLT8YqLi1VTU6P3339fs2bNUq9evXTTTTcFPTc+Pr5JrQCsyRtupMBxN3RuAHsJO9wkJSVJOho+OnXqpPbt2/tei4uL09ChQ/Wv//qvYX/h5ORkuVyugC7NwYMHA7o5/tLS0iRJ/fv315dffqn777+/2XADwB6ahBu/W1PMlgLsJexws2zZMklHB/HOmDHD1C2oYOLi4pSenq6ioiJde+21vuNFRUW6+uqrw/4cwzBYMRlA6HDDCsWArZieLTV37tyIffHc3FyNHTtWGRkZyszM1JIlS1RWVqaJEydKOjpeZt++fVq+fLkk6cknn1S3bt3Uu3dvSUfXvXnkkUf07//+7xGrCUBsItwA8DIdbr788kvNmDFDa9eu1cGDB2X439v2eML+rJycHB06dEjz589XRUWF+vXrp9WrV/umk1dUVKisrMx3fkNDg2bPnq09e/bI7XarZ8+eeuihh3THHXeY/TYAWIzLESrctHU1AKLJYfink58watQolZWVafLkyercuXPA4F8zt5Siobq6WklJSaqqqlJiYmK0ywEQIYZhKG32aknSnCv7aMHqnb7XrhnURfm/Mb+COoCTh5nf36Y7Nxs3blRxcbEGDRrU0voAIOIcDoecjqNTwQNmS3FXCrAV0+vcpKamBtyKAoCTgauZ/aWYCg7Yi+lwk5+fr1mzZunzzz9vhXIAoOWaDzf8QQbYienbUjk5Ofruu+/Us2dPdejQQe3atWvyerCtGQCgLTS3BQPhBrAX0+EmPz+/FcoAgBNH5waA1IJwc8stt7RGHQBwwnzhxm9cYD3hBrAV02NuJGn37t269957ddNNN+ngwYOSpL/97W/65z//GdHiAMAMl/PojzT/Tk0DkyAAWzEdbtavX6/+/ftry5YtWrVqlWpqaiRJH3/8cURXLwYAs1yNP9H8w009c8EBWzEdbmbNmqUHHnhARUVFiouL8x0fOXKk3nvvvYgWBwBmuOncAFALws327dubbHTpdcYZZ+jQoUMRKQoAWsLZXOeGMTeArZgON6eeeqoqKioCjpeWlurss8+OSFEA0BLezo1/mGkg3AC2Yjrc3Hzzzbrnnnt04MABORwONTQ0aNOmTZoxY4bGjRvXGjUCQFi8G4P7hxk6N4C9mA43CxYsULdu3XT22WerpqZGffv21S9+8QtlZWXp3nvvbY0aASAs/p0b776+rHMD2IvpdW7atWunFStW6D//8z/14YcfqqGhQYMHD9a5557bGvUBQNicja0b7wBit9OhHz0G4QawGdPhxqtHjx7q0aNHJGsBgBPibgw33s6N0+GQZAQs6gfA2kzflvr1r3+thx56KOD4H//4R91www0RKQoAWsLXuWk41rk5/jkAe2jRIn6jR48OOH7FFVdow4YNESkKAFrC1TjGpr6hQdKxsMOAYsBeTIebmpqaJov3ebVr107V1dURKQoAWuLYIn7e53RuADsyHW769eunwsLCgOMvvvii+vbtG5GiAKAlvIv4eQcUu+jcALZkekDxfffdp+uvv167d+/WxRdfLElau3atVq5cqZdffjniBQJAuPyngrv8Zk8BsAfT4WbMmDF6/fXX9eCDD+qVV15R+/btNWDAAL399tsaMWJEa9QIAGHxH1DsctC5AeyoRVPBR48eHXRQMQBE07Gp4E0HFLPODWAvLV7npq6uTgcPHlRD4w8Rr27dup1wUQDQEk6Ht3Nz9LmbcAPYkulws2vXLt1+++3avHlzk+OGYcjhcMjj8USsOAAwg84NAKkF4ebWW2+V2+3Wm2++qc6dO8vh3bwFAKLMO4DY05hl6NwA9mQ63Gzbtk0lJSXq3bt3a9QDAC3mCzfezo3DG3YIN4CdmF7npm/fvqqsrGyNWgDghBwLN0efuxuXLDYMFvID7MR0uHn44Yc1c+ZMrVu3TocOHVJ1dXWTBwBEi3/nxnXcbXO6N4B9mL4tdemll0qSLrnkkibHGVAMINq8Ycbjt4if91g7V1TKAtDGTIebd999tzXqAIAT5nKFDjcA7MF0uGEVYgAnK5ffAOIm4YbbUoBttGgRv2+++UZLly7Vzp075XA41LdvX91+++1KSkqKdH0AEDbfmBtPkHDjIdwAdmF6QPHWrVvVs2dPPfroozp8+LAqKyu1cOFC9ezZUx9++GFr1AgAYTm2zs3RIONkQDFgS6Y7N9OnT9eYMWP0zDPPyO0++vb6+npNmDBB06ZN04YNGyJeJACEw38quPeYp8FgzA1gI6bDzdatW5sEG0lyu92aOXOmMjIyIlocAJjhPxXce4xwA9iL6dtSiYmJKisrCzheXl6uTp06RaQoAGgJ/6ngzR0DYG2mw01OTo7Gjx+vwsJClZeXa+/evXrxxRc1YcIE3XTTTa1RIwCExRVkL6lgxwBYm+nbUo888ogcDofGjRun+vp6SVK7du1055136qGHHop4gQAQLv8BxccfqyfcALZhOtzExcVp0aJFysvL0+7du2UYhnr16qUOHTq0Rn0AELZQnZsGZksBtmE63FRVVcnj8ei0005T//79fccPHz4st9utxMTEiBYIAOEKFW7qWecGsA3TY25+85vf6MUXXww4/tJLL+k3v/lNRIoCgJZw+7o0x455BxTTuQHsw3S42bJli0aOHBlw/Je//KW2bNkSkaIAoCWOX7TPizE3gP2YDje1tbW+gcTH+/HHH/X9999HpCgAaAm3q/lww2wpwD5Mh5uf//znWrJkScDxp556Sunp6REpCgBaIljnxk24AWzH9IDiBQsW6NJLL9VHH32kSy65RJK0du1affDBB1qzZk3ECwSAcLmdgeHGSbgBbMd052bYsGF67733lJqaqpdeekl//etf1atXL3388ccaPnx4a9QIAGFxBgk3dG4A+zHduZGkQYMGacWKFZGuBQBOSNDOjSNwYT8A1ma6cwMAJytXsM5N4yDjBjo3gG0QbgBYRrBw4+3cMBUcsA/CDQDLcDFbCoAINwAsJNiAYmZLAfZDuAFgGcEGFLsYUAzYTlizpa677rqwP3DVqlUtLgYATkTQqeAub+emoa3LARAlYXVukpKSfI/ExEStXbtWW7du9b1eUlKitWvXKikpqdUKBYCfEnIqONkGsI2wOjfLli3z/fc999yjG2+8UU899ZRcLpckyePxaNKk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FdClOXjwYEB3xuuss84Ker7b7dbpp58e9D3x8fGKj4+PTNEAAOCkF7W+UVxcnNLT01VUVNTkeFFRkbKysoK+JzMzM+D8NWvWKCMjI+h4GwAAYD9RvSmWm5ur//qv/9Kzzz6rnTt3avr06SorK9PEiRMlHb2lNG7cON/5EydO1BdffKHc3Fzt3LlTzz77rJYuXaoZM2ZE61sAAAAnmaiOucnJydGhQ4c0f/58VVRUqF+/flq9erW6d+8uSaqoqGiy5k1aWppWr16t6dOn68knn1SXLl302GOPMQ0cAAD4OAzDXlMHqqurlZSUpKqqKiUmJka7HAAAEAYzv7+jvv0CAABAJBFuAACApRBuAACApRBuAACApRBuAACApRBuAACApRBuAACApRBuAACApRBuAACApUR1+4Vo8C7IXF1dHeVKAABAuLy/t8PZWMF24ebIkSOSpNTU1ChXAgAAzDpy5IiSkpJCnmO7vaUaGhq0f/9+derUSQ6HI6KfXV1drdTUVJWXl7NvVSviOrcNrnPb4Dq3Ha5122it62wYho4cOaIuXbrI6Qw9qsZ2nRun06muXbu26tdITEzk/zhtgOvcNrjObYPr3Ha41m2jNa7zT3VsvBhQDAAALIVwAwAALIVwE0Hx8fGaO3eu4uPjo12KpXGd2wbXuW1wndsO17ptnAzX2XYDigEAgLXRuQEAAJZCuAEAAJZCuAEAAJZCuAEAAJZCuDGpoKBAaWlpSkhIUHp6uoqLi0Oev379eqWnpyshIUE9evTQU0891UaVxjYz13nVqlW67LLLdMYZZygxMVGZmZl666232rDa2GX237PXpk2b5Ha7NWjQoNYt0CLMXufa2lrNmTNH3bt3V3x8vHr27Klnn322jaqNXWav84oVKzRw4EB16NBBnTt31m233aZDhw61UbWxacOGDbrqqqvUpUsXORwOvf766z/5nqj8HjQQthdffNFo166d8cwzzxg7duwwpk6danTs2NH44osvgp7/2WefGR06dDCmTp1q7Nixw3jmmWeMdu3aGa+88kobVx5bzF7nqVOnGg8//LDx97//3fj000+N2bNnG+3atTM+/PDDNq48tpi9zl7ffPON0aNHDyM7O9sYOHBg2xQbw1pynceMGWMMGTLEKCoqMvbs2WNs2bLF2LRpUxtWHXvMXufi4mLD6XQaixYtMj777DOjuLjYuOCCC4xrrrmmjSuPLatXrzbmzJljvPrqq4Yk47XXXgt5frR+DxJuTLjooouMiRMnNjnWu3dvY9asWUHPnzlzptG7d+8mx+644w5j6NChrVajFZi9zsH07dvXmDdvXqRLs5SWXuecnBzj3nvvNebOnUu4CYPZ6/w///M/RlJSknHo0KG2KM8yzF7nP/7xj0aPHj2aHHvssceMrl27tlqNVhNOuInW70FuS4Wprq5OJSUlys7ObnI8OztbmzdvDvqe9957L+D8yy+/XFu3btWPP/7YarXGspZcZ38NDQ06cuSITjvttNYo0RJaep2XLVum3bt3a+7cua1doiW05Dq/8cYbysjI0B/+8AedffbZOu+88zRjxgx9//33bVFyTGrJdc7KytLevXu1evVqGYahL7/8Uq+88opGjx7dFiXbRrR+D9pu48yWqqyslMfjUUpKSpPjKSkpOnDgQND3HDhwIOj59fX1qqysVOfOnVut3ljVkuvs709/+pO+/fZb3Xjjja1RoiW05Drv2rVLs2bNUnFxsdxufnSEoyXX+bPPPtPGjRuVkJCg1157TZWVlZo0aZIOHz7MuJtmtOQ6Z2VlacWKFcrJydEPP/yg+vp6jRkzRo8//nhblGwb0fo9SOfGJIfD0eS5YRgBx37q/GDH0ZTZ6+y1cuVK3X///SosLNSZZ57ZWuVZRrjX2ePx6Oabb9a8efN03nnntVV5lmHm33NDQ4McDodWrFihiy66SFdeeaUWLlyo5557ju7NTzBznXfs2KEpU6bo97//vUpKSvS3v/1Ne/bs0cSJE9uiVFuJxu9B/vwKU3JyslwuV8BfAQcPHgxIpV5nnXVW0PPdbrdOP/30Vqs1lrXkOnsVFhZq/Pjxevnll3XppZe2Zpkxz+x1PnLkiLZu3arS0lJNnjxZ0tFfwoZhyO12a82aNbr44ovbpPZY0pJ/z507d9bZZ5+tpKQk37E+ffrIMAzt3btX5557bqvWHItacp3z8vI0bNgw/e53v5MkDRgwQB07dtTw4cP1wAMP0FmPkGj9HqRzE6a4uDilp6erqKioyfGioiJlZWUFfU9mZmbA+WvWrFFGRobatWvXarXGspZcZ+lox+bWW2/VCy+8wD3zMJi9zomJidq+fbu2bdvme0ycOFHnn3++tm3bpiFDhrRV6TGlJf+ehw0bpv3796umpsZ37NNPP5XT6VTXrl1btd5Y1ZLr/N1338npbPor0OVySTrWWcCJi9rvwVYdrmwx3qmGS5cuNXbs2GFMmzbN6Nixo/H5558bhmEYs2bNMsaOHes73zsFbvr06caOHTuMpUuXMhU8DGav8wsvvGC43W7jySefNCoqKnyPb775JlrfQkwwe539MVsqPGav85EjR4yuXbsav/71r41//vOfxvr1641zzz3XmDBhQrS+hZhg9jovW7bMcLvdRkFBgbF7925j48aNRkZGhnHRRRdF61uICUeOHDFKS0uN0tJSQ5KxcOFCo7S01Dfl/mT5PUi4MenJJ580unfvbsTFxRkXXnihsX79et9rt9xyizFixIgm569bt84YPHiwERcXZ5xzzjnG4sWL27ji2GTmOo8YMcKQFPC45ZZb2r7wGGP23/PxCDfhM3udd+7caVx66aVG+/btja5duxq5ubnGd99918ZVxx6z1/mxxx4z+vbta7Rv397o3Lmz8dvf/tbYu3dvG1cdW959992QP29Plt+DDsOg/wYAAKyDMTcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAAMBSCDcAYt5XX32ls846Sw8++KDv2JYtWxQXF6c1a9ZEsTIA0cDGmQAsYfXq1brmmmu0efNm9e7dW4MHD9bo0aOVn58f7dIAtDHCDQDLuOuuu/T222/r5z//uT766CN98MEHSkhIiHZZANoY4QaAZXz//ffq16+fysvLtXXrVg0YMCDaJQGIAsbcALCMzz77TPv371dDQ4O++OKLaJcDIEro3ACwhLq6Ol100UUaNGiQevfurYULF2r79u1KSUmJdmkA2hjhBoAl/O53v9Mrr7yijz76SKeccopGjhypTp066c0334x2aQDaGLelAMS8devWKT8/X88//7wSExPldDr1/PPPa+PGjVq8eHG0ywPQxujcAAAAS6FzAwAALIVwAwAALIVwAwAALIVwAwAALIVwAwAALIVwAwAALIVwAwAALIVwAwAALIVwAwAALIVwAwAALIVwAwAALOX/A9ZFrSQNrb8NAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "my_model.settings.traps_element_type = \"DG\"\n", + "my_model.initialise()\n", + "my_model.run()\n", + "\n", + "\n", + "data = np.genfromtxt(\"task13/trapped_concentration_multi.txt\", delimiter=\",\", skip_header=1)\n", + "\n", + "sorted_data = data[data[:, 0].argsort()]\n", + "plt.plot(sorted_data[:, 0], sorted_data[:, 1])\n", + "\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"trapped concentration\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now we can see the oscillations have disappeared! 🎉\n", + "\n", + "**Note:** The **new** weird behaviour at the interface is due to the fact that ``TXTExport`` projects the solution onto a new DG functionspace and this projection isn't perfect. This will not show up in Paraview with ``XDMFExport``" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Traps non homogeneously distributed\n", + "\n", + "This phenomenon occurs for all discontinuities, even in single material cases.\n", + "To illustrate this, let's consider a case with one material on $\\Omega = [0, 1]$ and a trap with a density of 1 for $x \\in [0, 5]$ and 0 otherwise.\n", + "\n", + "We do this using ``sympy.Piecewise``." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defining initial values\n", + "Defining variational problem\n", + "Defining source terms\n", + "Defining boundary conditions\n", + "Solving steady state problem...\n", + "Solved problem in 0.00 s\n" + ] + } + ], + "source": [ + "import festim as F\n", + "import numpy as np\n", + "import sympy as sp\n", + "\n", + "my_model = F.Simulation()\n", + "\n", + "vertices = np.concatenate([\n", + " np.linspace(0, 0.5, 50),\n", + " np.linspace(0.5, 1, 50),\n", + "])\n", + "my_model.mesh = F.MeshFromVertices(vertices)\n", + "my_model.materials = F.Material(id=1, D_0=1, E_D=0)\n", + "\n", + "my_model.traps = F.Trap(\n", + " k_0=1,\n", + " E_k=0,\n", + " p_0=1,\n", + " E_p=0,\n", + " density=sp.Piecewise((1, F.x < 0.5), (0, True)),\n", + " materials=my_model.materials[0],\n", + ")\n", + "\n", + "my_model.T = 300\n", + "\n", + "my_model.boundary_conditions = [F.DirichletBC(surfaces=[1, 2], value=1, field=\"solute\")]\n", + "\n", + "my_model.settings = F.Settings(\n", + " absolute_tolerance=1e-10,\n", + " relative_tolerance=1e-10,\n", + " transient=False,\n", + ")\n", + "\n", + "my_model.exports = [F.TXTExport(filename=\"task13/trapped_concentration.txt\", field=1)]\n", + "\n", + "my_model.initialise()\n", + "my_model.run()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Again we can plot the trapped concentration profile and observe similar oscilliations." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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I0eOlCRdd911fu2eJdxutzs0lQFAgLxLwZlQDEBBhJv33nuvOeoAgKDF1h2cyT43AKQgwo2ZXYgBoCXU99wwLAUgyE38jh49queee047d+6UzWZT3759dccddygpKSnU9QHAObGJHwBfpicUb926VT179tTChQt15MgRlZWVKTc3Vz179tRHH33UHDUCwFk57CwFB1DPdM/NjBkzNGbMGD377LNyOGpfXl1drcmTJ2v69OnasGFDyIsEgLOh5waAL9PhZuvWrX7BRpIcDodmzZqljIyMkBYHAIFwcCo4AB+mh6USExP9dg322Lt3r9q1axeSogDADAdLwQH4MB1uxo0bp0mTJik/P1979+7Vvn379Morr2jy5MlnPJkbAJqT5/gFloIDkIIYlnriiSdks9k0ceJEVVdXS5JiY2N111136bHHHgt5gQBwLiwFB+DLdLhxOp1avHixcnJytGvXLhmGoV69eqlNmzbNUR8AnBOb+AHwZTrclJeXy+12q3379urfv7+3/ciRI3I4HBxGCaDF+R6/4DkKBkD0Mj3n5mc/+5leeeWVRu1/+ctf9LOf/SwkRQGAGZ4JxRLLwQEEEW62bNmiESNGNGr/3ve+py1btoSkKAAww7MUXGLFFIAgwk1lZaV3IrGv06dP6+TJkyEpCgDM8KyWkui5ARBEuLnqqqu0dOnSRu1PP/200tPTQ1IUAJjh13PDpGIg6pmeUPzII49o5MiR+vjjj3XddddJktauXat//OMfWrNmTcgLBIBz8Z1zw3JwAKZ7boYNG6b3339fKSkp+stf/qK//e1v6tWrlz755BMNHz68OWoEgLOy2Wx+K6YARDfTPTeSNGjQIL300kuhrgUAgmaPscldYxBuAJjvuQGA1ijW03PjZlgKiHaEGwCWwLAUAA/CDQBL4AgGAB6EGwCWwOGZADwINwAswbMcnE38AAS0WurHP/5xwG+4atWqoIsBgGA56oalTjMsBUS9gHpukpKSvI/ExEStXbtWW7du9T5fVFSktWvXKikpqdkKBYCzoecGgEdAPTfLly/3/vd9992nsWPH6umnn5bdbpckud1uTZ06VYmJic1TJQCcg+cIBpaCAzA952bZsmWaOXOmN9hIkt1uV3Z2tpYtWxbS4gAgUPa6wzNZCg7AdLiprq7Wzp07G7Xv3LlTNaxSABAmsXZWSwGoZfr4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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "data = np.genfromtxt(\"task13/trapped_concentration.txt\", delimiter=\",\", skip_header=1)\n", + "\n", + "sorted_data = data[data[:, 0].argsort()]\n", + "plt.plot(sorted_data[:, 0], sorted_data[:, 1])\n", + "\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"trapped concentration\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "By changing the trap element type to DG, we can greatly mitigate the Gibbs phenomenon. As before, the DG projection in ``TXTExport`` isn't perfect and one should use ``XDMFExport`` for a cleaner plot." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defining initial values\n", + "Defining variational problem\n", + "Defining source terms\n", + "Defining boundary conditions\n", + "Solving steady state problem...\n", + "Solved problem in 0.00 s\n" + ] + }, + { + "data": { + "image/png": "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CuEGAADYiqW3X7BC84bMbrfb4koAAECgmr+3A7mxwmkXburq6iRJCQkJFlcCAADMqqurU2xsbLvHnHb3lmpqatKnn36q3r17y+FwBPW13W63EhISVFFRwX2rOhHXuWtwnbsG17nrcK27RmddZ8MwVFdXp379+iksrP1ZNaddz01YWJgGDBjQqe8RExPD/zhdgOvcNbjOXYPr3HW41l2jM67zyXpsmjGhGAAA2ArhBgAA2ArhJoiioqJ03333KSoqyupSbI3r3DW4zl2D69x1uNZdoztc59NuQjEAALA3em4AAICtEG4AAICtEG4AAICtEG4AAICtEG5MKigoUFJSkqKjo5WSkqKSkpJ2j9+8ebNSUlIUHR2t888/X08++WQXVRrazFzn9evX66qrrtLZZ5+tmJgYpaWl6bXXXuvCakOX2b/PzbZt26aIiAiNGjWqcwu0CbPX2ePxaOHChUpMTFRUVJQGDRqklStXdlG1ocvsdV6zZo1Gjhypnj17qm/fvrrllltUU1PTRdWGpi1btuj73/+++vXrJ4fDoZdffvmk51jyPWggYM8995wRGRlpPPXUU8bu3buNO+64w+jVq5fxySeftHr8vn37jJ49exp33HGHsXv3buOpp54yIiMjjXXr1nVx5aHF7HW+4447jEceecT429/+Znz44YdGTk6OERkZabz77rtdXHloMXudm33xxRfG+eefb2RkZBgjR47smmJDWEeu8+TJk43LLrvMKC4uNvbv32/s2LHD2LZtWxdWHXrMXueSkhIjLCzMWLp0qbFv3z6jpKTEuPjii43rrruuiysPLUVFRcbChQuNF1980ZBkvPTSS+0eb9X3IOHGhEsvvdTIysryaxsyZIixYMGCVo+fP3++MWTIEL+2n//858aYMWM6rUY7MHudWzNs2DBj0aJFwS7NVjp6nTMzM4177rnHuO+++wg3ATB7nf/yl78YsbGxRk1NTVeUZxtmr/NvfvMb4/zzz/dre+yxx4wBAwZ0Wo12E0i4sep7kGGpADU0NKi0tFQZGRl+7RkZGdq+fXur57z11lstjr/66qu1c+dOHT16tNNqDWUduc4nampqUl1dnfr06dMZJdpCR6/zqlWrtHfvXt13332dXaItdOQ6v/LKK0pNTdWvf/1r9e/fXxdeeKHmzZunw4cPd0XJIakj1zk9PV0HDhxQUVGRDMPQZ599pnXr1mnSpEldUfJpw6rvwdPuxpkdVV1dLa/Xq/j4eL/2+Ph4VVZWtnpOZWVlq8c3Njaqurpaffv27bR6Q1VHrvOJfvvb3+rLL7/UlClTOqNEW+jIdf7oo4+0YMEClZSUKCKCXx2B6Mh13rdvn7Zu3aro6Gi99NJLqq6u1m233aZDhw4x76YNHbnO6enpWrNmjTIzM3XkyBE1NjZq8uTJ+t3vftcVJZ82rPoepOfGJIfD4ffcMIwWbSc7vrV2+DN7nZutXbtW999/vwoLC3XOOed0Vnm2Eeh19nq9mjp1qhYtWqQLL7ywq8qzDTN/n5uamuRwOLRmzRpdeumluvbaa5WXl6enn36a3puTMHOdd+/erdmzZ+tXv/qVSktL9de//lX79+9XVlZWV5R6WrHie5B/fgUoLi5O4eHhLf4VUFVV1SKVNjv33HNbPT4iIkJnnXVWp9UayjpynZsVFhZqxowZeuGFFzRhwoTOLDPkmb3OdXV12rlzp8rKyjRr1ixJx76EDcNQRESENmzYoCuuuKJLag8lHfn73LdvX/Xv31+xsbG+tqFDh8owDB04cEAXXHBBp9YcijpynXNzczV27FjdddddkqQRI0aoV69eGjdunB544AF61oPEqu9Bem4C5HQ6lZKSouLiYr/24uJipaent3pOWlpai+M3bNig1NRURUZGdlqtoawj11k61mNz880369lnn2XMPABmr3NMTIx27dql9957z/fIysrSRRddpPfee0+XXXZZV5UeUjry93ns2LH69NNPVV9f72v78MMPFRYWpgEDBnRqvaGqI9f5q6++UliY/1dgeHi4pG96FnDqLPse7NTpyjbTvNRwxYoVxu7du405c+YYvXr1Mj7++GPDMAxjwYIFxrRp03zHNy+Bmzt3rrF7925jxYoVLAUPgNnr/OyzzxoRERHGE088YbhcLt/jiy++sOojhASz1/lErJYKjNnrXFdXZwwYMMD48Y9/bPzzn/80Nm/ebFxwwQXGzJkzrfoIIcHsdV61apURERFhFBQUGHv37jW2bt1qpKamGpdeeqlVHyEk1NXVGWVlZUZZWZkhycjLyzPKysp8S+67y/cg4cakJ554wkhMTDScTqdxySWXGJs3b/b97KabbjIuv/xyv+M3bdpkjB492nA6ncZ5551nLFu2rIsrDk1mrvPll19uSGrxuOmmm7q+8BBj9u/z8Qg3gTN7nffs2WNMmDDB6NGjhzFgwAAjOzvb+Oqrr7q46tBj9jo/9thjxrBhw4wePXoYffv2NX76058aBw4c6OKqQ8ubb77Z7u/b7vI96DAM+t8AAIB9MOcGAADYCuEGAADYCuEGAADYCuEGAADYCuEGAADYCuEGAADYCuEGAADYCuEGAADYCuEGAADYCuEGAADYCuEGQMj7/PPPde655+qhhx7yte3YsUNOp1MbNmywsDIAVuDeUgBsoaioSNddd522b9+uIUOGaPTo0Zo0aZLy8/OtLg1AFyPcALCN22+/Xa+//rq+/e1v6/3339c777yj6Ohoq8sC0MUINwBs4/Dhw0pOTlZFRYV27typESNGWF0SAAsw5waAbezbt0+ffvqpmpqa9Mknn1hdDgCL0HMDwBYaGhp06aWXatSoURoyZIjy8vK0a9cuxcfHW10agC5GuAFgC3fddZfWrVun999/X2eccYbGjx+v3r1769VXX7W6NABdjGEpACFv06ZNys/P1zPPPKOYmBiFhYXpmWee0datW7Vs2TKrywPQxei5AQAAtkLPDQAAsBXCDQAAsBXCDQAAsBXCDQAAsBXCDQAAsBXCDQAAsBXCDQAAsBXCDQAAsBXCDQAAsBXCDQAAsBXCDQAAsBXCDQAAsJX/D4PeY4WRfx9zAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "my_model.settings.traps_element_type = \"DG\"\n", + "my_model.initialise()\n", + "my_model.run()\n", + "\n", + "data = np.genfromtxt(\"task13/trapped_concentration.txt\", delimiter=\",\", skip_header=1)\n", + "\n", + "sorted_data = data[data[:, 0].argsort()]\n", + "\n", + "plt.plot(sorted_data[:, 0], sorted_data[:, 1])\n", + "\n", + "plt.xlabel(\"x\")\n", + "plt.ylabel(\"trapped concentration\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Conclusion\n", + "\n", + "Now you may wonder, why not use DG elements all the time then?\n", + "\n", + "Well the thing with DG is that it duplicates degrees of freedom on the edges. Here's an example on three triangular cells with CG elements vs DG elements (order 4).\n", + "\n", + "![Alt text](https://canada1.discourse-cdn.com/free1/uploads/festim/original/1X/2e63978aac2a2f81a3e73e9612b4ad7904b88aaa.png)\n", + "\n", + "This means that problems using DG elements have overall more degrees of freedom than when using CG.\n", + "Therefore, since most problems are mono-material, we decided to set the defaults to CG." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "festim-workshop", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/tasks/task15.ipynb b/tasks/task15.ipynb new file mode 100644 index 0000000..3e0f61e --- /dev/null +++ b/tasks/task15.ipynb @@ -0,0 +1,386 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Kinetic surface model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This task will show how to include the kinetics surface model in FESTIM simulations. \n", + "\n", + "We will study a 1D transient case with one trap, uniformly distributed over the domain.\n", + "\n", + "The traps are assumed to be pre-filled with hydrogen up to 0.1 at.%, whereas the solute hydrogen is assumed to be absent. Then, the left sample's surface will be exposed to an impulse heat load with nanosecond duration. Moreover, we will assume that the sample is exposed to a low-energy hydrogen flux of $10^{19}~\\mathrm{atoms/m}^{2}$.\n", + "\n", + "**Note:** Current implementation of the kinetic surface model supports only 1D simulations." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## FESTIM model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To start with, we will define a mesh, a material, and traps. For material, we will use the properties of tungsten. " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import festim as F\n", + "import h_transport_materials as htm\n", + "import numpy as np\n", + "import sympy as sp\n", + "\n", + "# Bulk parameters\n", + "n_W = 6.31e28 # W atomic density, m^-3\n", + "lambda_W = n_W ** (-1 / 3) # characteristic dist\n", + "\n", + "# Thermal properties\n", + "rho_W = 19250 # W mass density, kg/m^3\n", + "kappa_W = 170 # W thermal conductivity, W/m/K\n", + "Cp_W = 130 # W specific heat capacity, J/kg/K\n", + "\n", + "D = (\n", + " htm.diffusivities.filter(material=\"tungsten\")\n", + " .filter(isotope=\"h\")\n", + " .filter(author=\"fernandez\")[0]\n", + ")\n", + "\n", + "my_model = F.Simulation()\n", + "\n", + "# Mesh\n", + "vertices = np.concatenate(\n", + " [np.linspace(0, 1e-6, num=1000), np.linspace(1e-6, 100e-6, num=500)]\n", + ")\n", + "\n", + "my_model.mesh = F.MeshFromVertices(vertices)\n", + "\n", + "# Materials\n", + "my_model.materials = F.Material(\n", + " id=1,\n", + " D_0=D.pre_exp.magnitude,\n", + " E_D=D.act_energy.magnitude,\n", + " rho=rho_W,\n", + " thermal_cond=kappa_W,\n", + " heat_capacity=Cp_W,\n", + ")\n", + "\n", + "# Traps\n", + "my_model.traps = F.Trap(\n", + " k_0=D.pre_exp.magnitude / (n_W * 6.6e-12**2),\n", + " E_k=D.act_energy.magnitude,\n", + " p_0=1e13,\n", + " E_p=1.25,\n", + " density=1e-2 * n_W,\n", + " materials=my_model.materials[0],\n", + ")\n", + "\n", + "# Initial conditions\n", + "my_model.initial_conditions = [F.InitialCondition(field=\"1\", value=1e-2 * n_W)]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For this task, we will consider a transient heat transfer problem with initial temperature equal to 300 K. Material temperature will be governed by an impulse heat load on the left surface and fixed temperature (300 K) on the right. To set an impulse load, we choose a shifted Gauss distribution." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "def heat_pulse(t):\n", + " # Heat flux impulse\n", + " sigma = 30e-9\n", + " t0 = 100e-9\n", + " return 10e3 / np.sqrt(2 * np.pi) / sigma * sp.exp(-((t - t0) ** 2) / 2 / sigma**2)\n", + "\n", + "\n", + "# Heat transfer\n", + "my_model.T = F.HeatTransferProblem(\n", + " absolute_tolerance=1e-5,\n", + " relative_tolerance=1e-7,\n", + " initial_condition=300,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In FESTIM, the kinetic surface model can be included by applying the `SurfaceKinetics` boundary conditions for solute hydrogen. This model introduces new species called \"adsorbed hydrogen\" and dynamically updates their surface concentration ($c_{\\mathrm{s}}$ in $\\mathrm{m}^{-2}$) based on the flux balance of atoms coming/leaving the surface. Please, see the corresponding [theory section](https://festim.readthedocs.io/en/latest/theory.html#kinetic-surface-model) for details.\n", + "\n", + "To set this boundary condition, we need to specify the rate constant $k_{\\mathrm{sb}}$ for the surface-to-subsurface transition (in ${\\mathrm{s}}^{-1}$), the rate constant $k_{\\mathrm{bs}}$ for the subsurface-to-surface transition (in ${\\mathrm{s}}^{-1}$), characteristic distance between two iterstitial sites $\\lambda_{\\mathrm{IS}}$ (in m), surface concentration of adsorption sites $n_{\\mathrm{surf}}$ (in $\\mathrm{m}^{-2}$), bulk concentration of interstitial sites $n_{\\mathrm{IS}}$ (in $\\mathrm{m}^{-3}$), the net flux from the vacuum to the surface $J_{\\mathrm{vs}}$ (in $\\mathrm{m}^{-2}\\mathrm{s}^{-1}$). Rate constants and the flux $J_{\\mathrm{vs}}$ can take a float or a function of adsorbed hydrogen concentration, temperature, and other parameters such as time.\n", + "\n", + "In this task, we will consider hydrogen adsorption on the left surface with flux $J_{\\mathrm{ads}}$ due to atomic exposure and hydrogen desorption due to recombination $J_{\\mathrm{des}}$. On the right surface, we will set the hydrogen concentration to zero." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "import fenics as f\n", + "\n", + "n_IS = 6 * n_W # Atomic density of interstitial sites, m^-3\n", + "lambda_W = 110e-12 # Characteristic distance between two interstitial sites, m\n", + "n_surf = n_W ** (2 / 3) # Concentration of adsorption sites, m^-2\n", + "\n", + "\n", + "def J_vs(T, surf_conc):\n", + " # Net flux from the vacuum onto the surface\n", + "\n", + " J_ads = 1e23 * (1 - surf_conc / n_surf) # adsorption flux\n", + "\n", + " J_des = 2 * 1e13 * surf_conc**2 / n_surf * f.exp(-1.2 / F.k_B / T)\n", + "\n", + " return J_ads - J_des\n", + "\n", + "\n", + "def k_bs(T, surf_conc):\n", + " return 1e13 * f.exp(-0.2 / F.k_B / T)\n", + "\n", + "\n", + "def k_sb(T, surf_conc):\n", + " return 1e13 * f.exp(-1.5 / F.k_B / T)\n", + "\n", + "\n", + "my_model.boundary_conditions = [\n", + " F.FluxBC(field=\"T\", surfaces=1, value=heat_pulse(F.t)),\n", + " F.DirichletBC(field=\"T\", surfaces=2, value=300),\n", + " F.SurfaceKinetics(\n", + " k_bs=k_bs,\n", + " k_sb=k_sb,\n", + " n_surf=n_surf,\n", + " n_IS=n_IS,\n", + " J_vs=J_vs,\n", + " lambda_IS=lambda_W,\n", + " surfaces=1,\n", + " initial_condition=0,\n", + " ),\n", + " F.DirichletBC(surfaces=2, field=0, value=0),\n", + "]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now, we can set exports and run the simulation. To export the hydrogen surface concentration $c_\\mathrm{s}$, we will use a dedicated derived quantity class `AdsorbedHydrogen`." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defining variational problem heat transfers\n", + "Defining initial values\n", + "Defining variational problem\n", + "Defining source terms\n", + "Defining boundary conditions\n", + "Time stepping...\n", + "0.2 % 9.5e-10 s Elapsed time so far: 0.2 s\r" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/vvkulagin/anaconda3/envs/festim-env/lib/python3.11/site-packages/festim/generic_simulation.py:385: UserWarning: may not work as intended for cartesian meshes\n", + " warnings.warn(\n", + "/home/vvkulagin/anaconda3/envs/festim-env/lib/python3.11/site-packages/festim/generic_simulation.py:385: UserWarning: may not work as intended for cartesian meshes\n", + " warnings.warn(\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "100.0 % 5.0e-07 s Elapsed time so far: 8.3 s\n" + ] + } + ], + "source": [ + "derived_quantities = F.DerivedQuantities(\n", + " [\n", + " F.AdsorbedHydrogen(surface=1),\n", + " F.TotalSurface(field=\"T\", surface=1),\n", + " F.ThermalFlux(surface=1),\n", + " F.PointValue(field=0, x=0),\n", + " ],\n", + " show_units=True,\n", + ")\n", + "\n", + "my_model.exports = [derived_quantities]\n", + "\n", + "my_model.settings = F.Settings(\n", + " absolute_tolerance=1e14,\n", + " relative_tolerance=1e-10,\n", + " final_time=5e-7,\n", + ")\n", + "\n", + "my_model.dt = F.Stepsize(\n", + " initial_value=1e-10,\n", + " stepsize_change_ratio=1.1,\n", + " max_stepsize=lambda t: 5e-10 if t < 1e-7 else 1e-7,\n", + " dt_min=1e-12,\n", + ")\n", + "\n", + "my_model.initialise()\n", + "my_model.run()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Results" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can plot the temporal dependencies of the heat load and the desorption flux from the surface. Most of hydrogen is being desorbed after the peak of the heat flux." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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0yM7wEHWeg2Cfu5OGN7VF/vOFWB7chaeienWau9NREStz+pvmNzcXBgMhkYdLi4utqyZ7ISmugbxZwsAADMGdGj1958eaRqAvD0pC1xuiYiobbMq0MybN69J3Uf3338/F6Jrh3afyoNOb0AXPzf0CGj9v//xvQLg7CjDxaJKHLusvvULiIjIblkVaDZs2AB3d/dGX79u3Tr4+LTe+AkSh19TcgAAk/sKswGoq8IBMb38LWohIqK2ibOcqEVoqmuw71whAGByhHA7mk/uGwAA+OV4DrudiIjasCYHmqqqKmRlXT8V9uTJkzYpiNqGq7ubuvk3vjXP1kZ184OzowxZpVVIyWK3ExFRW9WkQPP999+ja9eumDx5MiIiInDo0CHzcw888IDNiyP7JXR3Uz1nuQy39/QDAPzCbiciojarSYHmzTffRGJiIpKTk7FhwwYsWLAAmzdvBgA255OZWLqb6k3qY6rh1xR2OxERtVVNWoempqYG/v6mQZYDBw7Evn37MH36dKSmprbohoNkX8TS3VRvTA9fODlKkVlchRNZGvQNVgldEhER2ViTWmj8/Pxw/Phx82MvLy/s2rULp0+ftjhP7duvKbkAgEkCdzfVc5E7YEx3U7fTbydzBa6GiIhaQpMCzaZNm+Dn52dxTi6XY8uWLdi7d69NCyP7VKXT449U02J6E3sHCFzNFeN7m1oWd53KE7gSIiJqCU0KNMHBwQgIuPIllZt75bfdYcOG2a4qslt/phaiusaADh7O6BkofHdTvTHd/SCTSnA2rwwZRZVCl0NERDbWrHVoxo8fb6s6qI3YfdrUAhLT009U46o8XOQY3MkLALDzFLudiIjammYFGs4YoasZDEbsPp0PAOYVesVkXC92OxERtVXNCjQt9Rv4vn37MGXKFAQFBUEikWD79u23fE18fDwGDBgAhUKBLl26YOPGjddds3btWnTq1AlOTk6IiorC4cOHbV98O3bscikKy7VwUzggKsxb6HKuUx9o/rpYjJIKncDVEBGRLYly64OKigr069cPa9eubdT16enpmDx5MsaMGYPk5GQ888wzePjhh/Hbb7+Zr/nmm2+waNEivPrqqzh69Cj69euHCRMmID8/v6U+RrtT3900qrsv5A7i+6cV4uWCHgHuMBiB38/w752IqC0R37cOgNjYWLz55puYPn16o65fv349wsLC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UhYYGAgAKCoqAgAcP34cu3btsozJ0Wg0iIyMBABcuHChWfuvv0xWv6/x48cjMzMTXbt2xRtvvIFt27bd/wESkd1xUDARyc7T09PqtSRJVmX1s6fMZjMAQK/XY9iwYXjvvfcatRUcHGyT/dfvq2fPnsjJycHmzZvxww8/4KWXXkJCQgLWrVt33/shIvthQkNELqdnz5749ttvERYWBqXS/n/GtFotkpKSkJSUhBdffBHPPPMMSktLObuJyInwkhMRuZwpU6agtLQUo0aNwpEjR3DhwgVs3boVEyZMgMlksum+5s+fj6+//hpnzpzB2bNnsXbtWgQFBcHf39+m+yGi5mFCQ0QuJyQkBD/++CNMJhMGDx6MHj16IDk5Gf7+/lAobPtnzdfXF++//z569eqF3r174+LFi9i0aZPN90NEzSMJuW7ZSUTkQGlpaUhOTrbL4wl2796Np59+GlevXuWZGyKZ8L8YRNRilJeXQ6PR4O2337ZZm48++igSExNt1h4RPRieoSGiFqGyshKFhYUAAH9/f+h0Opu0m5ubi9raWgBAp06deCmKSCZMaIiIiMjl8b8SRERE5PKY0BAREZHLY0JDRERELo8JDREREbk8JjRERETk8pjQEBERkctjQkNEREQujwkNERERubz/A0UY5RrNFwZlAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "fig, ax = plt.subplots(3, 1, figsize=(6, 8), sharex=True)\n", + "\n", + "time = np.array(derived_quantities.t)\n", + "surf_conc = np.array(derived_quantities[0].data)\n", + "T = np.array(derived_quantities[1].data)\n", + "Heat_flux = np.array(derived_quantities[2].data)\n", + "\n", + "J_des = 2e13 * surf_conc**2 / n_surf * np.exp(-1.1 / F.k_B / T)\n", + "\n", + "ax[0].plot(time / 1e-9, Heat_flux)\n", + "ax[0].set_ylabel(\"Heat flux [W m$^{-2}$]\")\n", + "ax[0].tick_params(bottom=False, labelbottom=False)\n", + "\n", + "ax[1].plot(time / 1e-9, T)\n", + "ax[1].set_ylabel(\"Temperature [K]\")\n", + "ax[1].tick_params(bottom=False, labelbottom=False)\n", + "\n", + "ax[2].plot(time / 1e-9, J_des)\n", + "ax[2].set_ylabel(r\"Desorption flux [m$^{-2}$s$^{-1}$]\")\n", + "ax[2].set_xlabel(\"Time [ns]\")\n", + "ax[2].set_xlim(0, 500)\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Additionally, we can plot temporal evolution of the adsorbed hydrogen concentration and its derivative. We will also show time-dependencies of hydrogen fluxes from the surface to the subsurface ($J_{\\mathrm{sb}}$) and vice-versa ($J_{\\mathrm{bs}}$). Near the heat flux peak, hydrogen surface concentration evolves quickly, but it approaches quasi-equilibrium value after the end of the desorption phase (i.e. temporal derivative approaches zero)." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAK2CAYAAACyxL3TAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAACeVUlEQVR4nOzdd3xT9f4/8NdJmqZ70wUFyh5taVmlKENFEHHg4HJdICp+L4KKOLkqV9SfFRXQe/WKCxG8IPeqoFe9yJANgkBrC0LZbWmbls50Jmlyfn+kCQ1toUmTk9HX8/HIo83JGe9yufbFZwqiKIogIiIi8hAyZxdAREREZE8MN0RERORRGG6IiIjIozDcEBERkUdhuCEiIiKPwnBDREREHoXhhoiIiDwKww0RERF5FIYbIiIi8igMN0RERORRGG7sYNeuXbj11lsRGxsLQRCwceNGq65vaGjAgw8+iMTERHh5eWHq1KktznnwwQchCEKL1+DBg+3zQxAREXkIhhs7qK2txZAhQ/DBBx/YdL1er4evry+eeOIJTJgwodVz3nvvPRQVFZlf+fn5CAsLw7Rp0zpSOhERkcfxcnYBnmDy5MmYPHlym59rNBq8+OKLWLduHSorK5GQkIAlS5Zg/PjxAAB/f398+OGHAIC9e/eisrKyxT2Cg4MRHBxsfr9x40ZUVFRg1qxZdv1ZiIiI3B1bbiQwb9487N+/H1999RWysrIwbdo03HTTTTh16pTN9/zss88wYcIE9OjRw46VEhERuT+23DhYXl4ePv/8c+Tl5SE2NhYA8Mwzz2DTpk34/PPP8cYbb1h9z8LCQvzvf//D2rVr7V0uERGR22O4cbDs7Gzo9Xr069fP4rhGo0F4eLhN9/ziiy8QEhLS6sBjIiKizo7hxsFqamogl8tx+PBhyOVyi88CAgKsvp8oili5ciUeeOABeHt726tMIiIij8Fw42ApKSnQ6/UoKSnBmDFjOny/nTt34vTp03j44YftUB0REZHnkSTcfP/991Zfc+ONN8LX19cB1dhfTU0NTp8+bX5/7tw5ZGZmIiwsDP369cN9992HGTNmYOnSpUhJScHFixexbds2JCUlYcqUKQCAP/74A1qtFuXl5aiurkZmZiYAIDk52eJZn332GVJTU5GQkCDVj0dERORWBFEURUc/RCazblKWIAg4deoUevXq5aCK7GvHjh247rrrWhyfOXMmVq1aBZ1Oh9dffx2rV69GQUEBIiIiMGrUKCxevBiJiYkAgJ49eyI3N7fFPZr/z1NVVYWYmBi89957mD17tuN+ICIiIjcmWbhRqVSIjIxs1/mBgYH4/fff3SbcEBERkeuQZJ2bmTNnWtXFdP/99yMoKMiBFREREZGnkqTlhoiIiEgqnC1lI4PBgMLCQgQGBkIQBGeXQ0RE5DZEUUR1dTViY2OtHpfbHg4PN/X19SgvL0fXrl0tjh87dsytd7QuLCxEXFycs8sgIiJyW/n5+ejWrZvd7+vQbqmvv/4a8+fPR0REBAwGAz755BOkpqYCAIYOHYojR4446tEOV1VVhZCQEOTn53N8EBERkRXUajXi4uJQWVlpsSm0vTi05eb111/H4cOHERUVhcOHD2PmzJn461//invvvRfuPtTH1BUVFBTEcENERGQDRw3rcOhsKZ1Oh6ioKADAsGHDsGvXLnz00Ud49dVX7foDpaenY8SIEQgMDERkZCSmTp2KnJycK16zatUqCIJg8fLx8bFbTUREROQcDg03kZGRyMrKMr8PCwvDli1bcPz4cYvjHbVz507MnTsXv/76K7Zs2QKdToeJEyeitrb2itcFBQWhqKjI/GptET0iIiJyLw7tllqzZg28vCwf4e3tjXXr1mHevHl2e86mTZss3q9atQqRkZE4fPgwxo4d2+Z1giAgOjrabnUQERGR8zm05aZbt24W4UGlUpm/v+aaaxz23KqqKgDGlqIrqampQY8ePRAXF4fbb78dx44da/NcjUYDtVpt8SLpiaKIRr3B2WUQEZELk2SFYpOJEyc6/BkGgwHz58/HNddcc8XNJfv374+VK1fiu+++w5dffgmDwYDRo0fjwoULrZ6fnp6O4OBg84vTwKWXo6rG9Ut3ov/Lm7Dou6MwGNx7UDoRETmGpCsUJyYmIjs726HPmDNnDv73v/9hz549Vs2d1+l0GDhwIO655x689tprLT7XaDTQaDTm96ZpbFVVVZwtJQGd3oBJy3fhbOmlcVTPTOyHedf3dWJVRERkC7VajeDgYIf9DpW05cbRK/nOmzcPP/zwA7Zv3271okAKhQIpKSk4ffp0q58rlUrztG9O/5bepqMqnC2tRUSAN56d1B8A8MH2MyipbnByZURE5GokDTeOIooi5s2bhw0bNuCXX35BfHy81ffQ6/XIzs5GTEyMAyqkjtqYUQAA+POI7nhsfG8kx4WgXqfHF/vOO7cwIiJyOR4RbubOnYsvv/wSa9euRWBgIFQqFVQqFerr683nzJgxAwsXLjS/f/XVV7F582acPXsWR44cwf3334/c3Fw88sgjzvgR6AoqarXYefIiAGBqSiwEQcCjY3sBANb/dgE6DjAmIqJmJA03crncIff98MMPUVVVhfHjxyMmJsb8Wr9+vfmcvLw8FBUVmd9XVFRg9uzZGDhwIG6++Wao1Wrs27cPgwYNckiNZLv9Z8vQaBDRPyoQfSIDAQA3DopCRIASpTUa7My56OQKiYjIlUi6K3hGRoZD7tueMdE7duyweL98+XIsX77cIfWQfR08Vw4AGNXr0tR+hVyGW5JisGrfefyUXYQJg6KcVR4REbkYScONSUNDA7KyslBSUgKDwbJL4bbbbnNGSeTCfjtvDDfDe1quW2QKN1v+KIamUQ+ll2NaBomIyL1IHm42bdqEGTNmoLS0tMVngiBAr9dLXRK5sOoGHY4XGRdMHHFZuBnaPRSRgUqUVGtw8Fw5xvTt4owSiYjIxUg+oPjxxx/HtGnTUFRUBIPBYPFisKHLHS+qhkEEYoJ9EB1subGpTCZgXD9joNnBcTdERNRE8nBTXFyMBQsWmHcLJ7qSHJWx1WZgTOvrCo3vHwkA2JFTIllNRETk2iQPN3fffXeLwb1EbTmuqgYA9I8ObPXza/tGQC4TcOZiLfLL66QsjYiIXJTkY27ef/99TJs2Dbt370ZiYiIUCoXF50888YTUJZELy2kKNwPaCDfBvgoM6x6Kg+fLsePkRTwwqoeU5RERkQuSPNysW7cOmzdvho+PD3bs2GGxJYMgCAw3ZCaKYrNw0/Z2F+P6d8HB8+XYmVPCcENERNJ3S7344otYvHgxqqqqcP78eZw7d878Onv2rNTlkAtTqRtQo2mEl0xAry7+bZ43vr9xUPG+M2XQNHJQOhFRZyd5uNFqtZg+fTpkMo/Y+YEc6HypcQxNt1BfKORt/30ZFBOEyEAl6rR6HDpfIVV5RETkoiRPGDNnzrTYFoGoLblltQCA7uFtt9oAxu5M0xo3u05ySjgRUWcn+ZgbvV6Pt956Cz///DOSkpJaDChetmyZ1CWRi8ptmv3UM9zvqueO7ReBb45cwK5TpVh41bOJiMiTSR5usrOzkZKSAgA4evSoxWfNBxcTmVtuwq4ebq7tEwFBAI4XqVFS3YDIQJ+rXkNERJ5J8nCzfft2qR9Jbiq3zNRyc+VuKQAID1AiITYY2QVV2H2yFHcN6+bo8oiIyEVxVC+5JFEUzeGmRzu6pQBj1xQA7DrFcTdERJ2ZJOEmKyurxe7fV3Ls2DE0NjY6sCJydeW1WtRoGiEIQFw7uqUAmAcV7zlVCoNBdGR5RETkwiQJNykpKSgrK2v3+WlpacjLy3NgReTqzje12kQH+cBHIW/XNUO7h8LfW46yWi3+aNpJnIiIOh9JxtyIooiXX34Zfn7t+xe4Vqt1cEXk6vLKjYOJ29slBQDeXjKk9Y7A1uPF2HnyIhK6BjuqPCIicmGShJuxY8ciJyen3eenpaXB19fXgRWRq8srqwfQvplSzY3tZww3u09dxNzr+jiiNCIicnGShBvuAk7WKqoyhpvYEOtC7timcTeHcytQq2mEv1LyCYFERORknC1FLqmwqgEAEBtsXbjpGeGP7mF+0OlF7D/T/nFeRETkORhuyCUVVRpbbmJCrF+Mb0xf45Tw3ZwSTkTUKTHckMsRRRGFpnBjZcsNAIzt17TP1KlSu9ZFRETuwSPCTXp6OkaMGIHAwEBERkZi6tSp7RrA/J///AcDBgyAj48PEhMT8dNPP0lQLV2NuqERtVo9ACDWhpab0b3DIZcJOFdai7ymKeVERNR5eES42blzJ+bOnYtff/0VW7ZsgU6nw8SJE1FbW9vmNfv27cM999yDhx9+GBkZGZg6dSqmTp3aYr8rkp5pMHGInwJ+3tYPCA70UWB4j1AAwNbjxXatjYiIbKdtNOBitQZnLlY79DmCKIqSL+W6bds2bNu2DSUlJS1WLl65cmWH73/x4kVERkZi586dGDt2bKvnTJ8+HbW1tfjhhx/Mx0aNGoXk5GSsWLHiqs9Qq9UIDg5GVVUVgoKCOlwzXbL9RAlmrfoNA2OC8L8nx9h0j093n8XrPx5HWq9wrHt0lJ0rJCLq3Bp0elTW6VBZrzV+rdOhyvR9/WXv63Soqtehsk5rbpU3aOqQ/+6fHPY7VPJ5sosXL8arr76K4cOHIyYmxiE7gVdVVQEAwsLC2jxn//79WLBggcWxSZMmYePGja2er9FooNFozO/Vaq6A6yiFpmngwbbv7D1xUDRe//E4Dp4vR2WdFiF+3vYqj4jII4iiiDqtvimMaFHVLJhU1je9bxZgqpo+q6jTQtPY/i2VLicIQLCvF/Lt+LNcTvJws2LFCqxatQoPPPCAQ+5vMBgwf/58XHPNNUhISGjzPJVKhaioKItjUVFRUKlUrZ6fnp6OxYsX27VWal1RpXEauC0zpUy6h/thQHQgTqiq8cuJEtw5lLuEE5FnEkUR1ZrGFmGksl6HqrrWW1Mqmr7X6W3vvPGSCQjxUyDYV4EQP2+E+CoQ7KdAiK83QvwULT4Lafos0McLNTXVCE634x/C5bU57tat02q1GD16tMPuP3fuXBw9ehR79uyx630XLlxo0dKjVqsRFxdn12eQkanlxpaZUs3dOCgKJ1TV2HysmOGGiFye3iCiukHXLIxoza0lzVtTKuq0TcGlKcDU66DvwGbB3nKZOYyE+Ho3BZSm937eTQHlUmgxvQ9Qejmk98UeJA83jzzyCNauXYuXX37Z7veeN28efvjhB+zatQvdul35l1l0dDSKiy0HmxYXFyM6OrrV85VKJZRKpd1qpbaZWm66Wrk68eUmDY7GP345je05JajRNCKAqxUTkQQa9QZjKGll7EllUzCxaFlpeq9u0KEjo2B9FXKL8GEOI81bU1ppXfFVyF02pNhK8v/aNzQ04OOPP8bWrVuRlJQEhUJh8fmyZcusvqcoinj88cexYcMG7NixA/Hx8Ve9Ji0tDdu2bcP8+fPNx7Zs2YK0tDSrn0/2pVIbw010B8bcAMDg2CDER/jjXGkttvyhwh0pbL0hovbTNOpR1ayFxDTepKpF10+zcSl1OlRrGjv03ACl16WA0lprisX7S60pPgq5nX5y9yd5uMnKykJycjIAtJh2bWtynDt3LtauXYvvvvsOgYGB5nEzwcHB5g04Z8yYga5duyI93djJ9+STT2LcuHFYunQppkyZgq+++gqHDh3Cxx9/bONPRvYgiiKKTeEmqGPhRhAE3DokFn/fdgrfZxYy3BB1UqaZPRV12qvO6mnemlLXNLPHVkE+Xhbho/nYkxZjUZq6gIJ8FPD28ohVWpxK8nCzfft2u9/zww8/BACMHz/e4vjnn3+OBx98EACQl5cHmezSX5jRo0dj7dq1eOmll/DXv/4Vffv2xcaNG684CJkcr0bTaP4PSmRQx7sBb2sKN7tPlaKiVotQf86aInJHoiiiVqs3dus0m7ljOZOn9daUjszskQkwB5FL3T2XvW/WmhLaFFiCfBWQyzyrq8edOGUQQmVlJT777DMcP34cADB48GA89NBDCA4Otul+7Vmqp7WdyadNm4Zp06bZ9ExyjJJq43T7QKWXTQv4Xa5PZAAGxQThjyI1fjpahPtSe3T4nkRkO1NIqag1DpataD6bp1bbsjWl2XupZvaENgsrgUovyBhS3I7k4ebQoUOYNGkSfH19MXLkSADGcTb/7//9P2zevBlDhw6VuiRyIaYuqS52aLUxmZoSiz+K1Pj3oQsMN0R2cvkaKaZunQrzDB8tKloMojWe1yjBzJ5Qi5YVb/h7e96gWWqb5OHmqaeewm233YZPPvkEXl7Gxzc2NuKRRx7B/PnzsWvXLqlLIhdysanlJiqwY+NtmrtzaDe8/XMOfs+vxLHCKgyOta2FkMhT1Wv1qKzXoqK2+XTj5qvPGoOKqavH9L1Wb3t3j7eXzNxCYgorlwKJd9N7BYKbfR7i6w0fhYwhha7KKS03zYMNAHh5eeG5557D8OHDpS6HXIyp5cYe421MIgKUmDg4Gj9mFWHdwTy8PjXRbvcmciUtl8S/tGCbxRoply321pExKQq50KIrJ9TvUkAJ8TV+ZuoCCvU3fvX15swechzJw01QUBDy8vIwYMAAi+P5+fkIDAyUuhxyMSXqppabDs6Uutx9I7vjx6wibMwoxMLJA+HPNW/IhWkbDeaunIraSwu2VVzWvdO8G6iiTosGne0hxTQm5dIMnkutJ6bunlC/Zq0oTef5sbuHXJDk/4WfPn06Hn74YbzzzjvmlYr37t2LZ599Fvfcc4/U5ZCLKW7qlooMtO+CiWm9w81r3nyXWYh7U7vb9f5EbanX6lFRp0V5rTGQlNdpUdnsvcVntVqLzQVtIZcJ5sGyoc0Gzpq+D/G/NP3Y1A0U6s8xKeRZJA8377zzDgRBwIwZM9DYaFzoSKFQYM6cOXjzzTelLodcTIm5W8q+LTeCIOC+1O54/cfj+GT3WUwfEcdpmmQVURRRo2lsM5CUmwfQalFeqzMHGFu7fJpPQTZNPw7187bo3rFoTfH1Roi/AgHenN1DJHm48fb2xnvvvYf09HScOXMGANC7d2/4+flJXQq5oBIHtdwAwD0ju+Mfv5zGudJa/JRdhFuHxNr9GeQ+tI0GlNdqUVarQVmNMYiU1mhQXts8pFi2ttg6Fdk0LiWsKYiE+Xubx6mYvg/zV5jPCfUzbi7IkEJkG6cNPPDz80NiIgd2kiVTy429x9wAgL/SC7Ou6Yl3t57CB9tP45akGDbDe5BGvQHlddoWQaWs5lKAKau99Fl1g21L5Cu9ZC0CSaifoim4eDd9ZgwtplYVV95gkMgTSRJuFixYgNdeew3+/v4WO2u3xpa9pcgz1GgazWMNHNFyAwAPju6JT3adxQlVNX45UYIbBkY55DnUcaIooqpeh5JqDUprLrWulNVoUFbbLMTUaswtLNaSywSE+nkjIsAYSsIDlAjzM45BMQcY08Baf+P3nOVD5PokCTcZGRnQ6XTm79vCf9l0bqZWG39vucNmM4X4eeP+UT3w0a6zePvnHIzr1wVecu7jIiWd3oCL1RpcrNagpFqDkuoG8/emr6VN31u7jopMAEL9vBHeLKyE+3sj3F+JsABvRPhbHg/2VbDrh8gDSRJumu8n5Yi9pcgzmMbbOKJLqrn/G9cbX/2WjxOqaqw7mIcH0no69HmdSYNOD1VVA4qqGqBS10NVpYGqqr7pvfF4aY0G7dgxxSzYV4EugUqE+TdrYfFXIjygKbQ0Ox7i582B4kQk/ZibvLw8xMXFtdpKk5eXh+7dOUW3szJvveCgLimTMH9vPD2xHxZ9dwzvbD6JKUmxCOOGmu1Sq2nEhYp6XKioQ355XdP39civqENhZT0q2tk15CUT0CVQiS6BSkQGKtEl0KfZ98avkUE+iAjwhtKL3UBEZB3Jw018fDyKiooQGRlpcbysrAzx8fHQ6zu2xTy5r4sStdwAwL0ju2PtgTycUFXjnc05eOMODm43qazT4szFWpwrrcXZizXILatDfoUxyJTXaq96va9CjphgH0Q3vYzf+yI6yMd8PMzPm91BROQwkocbURRbbbWpqamBj4/jf6mR6zJvveDglhsA8JLL8Mptg/Hnj3/F2gN5uHFQFK7rH3n1Cz2EwSAir7wOOcXVOHvRGGLOlhoDzdUCTLCvAnFhvugW4mf8Gmr8Ghvii5hgXwT5cGYQETmXZOHGNEtKEAS8/PLLFuva6PV6HDhwAMnJyVKVQy5IqjE3JqN6heOBUT2w5tdcLFifiZ+eHIOYYF9Jni2l6gYdTqiqcaJIjT+KqnFCpUaOqhp1V1gFNybYB/ER/ujVxR89w/3RPcwP3UL90C3MF0E+CgmrJyKynmThxjRLShRFZGdnw9v70hgHb29vDBkyBM8884xU5ZALcsSmmVfz4pSBOJJXgWOFajy+NgPrHh0FhRvPnqrX6pFdUIXM/Apk5lci60IVLlTUt3qu0kuGvlEB6N0lAL0iAtCriz/iI4wv7r1FRO5Msv+CmWZJzZo1C++99x6CgoKkejS5iUurE0vXPemjkOODe4filn/swaHcCry88SjeuCPRLcaDiKKI82V1OJxbgcz8CmTkVeKEqhp6Q8upSDHBPhgYE4QB0YEYGBOEgTGB6Bnuz2nwROSRJP/n2eeffw4A+OOPP5CXlwet1rJ//7bbbpO6JHIRph3BpWy5AYCeEf54Z1oS5vzrCL76LR8AXDbg5JfXYf/ZMuw/Y3ypmlq7mosMVCKlewiS40IxJC4Yg2KCEOLH2WBE1HlIHm7OnTuHqVOnIjs7G4IgQGxa8MI0AJGzpTqnWk0jajTG5fClGFB8uZsSYrDsT0Pw9L9/x1e/5UNvEPHmXUlOXzOlWN2A/WfKsO9MKfafLUN+uWUXk7dchqRuweYwk9I9BDHBPhzQS0SdmuTh5oknnkB8fDy2bduG+Ph4HDx4EGVlZXj66afxzjvvSF0OuQhTl5SftxwBThrvcUdKN8gEAU+tz8R/Dl9Ablkd3pk2BN3DpdvUtaxGg1/PlmP/2VLsO1OGsxdrLT6XywQM6RaM0b0jkNY7HMN6hMJHwXVgiIiak/y3yP79+/HLL78gIiICMpkMMpkM1157LdLT0/HEE09ccXsG8lwlzaaBO7PV4fbkrlDIZXj2P7/j4Ply3PTeLrw4ZSDuHdndIXVV1etw4GyZuavphKra4nNBABJigzG6dzhG9Q7HiJ5hTgt/RETuQvL/Sur1egQGBgIAIiIiUFhYiP79+6NHjx7IycmRuhxyEcWmwcQSTQO/kpsTY5DYNRjP/Od3HDhXjhc3HMXKPefwwKgeuHNYN5unQouiiMKqBmTlVyIjvxL7z5ThWGEVLh//OyA6EKN6hWN073Ckxocj2I9Tr4mIrCF5uElISMDvv/+O+Ph4pKam4q233oK3tzc+/vhj9OrVy6Z77tq1C2+//TYOHz6MoqIibNiwAVOnTm3z/B07duC6665rcbyoqAjR0dE21UAdUyLhAn7tERfmh3WzR2Hl3nNYvuUkzlysxSv//QNv/ZyDCQOjkNQtGINjgzEoNgjBvpbho1FvgErdgMLKBhRU1iG3rA7ZF6rw+4UqlNZoWjyrV4Q/0nqHY3TvCKT2CkNEgGv8GRARuSvJw81LL72E2lrjOIJXX30Vt9xyC8aMGYPw8HCsX7/epnvW1tZiyJAheOihh3DnnXe2+7qcnByLKemXbwlB0pF6Ab/2kMkEPDKmF6aPiMPGjAKs3p+LUyU1+P73Qnz/e6H5PIVcgFwmwEsmg0wAajSNLVpjTOQyAf2jAjEkLhgj48OQ1isC0cGu8zMTEXkCycPNpEmTzN/36dMHJ06cQHl5OUJDQ20e0zB58mRMnjzZ6usiIyMREhJi0zPJvlyt5aa5QB8FHkjriftH9cBv5ytw8FwZjhaocbTQuECeTi9CpxcBGMzXKOQCYoJ90TXEF11DfTEoJghD4kIwODaIA4CJiBxM0nCj0+lw0003YcWKFejbt6/5eFhYmJRlmCUnJ0Oj0SAhIQGvvPIKrrnmmjbP1Wg00GgudSmo1WopSuw0XLHl5nKCIGBkfBhGxl/6+6pu0KFW0wi9QYTeYAw5gT5e6BKgdMl1coiIOgNJw41CoUBWVpaUj2xVTEwMVqxYgeHDh0Oj0eDTTz/F+PHjceDAAQwdOrTVa9LT07F48WKJK+08pNw0056CfBTca4mIyMUIomkVPYk89dRTUCqVePPNNx1yf0EQrjqguDXjxo1D9+7dsWbNmlY/b63lJi4uDlVVVdxKwg4SX/kZ1Q2N2LpgHPpEBji7HCIiciC1Wo3g4GCH/Q6VfMxNY2MjVq5cia1bt2LYsGHw9/e3+HzZsmVSlwQAGDlyJPbs2dPm50qlEkqle7UquIt6rR7VDU2rE0u89QIREXkeycPN0aNHzV0/J0+etPjMmYu3ZWZmIiYmxmnP78xKqo1dUr4KOQK5QB0REXWQ5L9JvvjiC3Tr1g0ymeVuxKIoIj8/36Z71tTU4PTp0+b3586dQ2ZmJsLCwtC9e3csXLgQBQUFWL16NQDg3XffRXx8PAYPHoyGhgZ8+umn+OWXX7B582bbfzCyWXGzDTO5JxIREXWU5OEmPj4eRUVFLdaUKS8vR3x8vE0bZx46dMhiUb4FCxYAAGbOnIlVq1ahqKgIeXl55s+1Wi2efvppFBQUwM/PD0lJSdi6dWurC/uR45labqICXXemFBERuQ/Jw01b45dramrg42PbL7fx48e3eV8AWLVqlcX75557Ds8995xNzyL7M7XcdOF4GyIisgPJwo2pNUUQBCxatAh+fpd2Wtbr9Thw4ACSk5OlKodciKnlxt2mgRMRkWuSLNyYdvsWRRHZ2dnw9vY2f+bt7Y0hQ4bgmWeekaocciElatdfwI+IiNyHZOFm+/btAIBZs2bhvffe49owZMaWGyIisifJx9x8/vnnUj+SXFwxW26IiMiOnLKoyLZt27Bt2zaUlJTAYDBYfLZy5UpnlERO5MqbZhIRkfuRPNwsXrwYr776KoYPH46YmBiua9LJNej0UJtXJ2bLDRERdZzk4WbFihVYtWoVHnjgAakfTS7INJhY6SVDkA9XJyYioo6TXf0U+9JqtRg9erTUjyUXVWxawC/Ih614RERkF5KHm0ceeQRr166V+rHkokwtNxxvQ0RE9iJ5P0BDQwM+/vhjbN26FUlJSVAoFBafO2tXcHKOYvWllhsiIiJ7kDzcZGVlmVciPnr0qMVn7JbofEqqm7ZeYMsNERHZieThxrSYHxFwaRo4W26IiMheJB9zQ9ScqeWGY26IiMhenBJudu/ejfvvvx9paWkoKCgAAKxZswZ79uxxRjnkRBxzQ0RE9iZ5uPnmm28wadIk+Pr6IiMjAxqN8V/uVVVVeOONN6Quh5zM3HITxJYbIiKyD8nDzeuvv44VK1bgk08+sZgpdc011+DIkSNSl0NOVK/Vo6peBwCICmTLDRER2Yfk4SYnJwdjx45tcTw4OBiVlZVSl0NOVFRVDwDw85YjyJerExMRkX1IHm6io6Nx+vTpFsf37NmDXr16SV0OOZGqyjjeJiaYqxMTEZH9SB5uZs+ejSeffBIHDhyAIAgoLCzEv/71LzzzzDOYM2eO1OWQExWZw42vkyshIiJPInlfwAsvvACDwYAbbrgBdXV1GDt2LJRKJZ555hk8/vjjUpdDTmTqlooJ5ngbIiKyH8nDjSAIePHFF/Hss8/i9OnTqKmpwaBBgxAQECB1KeRkRc26pYiIiOxF8nCTnp6OqKgoPPTQQxg0aJD5+MqVK3Hx4kU8//zzUpdETmIKN9HsliIiIjuSfMzNRx99hAEDBrQ4PnjwYKxYscKme+7atQu33norYmNjIQgCNm7ceNVrduzYgaFDh0KpVKJPnz5YtWqVTc8m25lbbkLYckNERPYjebhRqVSIiYlpcbxLly4oKiqy6Z61tbUYMmQIPvjgg3adf+7cOUyZMgXXXXcdMjMzMX/+fDzyyCP4+eefbXo+2UbFMTdEROQAkndLxcXFYe/evYiPj7c4vnfvXsTGxtp0z8mTJ2Py5MntPn/FihWIj4/H0qVLAQADBw7Enj17sHz5ckyaNMmmGsg69Vo9KuqMC/hxthQREdmT5OFm9uzZmD9/PnQ6Ha6//noAwLZt2/Dcc8/h6aeflqSG/fv3Y8KECRbHJk2ahPnz57d5jUajMW8VAQBqtdpR5XUKqqY9pfy85Qjy4QJ+RERkP5L/Vnn22WdRVlaGxx57DFqtFgDg4+OD559/HgsXLpSkBpVKhaioKItjUVFRUKvVqK+vh69vy5aE9PR0LF68WJL6OoPm08C5gB8REdmT5GNuBEHAkiVLcPHiRfz666/4/fffUV5ejkWLFkldilUWLlyIqqoq8ys/P9/ZJbm1okou4EdERI7htP6AgIAAjBgxwinPjo6ORnFxscWx4uJiBAUFtdpqAwBKpRJKJXeuthdTtxQHExMRkb05Jdxs27YN27ZtQ0lJCQwGg8VnK1eudPjz09LS8NNPP1kc27JlC9LS0hz+bDIqrORMKSIicgzJu6UWL16MiRMnYtu2bSgtLUVFRYXFyxY1NTXIzMxEZmYmAONU78zMTOTl5QEwdinNmDHDfP5f/vIXnD17Fs899xxOnDiBf/7zn/j3v/+Np556qsM/H7WPigv4ERGRg0jecrNixQqsWrUKDzzwgN3ueejQIVx33XXm9wsWLAAAzJw5E6tWrUJRUZE56ABAfHw8fvzxRzz11FN477330K1bN3z66aecBi6hQm69QEREDiJ5uNFqtRg9erRd7zl+/HiIotjm562tPjx+/HhkZGTYtQ5qv4KKOgBAt1C23BARkX1J3i31yCOPYO3atVI/llxIVb0O6oZGAEBXhhsiIrIzyVtuGhoa8PHHH2Pr1q1ISkqCQqGw+HzZsmVSl0QSyy83ttpEBHjDz5sL+BERkX1J/pslKysLycnJAICjR49afMbF3DqHCxXGmVLdQv2cXAkREXkiycPN9u3bpX4kuZgLHG9DREQOJPmYGyJTy01cGFtuiIjI/pwy4KGyshKfffYZjh8/DgAYNGgQHn74YQQHBzujHJKYacwNW26IiMgRJG+5OXToEHr37o3ly5ejvLwc5eXlWL58OXr37o0jR45IXQ45QX5Tt1Qcx9wQEZEDSN5y89RTT+G2227DJ598Ai8v4+MbGxvxyCOPYP78+di1a5fUJZGERFFsNqCYLTdERGR/koebQ4cOWQQbAPDy8sJzzz2H4cOHS10OSay8Vos6rR6CwDVuiIjIMSTvlgoKCrLYCsEkPz8fgYGBUpdDEstvarWJDFRC6SV3cjVEROSJJA8306dPx8MPP4z169cjPz8f+fn5+Oqrr/DII4/gnnvukbocklhuWS0AoEe4v5MrISIiTyV5t9Q777wDQRAwY8YMNDYal+BXKBSYM2cO3nzzTanLIYmdvWgMN70iGG6IiMgxJA833t7eeO+995Ceno4zZ84AAHr37g0/P86c6QzOlRrDTTzDDREROYjk4SY9PR1RUVF46KGHkJiYaD6+cuVKXLx4Ec8//7zUJZGEzjd1S/VkuCEiIgeRfMzNRx99hAEDBrQ4PnjwYKxYsULqckhCoijiHLuliIjIwSQPNyqVCjExMS2Od+nSBUVFRVKXQxIqrdGiWtMIQQC6h7MbkoiIHEPycBMXF4e9e/e2OL53717ExsZKXQ5JyNQl1TXEl9PAiYjIYSQfczN79mzMnz8fOp0O119/PQBg27ZteO655/D0009LXQ5JyNQlxcHERETkSJKHm2effRZlZWV47LHHoNVqAQA+Pj54/vnnsXDhQqnLIQmdLeV4GyIicjzJw40gCFiyZAlefvllHD9+HL6+vujbty+USqXUpZDEzlysAcCWGyIicizJw41JQEAARowY4azHkxPkqKoBAP2iuc0GERE5juQDiqlzqtM2Iq+8DgDQP4rhhoiIHIfhhiRxstjYJRURoER4ALsgiYjIcTwm3HzwwQfo2bMnfHx8kJqaioMHD7Z57qpVqyAIgsXLx8dHwmo7n5NNXVID2CVFREQO5hHhZv369ViwYAH+9re/4ciRIxgyZAgmTZqEkpKSNq8JCgpCUVGR+ZWbmythxZ3PCdN4G3ZJERGRgzkl3OzevRv3338/0tLSUFBQAABYs2YN9uzZY9P9li1bhtmzZ2PWrFkYNGgQVqxYAT8/P6xcubLNawRBQHR0tPkVFRVl07OpfXKK1QDYckNERI4nebj55ptvMGnSJPj6+iIjIwMajQYAUFVVhTfeeMPq+2m1Whw+fBgTJkwwH5PJZJgwYQL279/f5nU1NTXo0aMH4uLicPvtt+PYsWNXfI5Go4FarbZ4UfvlqIxjbjhTioiIHE3ycPP6669jxYoV+OSTT6BQKMzHr7nmGhw5csTq+5WWlkKv17doeYmKioJKpWr1mv79+2PlypX47rvv8OWXX8JgMGD06NG4cOFCm89JT09HcHCw+RUXF2d1rZ1ViboBpTUayASgX1SAs8shIiIPJ3m4ycnJwdixY1scDw4ORmVlpSQ1pKWlYcaMGUhOTsa4cePw7bffokuXLvjoo4/avGbhwoWoqqoyv/Lz8yWp1RP8fqEKANA3MhB+3k5bWomIiDoJyX/TREdH4/Tp0+jZs6fF8T179qBXr15W3y8iIgJyuRzFxcUWx4uLixEdHd2ueygUCqSkpOD06dNtnqNUKrmKso1+z68EAAyJC3ZuIURE1ClI3nIze/ZsPPnkkzhw4AAEQUBhYSH+9a9/4ZlnnsGcOXOsvp+3tzeGDRuGbdu2mY8ZDAZs27YNaWlp7bqHXq9HdnY2YmJirH4+Xd3vFyoBAEndQpxaBxERdQ6St9y88MILMBgMuOGGG1BXV4exY8dCqVTimWeeweOPP27TPRcsWICZM2di+PDhGDlyJN59913U1tZi1qxZAIAZM2aga9euSE9PBwC8+uqrGDVqFPr06YPKykq8/fbbyM3NxSOPPGK3n5OMRFE0t9wkx4U4tRYiIuocnLJx5osvvohnn30Wp0+fRk1NDQYNGoSAANsHmk6fPh0XL17EokWLoFKpkJycjE2bNpkHGefl5UEmu9RIVVFRgdmzZ0OlUiE0NBTDhg3Dvn37MGjQoA7/fGTpfFkd1A2N8PaSoT9nShERkQQEURRFZxfhjtRqNYKDg1FVVYWgoCBnl+OyNmRcwFPrf0dK9xBseOwaZ5dDREQuwNG/QyUfc5Oent7q4norV67EkiVLpC6HHOzA2XIAwLDuoU6uhIiIOgvJw81HH32EAQMGtDg+ePBgrFixQupyyMH2nSkDAFzTJ8LJlRARUWchebhRqVStzkrq0qULioqKpC6HHCi/vA555XWQywSMiA9zdjlERNRJSB5u4uLisHfv3hbH9+7di9jYWKnLIQfaf9bYajOkWzAClFy8j4iIpCH5b5zZs2dj/vz50Ol0uP766wEA27Ztw3PPPYenn35a6nLIgfY3dUmN7s0uKSIiko7k4ebZZ59FWVkZHnvsMWi1WoiiCF9fXzz//PN44YUXpC6HHERvELHr5EUAwOg+4U6uhoiIOhOnrHOzZMkSvPzyyzh+/Dh8fX3Rt29fbm3gYQ6eK0dZrRYhfgqM6MnxNkREJB2nDYTIy8tDWVkZtFotzp49az5+2223OasksqNNR42Dw28cGAWFXPKhXURE1IlJHm7Onj2LO+64A9nZ2RAEAaY1BAVBAGDc54ncm8EgYtMxFQBgcmL7Ni8lIiKyF8n/Sf3kk08iPj4eJSUl8PPzw9GjR7Fr1y4MHz4cO3bskLoccoBDuRUoVmsQoPTi+jZERCQ5yVtu9u/fj19++QURERGQyWSQy+W49tprkZ6ejieeeAIZGRlSl0R29tXBPADAlMQYKL3kTq6GiIg6G8lbbvR6PQIDjRsoRkREoLCwEADQo0cP5OTkSF0O2VlFrRY/ZhvH29yT2t3J1RARUWckectNQkICfv/9d8THxyM1NRVvvfUWvL298fHHH6NXr15Sl0N2tmrfeWgaDUjoGoQh3YKdXQ4REXVCkoebl156CbW1tQCAV199FbfccgvGjBmD8PBwrF+/XupyyI7UDTp8sf88AGDOuD7mQeJERERSkiTcZGVlISEhATKZDJMmTTIf79OnD06cOIHy8nKEhobyl6Gbe/+X06is06FPZABuSuAsKSIicg5JxtykpKSgtLQUANCrVy+UlZVZfB4WFsZg4+aOFlRh5Z5zAIAXbx4IuYz/exIRkXNIEm5CQkJw7pzxF9/58+dhMBikeCxJRN2gw5NfZaDRIGLS4CiM79/F2SUREVEnJkm31F133YVx48YhJiYGgiBg+PDhkMtbnyLcfLVicn112kb83+rDOHOxFlFBSrxxRyJb4YiIyKkkCTcff/wx7rzzTpw+fRpPPPEEZs+ebZ4OTu7rZHE1nvwqE8eL1PD3luOzmSMQHsA9woiIyLkkmy110003AQAOHz6MJ598kuHGTen0Bhw6X4GvD1/Ad5kFaDSICPP3xmczhyOhK6d+ExGR80k6FVyn0yEvLw8qlYrhxoU06PSoqNOiolaHynotKut0qKzToaJOi8o6bdP3OhRW1uN0SQ20+ktjpiYMjMQbdyYiMtDHiT8BERHRJZKGG4VCgaysLCkf2ano9IamYKJFRdPXyjpjYGn+vqLOMsBoGq0b4B3qp8D1A6LwQFoPJMeFOOaHISIispHki/jdf//9+Oyzz/Dmm2/a9b4ffPAB3n77bahUKgwZMgT/+Mc/MHLkyDbP/89//oOXX34Z58+fR9++fbFkyRLcfPPNdq3JVnqDiOoGY2tJRZ0WVU1fK+p0qGr6WlGnRVW9ZVCp0TTa/EwvmYAQPwVC/LwR4mv8GuqnMB8L9fNGl0Al+kcFoluoL2Sc6k1ERC5K8nDT2NiIlStXYuvWrRg2bBj8/f0tPl+2bJnV91y/fj0WLFiAFStWIDU1Fe+++y4mTZqEnJwcREZGtjh/3759uOeee5Ceno5bbrkFa9euxdSpU3HkyBEkJCTY/LNdThRF1GgaLbt56ptaViy6gJq1rNTrUFWvgyja9kxBAIJ9FZcFFG9jSPH1Rqj/pQATajrup0CA0ouznIiIyCMIomjrr1HbXHfddW1+JggCfvnlF6vvmZqaihEjRuD9998HABgMBsTFxeHxxx/HCy+80OL86dOno7a2Fj/88IP52KhRo5CcnIwVK1a065lqtRrBwcF4+79HoJX5oKK2qWXlsi6gRoPtf7wBSi9z+DAGEVMoUSC4KbiE+nkjuOlrqJ8CgT4KLqBHREQuzfQ7tKqqCkFBQXa/v+QtN9u3b7fr/bRaLQ4fPoyFCxeaj8lkMkyYMAH79+9v9Zr9+/djwYIFFscmTZqEjRs3tvkcjUYDjUZjfq9WqwEAf992GjKl3xVr9FHIEOLr3TKo+Ckutaz4KhDqf6lLKMRPAYVc8k3biYiI3J7k4cbeSktLodfrERUVZXE8KioKJ06caPUalUrV6vkqlarN56Snp2Px4sUtjk9NjkV0lzAE+15qPQn2u9TlE+rnDR9F6wsWEhERkf1JHm5effXVK36+aNEiiSqxzsKFCy1ae9RqNeLi4vD6HYkOaVIjIiIi20gebjZs2GDxXqfT4dy5c/Dy8kLv3r2tDjcRERGQy+UoLi62OF5cXIzo6NZ3po6OjrbqfABQKpVQKrn6LhERkauTfFBHRkaGxevo0aMoKirCDTfcgKeeesrq+3l7e2PYsGHYtm2b+ZjBYMC2bduQlpbW6jVpaWkW5wPAli1b2jyfiIiI3IdLjFgNCgrC4sWL8fLLL9t0/YIFC/DJJ5/giy++wPHjxzFnzhzU1tZi1qxZAIAZM2ZYDDh+8sknsWnTJixduhQnTpzAK6+8gkOHDmHevHl2+XmIiIjIeVxmQHFVVRWqqqpsunb69Om4ePEiFi1aBJVKheTkZGzatMk8aDgvLw8y2aUcN3r0aKxduxYvvfQS/vrXv6Jv377YuHGjXde4ISIiIueQfJ2bv//97xbvRVFEUVER1qxZg3HjxmHt2rVSlmMzR8/RJyIi8lQet87N8uXLLd7LZDJ06dIFM2fOtOg6cnWmTGha74aIiIjax/S701HtK5KHm3Pnzkn9SIeorq4GAMTFxTm5EiIiIvdUXV2N4OBgu99Xsm6p/fv3o6ysDLfccov52OrVq/G3v/0NtbW1mDp1Kv7xj3+4zXRrg8GAwsJCBAYGck8mIiIiK4iiiOrqasTGxlqMibUXycLN5MmTMX78eDz//PMAgOzsbAwdOhQPPvggBg4ciLfffhv/93//h1deeUWKcoiIiMhDSRZuYmJi8N///hfDhw8HALz44ovYuXMn9uzZAwD4z3/+g7/97W/4448/pCiHiIiIPJRk69xUVFRY7Oe0c+dOTJ482fx+xIgRyM/Pl6ocIiIi8lCShZuoqCjzYGKtVosjR45g1KhR5s+rq6uhUCikKoeIiIg8lGTh5uabb8YLL7yA3bt3Y+HChfDz88OYMWPMn2dlZaF3795SlUNEREQeSrKp4K+99hruvPNOjBs3DgEBAfjiiy/g7e1t/nzlypWYOHGiVOUQERGRh5J8heKqqioEBARALpdbHC8vL0dAQIBF4CEiIiKyluThhoiIiMiRXGJXcCIiIiJ7YbghIiIij8JwQ0RERB6F4YaIiIg8CsMNEREReRSGGyIiIvIoDDdERETkURhuiIiIyKMw3BAREZFHYbghIiIij8JwQ0RERB6F4YaIiIg8CsONHezatQu33norYmNjIQgCNm7caNX1O3bswO23346YmBj4+/sjOTkZ//rXvyzOWbVqFQRBsHj5+PjY8acgIiLyDAw3dlBbW4shQ4bggw8+sOn6ffv2ISkpCd988w2ysrIwa9YszJgxAz/88IPFeUFBQSgqKjK/cnNz7VE+ERGRRxFEURSdXYQnEQQBGzZswNSpU83HNBoNXnzxRaxbtw6VlZVISEjAkiVLMH78+DbvM2XKFERFRWHlypUAjC038+fPR2VlpWN/ACIiIjfHlhsJzJs3D/v378dXX32FrKwsTJs2DTfddBNOnTrV5jVVVVUICwuzOFZTU4MePXogLi4Ot99+O44dO+bo0omIiNwOW27s7PKWm7y8PPTq1Qt5eXmIjY01nzdhwgSMHDkSb7zxRot7/Pvf/8YDDzyAI0eOYPDgwQCA/fv349SpU0hKSkJVVRXeeecd7Nq1C8eOHUO3bt0k+dmIiIjcgZezC/B02dnZ0Ov16Nevn8VxjUaD8PDwFudv374ds2bNwieffGIONgCQlpaGtLQ08/vRo0dj4MCB+Oijj/Daa6857gcgIiJyMww3DlZTUwO5XI7Dhw9DLpdbfBYQEGDxfufOnbj11luxfPlyzJgx44r3VSgUSElJwenTp+1eMxERkTtjuHGwlJQU6PV6lJSUYMyYMW2et2PHDtxyyy1YsmQJHn300aveV6/XIzs7GzfffLM9yyUiInJ7DDd2UFNTY9GCcu7cOWRmZiIsLAz9+vXDfffdhxkzZmDp0qVISUnBxYsXsW3bNiQlJWHKlCnYvn07brnlFjz55JO46667oFKpAADe3t7mQcWvvvoqRo0ahT59+qCyshJvv/02cnNz8cgjjzjlZyYiInJVHFBsBzt27MB1113X4vjMmTOxatUq6HQ6vP7661i9ejUKCgoQERGBUaNGYfHixUhMTMSDDz6IL774osX148aNw44dOwAATz31FL799luoVCqEhoZi2LBheP3115GSkuLoH4+IiMitMNwQERGRR+E6N0RERORRGG6IiIjIo3BAsY0MBgMKCwsRGBgIQRCcXQ4REZHbEEUR1dXViI2NhUzmgHYW0QPs3LlTvOWWW8SYmBgRgLhhw4Yrnr99+3YRQItXUVFRu5+Zn5/f6j344osvvvjii6/2vfLz8zuYAFrnES03pl25H3roIdx5553tvi4nJwdBQUHm95GRke2+NjAwEACQn59vcQ8iIiK6MrVajbi4OPPvUnvziHAzefJkTJ482errIiMjERISYtMzTV1RQUFBDDdEREQ2cNSwjk49oDg5ORkxMTG48cYbsXfv3iueq9FooFarLV5ERETkejpluImJicGKFSvwzTff4JtvvkFcXBzGjx+PI0eOtHlNeno6goODza+4uDgJKyYiIqL28rhF/ARBwIYNGzB16lSrrhs3bhy6d++ONWvWtPq5RqOBRqMxvzf1F1ZVVbFbioiIyApqtRrBwcEO+x3qEWNu7GHkyJHYs2dPm58rlUoolUoJKyIiIiJbdMpuqdZkZmYiJibG2WV0WjWaRqT/7zhW7z8PD2tMJCIiiXlEy82VduXu3r07Fi5ciIKCAqxevRoA8O677yI+Ph6DBw9GQ0MDPv30U/zyyy/YvHmzs36ETu+lDdnYmFkIAPDz9sLdw7o5uSIiInJXHhFuDh06ZLEr94IFCwBc2pW7qKgIeXl55s+1Wi2efvppFBQUwM/PD0lJSdi6dWurO3uT4xWrG/D974Xm91/sO89wQ0RENvO4AcVScfRgqM5k3cE8LPw2G11DfFFQWQ8AyHj5RoT6ezu5MiIicgRH/w7lmBtyuv1nygAA04Z3Q9/IAADAb+fLnVkSERG5MYYbcrqjBVUAgJTuoUjsFgwA+KOIiyQSEZFtGG7IqdQNOpwtrQUAJHYNxqAYY/PkcYYbIiKyEcMNOdWxAmOI6RriizB/b/Rp6pY6X1rnzLKIiMiNMdyQU2UXVAIAkpq6o+LC/AAAFyrquN4NERHZhOGGnOp0SQ0AoH+0cdv7riG+AIBarR6VdTqn1UVERO6L4Yac6uxF43ibXl2M3VE+Cjm6BBq3ubhQUe+0uoiIyH0x3JBTnWsaTNwrwt98LC7U2HpzoYLjboiIyHoMN+Q0VXU6lNVqAQDxzcJNt1DTuBu23BARkfUYbshpzpQax9tEB/nAX3lpJ5BubLkhIqIOYLghpznXNN6measNAHRtCjemrRiIiIiswXBDTpPf1DLTI9zP4niXAOOA4ovVGslrIiIi98dwQ05T2NQyY5r+bRLRNFuqtEYreU1EROT+GG7IaQorGwAAMZeFG3PLTY2GC/kREZHVGG7IaUwtN7EhPhbHI5rCjbbRgGpNo+R1ERGRe2O4IacQRRGFVa13S/l6y+HvLQcAlHLcDRERWYnhhpyiok6HBp0BABAd7NPic467ISIiWzHckFOYuqQiApRQeslbfG7qmiqtYcsNERFZh+GGnOLSTKmWrTYAEBHgDYDhhoiIrMdwQ05xaTCxb6ufm1tuOOaGiIisxHBDTlFY1TQNPPjK4eYix9wQEZGVGG7IKQramAZuEt7ULVVZx3BDRETWYbghpyhqY3Vik2BfBQCgsk4nWU1EROQZGG7IKdpandgkxM/YclPBlhsiIrISww1JTqc3oLjaGG7a6pYK9TO23FTVs+WGiIisw3BDkitWN0AUAW+5DBH+ylbPCfFlyw0REdmG4YYkd6lLygcymdDqOSH+xpabBp0BDTq9ZLUREZH7Y7ghyZnWuIlpZdsFk0ClF+RNwYddU0REZA0vay/4/vvvrX7IjTfeCF/f1geOUudTcJUF/ABAEASE+CpQVqtFRZ0WUUFtByEiIqLmrA43U6dOtep8QRBw6tQp9OrVy9pHkYcqamM38MsF+xnDDaeDExGRNWzqllKpVDAYDO16+fn52btmcnPmMTdtrE5sEmJe64aDiomIqP2sDjczZ860qovp/vvvR1BQkLWPscquXbtw6623IjY2FoIgYOPGjVe9ZseOHRg6dCiUSiX69OmDVatWObRGuqTwKqsTm4T6mVYpZssNERG1n9Xh5vPPP0dgYGC7z//www8RERFh7WOsUltbiyFDhuCDDz5o1/nnzp3DlClTcN111yEzMxPz58/HI488gp9//tmhdZJR4VVWJzYJblrrppIDiomIyApWj7lxRZMnT8bkyZPbff6KFSsQHx+PpUuXAgAGDhyIPXv2YPny5Zg0aZKjyiQA1Q06qBsaAbS9OrFJKFcpJiIiG9hlKviBAwfscRvJ7N+/HxMmTLA4NmnSJOzfv7/NazQaDdRqtcWLrFfUtBt4kI8XApRXztZBPsaWG3V9o8PrIiIiz2GXcDNt2jR73EYyKpUKUVFRFseioqKgVqtRX1/f6jXp6ekIDg42v+Li4qQo1eO0Zxq4SZCvMfxUN7BbioiI2q/d3VJ/+tOfWj0uiiLKy8vtVpCrWrhwIRYsWGB+r1arGXBsUNQ0U+pq420AINDUctPAlhsiImq/doebrVu3Ys2aNQgICLA4Looidu3aZffCHCk6OhrFxcUWx4qLixEUFNTmTDClUgmlsvV9kKj9zKsTX2WmFGDsugLYckNERNZpd7gZP348AgMDMXbs2BafJSUl2bUoR0tLS8NPP/1kcWzLli1IS0tzUkWdR6EV3VLmlhvOliIiIiu0O9x8++23bX62ZcsWuxRjq5qaGpw+fdr8/ty5c8jMzERYWBi6d++OhQsXoqCgAKtXrwYA/OUvf8H777+P5557Dg899BB++eUX/Pvf/8aPP/7orB+h0yhs5+rEwKUxN+yWIiIia9g8oFilUtmzjg45dOgQUlJSkJKSAgBYsGABUlJSsGjRIgBAUVER8vLyzOfHx8fjxx9/xJYtWzBkyBAsXboUn376KaeBS8C0OnG7BhQ3tdywW4qIiKxh8zo3EydORFZWlj1rsdn48eMhimKbn7e2+vD48eORkZHhwKrocgaDaN5X6ko7gpuYwk2DzgBtowHeXtzEnoiIrs7m3xZXChNErSmt0UCnFyET0K5dvgN8LmVvtt4QEVF72RxuBEGwZx3UCRQ2LeAXFeQDhfzqf/XkMsG80B/H3RARUXuxnZ8kY54G3o4uKRNOByciImsx3JBkrJkGbhLkyy0YiIjIOjaHG7lcbs86qBMotGJ1YpNAH1O3FFtuiIiofWwON5xpRNayqeWG08GJiMhKHeqWqq+vR11dnfl9bm4u3n33XWzevLnDhZHnKbRiGriJueWG3VJERNROHQo3t99+u3nV38rKSqSmpmLp0qW4/fbb8eGHH9qlQPIcHRlzw5YbIiJqrw6FmyNHjmDMmDEAgK+//hpRUVHIzc3F6tWr8fe//90uBZJnaNDpUVqjBWDdmJsg7gxORERW6lC4qaurQ2BgIABg8+bNuPPOOyGTyTBq1Cjk5ubapUDyDEVNa9z4KuQI8VO0+7pL3VJsuSEiovbpULjp06cPNm7ciPz8fPz888+YOHEiAKCkpARBQUF2KZA8Q0FF04aZob5WLQBpngrOlhsiImqnDoWbRYsW4ZlnnkHPnj2RmpqKtLQ0AMZWHNMmlkQAcKHCOPC8W2j7u6QATgUnIiLr2bxxJgDcfffduPbaa1FUVIQhQ4aYj99www244447OlwceY6CpsHE1oy3AZpPBWfLDRERtU+Hwg0AREdHIzo62uLYyJEjO3pb8jAXmnVLWYNjboiIyFpWdUvV19ejoKCgxfFjx47ZrSDyTKYxN91C/ay67tKYG4YbIiJqn3aHm6+//hp9+/bFlClTkJSUhAMHDpg/e+CBBxxSHHkOW7ulTC03NZpGGAyi3esiIiLP0+5w8/rrr+Pw4cPIzMzE559/jocffhhr164FAIgif+lQ23R6A4qaVieOs7JbyjTmRhSBWi3H3RAR0dW1e8yNTqdDVFQUAGDYsGHYtWsX7rjjDpw+fdqqqb3U+aiqGmAQAW+5DBEBSquuVXrJoJAL0OlFVDc0ItCn/WvkEBFR59TulpvIyEhkZWWZ34eFhWHLli04fvy4xXGiyzUfTCyTWReEBUEwBxrOmCIiovZod7hZs2YNIiMjLY55e3tj3bp12Llzp90LI89h63gbE9O4G+4vRURE7dHucNOtWzeLKd8qlcr8/TXXXGPfqsijmFcn7nC4YcsNERFdnc0rFJu2WiC6GltXJzYJVHI6OBERtZ/N4YYzpKi9zN1StoYbttwQEZEVbA43nCFF7XXBxgX8TDigmIiIrNGhjTOJrqax2Ro3HW+5YbcUERFdHcMNOVRRVQN0ehHeXjLEBPnYdI8gdksREZEVbA43crncnnWQhzpfVgvAuDKxtWvcmFzqlmLLDRERXZ3N4SYjI8OedZCHyi0zzpTqGe5v8z04oJiIiKzBbilyqNymlpvu4bYNJgY4oJiIiKzT7r2l2tLQ0ICsrCyUlJTAYDBYfHbbbbd19Pbk5uzZcsN1boiIqD06FG42bdqEGTNmoLS0tMVngiBAr9d35PbkAUzhpiMtNwHsliIiIit0qFvq8ccfx7Rp01BUVASDwWDxkjrYfPDBB+jZsyd8fHyQmpqKgwcPtnnuqlWrIAiCxcvHx7aZPNQ2URSRW27slupIy00Qp4ITEZEVOhRuiouLsWDBAkRFRdmrHpusX78eCxYswN/+9jccOXIEQ4YMwaRJk1BSUtLmNUFBQSgqKjK/cnNzJay4cyip1qBBZ4BMsH1fKeDSmJsaTSNXxiYioqvqULi5++67sWPHDjuVYrtly5Zh9uzZmDVrFgYNGoQVK1bAz88PK1eubPMaQRAQHR1tfjk7oHkiU5dU11BfeHvZ/lfNNObGIAK1WnZ1EhHRlXVozM3777+PadOmYffu3UhMTIRCobD4/IknnuhQce2h1Wpx+PBhLFy40HxMJpNhwoQJ2L9/f5vX1dTUoEePHjAYDBg6dCjeeOMNDB48uM3zNRoNNBqN+b1arbbPD+DBzpXWAOhYlxQA+CrkkMsE6A0iqht0CFB2eBw8ERF5sA79lli3bh02b94MHx8f7Nixw2K/KUEQJAk3paWl0Ov1LVpeoqKicOLEiVav6d+/P1auXImkpCRUVVXhnXfewejRo3Hs2DF069at1WvS09OxePFiu9fvyU6XGMNN7y4BHbqPIAgI9PFCZZ0O1Q2NiAm2R3VEROSpOtQt9eKLL2Lx4sWoqqrC+fPnce7cOfPr7Nmz9qrR7tLS0jBjxgwkJydj3Lhx+Pbbb9GlSxd89NFHbV6zcOFCVFVVmV/5+fkSVuyezlw0DibuHdmxcANwfykiImq/DrXcaLVaTJ8+HTKZ89YCjIiIgFwuR3FxscXx4uJiREdHt+seCoUCKSkpOH36dJvnKJVKKJXKDtXa2Zhabvp0sOUGAAKVCgD1UHM6OBERXUWHUsnMmTOxfv16e9ViE29vbwwbNgzbtm0zHzMYDNi2bRvS0tLadQ+9Xo/s7GzExMQ4qsxOp0GnR36FcUBxH7u23DDcEBHRlXWo5Uav1+Ott97Czz//jKSkpBYDipctW9ah4tprwYIFmDlzJoYPH46RI0fi3XffRW1tLWbNmgUAmDFjBrp27Yr09HQAwKuvvopRo0ahT58+qKysxNtvv43c3Fw88sgjktTbGZy9WAtRBIJ9FYgI8O7w/bh5JhERtVeHwk12djZSUlIAAEePHrX4rPngYkebPn06Ll68iEWLFkGlUiE5ORmbNm0yDzLOy8uz6DqrqKjA7NmzoVKpEBoaimHDhmHfvn0YNGiQZDV7utMXm7qkIgPs8nchiC03RETUTh0KN9u3b7dXHR02b948zJs3r9XPLl+LZ/ny5Vi+fLkEVXVe9hxvA3BAMRERtZ/VY26ysrJabJB5JceOHUNjI/+13dmcKbnUcmMP3BmciIjay+pwk5KSgrKysnafn5aWhry8PGsfQ24up7gaANA3yt4tNww3RER0ZVZ3S4miiJdffhl+fu3b5Vmr1VpdFLm3eq0eZ5vG3AyKDbLLPTmgmIiI2svqcDN27Fjk5OS0+/y0tDT4+tq+aSK5n5ziahhEICJAichA++y2bmq54To3RER0NVaHG1fYKJNc2x+Fxn23BsYE2u2e7JYiIqL2ct7SwuSx/iiqAmC/LimA3VJERNR+DDdkd6aWm0Ex9gs3XOeGiIjai+GG7EpvEHFCZZwpNdgBLTc1mkaIomi3+xIRkedhuCG7OldaizqtHkovGXqG+9vtvqYxN3qDiDqt3m73JSIiz9OhcDN69Gio1Wp71UIe4EheBQAgqVswvOT2y85+3nLIZcZtHNg1RUREV9Kh3z6//vorGhoaWhxXq9V4/vnnO3JrclMZTeFmaPdQu95XEAQEKLkFAxERXZ1N4ebuu+/Gm2++CUEQUFJS0uLz2tpavPPOOx0ujtzPkdxKAMDQHvYNNwDXuiEiovaxaePM7t2744cffoAoihgyZAjCw8MxZMgQDBkyBMnJycjJyUFMTIy9ayUXp27Q4WSJcTCxvVtuANOg4nq23BAR0RXZFG6WLVsGAPD29sbevXtRWFiIjIwMZGZmYsOGDTAYDHjrrbfsWii5vt/zKyGKQFyYL7oEKu1+fy7kR0RE7WFTuDGpra2Fl5cXBEHA7bffbq+ayE0dznXMeBsT01o3NRqGGyIiapvV4SYtLQ0pKSlITk5GSkoKEhMT4eNjn/2DyL3tPV0KAEiND3fI/blKMRERtYfV4WbKlCnIysrC0qVLcebMGQiCgL59+yI5OdniFRkZ6Yh6yUVVN+hwJK8SADCmb4RDnsFuKSIiag+rw81LL71k/v7gwYOYOnUqEhISIAgCVq1ahRMnTkAQBERFRaGwsNCuxZLr2n+mDHqDiPgIf8SF+TnkGQw3RETUHh0aczNnzhx88MEHuOOOO8zHfvrpJzz66KOYOXNmh4sj97GnqUvq2j6OabUBLnVLqdktRUREV9ChRfyOHz+O5ORki2M333wz/vnPf2Lfvn0duTW5EVEUsevkRQCO65IC2HJDRETt06FwM2LECHzxxRctjicmJuLgwYMduTW5keNF1ThfVgdvLxnSejtmMDHAAcVERNQ+HeqWWrZsGa6//nrk5ubiqaeeQkJCArRaLZYuXYqICMf9C55cyw9ZxrFV1/XvYg4gjsCWGyIiao8OhZthw4bhwIEDmDdvHpKTk6FQKGAwGODl5YXPPvvMXjWSCxNFET9kFQEApiTFOvRZQQw3RETUDh0KNwAwYMAAbN26FXl5ecjMzIRMJsOwYcO4/UInkXWhCnnldfBRyHDDAMdO/2e3FBERtYdN4WbRokW4/fbbMWzYMPOx7t27o3v37nYrjNzDV7/lAQBuHBQNf2WHs/IVNe+WEkURgiA49HlEROSebBpQfOHCBUyePBndunXDnDlz8L///Q9ardbetZGLq6rXYWOGcbzN/amOD7amlptGg4gGncHhzyMiIvdkU7hZuXIlVCoV1q1bh8DAQMyfPx8RERG46667sHr1apSXl9u7TnJBq/edR71Oj/5RgRgZH+bw5/kp5DA11rBrioiI2mLzVHCZTIYxY8bgrbfeQk5ODg4cOIDU1FR89NFHiI2NxdixY/HOO++goKDAnvWSi1A36PDpnnMAgMeu6y1JF5FMJiCgqetLzUHFRETUhg6tc9PcwIED8dxzz2Hv3r3Iz8/HzJkzsXv3bqxbt85ejyAXsnzLSVTV69AnMgC3OHiWVHNBHFRMRERXYbdwY7Jlyxb4+vri4YcfxsSJE3Hy5EmcOHHC3o8hJ/rtfDm+2HceAPC3WwdBLpNuYC/XuiEioqux+/SWZ555Br///jt+/fVXrF27Fk8++SQefvhh7N27196PsvDBBx/g7bffhkqlwpAhQ/CPf/wDI0eObPP8//znP3j55Zdx/vx59O3bF0uWLMHNN9/s0Bo9QX55HeatPQKDCNyZ0hVj+naR9PlBHrK/lMEgoqxWi5LqBpSoNSipbkCxWoPqBh10ehE6vQGNehE6g/GrCMBbLoNSITN/VXrJofSSwUchh7+3HH5KLwQo5fDz9oK/txf8lHLzVz+FHF5yu/9bhojIJTls7u7GjRvxl7/8BX/605+Qnp7uqMcAANavX48FCxZgxYoVSE1NxbvvvotJkyYhJycHkZEt117Zt28f7rnnHqSnp+OWW27B2rVrMXXqVBw5cgQJCQkOrdVdiaKInScv4vlvslCs1qBvZABemyr9n1WQrzHcVNa5T7jRG0ScLqnB7xcq8Xt+JbIuVOGESg2dXpS0DqWXDP5KL/h5yy3Dj7f80vFWPvdRGEOUQi6DQi5A4WUMWOb3ctmlz72ajslkkEnYokdE1JwgiqJd/ws7efJkREREYNeuXcjMzISfnx9GjBiBrKwsez7GQmpqKkaMGIH3338fAGAwGBAXF4fHH38cL7zwQovzp0+fjtraWvzwww/mY6NGjUJycjJWrFjRrmeq1WoEBwdj5S9H4esfCABo/gdp+lMVm442/1MWLz+p2THzdVf4zPJYy//5Ln+25bHW7tWyRhONTo8LlfXIulCF0yU1AIC+kQH41yOpiAzyaXmBgz339e/496ELeGZiP8y7vq/kz2+vBp0eO3Iu4r9ZhdhxogS1Wn2LcwQBCPdXIipIichAJaKCfBDsq4BCLoNXU2jwkgnmFhdtowHaRgM0jfqmr8bvG3QG1GkbUavRG79q9ajTGL/WahrRaJA2RJl4yQRzAPI2BaKmEOQlEyAIAuQyQC6YvhcgEwCZ+XsBsqZj8ubfm65tOk8wfd50jlxmvIes2SB3QQAECObZdoLpmCDAfFazc4RWrhOa3Uxo9tml8y7d86rPbXbMeN6le146z7pwaMuYfqsvsbYmx96+6RmO/XOyJaJb/wzHF+Vq/9Soq6nGg9cNRlVVFYKCgux+f7u33Hz99df4+eefsWjRIoSGhqKoqAjvvPOOvR9jptVqcfjwYSxcuNB8TCaTYcKECdi/f3+r1+zfvx8LFiywODZp0iRs3LixzedoNBpoNBrze7VaDQD42/d/QKb068BP4D6UXjLcl9oDz0zqBz9vxy7Y15ZQP28AQIULttyIooi9p8vwbcYFbD5WjBrNpXFB/t5yJHQNRnJcCJK6hSCxazBiQ3wk6SrSNhpahB7z1+ahyByOGlGn0Ru/avWo0+qh0xuDlU5vgE4vmr/X6i8d018WohoNIhoNetS73v9URORkBk2dQ+/fod9Q+/btQ1BQkEVXjr+/P+68807z+5iYGIduxVBaWgq9Xo+oqCiL41FRUW0OZFapVK2er1Kp2nxOeno6Fi9e3OL4+P4R8PYNAJr9C86k+b/+jO8t/0XX8nzB4sLmSdv0rzjLY5c/p9n9W3xj+a/Mtu9lWaNcJiA2xBe9u/gjrXcEgn0dtzFme4SYw43rLBpp6rJ7d+spZOZXmo/HBvvgliGxmJIYg4SuwZIOvG7O20sGby9vhDg4g+sNYlPQaSMANYrQNoUkg2gMQ3pRhCiK0BsAgyjC0HTMIBrHJZnOMzQd0xtM54vQizB/bxBhea7B2B4pisaWSeNXI9MxiJYtoKZzmrd8Xt6Sevk9mx+DxflWPNf8meUxq9jQOGftU6xt47f6fBt+COuf4dj72/IUR/8Mxmc4p/X2SjT1NXDkXOoOhZu5c+di3rx5LcapnDlzBpGRkQgMDOxQca5k4cKFFq09arUacXFxeP/eYQ5pUqPWhfq51pibPadKsWxLDo7kVQIAfBQy3D2sG6Ymd8XQ7qGdatyJXCZALpPDRyF3dilE5OLUajXWzXXc/TsUbnJycjB+/PgWx7du3Yr//ve/FmNaHCUiIgJyuRzFxcUWx4uLixEdHd3qNdHR0VadDwBKpRJKpbLjBVOHmFpuymud23KjbtDhle+O4dsM4yKVSi8Z7h/VA/83rhciA6Ufi0RERJd0qMM/KCgIFRUVLY6PGTMGv/76a0du3W7e3t4YNmwYtm3bZj5mMBiwbds2pKWltXpNWlqaxfmAcX2ets4n13Gp5cZ54Wbf6VLctHwXvs0ogEwAHhzdE7ufuw4v3zKIwYaIyAV0qOXmpptuwjvvvIOvvvrK4rhMJpN0I80FCxZg5syZGD58OEaOHIl3330XtbW1mDVrFgBgxowZ6Nq1q3lK+pNPPolx48Zh6dKlmDJlCr766iscOnQIH3/8sWQ1k23C/J03oFhvEPHm/47jk93GbSd6hPth2Z+GYFgPx++rRURE7dehcPPaa69h5MiRuOuuu/DKK68gMTERDQ0NWLJkCZKSkuxV41VNnz4dFy9exKJFi6BSqZCcnIxNmzaZBw3n5eVBJrvUSDV69GisXbsWL730Ev7617+ib9++2LhxI9e4cQOmbil1gw56gyjZIN0GnR5PrMvA5j+M3Zn3pnbHizcPhL/SObPGiIiobR1e5yY3Nxdz5szBpk2boFQq0djYiODgYPz3v//16G4e0zo3jpqjT63T6Q3o++L/AABHXr7R3JLjSFX1Osz+4hAOni+Ht5cM705Pxs2JjpsBSETk6Rz9O9Tqf3ampaUhJSUFycnJSE5ORlJSEn766Sfk5eUhMzMTCoUCqampCAtjUz3Zn0IuQ6DSC9WaRlTUaR0ebkrUDXjgs4PIKa5GoNILn8wcjlG9wh36TCIi6hirw82UKVOQlZWFpUuX4syZMxAEAX379jWHneTkZDQ2clNDcpwQf4Ux3NRqAQdubVXdoMPMz39DTnE1IgOV+OKhkRgYw1Y6IiJXZ3W4eemll8zfHzx4EFOnTkVCQgIEQcCqVatw4sQJCIKAqKgoFBYW2rVYIsC4SnF+eb1DBxXr9AY89q8jOF6kRkSAEl//ZTS6h3eOlaiJiNxdh0ZDzpkzBx988AHuuOMO87GffvoJjz76KGbOnNnh4ohaE+rgVYpFUcSLG7Kx+1QpfBVyrHxwOIMNEZEb6dA6N8ePH0dycrLFsZtvvhn//Oc/sW/fvo7cmqhNjl7r5qNdZ/HvQxcgE4D3701BUrcQhzyHiIgco0PhZsSIEfjiiy9aHE9MTMTBgwc7cmuiNoU4cPPMzPxKvPNzDgBg8W2DccPAqKtcQURErqZD3VLLli3D9ddfj9zcXDz11FNISEiAVqvF0qVLERERYa8aiSyYu6XsvAVDraYR87/KQKNBxC1JMbh/VA+73p+IiKTRoXAzbNgwHDhwAPPmzUNycjIUCgUMBgO8vLzw2Wef2atGIgthAcZwU2bncPPqf//A+bI6xAb74P9NTbTYZZ2IiNxHh5dXHTBgALZu3Wpe50Ymk2HYsGGIieEiZ+QYXQKMG5iW1mjsds/Nx1RYfygfggAsm56M4KZxPURE5H7stnZ89+7d0b17d3vdjqhNXQKN4eZitX3CTb1Wj1e+PwYA+L+xvblIHxGRm+vQgGIiZ4hsFm46uHsIAOCfO06jsKoBXUN88eQNfTt8PyIici6GG3I7EU3dUppGA2o0HVsN+3xpLT7aeRYA8PItg+DrLe9wfURE5FwMN+R2fL3lCGjajbujXVOv/fAHtHoDxvSNwKTBnPZNROQJGG7ILdlj3M3+M2XYdqIECrmAV24bzNlRREQeguGG3NKlGVO2TQcXRRHLt5wEAPx5RHf07hJgt9qIiMi5GG7ILXUJMoYblbrBpuv3nC7FwfPl8PaSYe51fexZGhERORnDDbml2GAfAEBRZb3V14qiiKWbja0296V2R3TTvYiIyDMw3JBbign2BQAUVVnfcrPj5EVk5lfCRyHDnPG97V0aERE5GcMNuaXYEGNrS2GV9S03n+wyTv2+P7UHIgPZakNE5GkYbsgtmVtuKq1rufmjUI19Z8oglwmYdW28I0ojIiInY7ghtxTT1HJTUt0And7Q7utW7j0HALgpIRpdQ3wdUhsRETkXww25pQh/JRRyAQYRKG7njKmS6gZ8n1kIAHiYrTZERB6L4YbckkwmmLumCiraN+7my1/zoNUbkNI9BEO7hzqyPCIiciKGG3JbPSP8AQDnSmuvem6DTo9//ZoLgK02RESejuGG3FYvK8LNd5kFKKvVomuIL24aHO3o0oiIyIkYbsht9epiDDdnrxJuRFHEZ3uMA4kfHN0TXnL+tSci8mT8rzy5rfimlpuzF2uueN6e06U4WVwDf285po+Mk6I0IiJyIoYbclumcJNXXofGK0wH/3S3sdVm2vA4BPkoJKmNiIich+GG3FZssC98FDLo9CLOl9W1es7pkmrsPHkRggDMuqantAUSEZFTMNyQ25LJBCR2DQYAZOZXtnrOZ3vOAwBuHBiFHuH+ElVGRETOxHBDbi05LgQAkJlf0eKz8lotvj1yAQCnfxMRdSZuH27Ky8tx3333ISgoCCEhIXj44YdRU3PlAabjx4+HIAgWr7/85S8SVUz2lNK0GF9GXmWLz1buOQdNowEJXYMwMj5M4sqIiMhZvJxdQEfdd999KCoqwpYtW6DT6TBr1iw8+uijWLt27RWvmz17Nl599VXzez8/P0eXSg6Q0j0EAHBCVY1aTSP8lca/0hW1Wqzadx4A8Pj1fSEIgpMqJCIiqbl1y83x48exadMmfPrpp0hNTcW1116Lf/zjH/jqq69QWFh4xWv9/PwQHR1tfgUFBUlUNdlTTLAveob7QW8Q8fMxlfn4Z3vOoUbTiIExQZg4KMqJFRIRkdTcOtzs378fISEhGD58uPnYhAkTIJPJcODAgSte+69//QsRERFISEjAwoULUVfX+mwbE41GA7VabfEi13Dn0G4AgP8cMo6vyVFV4+PdZwEAT97Qh602RESdjFt3S6lUKkRGRloc8/LyQlhYGFQqVRtXAffeey969OiB2NhYZGVl4fnnn0dOTg6+/fbbNq9JT0/H4sWL7VY72c9dw7ph+daT2H+2DBszCrBi5xloGw0Y378LJnGrBSKiTsclW25eeOGFFgN+L3+dOHHC5vs/+uijmDRpEhITE3Hfffdh9erV2LBhA86cOdPmNQsXLkRVVZX5lZ+fb/Pzyb66hvjitiGxAID56zNxQlWNiABvvH33ELbaEBF1Qi7ZcvP000/jwQcfvOI5vXr1QnR0NEpKSiyONzY2ory8HNHR7f8Xe2pqKgDg9OnT6N27d6vnKJVKKJXKdt+TpPX23UNgEIH//l6Ia/qEY+HkgegSyP+9iIg6I5cMN126dEGXLl2uel5aWhoqKytx+PBhDBs2DADwyy+/wGAwmANLe2RmZgIAYmJibKqXnM/bS4Z/3JOCN+5IQCC3WCAi6tRcsluqvQYOHIibbroJs2fPxsGDB7F3717MmzcPf/7znxEba+ymKCgowIABA3Dw4EEAwJkzZ/Daa6/h8OHDOH/+PL7//nvMmDEDY8eORVJSkjN/HLIDBhsiInLrcAMYZz0NGDAAN9xwA26++WZce+21+Pjjj82f63Q65OTkmGdDeXt7Y+vWrZg4cSIGDBiAp59+GnfddRf++9//OutHICIiIjsSRFEUnV2EO1Kr1QgODkZVVRXXyCEiIrKCo3+Hun3LDREREVFzDDdERETkUVxytpQ7MPXmcaViIiIi65h+dzpqZAzDjY2qq6sBAHFxcU6uhIiIyD1VV1cjODjY7vflgGIbGQwGFBYWIjAwkKvgEhERWUEURVRXVyM2NhYymf1HyDDcEBERkUfhgGIiIiLyKAw3RERE5FEYboiIiMijMNwQERGRR2G4ISIiIo/CcENEREQeheGGiIiIPArDDREREXkUhhsiIiLyKAw3RERE5FEYboiIiMijMNwQERGRR2G4ISIiIo/CcENEREQeheGGiIiIPArDDREREXkUhhsiIiLyKAw3RERE5FEYboiIiMijMNwQERGRR2G4sYNdu3bh1ltvRWxsLARBwMaNG626fseOHbj99tsRExMDf39/JCcn41//+leL8yorKzF37lzExMRAqVSiX79++Omnn+z0UxAREXkGL2cX4Alqa2sxZMgQPPTQQ7jzzjutvn7fvn1ISkrC888/j6ioKPzwww+YMWMGgoODccsttwAAtFotbrzxRkRGRuLrr79G165dkZubi5CQEDv/NERERO5NEEVRdHYRnkQQBGzYsAFTp041H9NoNHjxxRexbt06VFZWIiEhAUuWLMH48ePbvM+UKVMQFRWFlStXAgBWrFiBt99+GydOnIBCoXDwT0FEROS+2C0lgXnz5mH//v346quvkJWVhWnTpuGmm27CqVOn2rymqqoKYWFh5vfff/890tLSMHfuXERFRSEhIQFvvPEG9Hq9FD8CERGR22C3lIPl5eXh888/R15eHmJjYwEAzzzzDDZt2oTPP/8cb7zxRotr/v3vf+O3337DRx99ZD529uxZ/PLLL7jvvvvw008/4fTp03jssceg0+nwt7/9TbKfh4iIyNUx3DhYdnY29Ho9+vXrZ3Fco9EgPDy8xfnbt2/HrFmz8Mknn2Dw4MHm4waDAZGRkfj4448hl8sxbNgwFBQU4O2332a4ISIiaobhxsFqamogl8tx+PBhyOVyi88CAgIs3u/cuRO33norli9fjhkzZlh8FhMTA4VCYXGPgQMHQqVSQavVwtvb23E/BBERkRthuHGwlJQU6PV6lJSUYMyYMW2et2PHDtxyyy1YsmQJHn300RafX3PNNVi7di0MBgNkMuNQqZMnTyImJobBhoiIqBkOKLaDmpoaZGZmIjMzEwBw7tw5ZGZmIi8vD/369cN9992HGTNm4Ntvv8W5c+dw8OBBpKen48cffwRg7IqaMmUKnnjiCdx1111QqVRQqVQoLy83P2POnDkoLy/Hk08+iZMnT+LHH3/EG2+8gblz5zrjRyYiInJZnApuBzt27MB1113X4vjMmTOxatUq6HQ6vP7661i9ejUKCgoQERGBUaNGYfHixUhMTMSDDz6IL774osX148aNw44dO8zv9+/fj6eeegqZmZno2rUrHn74YTz//PMturuIiIg6M4YbIiIi8ijsliIiIiKPwnBDREREHoWzpWxkMBhQWFiIwMBACILg7HKIiIjc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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(3, 1, figsize=(6, 8), sharex=True)\n", + "\n", + "solute_0 = np.array(derived_quantities[3].data)\n", + "\n", + "dsurf_conc = np.diff(surf_conc) / np.diff(time)\n", + "J_bs = 1e13 * np.exp(-0.2 / F.k_B / T) * solute_0 * lambda_W * (1 - surf_conc / n_surf)\n", + "J_sb = 1e13 * np.exp(-1.5 / F.k_B / T) * surf_conc * (1 - solute_0 / n_IS)\n", + "\n", + "ax[0].plot(time / 1e-9, surf_conc)\n", + "ax[0].set_ylabel(\"Surface concentration [m$^{-2}$]\")\n", + "ax[0].tick_params(bottom=False, labelbottom=False)\n", + "\n", + "ax[1].plot(time[1:] / 1e-9, dsurf_conc)\n", + "ax[1].set_ylabel(r\"$dc_{\\mathrm{s}}/dt$ [m$^{-2}$s$^{-1}$]\")\n", + "ax[1].tick_params(bottom=False, labelbottom=False)\n", + "\n", + "ax[2].plot(time / 1e-9, J_bs, label=r\"$J_{\\mathrm{bs}}$\")\n", + "ax[2].plot(time / 1e-9, J_sb, label=r\"$J_{\\mathrm{sb}}$\")\n", + "ax[2].set_ylabel(\"Flux [m$^{-2}$s$^{-1}$]\")\n", + "ax[2].set_xlabel(\"Time [ns]\")\n", + "ax[2].legend()\n", + "ax[2].set_xlim(0, 500)\n", + "\n", + "plt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "festim-env", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}