{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# Include these two lines of code at the beginning of every notebook you open.\n", "# It will allow you to receive more than one output from a single code chunk/cell.\n", "from IPython.core.interactiveshell import InteractiveShell\n", "InteractiveShell.ast_node_interactivity = \"all\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# MATH1110 Lab 2: Implicit plotting\n", "\n", "Remember to run the chunk of code above as you get started!" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "Graphics object consisting of 2 graphics primitives" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x, y = var('x, y')\n", "eq = (cos(x-y))^3/(e^tan(y))==sqrt(x)\n", "implicit_plot(eq, (x, 0, 20), (y, 0, 20),\\\n", " fill = True, fillcolor = 'lightblue', color = 'grey')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Objectives for today:**\n", "1. Review from last week\n", "2. Implicit plotting\n", "3. Work on assignment if there's time" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 1. Review\n", "\n", "Last week we covered a lot of ground! Let's review how to create functions and plot them in Sage.\n", "\n", "We did an example with this function, and it's plot was pretty messy. What do you think is causing the vertical lines?" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnQAAAHWCAYAAAD+VRS3AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi40LCBodHRwOi8vbWF0cGxvdGxpYi5vcmcv7US4rQAAIABJREFUeJzt3Xl4VfW97/HPJiMJSSCQkCABQWWIAlKMKFTFinhQURzq1NMDtbenQ7S1irWe9mnxaMXa1g6Q28Fah1ZLB6vV63VqvYAeRYOVigYVBRWUQQUSQAyDuX/8uslOWHtea//W2uv9ep79rCR777W+ZDt8+P6GFenq6uoSAAAAAquP7QIAAACQHQIdAABAwBHoAAAAAo5ABwAAEHAEOgAAgIAj0AEAAAQcgQ4AACDgCHQAAAABR6ADAAAIOAIdAABAwBHoAAAAAi4Qga6rq0sdHR3itrMAAAAHC0Sg27Fjh6qqqtSnzw5FIvFfF4n0fDj9vLDQ/GzEiPivj/XNb5rnli49+HxOvvhF89yTT6b3Z5Sk9vbuc2/Zkv77kbrTT5fOOy/99918s9S/v/v1AACQjUAEOjclCoRuvi/bZiLNSH+qrjbBe/9+25UAANAtdIFu3z5vw1KmgbE3Ap0/VVeb47ZtdusAACBW6AKdJC1enP570g1YdOjy08CB5vjBB3brAAAgVigD3datqb823Y4bHbr8VlNjju+9Z7cOAABiZR3oli1bplmzZmnIkCGKRCK6//77ezzf1dWl+fPna8iQIerbt6+mTZuml19+OdvL+h4duvxUW2uOBDoAgJ9kHeh27dqlCRMmaNGiRY7P33zzzbrlllu0aNEitba2qq6uTqeeeqp27NiR7aVzKtWAFe3QEejyU3W11KcPq5ABAP5SmO0JZs6cqZkzZzo+19XVpZ/85Cf61re+pXPPPVeSdOedd2rw4MG655579MUvfjHby2v3bmnFCumEE7I+lSOGXBGrTx8zj44OHQDATzydQ7du3Tpt2rRJM2bMOPCzkpISnXTSSXr66afjvq+zs1MdHR09HvF8/evSiSf23Ccuma4u94JXomvYfD+8U1NDoAMA+IungW7Tpk2SpMGDB/f4+eDBgw8852TBggWqqqo68GhoaIj72nXrzHHatKzLTSjdIddsffyxO+eB+2prCXQAAH/JySrXSK+U09XVddDPYl177bVqb28/8Fi/fr3XJcaVaUCjQ5e/6NABAPwm6zl0idTV1Ukynbr6+voDP9+yZctBXbtYJSUlKikp8awuL4dbmUOX/2pqpFdftV0FAADdPO3QjRgxQnV1dXr88ccP/GzPnj1aunSppkyZ4uWlXcfGwoiiQwcA8JusO3Q7d+7U66+/fuD7devWaeXKlaqurtawYcN0xRVX6MYbb9QRRxyhI444QjfeeKPKysp0ySWXZHvpjKUTljJd5Uqgy181NdL77+dmcQ0AAKnIOtCtWLFCJ5988oHvr7zySknSnDlzdMcdd+gb3/iGdu/era985Svatm2bJk+erMcee0wVFRXZXtqXGHLNf7W10t69Unu71L+/7WoAAHAh0E2bNk1dCdJHJBLR/PnzNX/+/Gwv5ap0gxdDroiK3v5ryxYCHQDAH0J5L9d0sLEweuN+rgAAvyHQeYQOXf4i0AEA/CbwgS5Xk9LZWBhRAweaz5lABwDwi8AHOq+xsTB6KygwoW7LFtuVAABgEOhcxrYl4VBXJyW4ex0AADlFoEtRrodcCXT+Vl8vbdxouwoAAAwCXRIMucIJgQ4A4CehDXReLaagQxcO9fXSu+/argIAACPwgc6L4NPZKa1fn9116NDltyFDTIeOzwkA4AeBD3Re+MIXpGHDzNfcyxVO6utN8N++3XYlAAAQ6Bw9+aTtCgh0fldfb47MowMA+AGBLkXprnLNNpCxsbC/EegAAH4S+EDnxeKG2HNyL1c4iQY6FkYAAPwg8IEuE7kIS8yhy29lZVJlJR06AIA/+DrQtbS0qLGxUU1NTa6fO91OGhsLozf2ogMA+IWvA11zc7Pa2trU2trq6nmTha5shlyj6NDlv+jWJQAA2ObrQBdEbFsSHmwuDADwCwKdA6euHEOu6O2QQ6R33rFdBQAAIQ10XV3eByY6dPlv2DBzRxG2mAEA2BbKQJcM25YgFcOGSXv3Slu22K4EABB2BLoU5fpernR9/K+hwRzffttuHQAABD7QebGxcDbo0IVH9H6/69fbrQMAgMAHukxEIomDF9uWIBXV1VLfvnToAAD2hTLQZRKWcn0vVwKd/0UipktHoAMA2Bb4QOdF8Mlm2JQh13BpaGDIFQBgX+ADnV/RoQsHOnQAAD8g0KWIjYXhJLoXHQAANhHoHLgRyujQhUNDg7Rpk9TZabsSAECYEeiSYGNhJBLdumTDBrt1AADCLbSBLtVtSzLFxsLhwObCAAA/CHyg8+vGwgy5hsPw4eYzX7fOdiUAgDALfKDzAvdyRapKS6VDDpHeeMN2JQCAMCPQpSjX93Il0AXHyJHS2rW2qwAAhBmBzmV06MLnsMPo0AEA7AploEsWlriXK9JBoAMA2BbKQJcJ7uWKeA47TNq6Vdq+3XYlAICw8nWga2lpUWNjo5qamlw9b7Kumx9WzhLoguOww8yReXQAAFt8Heiam5vV1tam1tZW18+damjLdJUr+9CFx8iR5siwKwDAFl8HOlucQhn3ckU81dVSVRWBDgBgTygDXS7CEh268IhEWBgBALArlIEuVV1d9jYWJtAFC4EOAGATgS5Fud5YmEAXLIcfLq1ZY7sKAEBYEehc5taiiP37s68FuTN2rLRhg7Rjh+1KAABhFMpAl+q2JQy5IlVjxpjja6/ZrQMAEE6hDHSZBDWGXJHI6NHmuHq13ToAAOEUykCXqkxCGR26cKqslA45RHrlFduVAADCqNB2AX5y9dWm0+KHe7kS6IJnzBgCHQDADgJdjB/+0BzHjz/4uVxvLMyiiOAZO1Z64gnbVQAAwoghVwdurFSlQxc+Y8aYrUv27bNdCQAgbAIf6NzqiLl1fu7lGl5jx0p790pr19quBAAQNoEPdF7ww71cCXTBE926hJWuAIBcI9B5hA5d+NTXS9XV0osv2q4EABA2BLoE2LYE6YhEpAkTpH/+03YlAICwIdA5cNq2JNcbC7PKNZgIdAAAGwh0PkWHLpgmTJDeeEPaudN2JQCAMAlloEvWPWPbEmRqwgTz2a9aZbsSAECYBD7QZRuckrE15EqgC6axY6WCAoZdAQC55etA19LSosbGRjU1Nbl63mQLF9zaSy4bBLpgKi0125cQ6AAAueTrQNfc3Ky2tja1trbaLiVtdOjCa8IEti4BAOSWrwNdKjLdJiTV99nq1rHKNbiigY5QDgDIlcAHukywKAJemjjRrHJds8Z2JQCAsMj7QFdSYue6BLrwik75fPZZu3UAAMIj7wPdnj3pvye2Q2dryJVAF1z9+0ujR0vPPWe7EgBAWOR9oLOFDl24HXssHToAQO6EMtCluiDC5rYlLIoItsmTzdYlH31kuxIAQBiEMtCluiginfdk+/re6NAF27HHSnv3sh8dACA3QhnopMy3O8kVAl2wTZggFRcz7AoAyI3QBrpE2LYE2SouNtuXsDACAJALgQ90XnfauJcrMnXccdLTT9uuAgAQBoEPdF7gXq5wwwknSOvWSRs22K4EAJDvCHQeyTYMsso1+E480RyXLbNbBwAg/xHokmBjYWSqpkYaO5ZABwDwXuADnRdBi0URcMuJJ0pLl9quAgCQ7wIf6HIl19ucEOjyw0knSa+8Im3ZYrsSAEA+C2Wg27ZNWr06+euyuZcrHTpIZmGEJD35pN06AAD5LZSB7rrrvL8GgQ6SNHSodPjh0t//brsSAEA+C2WgS8YPd5FglWv+mDFDeuwx21UAAPIZgS4BhlzhhhkzpDfeMA8AALzg60DX0tKixsZGNTU1xX2NH7ppXiDQ5Y+TT5YKC6VHH7VdCQAgX/k60DU3N6utrU2tra05vS7blsBNlZXSlCkEOgCAd3wd6PyAjYXhhtNOk554Qtqzx3YlAIB8RKBz4EaIyzaQsSgiv5x2mrRzp/TUU7YrAQDkIwKdRxhyRaxPfMJsYXL//bYrAQDkIwJditINaNkGMgJdfolEpNmzTaDL9fA9ACD/EegcxA65ZrqKliFX9DZ7trR+vfTCC7YrAQDkm7wOdDa3NCHQobcTT5T692fYFQDgvrwOdJmyvW1JUZG0b1/m74c/FRVJZ55JoAMAuC/wgc7rLlym4S6bDl1hIYEuX517rrRqlfTqq7YrAQDkk8AHOi+4ERIJdHAyc6ZUVSXdc4/tSgAA+STwgc7LFYO29qEj0OWv0lLpvPOku+9mtSsAwD2BD3ReY8gVbvvMZ6Q33pCee852JQCAfEGgc2B7UQSBLr+ddJJUX2+6dAAAuIFA5xE6dIinoEC6+GJp8WJp717b1QAA8gGBzoHTxsIMucJNc+dK770nPfig7UoAAPmAQOcRAh0SGTdOOu446Ve/sl0JACAf5CTQzZ8/X5FIpMejrq4uF5fOCNuWIBe++EXpscekdetsVwIACLqcdeiOPPJIbdy48cBj1apVrpzXy42FsxlyZVEEkrngAqmyUvr1r21XAgAIupwFusLCQtXV1R141NTU5OrSVtChQzJlZdK//7t0221SZ6ftagAAQZazQLdmzRoNGTJEI0aM0EUXXaS1a9fm6tJpc2PbEgIdUnH55dLmzdw5AgCQnZwEusmTJ+uuu+7So48+qltvvVWbNm3SlClT9MEHHzi+vrOzUx0dHT0etthY5VpURKALi9GjpVmzpFtu4c4RAIDM5STQzZw5U+edd57GjRun6dOn66GHHpIk3XnnnY6vX7Bggaqqqg48GhoaclHmASyKQC5deaX00ktmgQQAAJmwsm1JeXm5xo0bpzVr1jg+f+2116q9vf3AY/369Tmu0OBOEciFk06SPvEJ6Uc/sl0JACCorAS6zs5OrV69WvX19Y7Pl5SUqLKyssfDFjYWhtciEenqq6XHH+f+rgCAzOQk0M2bN09Lly7VunXr9Oyzz+r8889XR0eH5syZk4vLp80PiyK6urI7B4Ll05+Wxo6V5s+3XQkAIIhyEug2bNigiy++WKNHj9a5556r4uJiLV++XMOHD8/F5a3INtBJdOnCpKBA+s53pIcflpYvt10NACBoCnNxkcWLF+fiMq5x6tDleshVMoGuuDjz8yBYPv1p6frrpeuuM8EOAIBUcS9Xj2S7KEKiQxc2BQVmyPWRR6QlS2xXAwAIEgKdR9zo0O3d604tCI7zz5cmTzZbmTCHEgCQKgJdAtncy5U5dMhEJGI2GX7hBem3v7VdDQAgKAh0HiHQIVNTpkgXXCD9139Ju3bZrgYAEAQEOgd+2LZEItCF2U03SVu3so0JACA1BLokMg13LIpANkaMkL77XenHP5ZWrrRdDQDA7wh0DvxwL1eJQBd2V11lNhv+whek/fttVwMA8DMCXQK2hlyLisyRQBduRUXSr34lPf+8tHCh7WoAAH5GoHMQ26FjlStsOv546bLLpGuvldrabFcDAPCrwAc6N4ZH48mmQ+fGHDr2oYMkff/7Zk7dJZdInZ22qwEA+FHgA51fZdOhi97ui/95Q5L69pXuucd06L79bdvVAAD8iEDnwPaiiJISc9yzJ/s6kB+OPlr63vekH/7Q3BoMAIBYBLoEYu8UkS43Ah0dOsS66ipp5kwz9Lp2re1qAAB+QqBzkGqISzRPjkAHt/XpI919t1RdLZ17rvThh7YrAgD4BYEugdjA5hTeEoW2bBZFEOgQz4AB0n33SWvWSJdemt1fHAAA+cPXga6lpUWNjY1qamqK+5psglM8TtuWpHttOnTwyrhx0l13SX/8o7nfKwAAvg50zc3NamtrU2trq5XrJwuLiUIbq1zhpfPOk265xWxp0tJiuxoAgG2FtgsICqdw51WHLhIxoY5Ah0SuuEJ6+23p8sulwYOl88+3XREAwBYCnQPbQ66SGXYl0CGZH/5Q2rRJuvhisyH17Nm2KwIA2ODrIddU2LxThFeLIiQCHVLTp4+ZT3fOOdIFF0gPPmi7IgCADYEPdF5wCom5HHKVCHRIXWGh2c7krLPM3Lq//tV2RQCAXCPQJZBsY2GvFkVIBDqkp6hI+v3vpbPPNnvU/frXtisCAOQSgS4LdOjgJ0VF0uLF0pe+JH3hC9L113uzrQ8AwH9YFOHAaVGEU0CjQwe/KSiQFi2ShgyRvv1taf168310KxwAQH4i0CXQ1WUmnUe/dno+nmwDHduWIFORiPStb0mHHCL9539Kq1dL994r1dbargwA4BWGXB3Eduiigc4poCUKdPv2ZVcDHTpka+5cackSc5uwY46RnnvOdkUAAK8Q6BKI7dClO+RKoIMfTJkirVhhhmCnTpV+8APu/woA+YhA54AOHfLJ0KHSk09KV10lfeMb0umnS5s3264KAOCmwAc6rzcWzrRDt3dvdtcuKZH27MnuHEBUUZF0003SI49IL7wgHXWU2eaEVbAAkB8CH+i8ZqtD17evtHt3ducAejvtNGnVKulTn5IuucRsRvzOO7arAgBki0DnINVtS7wMdGVl0ocfZncOwEltrfSHP0j33Wfm1zU2Sr/8pbR/v+3KAACZCnyg83LIKPZOEbkeci0vl3btyu4cQCKzZ0ttbdL555vNiI85Rlq2zHZVAIBMBD7Q5YqNDh2BDl4bMEC67TbpmWfM3ocnnSRdeKG0bp3tygAA6SDQJRAb2HK9bQkdOuTScceZUHfnnWZF7OjR0le+Ir37ru3KAACpINA5cFo5m26Hzo0hV+bQIZf69JH+4z/MRsTXX2/uC3vYYdK8edJ779muDgCQCIEuRbkeco0GOjaBRa6Vl0vXXGOGXa+5RvrVr6Rhw6TmZmntWtvVAQCc+DrQtbS0qLGxUU1NTVaun2zINdGqwI8/zi6MlZWZI1uXwJaqKmn+fOnNN829Yf/0J+mII6SLLjKrYwEA/uHrQNfc3Ky2tja1trbm9LqpDrkmC2zZbANRXm6ODLvCtupq6dvflt56S1q0SGptlZqapMmTpTvu4C8dAOAHvg50qfD6ThFRTuEt2bBqNvPoooGOhRHwi759pS9/WXrtNen++80K2c99TjrkEOnKK6VXX7VdIQCEV+ADnRdiQ2I01KU75CplN48uOuRKoIPfFBRIZ59tbiP2+uvS//pf0l13SWPGmNWy//t/Sx98YLtKAAgXAl2KMunQZRPo6NAhCA47TLr5ZmnDBumPf5RqaqSvflWqrzcbF//xj/wzDAC5QKBLIJtFERJDrgiP0lLp05+WHnzQ7F33wx+ae8ReeKEJeeedJ/3+91JHh+1KASA/EegcpLoowssOXUWFOe7Ykfk5ABtqa02XrrVVeuMN6brrTAfvkkukQYOkU0+VfvpTM1wLAHAHgS6BbDt02QS6qipzbG/P/ByAbSNHSldfLT37rNn+5JZbzBy8b3zDbIEyZox01VXS3/7Gim4AyAaBzoFbHbpshlxLS81j+/bMzwH4yfDh0mWXmcUUH3xgVsqecIIZij31VLNq9sQTzd53S5dKnZ22KwaA4Ci0XYCf2ezQSVL//gQ65Kd+/cxK2bPPNv+etbVJTzwh/b//J/3sZ2aYtrRUmjpVOvlkE/QmTepe/Q0A6IlA56DPv/qW8QJdQYEJc17OoZPMsCuBDvkuEpGOPNI8Lr/c/Lv14ovdAe/73zcbGxcUSBMmmK1Roo/DD/d2L0oACAoCnYNooIvtwMUGusJC85yXq1wl06FjDh3CpqBAmjjRPK66yvzF6KWXpOXLzVy8J54we91J5i4Wkyebx8SJ0tFHSw0NhDwA4UOgc1BQYI6xIa53h07yvkPHkCtg/gJ19NHm8aUvmZ9t2yY995wJeMuXSwsXdm9m3L+/6eQdfbQ5Tphgun8lJfb+DADgNQKdg2iHLl6gK/zXby0XHbr338/uHEA+GjBAOu0085DM9Ih33pH++U9p5Upz/L//18zH6+oy/86OGSONGyeNHWu+HjPGrLQtLbX7ZwEANxDoHCQbck21Q5ftKr2qKrOPF4DEIhFp6FDzOOOM7p/v3CmtWtUd9F5+WXr88e6/KPXpI40YYcJdbNAbNcrsmcfQLYCgINA5SHXINVmH7qOPsquDIVcgO/36Sccfbx6x3n9feuWV7sfq1dJf/iKtW9e9GKpfP7OPntPj0EMZwgXgLwQ6B6ksipCSd+jcCHTbtmV3DgAHGzRI+uQnzSPW7t3SmjXmLhZr13Y/HnzQbIwcnUYR7QiOHGk6fMOGdXcIGxrMsaqKDh+A3CHQOUg2hy5Zh65PH/P6bANdba20dasJjoV8UoDn+vaVxo83j9727zfz9GKD3tq1prv32GPSxo09tzoqL+8Z8HoHvqFDzVxAQh8ANxATHCQbck3WoSspMX/TdyPQdXVJ770n1ddndy4A2SkoMJ24YcOkadMOfn7vXmnTJnPf2vXrzTH6ePVV6e9/l959t+dfBPv2lQYPTvyoqzPHykrCH4D4CHQOkg25Oj0fq7DQPLINdIMHm+OWLQQ6wO+Kikz3raHh4Dl7Ufv2SZs39wx7mzd3P154wRw3bTp4lXxJycFhb9AgaeDA7mPs1wMGdP/lFED+C3yg8+JvrE5DrrFDKdFrJloUUVrqTodOMv+BBxB8hYXSIYeYx+TJ8V/X1WUWRMWGvd6PF180e+998IHzBuSRiJmHGy/s9e8f/1FeTjcQCBpfB7qWlha1tLRof7LlpC5LNuQalWhRhJuBbsuW7M4DIFgiERO6Bgww26gks3evmW8bDXjvv9/9dez3r79uNmPevt0suIq3tVJBQc+AFy8AVlQkftAhBHLH14GuublZzc3N6ujoUFVVVc6um2zINcrrDl1Zmdk6gQ4dgESKirqHYdPx0Ucm3CV6bNvW/fXbb/f8ebLN08vKkoc+p0d5uXlvWVn319EjIRFw5utAZ0vskGt02MFGh04y/4Em0AHwQmmpWXRRV5fZ+zs7pR07Ej86Og7+2ebNplsY+7OdO3tObYmnpMQ56Dn9LNFzpaXm0bdv99ex3xcWMuyMYCHQOYjdliTRbb5yEehqawl0APyppMQ8Bg3K/lwffyx9+KEJdx9+aB67dh38dbxj9Ovt2+M/l0pgjOrTJ3Hgi/d9vJ+VlEjFxd3H2K8TPVdcTLBEagId6B54QFq61P3zJtuHLirRcEPfvu4EuqFDzUo4AMhnffqYKSb9+nlz/q4u01GMhryPPup+RLeZ6v11su937zYBMtFrd+92/v9HOoqK0g+CTs8VF5tzOT0KC+M/l+7roq9heDy3Ah3ozj7bm/OmGugSBbbSUvMfjWwNHy794x/ZnwcAwiwS6e6WDRyY22vv2yft2WMCpdMx3eeSvX7Xru5FL72f27vX+eHF2sNIJLNwGN36q6AgmF/3fkQzhdcCHei84nQnCKd/2OOtEJPM3zJ37sy+lkMPNRORP/44d/9QAADcE/2ffVmZ7Uri6+oywTNe4Is+UnlNqq+L95r9+81z0SD84Yfm6+jPY59P9+tkt+z0QiRicsUDD0gzZ3p3HQKdA6eFEE7/ECTq0FVUmG0CsjV8uPkHfONGs3cVAABui+2m5buPP3YvIMY7R+/Hvn1SY6O3fy4CnQOnIdc9ew5+XbJA9+ab2dcyfLg5vvUWgQ4AgGz16WPmE+YbBvEcOA25Oi2ASDTkWlFhVmtlKxro3AiHAAAgPwWyQ3fLLelvoJkONzp0lZXuBLrKSqm6Wlq3LvtzAQCA/BTIQHfVVd6e3+lerZl06Do63Kln9GjplVfcORcAAMg/DLkmkO0culR3Pk/myCOll1/O/jwAACA/EegSiA10mXToojufZ6uxUVq92pt9ggAAQPAR6BKIDXGZdOgkd+bRNTaaa731VvbnAgAA+YdAl0BsoMukQye5M4/uyCPNkWFXAADghEDnIDrvLVmgS9ShGzDAHLdty76eQw4xK125BRgAAHBCoHMQnTsXO8ya7pBrTY05vvde9vVEItKxx0rPPpv9uQAAQP4h0DmI3uYrNsSl26EbNMgc3Qh0kjR5sgl0bqyaBQAA+YVA58Ap0PVeYVpYmHgFa3GxVFXlbqDbulV6/XV3zgcAAPIHgc5BNNA5deWioneCSNQxq6lxN9BFItJTT7lzPgAAkD8IdA6cOnS9VVYm32eupkZ6/313aqquliZNkh5/3J3zAQCA/OHrQNfS0qLGxkaNG/fZnF43NtDFduCiP5dS25bEzQ6dJM2YYQJd7IbHAAAAvg50zc3Namtr0/e+99ucXjfekOvu3d1fV1aaY64D3fvvSytXundOAAAQfL4OdLbEG3KNHV5NJdDV1UkbN7pX1/HHm+s+8IB75wQAAMFHoHMQL9Dt2tX9dTTQJbq11/Dh0jvvJF5ckY7iYumcc6Q//IHtSwAAQDcCnYN4Q67pduiGDTPz3d55x73aLrxQeuUV6cUX3TsnAAAItkAEukgkt9dLZcg1lUURw4eb41tvuVfb9Olmxes997h3TgAAEGyBCHS5lkqgKykxQ6DJOnSSu4GuqEj693+Xbr9d6ux077wAACC4CHQOokOtiQKdJPXvL23fHv88ZWVmpaubgU6Svvxls3r2z39297wAACCYCHQOop2v2G1KpIMD3aBBybclGT7c/UA3Zox0yinSz37G4ggAABCQQJfrOXQffWSOvQNc7+9ra5MHuiOOkF57zb3aoq6+WnruOe4cAQAAAhLoci1eoOu9RUlNjbRlS+JzjR0rvfyy+520GTOk446TvvtdunQAAIQdgc5BNNDF7jsnSe3tPb9P5U4QjY3S1q3u3jFCMl3L666Tli+XHn7Y3XMDAIBgIdA5cOrQVVVlHugkafVq9+qLOvVUado06etfZ8UrAABhRqBzEA10u3ebjYEls6K1d6CrrTX3Vk005Hn44VJhodTW5n6dkYi0cKH0xhvSj3/s/vkBAEAwBCLQ5XpRROzq1mi4q6o6eIuSmhqzxUnvoBerqMgsjHjpJffrlKSjjpK++lXp+uulN9/05hoAAMDfAhHoci0a4qTueXROQ661teZigQ6LAAAgAElEQVS4eXPi802cKL3wgnv19TZ/vtlCZc4caf9+764DAAD8iUDnIDbQRefROQW6ujpzTBboJk2SVq7svgOF2yorpbvukp58UrrlFm+uAQAA/ItA5yB2yDUa6JzuChENdJs2JT7fpEnmnF4sjIg66STpqqukb31L+sc/vLsOAADwn0AEulzPoYve+ktK3KGrrJRKS6WNGxOfb+JE82d4/nl36+zthhuk8eOlc881izUAAEA4BCLQ2ZRoDl0kItXXJ+/QVVZKo0Z5H+hKSqS//MXUfNFF3g3xAgAAfym0deGuri7t6H3rhX/p7OxUZ8zGah98EB0D7chBZT1t22aOpaUmKH3wgdnKpLNT6ugwixHeftt8LZn5d11d3d9HTZggPfPMwT+PFX3uww8Tvy6R/v2l22+Xzj7b7E/3ve9ldp58t3ev2U4m098zAABeqqioUCSNIcpIV5edG0d1dHSoqqrKxqUBAAB8rb29XZWVlSm/3lqgS6dD94c/bNW8eRMkrZeU+h8uG337moUMZ5whPfSQdMcd0ty5ZvuRc84x89S++13pyiulZ5+V/ud/zPsWLpS+/31pwwapqalJra2tkqTWVmn6dGnJEjOnzkl7uzRsmHTnndLs2Ynriz13PNdcI/3yl9Lvfy/NnJnanzuV82aio6NDDQ0NWr9+fVr/gKYik5rPO898xr/7nbvnTZVX5w7L52f73EGr2cvPTwre75nPryd+z96fN5PPMN0OnbUh10gkkvIfqro6WmalchXoSkqkPXvMQzJz5SQz3Nqnj3m+stIEsP/zf8zXkhmajUTM9wUFBQf+jFOnmiG+1avNilQn0WhdVtZ9vnhizx3PokVmS5VLL5Uef1yaMiX5nzuV82ajsrLS9fNnUnNRkXkkepuXvwuvzh2Wz8/2uYNYs+TN5ycF7/fM59cTv2fvzxvl1WcosSgirkhEKi/vuW2JdPDWJfX15n6uThv6Njc3H/i6tNSsQH3uOXfqiz13PAUF0t13S8ccI51+utkLz43z+o1XNXv5uwhizV7h95y7c3slaL9nPr+e+D17f95csDbkmo7bb9+kSy+tl9SuXHXoBgwwIWzwYBOEXn1VGj3arCKdN0+68ELpxhulBx+UzjrLbF1SVyf96EfSf/+38+3AvvQlMzS7apXzNdvbTXD805+k889378/S0SGdcor01lvSsmXSmDHunTv1GsycyXTnBHjl9NPNkOu999quJBj89vkhPXx+wcbnF3y5+AwD0aErLi6yct3y8u5tS6K//0w3F5akY4+VXn5ZijN10DOVldIjj5hblU2fbueeryUlJfrud7+rkpKS3F8cWePzCzY+v2Dj8wu+XHyGgQh0RUX2A11Rkfk+3u2/km0uLElNTWaenI07OQwcaObRlZaaUJdKvW4qKSnR/Pnz+Q9SQPH5BRufX7Dx+QVfLj7DQAQ6W8rKugOdZDYX7t2hGzzYHFPp0DU2mlDo0aKfpOrrpb/9zeyVN306d5MAACBfEOgSiO3QSWZ+W+8OXXGx6X6lEugKCsx9Xd1aGJGJQw+V/v53E+ZmzDg4oAIAgOAh0CVQXt7z9llOHTrJDLumEugkM+xqq0MXNXq0GX59802zOGDnTrv1AACA7BDoEigv7/m9U4dOSi/QHXusCVLvvZd1eVkZP1569FHppZfMKt3du5O/BwAA+FMgAp2tjVV6B7pEHbpUFxk0NZmj7S6dZGp56CFp+XJz54SYm3O4ZtmyZZo1a5aGDBmiSCSi+++/3/2LwBMLFixQU1OTKioqVFtbq9mzZ+vVV1+1XRbS8POf/1zjx48/sJnp8ccfr4cffth2WcjQggULFIlEdMUVV9guBSmYP3++IpFIj0dddCWlBwh0vcTeZcOpQ5ftkOuhh0qDBtmdRxfrhBOkv/7VzKu75JKeQ8xu2LVrlyZMmKBFixa5e2J4bunSpWpubtby5cv1+OOPa9++fZoxY4Z2xU4sha8NHTpUN910k1asWKEVK1boU5/6lM4++2y9/PLLtktDmlpbW/WrX/1K48ePt10K0nDkkUdq48aNBx6r4m1E6wJrt/7yq5ISswp0//7Uh1zr61MPdJGIGXb1S6CTpFNPlf78Z3N/2rlzzb1kCwrcOffMmTM1M9UbycJXHnnkkR7f33777aqtrdXzzz+vE0880VJVSMesWbN6fP+9731PP//5z7V8+XIdeeSRlqpCunbu3KnPfOYzuvXWW3XDDTfYLgdpKCws9LQrFysQHbpcKi42x87O9IZcd+zouSI2kUmTpBdeyK5Ot82aZW4T9vvfS1/+sr1hbvhX+7/+NlNdXW25EmRi//79Wrx4sXbt2qXjjz/edjlIQ3Nzs8444wxNnz7ddilI05o1azRkyBCNGDFCF110kdauXevZtejQ9RLd86+z02zCG6uqytxGK3pf16h07hYhmf3oNm0y4bD3uWy64AKzOGLuXBNmb7ml5xA0wqurq0tXXnmlPvnJT+qoo46yXQ7SsGrVKh1//PH66KOP1K9fP913331qbGy0XRZStHjxYv3jH/9Qqx8mXiMtkydP1l133aVRo0Zp8+bNuuGGGzRlyhS9/PLLGjhwoOvXC0Sgy2W3KHYT594bOpeVmTlme/f2/Hm6gW7sWHNcvVry21+U58wx25hcdpl0yCHmvrXAZZddphdffFFPPfWU7VKQptGjR2vlypXavn277r33Xs2ZM0dLly4l1AXA+vXr9bWvfU2PPfaYSnt3GOB7sdONxo0bp+OPP16HHXaY7rzzTl155ZWuXy8QgS6XYkNcdPg1qqzMHD/8sOfP0w10o0aZzpcfA50kNTdL774rXX21NHSodNFFtiuCTZdffrkeeOABLVu2TEOHDrVdDtJUXFysww8/XJJ0zDHHqLW1VT/96U/1y1/+0nJlSOb555/Xli1bNGnSpAM/279/v5YtW6ZFixaps7NTBW5NeIbnysvLNW7cOK1Zs8aT8xPoeknWoZMO3rOtutrc6zXVQNe3rzRihAl0fnXDDdL69aZjV18vnXSS7YqQa11dXbr88st13333acmSJRoxYoTtkuCCrq4udXqxRxFcd8oppxy0KvJzn/ucxowZo2uuuYYwFzCdnZ1avXq1TjjhBE/OH4hAl8sh19iuXO8OXd++5ti7QxeJdG9dkuqcuDFj/B3oIhHp1782++vNni099ZSUyaK4nTt36vXXXz/w/bp167Ry5UpVV1dr2LBhLlYMtzU3N+uee+7RX//6V1VUVGjTv/7GUlVVpb7Rfxnga//1X/+lmTNnqqGhQTt27NDixYu1ZMmSg1Yww58qKioOmrNaXl6ugQMHMpc1AObNm6dZs2Zp2LBh2rJli2644QZ1dHRozpw5nlyPQNdLKkOuTmprpc2bUw90Y8dKft9jt7hYuvdes1fd6aebzZBra9M7x4oVK3TyyScf+D46b2DOnDm64447XKwWbvv5z38uSZo2bVqPn99+++2aO3du7gtC2jZv3qzPfvaz2rhxo6qqqjR+/Hg98sgjOvXUU22XBuS9DRs26OKLL9b777+vmpoaHXfccVq+fLmGDx/uyfV8HehaWlrU0tKi7du9aU86KSrq/jrekKuTqiqzdUmqRo6U3nrL7Hfn5655ZaW5m8SkSWYV7OOP9/wdJTNt2jR1sQdKIPG5Bd9tt91muwS4bMmSJbZLQIoWL16c0+v5eh+65uZmtbW16Qc/+EHOrlkYE3HT6dBVVJgtTVI1YoRZMfvOO+nVZ8PQoaZT9/TTkgcLcwAAQJZ8HehsiO2W9e7QJZo2VFmZXofu0EPN8c03U3+PTZ/8pLRwobRokfSb39iuBgAAxApEoMvlyE/stbzs0EUD3bp1qb/Hti9+UfrP/zR3knj2WdvVAACAqEAEulz6+OPur9OZQ5duh65vX7MyNigduqiFC6WJE83edE63QQMAALlHoOslNtD17tAVF8e/FVa6HTpJGj48eIGuuNjc73XbNtOtY948AAD2BSLQ5TI0JOrQRSIHh7yodDt0kjRkSOqbEfvJiBHSrbdKf/qT2asOAADYRaBLcC2n8BZvy46KCqmzU9qzJ/Vr1dWZjXuD6NOfNh26r35VamuzXQ0AAOEWiECXS31ifiOFDrv0JerQSel16errgxvoJOnHPzaLO+bONVuwAAAAOwh0vcRuW+IU6BJ16KT05tHV10vvvRfcMFRWJt1+u/T889Itt9iuBgCA8CLQ9RLboXO6g0O8Dl10j7rdu1O/Vn29GeLdvDn19/jNccdJX/+69J3v+PvetAAA5LNABLpczqGLDXFOgS5ehy4a6D76KPVr1dWZY5CHXSXp+uvNit1LLzW3MgMAALlFoOsl0zl0mXbopGCudI3Vt6+5e8Ty5dIvfmG7GgAAwicQgc6WdDp0paXmmE6gq601W6EEvUMnSVOnSp//vPTtb5t5gQAAIHcIdL3E7kPn9Ry6wkKpf39p69bU3+NnCxaY47e+ZbcOAADCJhCBztY+dJnMoUsn0ElSdXX+BLqaGjOf7te/llpbbVcDAEB4BCLQ5VJsh66Pw2/HzQ6dJA0YkD+BTpK+9CVp3Djpssu4LRgAALlCoOslWQiJ16ErKjLz4dJZ5SqZDt22bem9x88KC6Wf/ER67jnpL3+xXQ0AAOEQukAXL5BFxXbo0nl/JGK6dGEeco06+WTptNPMXLqgbpoMAECQBCLQpTN0N2WKt9eKN+QqEehi3Xij9Oqr0p132q4EAID8F4hAl6xrFqukJP5zl16a/bUSdfgIdN0+8Qnpwgul+fPTH4YGAADpCUSgc2ty/dFHZ3+tRB264mJpz570asrXQCeZFa8bN0q//KXtSgAAyG++DnQtLS1qbGzUd77zHVfO19Vl5rolkk2Hrqgo/Tlj1dXSrl3pB8EgOOII6TOfkX7wg/z88wEA4Be+DnTNzc1qa2vTddf9d8rvSRTYUun0JXuN01YmUckWXDipqjLH9vb03xsE3/ym9O670m9/a7sSAADyl68DXVQ6c+gSBbJUAl28a0WDotNmw1GJhmPjqagwxx070n9vEIwdK82eLX3/+9L+/barAQAgPwUi0Lk1h86NDl2iQJdJh65fP3PcuTP99wbFtddKa9ZI995ruxIAAPITga6XZN1At4dc871DJ0lNTWZvup/8xHYlAADkp9AFumSLInLdoQtDoJOkr31NeuYZacUK25UAAJB/AhHo0plDlwgdOnvOPFM69FBp4ULblQAAkH8CEeiCMocuk0UR0Tl0+R7oCgqk5mZp8WJpyxbb1QAAkF/yJtD99KfS5s3eb1vi9pBrYaFUWpr/gU6SPv958+e99VbblQAAkF/yJtBVVEi1tdmfJ9dDrpKpPZ9XuUYNGGBuB/ab37g3jA4AAAIS6FL5n3+yxQ7SwYsipkxxfk0ibnfoJBPowtChk8z9dNeulZYts10JAAD5IxCBzqs5dKNGHfyaZOHR7Tl0kplHF5ZAN3WquSXYb35juxIAAPJH3gS6aOctnfDn1NXL9a2/JKlvX2n37szeGzSRiOnS/fnP+Xu7MwAAci1vAp1b58mmQ5dNoPvoo8zeG0T/8R9SZ6f0hz/YrgQAgPyQN4Eu1Tl02b7Gq0AXlg6dJA0ZIp1yitnCBAAAZC90gS72dU7vyWaVa6Zz6MIW6CTpooukJUukjRttVwIAQPDlTaCLCto+dFI4A90555g96f78Z9uVAAAQfHkX6NI5j9sdOgJd6gYMkGbMYNgVAAA3BCLQ5fJertl06BI9l0jYFkVEXXSR9PTT0vr1tisBACDYAhHocrkoIptVrpkGutLS8HXoJOmss6SSEulPf7JdCQAAwRa6QJdsUUQyiYZcEz2XSBiHXCWpstKsdn3wQduVAAAQbL4OdC0tLWpsbNTPfvYzV87n5yHXMAY6SZo1S3rySWnbNtuVAAAQXL4OdM3NzWpra1Nz81eTvjaTblsmmEPnrjPPlPbvlx55xHYlAAAEl68DXVQuV7mmeusvp9dl26Fz688ZJEOHShMnMuwKAEA2AhHoUlnl6hTOVq7s+X3vOXSZiIY2p5qymUPX1SXt2ZN5XUE2a5b08MPS3r22KwEAIJgCEejOOSf5a5yC2oQJ8V//j39kFu4SBbpsVrlK4Z1Hd+aZ0vbt0v/8j+1KAAAIpkAEusMPd/+cEyc6/zzVIdf9+w9+LpshVym8gW7SJGnwYObRAQCQqUAEOj+JdvUSzaFLdy5ctEMX1iHXPn3M9iV//7vtSgAACKZQB7pMFkUkCnSJuneJRG8ZFtZAJ0nTp0vPPy9t3Wq7EgAAgidvAl2q8+GyXRSRSocu3UBXXGyOYQ50p5xifqdLltiuBACA4Mm7QNc7sH3zm8nfEyubDl2iBROJEOikYcOkI46Q/vY325UAABA8eRPo4rn4YnfPl8o+dHToMsM8OgAAMpM3gS5Xd4rwskMX9n3Ypk+XXntNWr/ediUAAARL3gS6qHRWmGYz5OrmxsJ06Ixp08xx6VKrZQAAEDh5E+j8tCgiXQQ6Y+BAaexYNhgGACBdeRPoMuHVooh0Eei6TZ1KoAMAIF15H+hig1e6G/46IdB5a+pU6aWXzK3AAABAavIm0MXbtsRtiVa5Mocue1Onmt/tM8/YrgQAgODIm0AXT6KAl0n4o0PnrcMPl2pqGHYFACAdeRPo3FoUkc0q10wDXUGB6e4R6Mzv95OfJNABAJCO0AU6t97jZodOMvdzJdAZU6dKzz4r7dtnuxIAAIIhbwJdriQKdJnOoZPMsCuBzjj2WGn3bmn1atuVAAAQDL4OdC0tLWpsbFRTU1PS17q1GCLZkGsqt/7KBIGu28SJ5vNcscJ2JQAABIOvA11zc7Pa2trU2trq2jljg5+fhlwJdN369TMbDBPoAABIja8DXTpKStw5j42NhSUzh445Y92OOYZABwBAqvIm0J12mjfn7T0vzot7uUpSYSGBLtYxx0j//CddSwAAUpE3gS6TMJXKrb96b1js1aKIggICXaxjjpE6O6WXX7ZdCQAA/pc3gc4rvUNfokUR2SzMoEPX04QJJuS6OH0SAIC8FapA19WV/qKI3q/xqkNXWCjt35/5+/NNWZk0ZowZdgUAAImFKtClondQizeHjg6d98aNk1580XYVAAD4H4EuiXQ6dNkEOubQHWz8eGnVquQrjwEACLu8C3TphKp0FkX0/p5Vrt4bN05qb5fWr7ddCQAA/pZ3gc5tLIqwZ/x4c1y1ym4dAAD4Xd4FulQ7bE7POb2/Ny/n0LEooqeGBqmqinl0AAAkk3eBzmternKlQ9dTJMLCCAAAUpH3gS7dCfW2OnQsinA2bhxDrgAAJJP3gS4Rv+1DR6A72Pjx0iuvmLtGAAAAZ6EOdKmIty+d0ypXFkW476ijzNzCNWtsVwIAgH+FLtD5eVEEge5go0eb4yuv2K0DAAA/y0mgmzt3riKRSI/Hcccd58m1EoUqNzao5dZfuTVokFRdLb36qu1KAADwr8JcXejf/u3fdPvttx/4vri4OFeXTguLIvwlEjFdOjp0AADEl7NAV1JSorq6ulxd7oBEIcvtRREMuXpjzBjppZdsVwEAgH/lbA7dkiVLVFtbq1GjRukLX/iCtmzZEve1nZ2d6ujo6PHIlWQdukR3imCVqzeiHTru6QoAgLOcBLqZM2fq7rvv1hNPPKEf/ehHam1t1ac+9Sl1xtmLYsGCBaqqqjrwaGhoSPlaqQ6Z9v46VYnu5UqHzhtjxkg7dkibNtmuBAAAf3I90N19993q16/fgceTTz6pCy+8UGeccYaOOuoozZo1Sw8//LBee+01PfTQQ47nuPbaa9Xe3n7gsT6Lu7O73dVhH7rcGzPGHJlHBwCAM9fn0J111lmaPHnyge8POeSQg15TX1+v4cOHa02czcVKSkpUUlLidmkpSedesL1luyiCVa7ORo40gfeVV6STT7ZdDQAA/uN6oKuoqFBFRUXC13zwwQdav3696uvr3b58VqEqHSyKyJ2iIhPq2LoEAABnns+h27lzp+bNm6dnnnlGb775ppYsWaJZs2Zp0KBBOuecc7y+/EGSha505uD1xpCrdw4/XFq71nYVAAD4k+eBrqCgQKtWrdLZZ5+tUaNGac6cORo1apSeeeaZpJ08P6NDl1sjRxLoAACIx/N96Pr27atHH33U68vE1TtkzZsnffOb8V+fTYeOjYW9M3KkdNtt5vPJ1bA6AABBEbp7uV5zTXorX+OFB1a55tbIkdLu3WxdAgCAk1AFulSCnK0OXZ8+bJybyGGHmSPDrgAAHCxUgc5Nbnfo+vRh25JERowwRwIdAAAHy7tAl06XLJs7Rbh1vqiCAue7T8AoL5cGDybQAQDgJO8CXe/OWbrDmMk2Fk4k2yFXAl1iI0dKb7xhuwoAAPwn7wJdrngx5EqgS+yww+jQAQDghEDXi81tS5AYe9EBAOAs7wOdV3uWedGhQ2IjRkgbN5rtSwAAQDdiRC/J5tB5uW0JEhs+3Bw3bLBbBwAAfkOMyJDbt/4i0CXX0GCOb79ttw4AAPwm72KE17eFSnT+bEIZc+iSGzrUHNevt1sHAAB+k3eBLlfo0OVeaalUW0uHDgCA3ogRafKqA0igS01DAx06AAB6y/sYEdtJy2TT4Hivcfu+qwS61AwbRocOAIDe8i5GZBu0koU8rzp0zKFLDR06AAAO5utA19LSosbGRjU1NWV8jlzuQ5cNOnSpGTbMBDq3f/8AAASZr2NEc3Oz2tra1NraaruUA5hDZ1dDg7Rzp7R9u+1KAADwj7yLEW4HrlzNoWPINTXDhpkjw64AAHTLu0DnNTp0drG5MAAAByNGZIg5dHbU1ZluJrf/AgCgW2BjxJo1dq5Lh86uggKzufDGjbYrAQDAPwIbIw4/XKqoyN31egc55tDZM2QIgQ4AgFiBDXSS93vOOb2GDp199fUEOgAAYhEjMsQcOnsIdAAA9ESMSBN3irCvvl56913bVQAA4B+hCnRudtXo0NkzZIi0ebO0f7/tSgAA8AdiRBLMofOf+nrp44+l996zXQkAAP5AjPAJAl3q6uvNkXl0AAAYxIgk4g2tsm2JPQQ6AAB6ItCliSFX+wYPNp8DCyMAADCIEUnEC3AsirCnqEiqqaFDBwBAVN7HCLc7anTo/IG96AAA6JZ3MSKdW3RlE86YQ2cXgQ4AgG6BDnRuh6pU0KHzh7o6sxcdAAAIeKCziTl0dtXUsA8dAABReRcj3A5audpYmCHX9NTUSFu22K4CAAB/8HWga2lpUWNjo5qammyXchA6dHbV1kodHVJnp+1KAACwz9cxorm5WW1tbWptbXXlfG6EMObQ+UNNjTky7AoAgM8DXTI2FkV4dW0CXXpqa82RQAcAQMADnRO357zlag4dgS490Q4d8+gAAMjDQJcrXi++QGIMuQIA0I1AlyavgheBLj1lZVJ5OYEOAAApBIEuKHeKINClj61LAAAw8j7QuY05dP5RW0uHDgAAiUCXVLwAR4fOPjp0AAAYeRfoLrzQ2/Mzh84/6NABAGDkXaC79NKe33sVlOjQ2UeHDgAAI+8Cndfo0PlHTQ0dOgAApIAHunS7ZH37pn+NXM2hY1FE+gYOlHbskPbssV0JAAB2hSpGfPOb2Z+DDp1/DBxojtu22a0DAADbQhXoysrcOxdz6OyrrjbHrVvt1gEAgG15H+jc3liYDp1/EOgAADDyPtBlK1dBizl06SPQAQBgBDpGuD3safPadOjSN2CAORLoAABhF+hAlwq3gxJDrv5RUiKVlxPoAADI+0DnFTp0/lBdTaADACDQgc5GCKJD5y8DB0offGC7CgAA7PJ1oGtpaVFjY6Oampqs1cDGwv5Ghw4AAJ8HuubmZrW1tam1tdXxeS8WRSQ7Jx06fyHQAQDg80DnZ8yh8wcCHQAABLq00aHzFwIdAAAhD3SphKhczaEj0GWGQAcAQMgDnZNkwcqr4MWiiMwMHCi1t0v79tmuBAAAewIdI7hTBKK3/9q+3W4dAADYFOhAZwNz6PwlGujYiw4AEGYEuhT1Dlx06Pwhej/Xbdvs1gEAgE0EuiR6By06dP5SVWWO7e126wAAwCYCnU+wKCIzBDoAAAh0SeVq4QUdusxUVJjfHYsiAABhRqDLEHPo/KFPH6mykg4dACDcQh3ostlY2G0EusxVVRHoAADhFupAlwkWRfgPgQ4AEHYEOp8g0GWOQAcACLtABzqbd4qAf/Tvz6IIAEC4BTrQ5UK8zhlh0j/o0AEAwo5Ah8Aj0AEAwo5AlybmuvkPgQ4AEHYEOgQegQ4AEHaBDnSpzGPzqqPGHDr/6N/fBDo+EwBAWPk60LW0tKixsVFNTU3WamCI1f+qqqSPP5Z27rRdCQAAdvg60DU3N6utrU2tra0ZnyNR14awlh+qqsyRYVcAQFj5OtD5ESHQfwh0AICwI9BliPla/tG/vzmyuTAAIKwIdEnQkfM/OnQAgLAj0CHwKivNcccOu3UAAGALgS5NdOz8p7zcHAl0AICwyvtAF6QA1ifvPw1v9OljQh2BDgAQVkSIDHmxKCJI4dNvKioIdACA8Ap0oMvFStNchiwCXeYqKthYGAAQXoEOdKkI0vYiBLrM9etHhw4AEF55H+gSySRAeRm6CHSZY8gVABBmoQ502fCi88eiiMwx5AoACDMiRBLMoQsGOnQAgDALdKAL0vy4VBDoMsccOgBAmAU60KUiSCEpSLX6DR06AECYZR3o/vKXv+i0007ToEGDFIlEtHLlyoNe09nZqcsvv1yDBg1SeXm5zjrrLG3YsCHbS1sRDV3sQ+cvzKEDAIRZ1oFu165dmjp1qm666aa4r7niiit03333afHixXrqqae0c+dOnXnmmdq/f39W185FAMplyGJRRObo0AEAwqww2xN89rOflSS9+eabjs+3t7frtttu029/+1tNnz5dkvS73/1ODQ0N+tvf/v83C60AAALQSURBVKbTTjst2xLyBh26zEXn0HV18XsEAISP5z2h559/Xnv37tWMGTMO/GzIkCE66qij9PTTT2d1bhZFIKqiQvr4Y2n3btuVAACQe1l36JLZtGmTiouLNWDAgB4/Hzx4sDZt2uT4ns7OTnV2dh74vqOjI+PrJwp9fgtQfqsnSCoqzHHnTqmszG4tAADkWlodurvvvlv9+vU78HjyySczvnBXV5cicRLMggULVFVVdeDR0NCQ8XXcxqIIf+rXzxyZRwcACKO0At1ZZ52llStXHngcc8wxSd9TV1enPXv2aNu2bT1+vmXLFg0ePNjxPddee63a29sPPNavX59Oma5iUUQwRDt0BDoAQBilNeRaUVGhiuj/OVM0adIkFRUV6fHHH9cFF1wgSdq4caNeeukl3XzzzY7vKSkpUUlJSVrXiSdIXa8g1eo3sUOuAACETdZz6LZu3aq3335b7777riTp1VdflWQ6c3V1daqqqtLnP/95XXXVVRo4cKCqq6s1b948jRs37sCq10yxKAJRdOgAAGGW9SDfAw88oIkTJ+qMM86QJF100UWaOHGifvGLXxx4zY9//GPNnj1bF1xwgaZOnaqysjI9+OCDKigoyPby1jCHzl+YQwcACLOsO3Rz587V3LlzE76mtLRUCxcu1MKFC7O9XMY+8YnM3tc7ZHkZuphDlzkCHQAgzEITIY4+2nYFydGhy1xBgVRaKu3aZbsSAAByLzSBLpk4C25zikCXnfJyAh0AIJxCE+ic5ryde645vvKK9Prr8V+X6vmyRaDLDoEOABBWka4u/68V7ejoUFVVldrb21VZWWm7HAAAAF8JRKDr6urSjh07VFFREffuEgAAAGEViEAHAACA+EIzhw4AACBfEegAAAACjkAHAAAQcAQ6AACAgCPQAQAABByBDgAAIOAIdAAAAAFHoAMAAAg4Ah0AAEDAEegAAAAC7v8D4mnbNtTAts0AAAAASUVORK5CYII=\n", "text/plain": [ "Graphics object consisting of 1 graphics primitive" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "x = var('x')\n", "y = tan(x^(-2)+1)\n", "plot( y, (x, 0, 5), ymin = -10, ymax = 10)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "One other trick of the trade! You can layer plots, which makes them easier to compare. Let's try this out with $\\sin{(x)}$ and $\\cos{(x)}$ on the domain $-2\\pi$ to $2\\pi$. The first plot is already set up for you." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "g1 = plot(sin(x), x, -2*pi, 2*pi) # here we are storing the plots under the names g1 and g2...\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Not bad, but if you didn't know the y-intercepts of $\\sin$ and $\\cos$, you might get them mixed up. We can fix this by giving each curve a different colour. Add the argument *color = '\\_'*." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# feel free to copy and paste from above\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To summarize, there are a lot of ways we can customize plots. Most of the time, it's not necessary to do much more than appropriately scale the x and y axes, and make sure in some way that different curves are distinguishable from each other in some way.\n", "\n", "Here are some other ways to modify your plot, if you want to do that:\n", "- *color = '\\_'* **Note that Sage uses the American spelling!** 'colour' is not recognized.\n", "- *thickness = #*\n", "- *linestyle = '\\_'* ... options include '-', ':', '--', '-.', or 'solid', 'dotted', 'dashed', 'dashdot'.\n", "- *alpha = #* gives transparency of line. Value must be between 0 and 1.\n", "- *title = '\\_'* puts a title at the top of your graph." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise question\n", "\n", "1. Plot the three functions $e^x$, $(2e-x)^x$, and $(3e-x)^x$ together and give each a different colour." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 2. Implicit plotting\n", "\n", "At the start of this document, you can see an example of an implicit plot. The *implicit_plot()* command is great for plotting curves that are implicitly defined, which means that the given variables are intertwined in an equation in a way that is not easily parsed apart, or the curve is not a properly defined function. This is the situation on Question 2 of your assignment. \n", "\n", "The difference from the basic *plot()* is that now both x and y are defined as variables and your equation will require a proper equality (double **==**)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot the equation $\\tan{(x)} = \\large{ \\frac{x}{\\sin{(y)} } }$ for x and y both within (-10, 10)." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "You won't need this for the first assignment, but as a fun aside, Sage can also plot in polar coordinates. The arguments of *polar_plot()* look much the same as what we've done before, but the graphs are often quite loopy.\n", "Let's show $r=\\arctan{(\\theta)}$ with $0<\\theta<4\\pi$." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise questions\n", "\n", "2. Plot the curve $\\ln{(|t-3f|)}=t$ in your favourite colour, choosing a domain for each variable that displays the curve well.\n", "\n", "\n", "3. Plot the curve $y^5x^2 - \\frac{y^4}{x} + 3y == x^3$." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 3. Any questions?\n", "\n", "Feel free to spend the remaining time looking at your assignment." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Reminders\n", "\n", "> Assignment 1 is due this friday! Submit a pdf of your code to Blackboard.\n", "\n", "> Be sure to save your work and give your file a name.\n", "\n", "> There are lots of great resources available on Blackboard. Please use them! Maya's office hours and email are on blackboard in an announcement." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "SageMath 9.0", "language": "sage", "name": "sagemath" }, "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.7.6" } }, "nbformat": 4, "nbformat_minor": 2 }