{ "cells": [ { "cell_type": "code", "execution_count": 101, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 101, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from IPython.core.display import HTML, display\n", "css_file = './custom.css'\n", "HTML(open(css_file, \"r\").read())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 2021 CT : le sujet comporte trois exercices indépendents." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercice 1 : étude d'un schéma RK\n", "\n", "Soit le schéma de Runge-Kutta dont la matrice de Butcher est\n", "$$\n", "\\begin{array}{c|cc} 0 & 0 & 0\\\\ \\dfrac{\\eta}{4} & \\dfrac{\\eta}{4} & 0\\\\ \\hline & \\dfrac{3-\\mu}{3} & \\dfrac{\\mu}{3} \\end{array}\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ ">**Q1** \n", "Écrire le schéma sous la forme d'une suite définie par récurrence. \n", "Le schéma est explicite, semi-implicite ou implicite ?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Le schéma associé à cette matrice est explicite (car la matrice $\\mathbb{A}$ est triangulaire inférieure à diagonale nulle). \n", "On peut calculer $u_{n+1}$ à partir de $u_n$ par la formule de récurrence\n", "$$\\begin{cases}\n", "u_0\t = y_0 \\\\\n", "K_1 = \\varphi\\left(t_n,u_n\\right)\\\\\n", "K_2 = \\varphi\\left(t_{n}+\\dfrac{\\eta}{4}h,u_n+\\dfrac{\\eta}{4}hK_1\\right)\\\\\n", "u_{n+1} = u_n + \\dfrac{h}{3}\\left((3-\\mu) K_1+\\mu K_2\\right) & n=0,1,\\dots N-1\n", "\\end{cases}$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ ">**Q2** \n", "Sans faire de calculs, indiquer quel est l'ordre maximale du schéma." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Soit $\\omega$ l'ordre de la méthode et $s=2$ le nombre d'étages. Étant un schéma explicite, $\\omega\\le s=2$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ ">**Q3** \n", "Étudier théoriquement l'ordre du schéma en fonction de $\\eta$ et $\\mu$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "+ Si $\n", "\\begin{cases}\n", "\\displaystyle\\sum_{j=1}^s b_{i}=1&\n", "\\\\\n", "\\displaystyle c_i=\\sum_{j=1}^s a_{ij}&i=1,\\dots,s\n", "\\end{cases}\n", "$\n", "alors $\\omega\\ge1$\n", "\n", "+ Si $\\omega\\ge1$ et $\\displaystyle\\sum_{j=1}^s b_j c_j=\\frac{1}{2}$\n", "alors $\\omega\\ge2$\n", "\n", "D'après les calculs ci-dessous il est toujours au moins d'ordre 1 et il est d'ordre 2 ssi $\\eta\\mu=6$." ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Étude de la consistance (ordre 1)\n", "On a\n" ] }, { "data": { "text/latex": [ "$\\displaystyle \\sum_{j=1}^s b_j=1$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/latex": [ "$\\displaystyle i={}0\\quad \\sum_{j=1}^s a_{ij}-c_i=0$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/latex": [ "$\\displaystyle i={}1\\quad \\sum_{j=1}^s a_{ij}-c_i=0$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "alors le schéma est consistant (donc au moins d'ordre 1)\n", "\n", "Étude de l'Ordre 2\n", "on a\n" ] }, { "data": { "text/latex": [ "$\\displaystyle \\sum_{j=1}^s b_j c_j=\\frac{\\eta \\mu}{12}$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "alors le schéma est d'ordre 2 ssi\n", "\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAEgAAAAyCAYAAAD/VJ3gAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAFdklEQVRoBe2b7XHUMBCGL0wKCHTA0UGACjg64KOCkA5g8i//MtBBQgV8dABUAKQDoAIgHYT3EdpDkmX5HNucxbAzyknyrrT73u7qw5edy8vLRYmOj4+Xen4Kj+r3S7y1PJMd+9L1g8qJ6i9Kel8rPZTwUz3/ovJV5WGJt6Znsuvc23Ok+hcVnCBLO20eJKHnkgCgQ9XPstIz6fS6htq8Uh8gFEk8e2LAkwDotto4QkRZDxLjSlyAc6b6bMGRbkuVz9LznT6fUVTH2DcqnST+CzHd84wujaRCWYDExEQLDXCYCsysDRB4y/tAL7yi4QnB86jqQcIJVqqTmyLajVp/GnhQOOmfJzOpyZgHUgWDzAOcZuq/ykLySsJEDHZHodnwIE3ANwDhfnMmvPtC+o6hp3ncrdTgNg+C70fKPLP2HenzVQDhRY9Vvqtg4Bv1jeb9JYA016zJPP2OAHE5E21V/6lyoPJ2DO0bITbGoFOPIeMNnH3V01X2teZ/GfAMUqdKgAKLLXcEXQuWfQAkBAdTlQDJOywx22cOiGWus29flQB5I0nEFmo5u3PeleMr9tUMEDvfnJfcVj/L/ygrWbUACQBWqff65MzoSHU86pHKwe+e4X9rXuYXAuQ+AKnYOeqGILmndrQbHgJT1QBhuMBY74GGANEmW22ItRk0dv9/gGJECdGIcgAtPUdpjxENUntDYWq2NrYNOYBW3uB3tRveU38Su9m+Fs0l6SM95ZTcuY8QDwNymr6rwtKKi3JPA3Evw01f8VJcz7nzZrne9uXcifTgJuCJyvp8F3mQHthyuemlE8ssAOCaL1Ue0PZ9GMwSbCGrZkx6hhzPRzk3xaP3a0kX9lUAcxrqvAZInYDDJot9ROc2XTx4zkcVCCP31JfzlkZcOwn9Ef+FPq7rk93v1kl68KUC0mfVsW+xqwoGcAImBm+qjdKbEGF47uUBKN2PuAnUXwS7x3xOJ/GXX+RlNJfMTqY72yVe3uKQfwm30zAH9bpBlLABaYktzVmEKSAaX1ahvp0ab2Nj+46d8JNPF9cwQMXuYr+pbt98wt/aBAg8KQUC4FLQWgeZywPZwZsS8imp5kWYg4g/buM+6AEhsyk1gJD8noQZY6P3U5tONDWf9Obgyyq8Ps+tAWJyMQASobaRYQEQ6Z7Jwu4T47YR8iqXKuTArZJ0QGde/ZCDyMeOIoB8H6sZd71mpO/OfrjlWbxpKLWFXTSI5AhLkngRyEhouoZbZKTTeg/EVLuZ+cxYjLR6hs15HBs8y18hD+Cyr+ikFvlOuQkY0HntOTZ+zoNsWSaPdJIMNH7Hq7blnzTsOsfaFoPXmekjW+jIAUT/EHKhqUmL3jdkggllG1udKQBy+WdCI/7q0FMARJL/Z35slUvSg74hhVYj0Q0asCCsuZZ6zLnpesimNmHOSpw7G4asnfUpPKhz0hEZbN+WDsmGL7e6pnyd7doBwlOixUBewyrKcWmUVbR2gHJAuFU0BU7tK1G1APk8g9GRB6nNKjraLUK1ABWAwIPcLt6Hm5pXp5oBAohoxRQgS/VRLP8cXR2a35K7QwfYhnyQiNPjkN1qEmIAxQuBQVQCyN2oDRp9OmG75OewzNXMR6ZSnasKQGH5/676pvugVlsbAGlQbhg1/iL9duibC7FT5xYTICLqAUooZ7ZehJ3U23IQK8NKk5lgKrft9koKpKvXEJ0YD+L30hG1AWSxPDjJRbON0PBfGvnFEvGgUf142IlHRkmfgbMAeUbi96nq3NHOiSz/DL6F9ODwzyxQ9oCdBQhuCeNFFPd+iL6ZEMDwRreRL/roJ3nCyn4Rm/1PH8Zr/Xcom0wD4c5cYSxUZ5daPckOjih4zonqxZXuF1kMr3YVotWHAAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle \\left\\{ \\eta : \\frac{6}{\\mu}\\right\\}$" ], "text/plain": [ "⎧ 6⎫\n", "⎨η: ─⎬\n", "⎩ μ⎭" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import sympy as sym\n", "sym.init_printing()\n", "\n", "from IPython.display import display, Math\n", "\n", "sym.var('eta,mu')\n", "\n", "c=[0,sym.S(eta)/4]\n", "b=[sym.S(3-mu)/3,sym.S(mu)/3]\n", "A=[[0,0],[sym.S(eta)/4,0]]\n", "s=len(c)\n", "\n", "print('Étude de la consistance (ordre 1)\\nOn a')\n", "calc=[sum(b)]\n", "display(Math(r'\\sum_{j=1}^s b_j='+sym.latex(calc[0]) ))\n", "for i in range(s):\n", " calc.append(sum(A[i])-c[i]) \n", " display(Math(r'i={}'+str(i)+'\\quad \\sum_{j=1}^s a_{ij}-c_i='+sym.latex(calc[-1])))\n", "\n", "if calc[0]!=1 or sum([calc[i+1]==0 for i in range(s)])**Q4** \n", "Étudier théoriquement la A-stabilité du schéma pour les valeurs de $\\eta$ et $\\mu$ qui donnent l'ordre maximal. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Soit $\\beta>0$ un nombre réel positif et considérons le problème de Cauchy\n", "$$\\begin{cases}\n", "y'(t)=-\\beta y(t), &\\text{pour }t>0,\\\\\n", "y(0)=1.\n", "\\end{cases}$$\n", "Sa solution est $y(t)=e^{-\\beta t}$ donc $$\\lim_{t\\to+\\infty}|y(t)|=0.$$\n", "\n", "Le schéma appliqué à ce problème de Cauchy s'écrit\n", "$$\\begin{cases}\n", "u_0\t = y_0 \\\\\n", "K_1 = -\\beta u_n \\\\\n", "K_2 = -\\beta\\left(u_n+\\dfrac{\\eta}{4}hK_1\\right)\\\\\n", "u_{n+1} = u_n + \\dfrac{h}{3}\\left((3-\\mu)K_1+\\mu K_2\\right) & n=0,1,\\dots N-1\n", "\\end{cases}$$" ] }, { "cell_type": "code", "execution_count": 107, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle K_1=- \\beta u_{n}$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/latex": [ "$\\displaystyle K_2=\\frac{\\beta u_{n} \\left(\\beta dt \\eta - 4\\right)}{4}$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/latex": [ "$\\displaystyle u_{n+1}=\\frac{u_{n} \\left(\\beta^{2} dt^{2} \\eta \\mu - 12 \\beta dt + 12\\right)}{12}$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import sympy as sym\n", "sym.init_printing()\n", "from IPython.display import display, Math\n", "\n", "# pour ne pas effacer l'affectation de \"h\", ici je vais l'appeler \"dt\"\n", "sym.var('u_n,u_np1,beta,dt,x, eta,mu')\n", "\n", "K1 = -beta*u_n\n", "display(Math('K_1='+sym.latex(K1)))\n", "K2 = -beta*(u_n+sym.S(eta)/4*dt*K1).factor()\n", "display(Math('K_2='+sym.latex(K2)))\n", "u_np1 = (u_n+dt*(sym.S(3-mu)/3*K1+sym.S(mu)/3*K2)).factor()\n", "display(Math('u_{n+1}='+sym.latex(u_np1)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Donc, étant donné que pour avoir l'ordre deux on a $\\eta\\mu=6$, alors \n", "$$\n", "u_{n+1} \n", "= \n", "\\left(\\dfrac{1}{2}(\\beta h)^2 -(\\beta h)+1\\right)u_n\n", "$$\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "On note $x=\\beta h$ et on étudie la fonction $q\\colon \\mathbb{R}^+\\to\\mathbb{R}$ définie par $q(x)=\\frac{1}{2}x^2-x+1$ car le schéma est A-stable ssi $|q(x)|<1$. \n", "Il s'agit d'une parabole convexe de sommet en $x_s=1$ et $q(x_s)=\\frac{1}{2}>-1$ donc $q(x)<1$ pour $00$ pour tout $x$.\n", "On conclut que le schéma est A-stable pour tout $h<\\dfrac{2}{\\beta}$.\n", "\n", "On peut vérifier les calculs avec `sympy`:" ] }, { "cell_type": "code", "execution_count": 89, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle q(x)=\\frac{x^{2}}{2} - x + 1$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/latex": [ "$\\displaystyle q(0)=1$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/latex": [ "$\\displaystyle \\lim_{x \\to \\infty}\\left(\\frac{x^{2}}{2} - x + 1\\right)=\\infty$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "On cherche les points stationnaires dans R^+\n" ] }, { "data": { "text/latex": [ "$\\displaystyle q'(x)=x - 1$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "q est une parabole dont le sommet est\n" ] }, { "data": { "text/latex": [ "$\\displaystyle q'(x)=0 \\iff x\\in\\left[ 1\\right]$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/latex": [ "$\\displaystyle x=1\\text{ est un minimum et}$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/latex": [ "$\\displaystyle q(1)=\\frac{1}{2}$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Conclusion: -1-1\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAACoAAAAOCAYAAABZ/o57AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAB0UlEQVRIDb2W7U0CQRCGD0IBqB1oBxAqEDuA2IF0oH/5Z6ADtAKFDqAEpAOxA0MH+Dzn7uVyhFNAb5JhZudj592vOWrb7TYZDodvSZI04Q38GWQLKWlbw/rPg1yTc4NeGTVCJUH1KT6LldHv0UfwAP0pZ++hP8dxVbIOCHdqlgdZVjzELcti/sNXZ1KPc37g5KuwwAPTjg8XqDvqHTyE3gl2gZVRg51ZHVHNhU3JvUQ+wo47cBfuwy7ee6x/QZy2BHmHGMBpHuOx9kiMtT/AbsQF3MRmfFL351Ai2eLtkHcV5ATpo+zi82rot4MIOiVsPsprOLN9e9JFmGv3GRE3hlPASG3HATUxkEAE5mN0V8+QWYdgvHOl8G9CblFMMbyGeVIfujveQvZieyom/XZs0QxMCYjS+chzNz32dPcKwV7NzqlAndNdPZUEKbUB7T3Ok1dq+RdA9x1lvthPejyVOUCzj04+qZ4fVKEDJO5eVg6bx+uCbzNjTsHfPRVok/nkfeSHpAjMFiYo20+e7AY+TP0ZMfYzvq75pyRSCLLn2cxNEISTLmDv4oQYW48++5vf/eh/wb5zbNi8Y5K90dhX+AOWlvizPzfoLsq2JMVeas31Fx2vogF49TMKAAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle \\text{True}$" ], "text/plain": [ "True" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Notons que q(x)>0 pour tout 0-1\")\n", "display(sym.solve(q>-1))\n", "print(\"Notons que q(x)>0 pour tout 00))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ ">**Pour la question 5 on va fixer $\\eta$ et $\\mu$. Pour cela, écrire votre nom et prénom dans la cellule ci-dessous et vous obtiendrez un choix pour les paramètres.**" ] }, { "cell_type": "code", "execution_count": 113, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle \\eta=1$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/latex": [ "$\\displaystyle \\mu=6$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from IPython.display import display, Math\n", "import sympy \n", "sympy.init_printing()\n", "\n", "nom=\"Faccanoni\"\n", "prenom=\"Gloria\"\n", "\n", "L=[1,2,3,6]\n", "idx=sum([ord(c) for c in nom+prenom])%len(L)\n", "display(Math(r'\\eta='+sympy.latex(L[idx])))\n", "display(Math(r'\\mu='+sympy.latex(sympy.S(6)/L[idx])))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ ">**Q5** \n", "Implémenter le schéma avec les valeurs de $\\eta$ et $\\mu$ trouvé avec vos nom et prénom et approcher la solution du problème de Cauchy suivant avec $N+1$ points (quelles valers de $N$ peut-on choisir? justifier la réponse)\n", "$$\n", " \\begin{cases}\n", " y'(t)=-50y(t), &t\\in[0;1]\\\\\n", " y(0)=1\n", " \\end{cases}\n", "$$ \n", " Vérifier ensuite empiriquement l'ordre de convergence." ] }, { "cell_type": "code", "execution_count": 114, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmEAAAFRCAYAAAA8Z3p7AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nO3de5RdZX3/8fc3CSGZJGSGgFEJk0ldyC0JCQQoautgawWqYpe1BadaRTs/qGhdLi8gVeuqQbRYLxSNwSrVTrn8flZFDRctHWyLaEBiCMbQSC6E2Mo1yeRCMsnz+2PPhMnkTOacOWeffSbzfq0168x+9jN7f3MewnzyPPvsHSklJEmSVF/jii5AkiRpLDKESZIkFcAQJkmSVABDmCRJUgEMYZIkSQUwhEmSJBXAECZJklQAQ5gkSVIBDGGSNEhEPBYRpxddh6TDmyFMUl1EREtEpIj48aD2L0fEZys8VndE7IqInr6vNYP2Hx0R34qI7RGxISLeXEmdwIuBX1ZSU4njlF3DofpGxJER8Y997dsi4sGIOL+a2iQ1BkOYpHpZAPwPcEpEvGhQ+4oRHO/ylNLUvq8TB+27HtgNzAQ6gC9FxKllHncesC6ltGMENY20hkP1nQA8BrwSmA58BLg1ItqqrE9SwQxhkuplAXA/8APg9QARMZ4s9DxYq5NExBTgjcBHUko9KaX/BG4D3lLmIeYDv4qIz0fEExGxOSJenVcNw/VNKW1PKf1NSml9SmlfSul7wDrgjEpqktR4DGGS6mUh2YzXt4E39LWdBIwHVgNExPci4tkhvr436HifjIgnI+K/IqJ9QPtLgb0ppUcGtP0cKHcmbD6wCFhGNjP1ZeBD/TvLrLGSGiqqNyJm9v3Mw2X+eSQ1qAlFFyBpzFgAfAe4G1gSEdP62lallPYApJReW+axPgT8gmwJ7yLguxGxIKX0K2AqsGVQ/y3AtDKPPQ9YnFK6EyAifgH8Tv/OMmuspIay+0bEEUAX8E8ppaquWZNUPGfCJOUuIo4ETgZWpJSeAX4KnM/zs2MVSSn9JKW0LaX0XErpn4D/Ai7o290DHDXoR44CtpVRZwBzge8OaJ5LFvgqUUkNZfWNiHHAN8iC5+UV1iOpARnCJNXDXGAn8Gjfdv+S5EIGXA8WEbcP+MTj4K/bD3H8BETf948AEyLihAH7T6O85bs5fa9rB7QdEBTLrLGSGobt2xcO/5FsefSN/TOHkka3SCkVXYOkw1xEvBP485TS7/Rtzya77mkf8Pq+i9HLPVYzcDZwD9AL/CmwFDg9pbSmr8/NZMHsnWRLnsuAl6WUHu7bfyNASultg479BuCDKaWXDWh7DHhDSumBCv/Mh6yhkr4RsaSv/fdTSj2V1CGpcTkTJqkeDrgNRUppA7AeaCYLY5U4AvgE8ATwJPBuspA08F5hfwlMBn4D3ARcNij8HE+2hDnYvIH1RMQM4IXAqgprHLaGvhm1Dw/Xty+w/h/6bvExYNatYwQ1SWogzoRJGlMiYiJZ0Jrvsp6kIhnCJEmSCuBypCRJUgEMYZIkSQUwhEmSJBXAECZJklSAUffYomOOOSa1tbXlfp7t27czZcqU3M+j8jkmjccxaUyOS+NxTBpTPcblgQceeDKldGypfaMuhLW1tXH//ffnfp7u7m7a29tzP4/K55g0HsekMTkujccxaUz1GJeI2DDUPpcjJUmSCmAIkyRJKoAhTJIkqQCj7powSZJUrD179rBp0yZ27dpVdClVmT59OqtXr67JsSZNmsSsWbM44ogjyv4ZQ5gkSarIpk2bmDZtGm1tbURE0eWM2LZt25g2bVrVx0kp8dRTT7Fp0ybmzJlT9s+5HClJkiqya9cuZsyYMaoDWC1FBDNmzKh4ZtAQJkmSKmYAO9BI3o/cQlhEfDUifhMRq4bYHxHxhYhYGxErI+L0vGqpSFcXtLXxyle9Ctrasm1JktRQxo8fz4IFC/Z/XXPNNTU79ooVK1i2bFnNjjeUPK8JuxH4B+DrQ+w/Hzih7+ts4Et9r8Xp6oLOTtixgwDYsCHbBujoKLIySZI0wOTJk1mxYkUux16xYgX3338/F1xwQS7H75fbTFhK6UfA04fociHw9ZS5D2iOiBflVU9ZrroKduw4sG3HjqxdkiQ1tC1btnDiiSeyZs0aAC6++GJuuOEGAC677DIWLVrEqaeeysc+9rH9P7N8+XJe9rKXcdppp3HWWWexZcsWPvrRj3LLLbewYMECbrnlFrZv384ll1zCmWeeycKFC/nOd75Tk3qL/HTkccBjA7Y39bX9enDHiOgEOgFmzpxJd3d3LgW9cuNGSq3opo0buSenc6p8PT09uY29RsYxaUyOS+M53MZk+vTpbNu2rdAadu7cyfz58/dvv+997+ONb3wjn/70p3nLW97CZZddxhNPPMFFF13Etm3buOKKKzj66KPZu3cvr3vd6zjvvPN4yUtewp/8yZ/wta99jTPOOIOtW7eyb98+PvzhD/Ozn/2Mz3zmMwB87GMf45xzzuHzn/88zz77LOeeey5nn332Qc+d3LVrV0XjXGQIK5l3SnVMKS0FlgIsWrQo5facp9bWbAlykGht9ZlfDcBnrzUex6QxOS6N53Abk9WrV++/tcN73wu1XhVcsAA+97lD95k8eTIrV648qP3CCy/k+9//Pu9///v5+c9/vr/Orq4uli5dSm9vL7/+9a/ZsGEDEcGLX/zi/WPT33fSpElMnDhx/3Z3dzd33HEH119/PQC7d+/mmWee4YUvfOEB5540aRILFy4s+89ZZAjbBBw/YHsWsLmgWjKLF5P+opPYOWBJsqkJFi8uriZJklS2ffv2sXr1aiZPnszTTz/NrFmzWLduHddeey3Lly+npaWFt73tbezatYuUUlmfakwp8c1vfpMTTzyxprUWGcJuAy6PiJvJLsjfklI6aCmyrvouvt/wZ1fRykZidmsWwLwoX5Kkkoabsaq3z372s5x88slcffXVXHLJJfz4xz9m69atTJkyhenTp/O///u/3H777bS3t/PSl76UzZs3s3z5cs4880y2bdvG5MmTmTZt2gHLra95zWu47rrruO6664gIHnzwwYpmvIaSWwiLiJuAduCYiNgEfAw4AiCltARYBlwArAV2AG/Pq5ZKREcHZ/xVB694xeN8+9vHFV2OJEkqYefOnSxYsGD/9nnnnccll1zCV77yFX76058ybdo0fvd3f5dPfOITfPzjH2fhwoWceuqp/NZv/RYvf/nLAZg4cSK33HIL7373u9m5cyeTJ0/mhz/8Ieeeey7XXHMNCxYs4Morr+QjH/kI733ve5k/fz4pJdra2vje975X9Z8htxCWUrp4mP0JeFde569GczNs2+YTnSRJalR79+4t2T7wWZB///d/v//7G2+88aC+27Zt48wzz+S+++47aN/y5csP2P7yl788wkqH5h3zS2hpge3bDWGSJCk/hrASWlqcCZMkSfkyhJXQ3Aw9PYYwSZKUH0NYCdlM2BFFlyFJkg5jhrASWlqymbBU8taxkiRJ1TOEldDcDHv2jGPXrqIrkSRJhytDWAktLdnrM88UW4ckSSpt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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%reset -f\n", "\n", "from matplotlib.pylab import *\n", "from scipy.optimize import fsolve\n", "\n", "# def RK(tt,phi,y0): # comme suite geometrique\n", "# x=beta*h\n", "# q=x**2/2-x+1\n", "# uu = [y0]\n", "# for i in range(len(tt)-1):\n", "# uu.append( q*uu[i] )\n", "# return uu\n", "\n", "\n", "eta, mu = 1, 6\n", "\n", "\n", "def RK(tt,phi,y0):\n", " uu = [y0]\n", " h = tt[1]-tt[0]\n", " for i in range(len(tt)-1):\n", " K1=phi(tt[i],uu[i])\n", " K2=phi(tt[i]+eta/4*h,uu[i]+eta/4*h*K1)\n", " uu.append( uu[i]+h/3*((3-mu)*K1+mu*K2) )\n", " return uu\n", "\n", "\n", "t0, y0, tfinal = 0, 1, 1\n", "beta=50\n", "\n", "phi = lambda t,y : -beta*y\n", "sol_exacte = lambda t : exp(-beta*t)\n", "\n", "figure(figsize=(10,5))\n", "N=50\n", "tt = linspace(t0,tfinal,N+1)\n", "h = tt[1]-tt[0]\n", "\n", "if h>=2/beta:\n", " print('Attention: h > limite de stabilité')\n", " \n", "yy = [sol_exacte(t) for t in tt] \n", "# uu = RK(tt)\n", "uu = RK(tt,phi,y0)\n", "plot(tt,yy,'b-',label=(\"Exacte\"))\n", "plot(tt,uu,'ro',label=(\"RK\"))\n", "title(r' $N$={}, $h$={}'.format(N,h))\n", "xlabel('$t$')\n", "ylabel('$u$')\n", "legend() \n", "grid(True)\n", "\n", "\n", "H = []\n", "err = []\n", "N = 50\n", "for k in range(7):\n", " N+=100\n", " tt = linspace(t0, tfinal, N + 1)\n", " h = tt[1] - tt[0]\n", " yy = [sol_exacte(t) for t in tt]\n", " uu = RK(tt,phi,y0)\n", " H.append(h)\n", " err.append(max([abs(uu[i] - yy[i]) for i in range(len(yy))]))\n", " \n", "omega=polyfit(log(H),log(err), 1)[0]\n", "figure(figsize=(8,5))\n", "plot(log(H), log(err), 'c-o')\n", "xlabel('$\\ln(h)$')\n", "ylabel('$\\ln(e)$')\n", "title(r'Ordre $\\omega$={:1.2f}'.format(omega))\n", "grid(True);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercice 2 : choix d'un schéma\n", "\n", ">Soit le problème de Cauchy\n", ">$$\n", " \\begin{cases}\n", " y'(t)=-10^2 \\Big(y(t)-\\cos(t)\\Big), &t\\in[0;2]\\\\\n", " y(0)=0\n", " \\end{cases}\n", "$$\n", ">\n", ">1. Calculer la solution exacte. \n", ">\n", ">1. Choisir le schéma le plus adapté parmi les suivants (en justifiant la réponse) \n", " - EE (Euler Explicite), \n", " - EI (Euler Implicite), \n", " - EM (Euler Modifié),\n", " - H (Heun). \n", ">1. Approcher ensuite la solution du problème donné avec $N=40$ avec le schéma choisi (on affichera la solution exacte et la solution approchée sur le même repère). " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- On définit la solution exacte (calculée en utilisant le module `sympy`):" ] }, { "cell_type": "code", "execution_count": 115, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\frac{d}{d t} y{\\left(t \\right)} = - 50 y{\\left(t \\right)} + 50 \\cos{\\left(t \\right)}$" ], "text/plain": [ "d \n", "──(y(t)) = -50⋅y(t) + 50⋅cos(t)\n", "dt " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle y{\\left(t \\right)} = \\left(C_{1} + \\frac{50 e^{50 t} \\sin{\\left(t \\right)}}{2501} + \\frac{2500 e^{50 t} \\cos{\\left(t \\right)}}{2501}\\right) e^{- 50 t}$" ], "text/plain": [ " ⎛ 50⋅t 50⋅t ⎞ \n", " ⎜ 50⋅ℯ ⋅sin(t) 2500⋅ℯ ⋅cos(t)⎟ -50⋅t\n", "y(t) = ⎜C₁ + ─────────────── + ─────────────────⎟⋅ℯ \n", " ⎝ 2501 2501 ⎠ " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\left\\{ C_{1} : - \\frac{2500}{2501}\\right\\}$" ], "text/plain": [ "⎧ -2500 ⎫\n", "⎨C₁: ──────⎬\n", "⎩ 2501 ⎭" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle y{\\left(t \\right)} = \\frac{50 \\sin{\\left(t \\right)}}{2501} + \\frac{2500 \\cos{\\left(t \\right)}}{2501} - \\frac{2500 e^{- 50 t}}{2501}$" ], "text/plain": [ " -50⋅t\n", " 50⋅sin(t) 2500⋅cos(t) 2500⋅ℯ \n", "y(t) = ───────── + ─────────── - ───────────\n", " 2501 2501 2501 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%reset -f\n", "%matplotlib inline\n", "\n", "import sympy as sym\n", "sym.init_printing()\n", "\n", "t = sym.Symbol('t')\n", "y = sym.Function('y')\n", "\n", "t0 = 0\n", "tfinal = 2\n", "y0 = 0\n", "\n", "edo= sym.Eq( sym.diff(y(t),t) , -50*(y(t)-sym.cos(t)) )\n", "display(edo)\n", "solgen = sym.dsolve(edo)\n", "display(solgen)\n", "\n", "consts = sym.solve( sym.Eq( y0, solgen.rhs.subs(t,t0)) , dict=True)[0]\n", "display(consts)\n", "solpar=solgen.subs(consts).simplify()\n", "display(solpar)\n", "\n", "sol_exacte = sym.lambdify(t,solpar.rhs,'numpy')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- Il s'agit d'une EDO stiff (le terme en exponentielle décroît très rapidement): on ne peut utiliser ni les schémas EE et EM ni le schéma H car la **condition de stabilité** est trop contraignante. Le schéma EI, en revanche, est inconditionnellement **A-stable**: on peut donc choisir le pas $h$ sans contrainte de stabilité.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- On calcule la solution approchée" ] }, { "cell_type": "code", "execution_count": 93, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "h=0.05\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from scipy.optimize import fsolve\n", "from matplotlib.pylab import *\n", "\n", "# variables globales\n", "t0 = 0\n", "tfinal = 2\n", "y0 = 0\n", "\n", "\n", "def EI(phi, tt, y0):\n", " h = tt[1] - tt[0]\n", " uu = [y0]\n", " for i in range(len(tt) - 1):\n", " temp = fsolve(lambda x: -x + uu[i] + h * phi(tt[i + 1], x), uu[i])\n", " uu.append(temp)\n", " return uu\n", "\n", "\n", "phi = lambda t,y : -50*(y-cos(t))\n", "N = 40\n", "tt = linspace(t0, tfinal, N + 1)\n", "h = tt[1] - tt[0]\n", "print(f'h={h}')\n", "yy = [sol_exacte(t) for t in tt]\n", "uu = EI(phi, tt, y0)\n", "err=(max([abs(uu[i] - yy[i]) for i in range(len(yy))]))\n", "\n", "figure(figsize=(8,5))\n", "plot(tt, uu, 'o',tt,yy,'r-')\n", "xlabel('$t$')\n", "ylabel('$y$')\n", "grid(True)\n", "show()\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercice 3 : choix d'un schéma\n", "\n", ">Soit le problème de Cauchy\n", ">$$\n", " \\begin{cases}\n", " y'(t)=\\alpha (y(t)-t), &t\\in[0;8]\\\\\n", " y(0)=\\dfrac{1}{\\alpha}+\\varepsilon\n", " \\end{cases}\n", "$$\n", ">\n", ">**Pour fixer $\\alpha$, écrire votre nom et prénom dans la cellule ci-dessous et vous obtiendrez un choix pour ce paramètre.**" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/latex": [ "$\\displaystyle \\alpha=2$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from IPython.display import display, Math\n", "import sympy\n", "sympy.init_printing()\n", "\n", "nom=\"Faccanoni\"\n", "prenom=\"Gloria\"\n", "\n", "L=[2,3,4,5]\n", "idx=sum([ord(c) for c in nom+prenom])%len(L)\n", "display(Math(r'\\alpha='+sympy.latex(L[idx])))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", ">\n", ">1. Calculer la solution exacte. \n", ">\n", ">1. Soit $\\varepsilon=0$.\n", "Parmi les schémas suivants, choisir le plus adapté (plusieurs réponses possibles, choix à justifier): \n", " - EE (Euler Explicite), \n", " - EI (Euler Implicite), \n", " - EM (Euler Modifié),\n", " - H (Heun). \n", ">1. Soit $\\varepsilon=0$. Approcher la solution du problème donné avec un des schémas choisis (on affichera la solution exacte et la solution approchée sur le même repère)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- On calcule la solution exacte (calculée en utilisant le module `sympy`) :" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle \\frac{d}{d t} y{\\left(t \\right)} = - 2 t + 2 y{\\left(t \\right)}$" ], "text/plain": [ "d \n", "──(y(t)) = -2⋅t + 2⋅y(t)\n", "dt " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle y{\\left(t \\right)} = \\left(C_{1} + \\frac{\\left(2 t + 1\\right) e^{- 2 t}}{2}\\right) e^{2 t}$" ], "text/plain": [ " ⎛ -2⋅t⎞ \n", " ⎜ (2⋅t + 1)⋅ℯ ⎟ 2⋅t\n", "y(t) = ⎜C₁ + ───────────────⎟⋅ℯ \n", " ⎝ 2 ⎠ " ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAEQAAAAVCAYAAAD/wUjgAAAACXBIWXMAAA7EAAAOxAGVKw4bAAADJElEQVRYCd2Y4VEVMRCAeQwFiCVgByIVgB0AHSgdyPAL/jHYgViBQgdgBSIdiBWAdvD8viPJ5OXuXo7nc+CxMztJdjeb3c1mk7vReDxeKuHo6OgFtDfS6V+W/EUe488a9r8Gr+nflL4slwSEPkD7FuhXJX/RxyEIBuKE/gXo5icY5RkCcxvOGbhK/0+S6ukEZe9hvwVzeRc6Bd2NPdr9HhWPSsauC+2m3YmGrMROaDdobxDInStE7ofImEkH4DG4k8+hvw1+gr4FnoBPFa4xzCRIUAYkMfo6OGqKmUXu/iZjlU4AtHPQrFFmoWpQq4ZMeNY9sL5YcNe7gpFNMWimY6twZTJPrvugDME5098KPXFEery6g/61h/dkyYMDQjBMf+uGNeZ8gEdmhnXkn4H1fqLkknZvqLJgr8X8ZZjTFPra/DIg1oe+ghqNGeQkBqmnVV9qBpV89GiTm9G8i0p+15g53nxmc2eNy+bc0o8Ba8iphoSI7kLtczhW4yHZka1539UxDQV/tJhTCMgbWJ8B61PEEgs5j7Q+vKNf2xB90a7o29Lo8PDQ6BtN232YnbcC9N9h8oi2Csi7UJNttBq5FSb5LnlVVTCjALot5jqYb9x36B+7VEI3Az+D+n+8AsGa4FvCI2FArsDGEcY5WCSdXAXma5A1pNkhxrY+ldNOVJXMLmDgvfbTY6ui6gB+SoZlhTUYjDXCaHVBkznIObkGG+qsCf0nvps26KrHRjfIi8Ja0/jXBCQzTCdM7y6IL86pu4xi5cy4xwIdG5TJyPky962UTkQZkF4nmGTUTUM/iqziEwBtC2yCQZsWmBCaYYAua9EYHFqMvWp3nReXCzrSONJDe5ePy2s357X6KPZsrsJovhRpo+MqPYM39484dLqDbsYVWAVkPf6bCGqj7xdtNBinYBUeFBC1sYgLxHpTXWAeAqz5oFsJeY/+TDYOPjLzcGwRdJQZ0nq5zcMJdmwt7JhX4hpja80tbefbYB5rDtThUTLjE5Q/iDTcc+fHW/6wSROeSwf/DMYv0LdXqi8TAdFZmAYlfhR9YfysAhP8s77oZ8u/vzJML/Pn5q8QAAAAAElFTkSuQmCC\n", "text/latex": [ "$\\displaystyle \\left\\{ C_{1} : \\epsilon\\right\\}$" ], "text/plain": [ "{C₁: ε}" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/latex": [ "$\\displaystyle y{\\left(t \\right)} = \\epsilon e^{2 t} + t + \\frac{1}{2}$" ], "text/plain": [ " 2⋅t 1\n", "y(t) = ε⋅ℯ + t + ─\n", " 2" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%reset -f\n", "%matplotlib inline\n", "\n", "a=2\n", "\n", "import sympy as sym\n", "sym.init_printing()\n", "\n", "t = sym.Symbol('t')\n", "epsilon = sym.Symbol('epsilon')\n", "y = sym.Function('y')\n", "\n", "t0 = 0\n", "y0 = sym.Rational(1,a)+epsilon\n", "\n", "edo= sym.Eq( sym.diff(y(t),t) , a*(y(t)-t) )\n", "display(edo)\n", "solgen = sym.dsolve(edo)\n", "display(solgen)\n", "\n", "consts = sym.solve( sym.Eq( y0, solgen.rhs.subs(t,t0)) , dict=True)[0]\n", "display(consts)\n", "solpar=solgen.subs(consts).simplify()\n", "display(solpar)\n", "\n", "\n", "from matplotlib.pylab import *\n", "tt=linspace(0,8,101)\n", "for val in [1.e-7,0,-1.e-7]:\n", " sol_exacte = sym.lambdify(t,solpar.rhs.subs(epsilon,val),'numpy')\n", " plot(tt,sol_exacte(tt))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- On remarque que c'est un problème de Cauchy numériquement mal posé (si $\\varepsilon=0$ la fonction est linéaire, avec $\\varepsilon>0$ elle croît comme une exponentielle et avec $\\varepsilon<0$ elle decroît comme une exponentielle): on doit donc choisir le schéma le plus précis parmi les schémas proposés, à savoir le schéma de Heun ou le schéma d'Euler Modifié qui sont d'ordre 2." ] }, { "cell_type": "code", "execution_count": 100, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA6gAAAFPCAYAAABAn+M7AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nOzdeZiN9f/H8edtnWEwSCOTyC57IyEJJSGRJdop0UJkVyoqKUNGZN8ipcUSGQY1YxnL176EUbJkRvbBcMZsn98fY8bwa1Ez5z5zznk9rutcyed27tc11/Xt9X0757yPZYxBRERERERExNVyuDqAiIiIiIiICGhAFRERERERkWxCA6qIiIiIiIhkCxpQRUREREREJFvQgCoiIiIiIiLZggZUERERERERyRY0oIqIiIiIiEi2oAFVJBuzLOuwZVkOy7LiMjzGW5bV2bIsY1nWJzdc3+bq789yUWQRERGvcrWrH7rh9zpblrXOVZlE3JkGVJHsr5Uxxi/Do8fV3z8IdLQsK1eGa58DDtgfUUREREQk8zSgirivP4DdQDMAy7KKAPWBxa4MJSIiIiLyX2lAFXFvs0l91RSgE/A9cMV1cURERERE/jsNqCLZ3yLLsmIzPF7KcLYQaGRZViFSB9XZrokoIiLi1a7ramCCqwOJuCsNqCLZXxtjjH+Gx9S0A2OMA1gKDAFuMcZEuiyliIiI97quq4FXXR1IxF3l+udLRCSbmw38BAxzdRARERERkczQgCri/lYDTYHtrg4iIiIiIpIZeouvSPa35IbvQV2Y8dCk+tEYc9ZVAUVEREREsoJljHF1BhERERERERG9gioiIiIiIiLZgwZUERERERERyRY0oIqIiIiIiEi2oAFVREREREREsgUNqCIiIiIiIpItZMvvQb3llltM6dKlM/08ly5dIn/+/JkPZDPltpdy289dsyu3vbIq99atW08bY4plQSSvpm5Wbjspt/3cNbty28uWbjbGZLtHUFCQyQrh4eFZ8jx2U257Kbf93DW7ctsrq3IDW0w26DZ3f6ibw10d4T9Rbnu5a25j3De7ctvLjm7WW3xFREREREQkW9CAKiIiIiIiItmCBlQRERERERHJFjSgioiIiIiISLagAVVERERERESyBQ2oIiIiIiIiki1oQBUREREREZFsIZerA4iIiGS0aHs0wWFRRMc6CNz4E/2bVaRNrUBXxxIREfFadnazBlQREck2Fm2PZvCC3TgSkwGIjnUweMFuAA2pIiIiLmB3N+stviIikm0Eh0XhSEym3pGd1DuyEwBHYjLBYVEuTiYiIuKd0rq5waHt3Hs0dTB1ZjfrFVQREck2Yk+e5f2ImTy7PZTIUtXZUKoGADGxDhcnExER8U7nT5zhw/AZPLVzOavvvJtNd1QDnNfNGlBFRCR7CA9n5ayeFD93gmm1WzOq4bPpRyX8fV0YTERExEv9+CMrZ/UkIPYkk+q0ZUyDp9OPnNXNGlBFRMS1Ll2CQYNg/HgKlizNs61GEnlb5fRj39w56d+sogsDioiIeJmLF2HAAJg0Cb9SZXi69Sg2FL/Wxc7sZn0GVUREXGfNGqheHT77DHr1wm//z3To/SSBV/9WNtDflxFtq2lBkoiIiF3Cw1O7efJk6NOHAvv20LFXR9u6Wa+gioiIbdLW1J87eY6hm+byxPqFUKYMRERAw4YAtKmVjza1AomIiKBRo0YuzSsiIuLp0ro59uRZ3tvwBe02fg/lyqX+JXKDBkDqtl67ulkDqoiI2CJtTX2VQ7uYuzSE0rHHmXPPY/iHjKJV/fKujiciIuJ10rq5+sEdfLlsLCVjTzC7TmsKjxlFq/rlXJJJA6qIiNji0yU76bd8Cl22LCa60K10evJDNt5RncA1v2tAFRERcYFxS3YwYNlkumxdwhH/4nR6agT/K1mVwDVHNaCKiIgHW7+e6SEvcee5GObUasGIRl24nCf1syz6ChkREREXWLuW6WNeonTscWbd/SgfP9AZRx4fwLXdrAFVREScx+GAt9+GTz7Bp9CtPNlpePp3m6bRV8iIiIjY6PJleOstGDuW3P7F09/RlJEru1lbfEVExDk2boRatWD0aOjena1LVrOj3N3XXaKvkBEREbHR+vVQsyaEhMCrr7JtSQQ7y9a67hJXd7NeQRURkSyRtgXw9OnzvLN5Hk+t+w7r9tth5Up46CEeBZLy+xEcFkVMrIMS/r70b1ZRXyEjIiLiBGm9HBProHT+HEz55XvKfzEFSpWCH3+EJk1oBSTny5+tulkDqoiIZFraFsCKR/by+dIxlDt7jG9qPUK+sWN49P5K6delrakXERER50nrZUdiMrWi9zMqNISyZ49xqP2z3DnjMyhQIP3a7NbNtgyolmW9AXQFDLAb6GKMibfj3iIi4nwhS3fTc9V0um9awAm/IjzXYRhrygQRGBlz3YAq2Ye6WUTEcwWHRZHicDBo7Re8tHkRxwsU5amOH3CkZj0iMwyn2ZHTB1TLsgKB14G7jDEOy7K+AToBs5x9bxERscHmzUwJ6U6FM0eZV/1hhjd5kYt58wPa0JtdqZtFRDzbrXt3pL+j6csaj/Bh4xeIy5sPyw162a63+OYCfC3LSgTyATE23VdERJzlyhV47z34+GP88xemc/uhRJStfd0l2tCbrambRUQ8TXw8DB3Kd18E84dfUZ594j3W3nltQaE79LLTB1RjTLRlWaOAo4ADWGGMWeHs+4qIiBNt2wbPPw979kDnzmzu0p9NK49CYnL6Ja7eAih/Td0sIuKBNm+Gzp1h715+f/xJOpRtx6mcPunH7tLLljHGuTewrMLAfKAjEAt8C3xnjPnihuu6Ad0AAgICgubNm5fpe8fFxeHn55fp57GbcttLue3nrtm9Nff6mETmH0jkTLwhIHcSo/d8w32L55FQuDBRfftytl69/3ddUR+LdhVyU79EbpflTtO4ceOtxpja/3yl91A3/3vKbS/ltp+7ZvfW3Bk7t3iuJEbvnkf9H74hoUgRovr352ydOlney1mRO83fdrMxxqkPoAMwPcO/PwdM+Ls/ExQUZLJCeHh4ljyP3ZTbXsptP3fN7o25F247ZioNWWZKDfzBtOg81uwtVtoYMEcebW/M2bNZF/JPZNXPG9hinNx17vZQN/97ym0v5bafu2b3xtwZu7nl8yFm/y13GAPm8GMdjTl3LutC/gk7utmOz6AeBepalpWP1LcRPQhsseG+IiKSScFhUSTFx9N7wze8tuEbzvkW5MV2b7O/diMiCxd2dTz579TNIiJuKq2b+0TO49WN33I6vz+d27/LL0ENifT3d3W8TLPjM6ibLMv6DtgGJAHbgSnOvq+IiGReoQM/M2VpCFVO/saCKo0Z9mA3zvsWcIstgPLX1M0iIu6r8P7dTAsNofKpw3xX9UHee/AlLvj4eUw327LF1xjzLvCuHfcSEZEskJgIH33E4s+Hcc63AN0ef4sVFeqlH7vDFkD5e+pmERE3k5AAw4ezaM5wzuQrxIvt3ubHcvemH3tKN9v1NTMiIuIudu9O3QK4bRvHH2nNE3c9xfHc+dOP3WULoIiIiMfYuTN1e/7OnRxv0ZYOlTvxR6586cee1M0aUEVEvNii7dEEh0URE+ugZIE8TIpZxV1Tx0DhwjB/PiXbtmVghmtK+PvSv1lF2tQKdHV0ERERj3R9N+dm8u9hVJ7+KRQtCosWUbJ1awZ5cDdrQBUR8VKLtkczeMFuHInJlD91hNGfj+GuP37l2MOPcfvc6XDLLQC0qRXoMaUnIiKSnWXs5konDzFqVgiVTxzk9+ZtKDlnWuqQimd3swZUEREvFRwWRcKVBF7dNJ9ekV9yMW9+Xmk9iF11mxJ5dTgVERER+wSHRZEYf4Uem77j9ch5nPfxo/vjb7KnzoNEXh1OPZ0GVBERL5Xv1yjmh46h5vFf+KFiA955+BXO5ivkMVsARURE3I3fL/uYGBpC9T9+ZUml+3mn6cuc87Ju1oAqIuJtkpJg9Gh++PxtLuX25bXHBrK08v3px56yBVBERMRtJCXByJEs+XwoF/Lm4+U2g1le8b70Y2/qZg2oIiLeZP/+1A29mzZxpklznqj+LMfyFkw/9qQtgCIiIm5h797UDb1btnCq6aN0qPo0MXkKpB97WzdrQBUR8VBpWwCjYx2UXL+SiafWUHViMOTPD199RYmOHem3I8ZjtwCKiIhkNxm7+Y7IlUw8GU6VSaOhYEH45hsCO3RggAdv6L0ZGlBFRDxQxi2AZc4cI3hOCFVj9nO8UTNu+2oWFC8OePYWQBERkewkYzeXPf07o2ePocrxA0Q/2ILAL2fCrbcC6mYNqCIiHig4LIorVxJ4ccti+q+dQ3yuPPR6tC9b6jcn8upwKiIiIvZJ6+ZumxfRd+0XXM7tQ89W/dlWrxmRV4dT0YAqIuKR8vz2K1+HjuWe6L2sLFeHN5v14JRfEazz8a6OJiIi4pV8Dv7Cd6FjuDsmirDydRny8Guc8iusbr6BBlQREU+SkgLjxrFs1kCu5MjFGy37sLBKY7AswLu2AIqIiGQLyckQEkLorDdx5MrD6636sbjyA+rmv6ABVUTEU/z6K7zwAqxdS2yDB3kiqAtHffzTj71tC6CIiIjLHTgAXbrA+vWcfeBhOtZ8nqM+hdKP1c3/nwZUERE3tCjDhr/AgnmZcH4D1cd/BLlzw8yZFH/+efpc3dAbHesg0Au3AIqIiNjpxm6eeDaSap99BD4+MGcOtz39tLr5JmhAFRFxMxm3AJaM/YPgL0Oo/vseTtRvRMDXc+D224FrWwAjIiJo1KiRa0OLiIh4sIzdXOpcDCPnjqXasZ/54/6HKD7vcyhRAlA33wwNqCIibiY4LIr4hESe2b6MwREzSbZy0L/566y//zEirw6nIiIiYp+0bn5+21IGRcwiMWcu+rZ4g40NWhJ5dTiVm6MBVUTEzVhHDvPFsrHcd2QXa0rXYmDz1zlesJi2AIqIiLhIzsOH+Co0hLq/7yG8TBCDHunJiQK3qJv/Aw2oIiLuwhiYPJkVM/qQDAxq1oN5NZppC6CIiIirpKTAxIksn9mPJFLf0fRttabq5kzQgCoi4g6OHIGuXWHVKuLuvZ9OdbryW76i6cfaAigiImKzQ4dSt+dHRHCx3gN0qv0ih/IVST9WN/83OVwdQERE/oYxMHUqVKsGGzfCpEncumE1r3d5kEB/Xywg0N+XEW2raQugiIiIHa6+akq1arB1K0ydSkBkOL26NFE3ZwG9gioiko1kXFFfiwtMXD2ZgI2roUkTmD4dSpcGrm0BFBEREee6rpvNBSZFTODW/62Dhx5K7eY77gDUzVlFA6qISDaRvqI+IYkndq3k7Z+mksMYdgz+kJofDIQcetOLiIiInTJ285M7w3grfDoWsP2tj6j1/oD0z5pK1nH6gGpZVkXg6wy/VQZ4xxgT4ux7i4i4k+CwKAqdOcHE5eNodGgrG+6oRv/mvTAF7yRSw6lkIXWziMjNCQ6LovCZ40xeNo6Gh7ezrlQNBjbvBX6liNRw6hROH1CNMVFATQDLsnIC0cBCZ99XRMStGEP9NYt5+6dp5EpJ4p2HujPn7pYYKwdWrMPV6cTDqJtFRG6CMTSMWMib4dPJYQxDHn6VL2o2B8tSNzuR3W/xfRA4aIw5YvN9RUSyr+ho6NaN4GWhbCpZlf7Ne3G08G3px1pRL06mbhYRudHvv8NLLzEiLIz1d1RnQPPXOeZfPP1Y3ew8dg+onYCvbL6niEj2ZAzMng29ekFCArv6D6NLntpcTjLpl2hFvdhA3SwiksYYmDkT3ngDkpLYOfADuuaqpW62kWWM+eersuJGlpUHiAGqGGNO/Ml5N6AbQEBAQNC8efMyfc+4uDj8/Pwy/Tx2U257Kbf93DV7ZnOvj0lk/oFEzsQbKiaeZXz4Z5TfvonYatWIGjgQR2DgddcU9bFoVyE39UvkdmluV8mq3I0bN95qjKmdBZE8jrr55im3vZTbfu6aPSu7uVLCGcb/NJ5yOzcTW6MG+wcMIL5ECXVzBrZ0szHGlgfQGlhxM9cGBQWZrBAeHp4lz2M35baXctvPXbNnJvfCbcdMpSHLTKkBS0zvln1MbN785nKuvGZX36HGJCdnXcg/4Y0/74yALcamrnO3h7r55im3vZTbfu6aPau6uW+L3ub81W7eOeA9dfNfsKOb7XyL75PoLUQi4qWCw6LwO3eaT8PG0/TXTWwOvIv+LXqReEs5begVV1I3i4jXCg6LosDZk4wPG8+DBzez6fYqDGjRi6TCZdXNLmTLgGpZVj6gKdDdjvuJiGQrxlB7/TKGrpyMb9IV3m/8IjNrP0ZKjpzaAiguo24WEa9mDPeuW8q7qyaTJzmJ95q8xMzarbQ9PxuwZUA1xlwGitpxLxGRbOXECXjlFcYuWci2EhXp1+INfit6e/qxtgCKq6ibRcRrHT8O3bvzydIl6e9oOlwkMP1Y3exadm/xFRHxDsbA119Djx4QF8ee3kN4Nl9dLiVfu0RbAEVERGxkDHz5JfTsCQ4Hu/u8Q2efOurmbEYDqohIFli0PZrgsChiYh3clSueKRtnEPhjKNSpA7NmUbVyZYZnuKaEvy/9m1WkTa3Af35yERER+dcydnOVnA6mbJhGifAwqFcPZs6kWsWK6uZsSAOqiEgmLdoezeAFu3EkJtNi/zreXzGBAgmX+fn1wVQZ/R7kSv1PbZtagSo9ERERG6R3c0ISrfatYdiqyeRPcLCn9xCqjhoKOXMC6ubsSAOqiEgmBYdF4Xv+LMErJ/Ho/rXsLF6efi16c/m2SkTm0n9mRURE7BYcFkW+2DOMXjGBFgfWs/22ivRr2Zv4gApEXh1OJXvS/3MSEcmk6ptW8f6KCRSMv8TIhs8x+d52JGtDr4iIiMvU2rCCYSsn4pdwmY8e6MzUOo+rm92EBlQRkf/q9Gno0YOJi75mV/FyPNVpOAeKlU4/1hZAERERm506Ba+9xvjF37LjtvL0a/EGv95yR/qxujn704AqIvJfLFwIL78M586x99X+PF2oIRdTrPRjbQEUERGx2fz58MorcP48P/ccxDMFGhCnDb1uRwOqiMg/SNsCGB3roPKPC5mydTYlly2CmjVh5Uruql6d97UFUERExDYZu/muHxcy5X+zuH3FYggKglmzqFK1Kh+om92SBlQRkb+RcUNv01828mHYePwdF9n3cl8qfzoCcucGtAVQRETELhm7udmB9XwQNoFC8XHsfXUAd4V8oG52cxpQRUT+RnBYFHkuxDL8xym0/TmcvbfeyfMd3uN8qSpEXi1AERERsU9wWBR5L5xjxKrJtNm7mj0BZXm24/tcLHmXutkDaEAVEfkblbas5sOw8RS5fJ6x9Z9kfP0nSMyZW1sARUREXKTK5nCGX31H0ycNnmZC3Q4k5cylbvYQGlBFRP7MuXPQuzfT589mX7HSvNDuHX4uXi79WFsARUREbHb2LPTqxZQFX/DzrWV47on32HdrmfRjdbNn0IAqInKj0FB46SU4cYKorr3oWOxBLqTkSD/WFkARERGbLVkC3brB6dPs7/YGTxZtrG72UBpQRcRrLbphu9+b9YvTctYomDkTqlSBxYupGBTEexk2BQZqC6CIiIjT/L9urhdAyxkjYfZsqF4dli2jUs2a6mYPpgFVRLxSxg2AAOW2rSPow08xl85hvfkmvPMO5M0LXNsCGBERQaNGjVyYWkRExHPd2M0Vtq6h9ofjSbkcS46334YhQyBPHkDd7Mly/PMlIiKeJzgsCkdiMgWuXOKjZZ/y+bfvciFPfrq+PA6GD08fTkVERMQead1cMD6OkaEhzPxuGOfy+tH1lfHw3nvpw6l4Nr2CKiJeKSbWwf2HtvHxsk8JiDvLhLrtGXvfUyTkUvmJiIi4Qkysgwd+28pHyz6l2KVzjKvXkXH1O5GYS18d4000oIqI97lwgZCfJtJ681J+LXI77Z4JZkeJ1MUKgdoAKCIiYr/z5/n0x89otWUZB4reQbe2Q9h9W3lA3extNKCKiHdZtQpefJHHjh1jer32jKz/FFeuvmqqDYAiIiIusGIFvPgij8bEMLl+R0bX60TC1VdN1c3eRwOqiHikG7cADm4QyKNzQ2DSJKhQAWvdOor63MEtGa7RBkARERHn+X/dfF8JHp3zCUydCpUqYW3YQEDuQIqpm72aBlQR8Tg3bgG8Y+cman40FnPhJFbfvvD+++DrSxtQ6YmIiNjgxm4uvWMDd4/4FBN3GmvAABg2DHx81M2iLb4i4nnStgDmS3AwbOVEvpr3Jok5cvBKtxAYNQp89VkWERERO6V1c/4rl/kg7DPmfj0ER648dO8+Fj7+GHx8XB1RsglbXkG1LMsfmAZUBQzwgjFmgx33FhHvExPr4N6juwkODeH28yeZXrs1wQ2f5UpulZ9IGnWziNgpJtZBvSM7CQ4dS4kLp5hyz+OMvv8ZEnLra93kena9xXcssNwY096yrDxAPpvuKyLe5tIlRq6ZTocNCznsfxsdnxrB5pJVAW0BFLmBullE7BEXx6jVU2i3cTG/FS5Bh6c/ZuvtdwHqZvn/nD6gWpZVEGgIdAYwxiQACc6+r4h4obVroUsXOhw8yJx7HuPDBs/hyJP6qqm2AIpco24WEdtERMALL9D28GFm3fs4H933NPG51c3y1+z4DGoZ4BQw07Ks7ZZlTbMsK78N9xURb3H5MrzxBjzwABgDEREUmDyBIrcWxiL1b2dHtK2mpQsi16ibRcS5Ll2Cnj2hcWPImRNrzRr8J46jaDF1s/w9yxjj3BtYVm1gI3CfMWaTZVljgQvGmLdvuK4b0A0gICAgaN68eZm+d1xcHH5+fpl+Hrspt72U236Zzb4+JpH5BxI5E29ocnIfwctCKPpHNNFt2vBbt24kO2kJkrv+zL09d+PGjbcaY2pnQSSPoW7+95TbXsptv6zs5odO/ExwaAiFTx7nWLt2/Na1KylOWoLkrj9zb8/9t91sjHHqAygOHM7w7/cDS//uzwQFBZmsEB4eniXPYzfltpdy2y8z2RduO2YqDVlmKvSZb6bc08YkY5nfCwWYtZO/zrqAf8Fdf+benhvYYpzcde72UDf/e8ptL+W2X1Z0c6U3vjMzgloZA+aIf3GzZup3WRfwL7jrz9zbc/9dNzv9M6jGmD8sy/rdsqyKxpgo4EFgr7PvKyKeKTgsisqH9xAcGkLZs9HMqdWCEY26UPhsESJdHU7ETaibRSQrBYdFUeXQLoJDQ7jz3HFmBrViZMPnKXK6sLpZ/jW7tvj2BOZe3RL4G9DFpvuKiCdxOHh+4We8uHkRxwsU5amOH7C+dM3Uo1iHi8OJuB11s4hk3uXLdJn/KS9sWUx0oVt5stOHbChVHUj9ahmRf8uWAdUYswPQ539E5L/btAk6d6bb/v18WeMRPmz8AnF5r30rRgmtqRf5V9TNIpJp69dD5850/eUXZtdqyUeNOnM5z7U+VjfLf2HHFl8Rkf8uPh4GDYL69eHSJSI/m8v7rXpdN5xqTb2IiIiNHA7o3x8aNICEBNZN+poRLXtcN5yqm+W/sustviIiN2XR9miCw6KIiXXQ5OIRxiwfS8HfDkDXrjBqFPcVKsSIDNeU8Pelf7OKWlMvIiLiJBm7uemFQ4xeFkKBwwehe3cIDqZBgQLqZskyGlBFJNtYtD2awQt2k+yIp+/6r3h543ec9ivMnnFzqN/jmfTr2tQKVOmJiIjYIK2bUxwOBq6by0v/W8iJAkXZNeFL7nvlyfTr1M2SVTSgiki2ERwWRdnfoxi1dAyVTh/hm2oP8UGTrhSIK6YtgCIiIi4QHBZFhSN7GRUaQvkzv/NV9YcZ3qQrhc4XVTeLU2hAFZHsISGBToun8MrGbzmd358u7d8lvOw9AFzUFkARERH7XbnC099PpPumBZzwK8LzHYaxukwQAJfUzeIkGlBFxPW2bYPOnem5ezffVX2Q9x58iQs+funH2gIoIiJisy1boHNnXv35Z76u1pQPHuzKxbz504/VzeIsGlBFxHUSEmD4cPjwQyhWjA0hs3j7dACOxOT0S7QFUERExEZXrsB778HHH0NAAOvHzWboiWLqZrGNBlQRsU3aFsDoWAeNFkxhbNhYCh3YC88+C2PHUq9wYW0BFBERsVHGbm48fxIhy0Mo9GsUdO4MY8ZQ399f3Sy20oAqIrZI2wKYGH+FXhu+oceGr4nNV5CNY2ZQt3eX9Ou0BVBERMQead2cFB/PG+u/5rUN33A2vz8bxn5OvdefS79O3Sx20oAqIrYIDouiVPSvjAoNoeqJgyy8qxFDH+qOX/yt2gIoIiLiAsFhUdx57BdGL/2EyqcOM79qE4Y92I0Cl7U9X1xHA6qIOF9iIu2WzqDH+q857+NHt8ffYkWFegBc0BZAERER+yUk0OGHaby24RvO+Raka9u3WVX+XkDb88W1NKCKiHPt2QPPP0+fbdv4vvIDvNu0O7G+BdOPtQVQRETEZjt3QufO9N6xI/0dTed9C6Qfq5vFlTSgiohzJCXByJEwdCj4+7MpeAqDzpfUFkARERFXSUyEjz5K3dJbtCgbP5nOm2dLqJslW9GAKiKZtuiG7X7vlYMHPx6Y+h1qTzwB48dzb7Fi6VsAo2MdBGoLoIiIiNPc2M3vl0mhyccDU797/MknYdw46hYtqm6WbEcDqohkStoGQEdiMjlTknls+WzuXzeXKwUKkvfbb6F9+/Rr07YARkRE0KhRI9eFFhER8WA3dnOb0Fk0iPyKeH9/fObPh7Zt069VN0t2owFVRDIlOCwKR2IyZU//zujQMdQ8foClFe9jQvs3WNq+navjiYiIeJ20bi5/6gijQ8dQ/Y9fWVLpfia2f4PQto+7Op7I39KAKiKZ8sfZOLptXkTftV9wKY8vrz02kKWV78dKcnUyERER73TibByvbppPr8gvicuTj1daD2JZpQZYia5OJvLPNKCKyH+3fz/fzxtE1d/3sbxCPYY8/Cqn8xcGtAFQRETEJfbuZfFXA7jrWBRLK97HO01f4Ux+f0DdLO5BA6qI/HvJyRASAm+9RQUfX/q2Gcj8Cg3AsgBtABQREbFdcjKMHg3vvENZ33y80XYwC8vfl36sbhZ3oSJfx8UAACAASURBVAFVRP7WjVsAh1bKTdPgQbB+PbRuTZ5Jk7j/eDIbM1yjDYAiIiLOc2M3D6uQk4eCB8HGjdC2LXknTOCBmCT+p24WN6QBVUT+UsYtgDlSknlk5Vfc//ZsEvL5kmfOHHj6abAs2hRHpSciImKDG7u5+Yq53D9kDgl++cnz1VfQsWNqNweom8U9aUAVkb+UtgWw1LkYgkNDqHNsL6vK3sO4J/rx/TNPuDqeiIiI10nr5jvPRhMcGkLt6H2sKF+XcR36sqRT+39+ApFszpYB1bKsw8BFIBlIMsbUtuO+IpI5x89dosvWJQxYPZvEnLno0/INFlRpgpViuTqaiGSSulnEPf1xNo4Xty6h/5rZxOfKQ69H+/L9XY2wktXN4hnsfAW1sTHmtI33E5HMOHiQ+d8OodahXfxUpjaDH+nBiQK3ANoCKOJB1M0i7uSXX1jwzVvUOLKHleXq8GazHpzyKwKom8Vz6C2+InK9lBSYMAEGDqRqjpwMbtWHryo31oZeERERV0lJgXHjYPBgKufKw8DH+vF1pQfUzeKRLGOM829iWYeAc4ABJhtjpvzJNd2AbgABAQFB8+bNy/R94+Li8PPzy/Tz2E257aXc1/jExFAxOJjCO3Zwpk4dDvTrR3iiP/MPJHIm3lDUx6JdhdzUL5E7U/fRz9xe3p67cePGW/X21f9P3fzvKLe9lPsan+hoKo0cif+uXZypW5eovn2JSCikbr5Kue1lSzcbY5z+AEpc/eetwE6g4d9dHxQUZLJCeHh4ljyP3ZTbXt6ce+G2Y6b+iB/NnQMWm+DHXjeJvvmMKVjQmGnTjElJyXzIv+DNP3NX8PbcwBZjQ9e520Pd/O8ot728OXfGbv6kVQ+T6ONrTKFCxsycqW7+E8ptLzu62Za3+BpjYq7+86RlWQuBOsAaO+4tIn8ubU190dMxzFk2lvuO7GJdmbu5NH4SzZrf4+p4IuJk6maR7Cetm285Fc2XoSHU/X0Pa8rW5vJnE3mkmd4IIt7B6QOqZVn5gRzGmItXf/0w8J6z7ysify94+X7a/m8JgyNmYoBBzXowr0YzAndepFlzV6cTEWdSN4tkT6OW7aP9pu8ZFDGLZCsH/Zu/zrfVmhK4/QKPNHN1OhF72PEKagCw0Er9EHcu4EtjzHIb7isif+XIET6e3I8GR3awrlQNBjbvRXShWwGIiXW4OJyI2EDdLJLdHD7MyMl9qX90F2tK12Jg89c5XrAYoG4W7+L0AdUY8xtQw9n3EZGbYAxMmwZ9+3L3lUTeevhV5tZsnr4FELSmXsQbqJtFshFjYPJk6N+fGokpDHykJ19Xf1jdLF4rh6sDiIhNjh6FRx6Bbt3gnntYtyCcBXVaXVeAWlMvIiJioyNHoGlTeOUVqFuXdQvCWVy7hbpZvJq+B1XEQy3aHk1wWBQx5y7T7dcI+oVNJjcGPvsMXn6Zh3PkYESJq9fEOijh70v/ZhVpUyvQ1dFFREQ8UsZufvmXn+gTNoXcOazUV1BfeolmlsWI29TN4t00oIp4oLQtgIXOnGDm8nE0OrSV/91Rjdjxk3i4Vf3069rUClTpiYiI2CCtmwufOc7ny8bR8PB2NpSuwcXxk3i4Zd3069TN4u00oIp4oODl+3l063Le/mkauVKSeOeh7sy5uyUlfo7n4VauTiciIuJ9gpfvp9WWZbz901RyGMOQh19lbs1HKLH7Mg+3dHU6kexDA6qIp4mO5v1pg2jy2xY23V6FAS16caRwCUBbAEVERFzi2DGGTx1Io0Nb2ViyKv1b9OZ3/+KAulnkRhpQRTyFMTBnDvTqRf1LDoY9+BKzglphrGu70LQFUERExEbGwKxZ0Ls39zoS0t/RpG4W+Wva4iviCY4fh9at4fnnoUoV1n67knn12l5XgNoCKCIiYqPoaHj0UXjhBahRg7XfreLbum3UzSL/QK+giriZtA2A0bEOAjf8yNiUvdQe/S44HDB6NPTqRdOcORlxh7YAioiI2OHGbv40cTdBnwyFhAQYOxZ69Ejdnl9S3SzyT/5xQLUsaxXQ1xiz04Y8IvI30jYAOhKTKRZ3jncXfEbtXzZypnoQRb+ZCxWv/S2stgCKeC51s0j2kbGbb714hmHfjSfo4GZO16zDLd/OhXLl0q9VN4v8s5t5BXUAMMayrCPAm8aY407OJCJ/ITgsCkdCEo/tW8OwlZPIlxjP8EYvsLxpJ9ZW1FuERLyIulkkm0jr5jZ7Ixi6ajI+SQm81+QlVj7YgbUZhlMRuTn/OKAaY7YBTSzLagcstyxrATDSGKOVYyI2S4iOYdKKCTxyYAPbb6tIv5a9OVi0JNaFBFdHExEbqZtFso+EYzFMDRtP0183sSWwMv1b9OZQkUB1s8h/dFOfQbUsywKigInAB8BLlmUNNsbMcWY4Ecngm29YOeM1fK84GNGoM1PveZyUHDkBbQAU8UbqZhEXMwa++opVM14lb+IV3m/8IjNrP6ZuFsmkm/kM6jqgDPAzsBHoDOwHelmWdb8xpptTE4p4u5Mn4bXX4LvvMFVq0K7BK+zxvz39WBsARbyPulnExU6cgJdfhkWLSK52N483eIV9BW9LP1Y3i/x3N/MK6svAz8YYc8Pv97Qsa58TMol4rbQtgGnb/cbk+IU6wUPgwgUYMYLC/frRdfeJa5sCtQFQxFupm0Vscl03F/IhxIrinlHvQFwcjBxJkT596L7rD3WzSBa5mc+g7vmb45ZZmEXEq2XcAlj48nkGf/8xdfav5Vzl6hSOiIAqVYBrGwAjIiJo1KiRSzOLiGuom0XskbGbi16K5a2FE7jnwHrOVq1JkW++hMqVAXWzSFbK1PegGmN+y6ogIt4uOCwKR2IyzaLW88GKCRSKj2Nkw+f44eFnWHN1OBUR+SfqZpGsk9bNLfav4/0VE/BLuMxHD3QmtOlTrLk6nIpI1srUgCoiWefy8ROMXTmZ1vtWsyegLM90+oCoYqWxLmoLoIiIiCvEx/zB+BUTeTRqHTuLl6dfi978UqyUulnEiTSgimQHixaxasZrFLx8gdENnmZi3Q4k5Uz9n6e2AIqIiLjA/PmsmvEa+R2p72iafG87krWhV8TpNKCKuNLZs/D66zB3LjkrVqFDww/YUaRU+rG2AIqIiNjs9Gno0QO+/hoqV6f9/a+wq3DJ9GN1s4hzaUAVscmNG3pH+xyh7sdvphbh0KH4v/kmnfecvO4abQEUERFxnhu7+ZPcv3HvyLfg3Dl4/30KDxzIC+pmEVtpQBWxQcYtgAXj4+jzxWjq/hzO+fKVKbRsGdSsCVzbAigiIiLOlbGb/R0X6L8kmHv3ria2YhX8V66E6tUBdbOI3TSgitggbQtg44ObGbF8HLdcimVs/U4saN6Z1VeHUxEREbFPWjc/9MsmPgwbT2HHBT5p8DSLHnmONVeHUxGxn20DqmVZOYEtQLQx5lG77iuSHVz84xTBP06jw55V7L+lFF3bvcOe4uWw4pJcHU1EvJi6WbxZ3B+nGL1qMu1+DmdfsdJ07jCMvQFlsC4mujqaiFez8xXUXsA+oKCN9xRxveXLWTWzB0UunmVcvY6Mq9+JhFy5AW0BFBGXUzeLd/rhB36c8Rr+cecYW/9Jxtd/gsSc6maR7CCHHTexLOt2oCUwzY77iWQL58/Diy9C8+b43FKETl3GMLrhs+nDqbYAiogrqZvFK8XGQufO0KoVuQOK0fGFsYy5/+n04VTdLOJ6ljHG+TexrO+AEUABoN+fvY3IsqxuQDeAgICAoHnz5mX6vnFxcfj5+WX6eeym3PbKitzrYxKZfyCRM/GGoj4W/eJ38viMMeQ9c4ajnTpx+PnniTxtXXdNuwq5qV8it0tzu4q7Zldue2VV7saNG281xtTOgkgeRd387yi3vZzRzQMub6fNzBDynD3L0aee4vCzz6qbM3DX7MptL1u62Rjj1AfwKDDh6q8bAT/8058JCgoyWSE8PDxLnsduym2vzOZeuO2YqTRkmSk18AdTpfc3Zm6NZsaAOX9neWM2bcqakH/CXX/exrhvduW2V1blBrYYJ3eduz3Uzf+ectsrK7u5au+vzdfVHkrt5rIVjdm8OWtC/gl3/Xkb477ZldtednSzHZ9BvQ94zLKsFoAPUNCyrC+MMc/YcG8Rp0vbAnjf4R18vGwst108w8R72/NNyxcJr1PH1fFERP6Mulk8Wlo3N/xtKx8tH0dA3Fk+q9uBb1u+QERtvaFCJDtz+oBqjBkMDAawLKsRqW8jUgGKxzh/4gzDI2bw9I7l/Frkdto/PZLtgZWwLiW7OpqIyJ9SN4unu3jiNB/9NJ1Ou1bwS9GStH0mmJ0lKmLFqZtFsjt9D6pIZvz4Iytn9SQg9iST67TlkwZPcyV3XkBbAEVERFxi5UpWzOxJsQunmXhve0IaPMWVXHkAdbOIO7B1QDXGRAARdt5TxCni4mDAAJg4Eb9SZXi69Sg2FL+29U9bAEXEXaibxWNcuAD9+8OUKeQvXY6n2g5m063l04/VzSLuwZavmRHxKOHhUK0aTJoEffpQYN8eOvbqSKC/LxYQ6O/LiLbVaFMr0NVJRUREvMOqVandPHUq9O9Pgb27eLJnB3WziBvSW3xF/sGi7dEEh0Vx7uQ53tv4Be03LIJy5WDNGmjQAIA2tQJVeiIiIjZJ6+bzJ87w/oY5PL5pCVSoAJGRUK8eoG4WcVcaUEX+xqLt0QxesJtqv+3ky9AQSsae4PM6bSgyJphW9cu5Op6IiIjXSevmmr9uZ+SysQSeP8mMum255ZOPeayeulnE3WlAFfkb45bsYMCyyXTZuoTD/rfR8akRbC5ZlcA1RzWgioiIuMD4xTsYvHQiz21fyqHCt9Hh6Y/ZevtdBK4+qgFVxANoQBX5K2vXMn3MS5SOPc7MoFaMbPg8jjw+AMTEOlwcTkRExAutXs2MMS9y+/mTTK/dmuCGzxKfW90s4kk0oIrc6PJleOstGDuW3IWL0/HJEWy6o9p1l2hNvYiIiI0uXYLBg2HcOHIUKZH+jqaM1M0inkFbfEUyWr8eataEkBB49VW2LY5gV9ma112iNfUiIiI2WrsWatSAcePg9dfZviSCPWVqXHeJulnEc+gVVPFaaRsAo2Md3Ll2GVMPLKLc3KlQqhT89BM0bkwrIDlffoLDooiJdVDC35f+zSpqK6CIiIgTZOzmMmtCmRK1kHJfTYc774SICHjggdRu9s2nbhbxUBpQxSulbQB0JCZzd/Q+gkNDKHs2mkPtn+XOGZ9BgQLp12pNvYiIiPNl7OagY3sJDg2hzLkYfnviecpMHw9+funXqptFPJcGVPFKwWFRpDgcDFr7BS9tXsTxAkV5uuMHHK5Zj8gMw6mIiIjYIzgsipTLl3lr7Rxe3Pw90YVu5clOH3K0xr1EZhhORcSzaUAVr3Tr3h18vnQM5c4e48sazfiw8YvE5c2HpQ2AIiIiLhHw8zZmX31H05xaLRjRqAuX8/iqm0W8jAZU8S7x8TB0KN99EcwffkV59on3WHvn3enH2gAoIiJiM4cD3nmHb+d+wvECRXmq4wesL31tQaG6WcS7aEAV77F5M3TuDHv38nubTnQo155TOX3Sj7UBUERExGabNqV28/79HG33DO3LPM6ZHHnTj9XNIt5HA6p4pLQtgDGxDkr55WTyoVAqfj4BiheHZcso/cgjvJVhU2CgNgCKiIg4VcZuLp0/J5N/W0KF2ZMgMBBWrODOpk15W90s4vU0oIrHybgFsOofvzJq6Rgqnj7Ckcc6UurzSeDvD1zbABgREUGjRo1cG1pERMSDZezm6scPMGppCBXOHOXw409SetYkKFgQUDeLiAZU8UDBYVEkxcfTJ3Ier278ltP5/enc/l1+CWpI5NXhVEREROwTHBZFsiOe/pFf8vKm+ZzwK8JzHYZx8O4GRF4dTkVEQAOqeKDC+3czLTSEyqcOM79qE4Y92I0LPn7aAigiIuIiRfftYkboGCqePsrX1ZrywYNduZg3v7pZRP4fDajiORISYPhwFs0Zzpl8hXih3Tv8VK5O+rG2AIqIiNgsIQHef58FX3zI6Xz+dG4/lIiytdOP1c0iciMNqOIZdu6E55+HnTs53qItHSp34o9c+dKPtQVQRETEZtu2pW7o3b2b6FZP0KFiB07mvDaQqptF5M9oQBW3k3ELYMkCuZl8bAWVp42FokVh0SJKtm7NoAzXlNAWQBEREafK2M13+OVi8tHlVJo5HooVgx9+oFTLlrypbhaRm6ABVdxKxi2AFU8dZvSsMVQ+cZDfm7eh5JxpqUMq17YAioiIiHNl7ObKJ39j9MwxVDp5iKMt23HHnKlQuDCgbhaRm+P0AdWyLB9gDZD36v2+M8a86+z7imcKDosi4UoCr238jl6RX3Hex4/uj7/JnjoPEnl1OBURkb+nbpasFBwWRWL8FV7f+C0918/jnG9BurZ9m333NCLy6nAqInKz7HgF9QrQxBgTZ1lWbmCdZVnLjDEbbbi3eBi/X/axMDSE6n/8yg+V7uftpi9zLl8hbQEUEfl31M2SZQoe2Mvk0BCqnjjIorseYOhD3Yn1LahuFpH/xOkDqjHGAHFX/zX31Ydx9n3FwyQlQXAwSz5/l4t5fHml9SCWVWqQfqwtgCIiN0/dLFkiMRE+/pjFs4cRmzf1HU1hFeqnH6ubReS/sOUzqJZl5QS2AuWAz4wxm+y4r3iIvXtTtwBu3syppo/SoerTxOQpkH6sLYAiIv+eulkyZc+e1O3527ZxollrOlR5kuO5/dKP1c0i8l9ZqX+JatPNLMsfWAj0NMbsueGsG9ANICAgIGjevHmZvl9cXBx+fn7/fGE2482518ckMv9AImfiDbfmSeGjX76n0fzZJPv6cqB3b041bnzdNUV9LNpVyE39ErldmtsV3DU3uG925bZXVuVu3LjxVmNM7X++0jupm2+ON+e+sZtHRi2k4YI5JPn5caB3b04/8IC6+Sp3zQ3um1257WVLNxtjbH0A7wL9/u6aoKAgkxXCw8Oz5Hns5q25F247ZioNWWZKDfzBNOk60Wy7raIxYKKbNDfmjz+yJuSf8Naftyu5a3bltldW5Qa2GJu7zt0e6uZ/5q25M3bzQy98ZnYUL28MmN+btjLm5MmsCfknvPXn7Uruml257WVHN9uxxbcYkGiMibUsyxd4CPjY2fcV9xMcFsWVKwm8tPl7+q2dw+XcPvRs1Z9t9ZoRGRDg6ngiIh5D3Sw3K217/iv/W0DvdXOJy5OPV1sPYmfdpkQWK+bqeCLigez4DOptwOdXP+uSA/jGGPODDfcVN+Nz8Be+DQ0hKGY/YeXrMuTh1zjlVxjrfLyro4mIeBp1s9wU318PMD90DDWPHyC0Qn3efvhVzuT314ZeEXEaO7b47gJqOfs+4saSkyEkhNBZb+LIlYfXW/VjceUHwLIAbQEUEclq6mb5R8nJMHo0Sz8fwqXcvvR4bAA/VLpf3SwiTmfLFl+Rv3TgAHTpAuvXc7ZhUzrW6sxRn0Lpx9oCKCIiYrP9+1O7eeNGzjR+hCdqPMexvAXTj9XNIuJMGlDFFou2RxMcFkVMrIMS/r70b1qeNmvnw+DB4OMDs2dz2zPP0GdHzPXXNatIm1qBro4vIiLicf5fNz9Ujjarv4W33oL8+WHuXEo8+ST91M0iYiMNqOJ0i7ZHM3jBbhyJyQDkOnSQ2x/vBb/vgUcfhcmToUQJANrUClTpiYiIONmN3Zznt1+54/GecGwvtG4NkyZB8eKAullE7JXD1QHE8wWHReFITMYyKTy/dQnLZ/SkwslDfNB+ACxenD6cioiIiD3SujlHSjIvbl7Espk9KXP6KMOeGAQLF6YPpyIidtMrqOJ0MbEOSsb+wajQEO79fQ/hZYIY9EhPTha4hSFXly2IiIiIfWJiHZQ+G01w6Fjuid7LynJ1eLNZD077FeFddbOIuJAGVHGulBR67AvjlWVTSLJy0r/563xbrSlYFoHaACgiImK/lBR6/RxK9+XTSciZiz4t32BBlSbqZhHJFjSgivMcOgQvvEDfiAjWlgliQLMeHC+Y+qXe2gAoIiLiAgcPwgsv0HvNGlaXu4cBD7/GiQK3AOpmEcke9BlUyXopKTBxIlSrBlu3wtSpnPl2ETnuuAMLCPT3ZUTbalq4ICIiYpeUFBg/HqpXhx07YOZMzn29gFwlS6qbRSRb0Suokmlpa+qjYx3cvewrJkVM4Nb/rYOHHoLp0+GOO2gDtLn7dldHFRER8QoZu7l26Fwmhn9GsS0b4JFHYOpUuP12dbOIZEsaUCVT0tfUJyTx5M4w3gqfjgVsf+sjar0/ALRoQURExFZp3RyfkMgzO5YzOHwGxrLY/k4wtYb2VTeLSLamAVUyJTgsisJnjjN52TgaHt5OZKnqDGzeC+NXmkgVoIiIiO2Cw6IoejqGj5eN5b4ju1hTuhaDmvfE8i2lbhaRbE8Dqvx3xnD/6kW89dM0chjDkKavMLdWc4yVAyvW4ep0IiIi3scYHohYwJvhMwAY3KwHX9VoBpalbhYRt6ABVf6bY8ega1c+Cgtjwx3V6N+8F8f8r32pdwmtqRcREbHXkSPQtSsfrlrFulI1GNi8F9GFbk0/VjeLiDvQgCr/jjEwaxb07g1JSewc+AEv5qrF5SSTfonW1IuIiNjIGJg2Dfr2hZQUdrw5gpesGjiSUtIvUTeLiLvQgCp/K20LYEysg+pWHJPXTaH4up+gYUOYMYMaZcvyYYZNgYH+vvRvVlFr6kVERJwkYzfX5CKT1kwiYMNqaNwYpk+n5p13MkLdLCJuSgOq/KWMG3rb7fmJd3+cQu7kJHYNeI/qI96CHKlfo9umViBtagUSERFBo0aNXBtaRETEg2Xs5id2rWTIT9PIaVLYOWg4NYYPUjeLiNvTgCp/KTgsigJnTzIubDwPHdzMpturMKBFL5IKlyXyagGKiIiIfYLDoih05gQTwsbR+LetbCxZlf4tepNS6E51s4h4BA2o8ueM4d51S3l31WTyJCfxXpOXmFm7lTb0ioiIuIox1Fu7hHd+nEqulCTefag7s+9uqW4WEY+iAVX+v+PH4eWX+WTpYjYH3kX/Fr04XOTa51a0BVBERMRm0dHQvTujQpey6fYq9G/Rm6OFb0s/VjeLiKfQgCrXGANffgk9e4LDwe4+79DZpw6Xkq9doi2AIiIiNjIG5syBXr3gyhV29RtKl7z3aHu+iHgsDaheLOMWwCo5HUzZMI0S4WFQty7MmkW1ihUZnuGaEtoCKCIi4lQZu7lajstMjpzKbWtWwn33wcyZVC9fPn17vrpZRDyRBlQvlXEL4GP71jBs5STyJcazp/cQqo4aCjlzAte2AIqIiIhzZezmNnsjGLpqMj5JCezu8w7VRr6jbhYRr+D0AdWyrJLAbKA4kAJMMcaMdfZ95e8Fh0WRL/YMn6yYQPMD69lxWwX6tniD+IAKRF4tQBER8Uzq5uwpOCwKv3OnGbviMx7+ZSPbSlSkX4s3uFKsvLpZRLyGHa+gJgF9jTHbLMsqAGy1LGulMWavDfeWv1BrwwqGrZyIX8JlPn7geabUaUtyjpzaAigi4h3UzdmNMQStX57+jqYPG3Vh2j1tSFE3i4iXcfqAaow5Dhy/+uuLlmXtAwIBlaArnDoFr73G+MXfsrN4efq16M0vxUqlH2sLoIiI51M3ZzMnTsArr/DpkoVsv60i/Vr05uAtJdOP1c0i4k1s/QyqZVmlgVrAJjvvK1d99x28+irExvJzj0E8XbABcdrQKyLi1dTNLvbNN6ndfPEie15/k2f96qubRcSrWcaYf74qK25kWX7AamC4MWbBn5x3A7oBBAQEBM2bNy/T94yLi8PPzy/Tz2O3rMi9PiaR+QcSORNvKJtygXFrJ3PXxtVcrFCB/YMGcenOO6+7pqiPRbsKualfIrdLc7uCctvPXbMrt72yKnfjxo23GmNqZ0Ekj6NuvnlZ3s3JFxi/ZiKV/7eWC5UqsX/gQC6XLq1uvkq57eeu2ZXbXrZ0szHG6Q8gNxAG9LmZ64OCgkxWCA8Pz5LnsVtmcy/cdsxUGrLMlBr4g+n2+JvmZD5/cyVHLvPzq/2NSUjImpB/wlt/3q7irrmNcd/sym2vrMoNbDE2dJ27PdTN/05WdvPLrQeZU/kKmSs5c5k9PQYZk5iYNSH/hLf+vF3FXXMb477ZldtednSzHVt8LWA6sM8Y84mz7yepWwDzXjjHiFWTabN3NXsCyvJsx/e5WPIuInP/97+FFRERz6Butl9wWBQ+588ycuUkWu1fy67i5XiqxXAuBVYmMpe+9U9EJM3/tXf3cVbO+R/HX99Kt5NSEQ27YlNrWcIuUopYEish2tifbKvN7VrbWn5uIkJTRFhrsRbJXYpqavx2V25XS+V2yUqiJpWYampKN9/fH3OzYXdNmrmuc868no/HPDRznea8H9Wct8+5rvM5STwiHgKcDrwRQni14muXxhgLE7jvOul7Lz/NtUW30rJsFTd2HcDtB53MhvoN3AIoSapkNyds75l/YfhTt9NibSkF3U7n9weeaDdL0r+RxBbf54FQ2/cj4NNP4fzzufPxcby1w278tN/VvL3DblWH3QIoSQK7OVHLl8N553HHpPFVVzS9s0P7qsN2syR9kdeU5IrJk+Gss+CTT3jnrAvp3/owVm6qV3XYLYCSJCXsiSdg8GBYvpy3h/ya/i27s2rTv54XsJsl6ascULPMpDmLKCiaS3FJGe1aNuHSg9vS+56RcN99sPfeUFhIp86dufpLtxt6VEf6dM5PO74kSTnnK9180A70vut6GDcO9t0Xior47j77MNxulqSv5YCaRSbNWcQlj79B2fryN0jbY9azHDDiVjatKaHe5ZfDZZdBw4YA9Omcb+lJklTLvtzNnV6ZwQ+vvZVNa1dRb9gwuPRSqFhQaDdL0ter9/U3UaYoKJpL2fqNbLu2lIKp9gSiwAAAEdlJREFUY/jjY1fxWaM8Bg25Fa6+umo4lSRJydi8m0dPvZG7JwznkyYtOHPIbXDllVXDqSSpejyDmkWKS8ro/v4srp92C9uv/oyxB5/C2C6nsr6B5SdJUhqKS8o4bN7LXDd9LG1Wl3Bzl/7c2qUfG+rbzZL0TTigZosVK7jlL7dx3CvTeLf1txjc9395fac9AMh3A6AkSckrKeHWP4+l96wi3t5+V3524hW8teN3ALtZkr4pB9Rs8NRT8LOfcWxxMXd26cfog09lXYPyy3ndAChJUgqmT4dBg+j18cfcccip3HjQKXxecUWT3SxJ35yvQc1kK1eWv3XMUUdBXh7hxRfZ4dYbadOmBYHyZ2ev67u3CxckSUrKihUwaBD06gUtWlDvpZfYcewotm+zrd0sSTXAM6gZpHJN/aKSMo5/oIDrpt5M06WLYejQ8iVIjRvTByw9SZISsnk3n3DfSK4tHEPTZUvgkkvKlyA1amQ3S1INckDNEJVr6uuVruKaGX/ktFenMb9VPh/ePZHuZ/w47XiSJNU5ld1cv3QVI56+h5+8Np15rXfho3ufoMfpx6YdT5JykgNqhigomsu+781m5LRbyF+xlDt/cAKju51Gm4/zeCHtcJIk1UEFRXPZ75+zuGHazey0ajl3HHgiN3UdQJtFTe1mSaolDqiZoLSUXzxyI6fPmcr727Xj5AE3MGvnPYHy9fWSJClhq1Zx9sMFDHh1OvNa7cxJA0YyJ78TYDdLUm1yQE3bM8/AwIEM+OAD7jrgeEYdejprt2lcdbida+olSUrWX/8KZ55J/w8/5Pc/7MuNXQewbptGVYftZkmqPW7xTcvq1XDeedCjB9Srxwt/eIzRR//iC8Opa+olSUpQaSmccw707AkNG/L8PRMZ86Off2E4tZslqXZ5BjUhlVsAi0vK6PXZPykoHEOzhQvg/PNhxAi6NWvGdZttCsxv2YShR3V0K6AkSbVk827u/elcbii8mWbFH8GFF8I113Bo06Z2syQlzAE1AZVbAOOa1Vz+zH2cMWsyC1u2ZfYfHqXboJOqbtencz59OuczY8YMevTokV5gSZJyXGU3s3o1Vz5zL2fMnsKC7dox664JHHrmCVW3s5slKVkOqAkoKJrL9+a/TkHhGNp/tpg/7deb67sPpNUn27kFUJKkFBQUzWXv91+joHAMu5Qs4Z79f8zI7j+l9dIWdrMkpcgBtbatWcPACbdw5itPsqjFDvQ/dQR/+/b3AbcASpKUitWrGfTYGAbOmsyCljty6k+u4++77AXYzZKUNgfU2vTiizBwIIPefZf7Ox/DdT0Gsqbhvzb/uQVQkqSEPfccDBzIwHnz+OP+xzHy0P+hrKHb8yUpU7jFtzaUlcHQodC1K6xbx/N3PMyI3ud9YTh1C6AkSQlas6Z8+VH37rBpE8/f+Qgje539heHUbpak9HkGtQZsvgXwyJXzGT1tDM0/mAeDB0NBAV2bN6/aAlhcUkY7twBKklSrNu/mo0rmMWraGPI+nF/+NjLXX0/XvDy7WZIykAPqVqrcAriprIyLnx/Hz/8+kSXNW/P67Q9yyJD+Vber3AIoSZJqV1U3r1nDpc/dz89efoLiFjvw6h0P03Vwv6rb2c2SlHlqfUANIdwDHAssjTHuVdv3l7SCornsseAfjCocQ4flHzH++z/i2sMH0WJFa7cASpIyUl3o5u9+8CYFhTez+6cLeWDfXlzXYyAtP7ObJSnTJXEG9V7gVuC+BO4rWevWMeCJ3zF45uMsyWvFT0++imd32x+A1W4BlCRlrnvJ1W5eu5afTryNQS9PYnHz1gw45Rpe2HVfANbYzZKU8Wp9QI0xPhtC2LW27ydxr7wCZ5zB2W+9xcN7H8k1PQexqlGzqsNuAZQkZaqc7eaZM+GMMxj8zjs8uM/RjDjsTEobNa06bDdLUubzNahbat06GD4crr8e2rblxbH3MWzJ9pSt31h1E7cASpKUoHXrYNgwGDkS8vN54bZxDF/cym6WpCwUYoy1fyflz9JO+W+vcwkhnAWcBdC2bdv9H3rooa2+39LSUvLy8r7x73+xeD0T3l3P8rWR1o0DZ2/zAafcPYq8+fNZfPTRzDvnHDbk5X3ldifusQ1d2m2TWu60mDtZ2Zobsje7uZNVU7kPO+ywWTHGA2ogUk7JlW4+t/779Lt7FM0WLGDxMcfw3pAhbLSbq5g7WdmaG7I3u7mTlUg3xxhr/QPYFXizurfff//9Y014+umnv/HvnTh7Yex02bT47YunxO/8emIc06V/XB/qxTVt2sY4ZUqN5PtPtiZ3msydrGzNHWP2Zjd3smoqN/BKTKDrsu0j27u5w0UT49iD+5V38w47xlhYWCP5/pO6/nOUNHMnL1uzmztZSXSzl/j+BwVFcylbv5E9l7zPqMKb2HPpfCZ87zD+cOIFTO/dO+14kiTVOZXdvNfH7zFq6k10+mQBj+51BHf1PY+iXr3SjidJqgFJvM3MeKAH0CaEsBC4MsZ4d23f79ZaunwVF/ztEc7928N81mRbBvW9nD93OJCwLu1kkiRtnWzt5mXLV/KrFx7i7JceZXmzlgw86Uqe3v0HdrMk5ZAktvj2r+37qHGvvcbUcb9mj8XvMXHPHgw7YjArmjQH3AAoScp+WdnNc+Yw9YGL6PDx+0zY63Cu6nkWKxuXvw7Kbpak3OElvptbv758O+/w4XyreQvOPflypux2YNVhNwBKkpSwzz+HESPg2mvZpWUrhvS7kmntf1B12G6WpNxSZwfUSXMWUVA0l+KSMtq1bMLw3TZx+A0Xw+zZ0L8/jceO5YgP1zJns9sMPaojfTrnpx1dkqSc9JVubr+Rw68bCq+9BqedRuObb+aoBWW8bjdLUs6qkwPqpDmLuOTxNyhbv5H6mzbSp/Beur4wnnUtWtBowgTo2xeAPq2x9CRJSsDm3dxg4wZOnHoP3V58iLXbtaLxpElw/PEA9GllN0tSLquTA2rlFsAOyxYwqnAM+3z8TyZ36sbvTrqQwr4npB1PkqQ6p7KbOy77gNFTb2KvJfOYtGd3ft/3AqZVDKeSpNxXJwfUJZ+WcvbMCVzwwoOUNmzKkON/y7ROXQnr004mSVLdtHT5Ks6d+Rjnv/AQKxrnMfiESynao4vdLEl1TN0bUP/xD54c/xv2XDiXqR0P4Yojh7C8WUvALYCSJKXizTeZPP43dFr0LpM7deOKI3/BZ01bAHazJNU1dWdA3bgRRo+GK65g9yZNubDvJUzscEjVYbcASpKUsA0boKAAhg2jfbPmnH/i//Lkdw6uOmw3S1Ldk5MDauUWwEUlZeS/9Feu2qM+R4y8GGbOhL59aXT77XQv3sDf3QIoSVIivtzNV3cI9LzhYnj5ZTj5ZBrddhuHL/ycWXazJNVpOTegbr4FsN6mjRxTNI5ul93P53nNaDh+PJxyCoRAn7ZuAZQkKQlf3p5/3PT76XbZA6xrvi2NHn4Y+vUDoM/2drMk1XU5N6BWbgFs/+kiRk29if2L3+GpDgcx9uSLmHzqSWnHkySpzqns5t0/+YjRhTex7+J3KdyjC7ed/Cum9jsx7XiSpAyScwNqcUkZxMhNU0az62fFXHDsRTyxZw/CxpB2NEmS6qTKbr55yijyVyzlvOOGMvm7hxI22M2SpC/KuQG1XcsmLCop46JjLmRl42Ysy2tV9XVJkpS8ym7+5bEXsaJxc5blbVf1dUmSNlcv7QA1behRHWmyTX3mtdmlajh1C6AkSemp7Ob32nyraji1myVJ/07OnUGtXK5QtSnQLYCSJKXKbpYkVVfODahQXoR9OuczY8YMevTokXYcSZLqPLtZklQdOXeJryRJkiQpOzmgSpIkSZIyggOqJEmSJCkjOKBKkiRJkjKCA6okSZIkKSM4oEqSJEmSMoIDqiRJkiQpIzigSpIkSZIyQogxpp3hK0IIy4AFNfCt2gCf1MD3SZq5k2Xu5GVrdnMnq6ZyfzvGuH0NfJ86zW42d8LMnbxszW7uZNV6N2fkgFpTQgivxBgPSDvHljJ3ssydvGzNbu5kZWtu/XfZ+vdq7mSZO3nZmt3cyUoit5f4SpIkSZIyggOqJEmSJCkj5PqAemfaAb4hcyfL3MnL1uzmTla25tZ/l61/r+ZOlrmTl63ZzZ2sWs+d069BlSRJkiRlj1w/gypJkiRJyhI5OaCGEI4OIcwNIbwXQvht2nmqK4RwTwhhaQjhzbSzbIkQwi4hhKdDCG+HEN4KIVyQdqbqCCE0DiH8PYTwWkXuq9LOtCVCCPVDCHNCCFPSzlJdIYQPQghvhBBeDSG8knae6gohtAwhPBZCeKfi3/nBaWf6OiGEjhV/zpUfK0MIv0w7V3WEEC6s+Jl8M4QwPoTQOO1M2np2c7Ls5nTYzcmxm5OVZDfn3CW+IYT6wLvAkcBC4GWgf4zxH6kGq4YQwqFAKXBfjHGvtPNUVwhhJ2CnGOPsEEJzYBbQJ9P/zEMIAWgWYywNIWwDPA9cEGN8KeVo1RJC+BVwALBtjPHYtPNURwjhA+CAGGNWve9XCOFPwHMxxrtCCA2BpjHGkrRzVVfF4+Ii4MAYY028j2WtCSHkU/6zuGeMsSyE8AhQGGO8N91k2hp2c/Ls5nTYzcmxm5OTdDfn4hnUHwLvxRjfjzF+DjwEHJ9ypmqJMT4LfJp2ji0VY1wcY5xd8etVwNtAfrqpvl4sV1rx6TYVH1nxjE0IYWegN3BX2llyXQhhW+BQ4G6AGOPn2VSAFXoC8zK9ADfTAGgSQmgANAWKU86jrWc3J8xuTp7dnBy7ORWJdXMuDqj5wEebfb6QLHhAzhUhhF2BzsDMdJNUT8WlOK8CS4H/izFmRW5gDPAbYFPaQbZQBJ4KIcwKIZyVdphq2g1YBvyx4rKtu0IIzdIOtYVOBcanHaI6YoyLgFHAh8BiYEWM8al0U6kG2M0pspsTYzcnx25OUNLdnIsDavg3X8uKZ96yXQghD5gA/DLGuDLtPNURY9wYY9wX2Bn4YQgh4y/fCiEcCyyNMc5KO8s3cEiMcT+gF3BOxaVzma4BsB/wuxhjZ2A1kE2vn2sI/Bh4NO0s1RFC2I7yM2vtgXZAsxDCaemmUg2wm1NiNyfDbk6c3ZygpLs5FwfUhcAum32+M14eVusqXicyARgXY3w87TxbquKykBnA0SlHqY5DgB9XvGbkIeDwEMID6UaqnhhjccV/lwITKb/sL9MtBBZu9gz+Y5SXYrboBcyOMS5JO0g1HQHMjzEuizGuBx4HuqScSVvPbk6B3ZwouzlZdnOyEu3mXBxQXwY6hBDaVzw7cSrwZMqZclrFQoO7gbdjjDemnae6QgjbhxBaVvy6CeU/fO+km+rrxRgviTHuHGPclfJ/33+NMWb8GaYQQrOKRR1UXIbzIyDjt2LGGD8GPgohdKz4Uk8go5eMfEl/suQSogofAgeFEJpWPLb0pPy1c8pudnPC7OZk2c3JspsTl2g3N6itb5yWGOOGEMK5QBFQH7gnxvhWyrGqJYQwHugBtAkhLASujDHenW6qajkEOB14o+I1IwCXxhgLU8xUHTsBf6rYolYPeCTGmDVr4bNQW2Bi+eMaDYAHY4zT041UbecB4yr+x/p9YGDKeaolhNCU8q2pg9POUl0xxpkhhMeA2cAGYA5wZ7qptLXs5lTYzaoOuzlhdvPXy7m3mZEkSZIkZadcvMRXkiRJkpSFHFAlSZIkSRnBAVWSJEmSlBEcUCVJkiRJGcEBVZIkSZKUERxQJUmSJEkZwQFVkiRJkpQRHFClLBRC2DmEcEraOSRJUjm7WaoZDqhSduoJ7Jd2CEmSVMVulmpAiDGmnUHSFgghdAWeAEqAVcAJMcb56aaSJKnuspulmuOAKmWhEMJ04NcxxjfTziJJkuxmqaZ4ia+UnToCc9MOIUmSqtjNUg1wQJWyTAihNbAixrg+7SySJMlulmqSA6qUfdoDxWmHkCRJVexmqYY4oErZ5x2gTQjhzRBCl7TDSJIku1mqKS5JkiRJkiRlBM+gSpIkSZIyggOqJEmSJCkjOKBKkiRJkjKCA6okSZIkKSM4oEqSJEmSMoIDqiRJkiQpIzigSpIkSZIyggOqJEmSJCkj/D8/lP9hnl8UGAAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "sol_exacte = sym.lambdify(t,solpar.rhs.subs(epsilon,0),'numpy')\n", "\n", "from scipy.optimize import fsolve\n", "from matplotlib.pylab import *\n", "\n", "t0 = 0\n", "tfinal = 8\n", "y0 = 1/a\n", "\n", "N = 40\n", "\n", "phi = lambda t,y : a*(y-t)\n", "\n", "def EM(phi,tt,y0):\n", " h = tt[1]-tt[0]\n", " uu = [y0]\n", " for i in range(len(tt)-1):\n", " k1 = phi( tt[i], uu[i] )\n", " uu.append( uu[i]+h*phi(tt[i]+h/2,uu[i]+k1*h/2) )\n", " return uu\n", "\n", "def heun(phi,tt,y0):\n", " h = tt[1]-tt[0]\n", " uu = [y0]\n", " for i in range(len(tt)-1):\n", " k1 = phi( tt[i], uu[i] )\n", " k2 = phi( tt[i+1], uu[i] + h*k1 )\n", " uu.append( uu[i] + (k1+k2)*h/2 )\n", " return uu\n", "\n", "\n", "tt = linspace(t0, tfinal, N + 1)\n", "yy = [sol_exacte(t) for t in tt]\n", "uu_EM = EM(phi, tt, y0)\n", "uu_H = heun(phi, tt, y0)\n", "\n", "figure(figsize=(16,5))\n", "subplot(1,2,1)\n", "plot(tt,uu_EM,'o', tt,yy,'r-')\n", "xlabel('$t$')\n", "ylabel('$y$')\n", "grid(True)\n", "title('EM')\n", "subplot(1,2,2)\n", "plot(tt,uu_H,'o', tt,yy,'r-')\n", "xlabel('$t$')\n", "ylabel('$y$')\n", "grid(True)\n", "title('H')\n", "show()\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.8.5" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": true, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 4 }