{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"\n",
"
"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"slideshow": {
"slide_type": "skip"
},
"tags": [
"hide-input"
]
},
"outputs": [],
"source": [
"%matplotlib inline\n",
"from matplotlib.pyplot import *\n",
"from numpy import * ## for numerical functions\n",
"from IPython.display import Audio ## to output audio"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Mathematics of Sound\n",
"## What is sound?\n",
"\n",
"Rapid changes, or **vibrations** in air pressure are heard in our ears as sound. \n",
"\n",
"A computer creates sound by sending a list of numbers to a speaker, which then **vibrates**."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Random numbers\n",
"\n",
"A list of random numbers, will create a sound. \n",
"\n",
"What do you think 44,000 random numbers will sound like?\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"slideshow": {
"slide_type": "skip"
},
"tags": [
"hide-input"
]
},
"outputs": [],
"source": [
"Fs = 44100\n",
"random_sd = random.randn(Fs)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"slideshow": {
"slide_type": "skip"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
""
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## Random sound\n",
"Audio(data=random_sd, rate=Fs)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"We can plot a few of those numbers, using a plotting command. "
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"slideshow": {
"slide_type": "fragment"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot(random_sd[0:200]);"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Periodic vibrations\n",
"\n",
"A vibration that has a periodic vibration will sound like a tone to us. \n",
"\n",
"The sine function has a periodic cycle, and can be used to represent such a tone. \n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"slideshow": {
"slide_type": "skip"
},
"tags": [
"hide-input"
]
},
"outputs": [],
"source": [
"Fs, Len, f1 = 44100, 3, 440 ## sample rate, length in seconds, frequency\n",
"t = linspace(0,Len,Fs*Len) ## time variable"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"slideshow": {
"slide_type": "skip"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
""
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sine_sd = sin(2*pi*440*t)\n",
"Audio(data=sine_sd, rate=Fs)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"We can plot this sine sound, using a plotting command."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"slideshow": {
"slide_type": "fragment"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYIAAAD4CAYAAADhNOGaAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4yLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+j8jraAAAgAElEQVR4nO29eXxj13Xn+T1YCHADuINrbaoqSaWtJJflRd5iW7aUxXIndtpyd0dO7KiTjifdk0km8qQ7Tjvxp53pz4zTnXYnUbynEy9x4rGSKHZk2YptLbZKlkpVJakWsRaySAJcAZAEQCx3/njvkRCLrCKBt4Lv+/nwQ+LhAbiXeO/87jn3nHtFKYWPj4+Pz84l4HQDfHx8fHycxRcCHx8fnx2OLwQ+Pj4+OxxfCHx8fHx2OL4Q+Pj4+OxwQk43oBZ6enrUnj17nG6Gj4+Pj6d45plnZpRSveuPe1II9uzZw9GjR51uho+Pj4+nEJELGx33Q0M+Pj4+OxxfCHx8fHx2OL4Q+Pj4+OxwfCHw8fHx2eH4QuDj4+OzwzFFCETksyKSEpETmzwvIvLfReSsiDwvIrdVPXefiJzRf+4zoz0+Pj4+PlvHLI/g88BdV3j+buCA/nM/8CcAItIFfBR4DXA78FER6TSpTT4+Pj4+W8AUIVBKfQ+Yu8Ip9wBfVBpPAR0iMgC8E3hEKTWnlJoHHuHKguIYT43O8unvjzKxkHO6KbZxciLNn39vlLOpRaebYhsXZpf48++N8tzYgtNNsY1UNs9nf3CO75+ZdroptpHJF/mLpy7w8PFJKhV/KX67CsqGgLGqx+P6sc2OX4aI3I/mTbBr1y5rWrkJf/XDi/xfXz8OwJ889jJf/3d3sKu7xdY22M1jp1J88AtHKVcU/88jp/irX34tt+1qbGftxckMP/cnT7C8UkYE/uf7b+PumwacbpalJDN53vU/fkAyUwDgP/7U9XzojfscbpW1LBVK/PyfPslLU1kAfuF1u/nYPTc63CpnsWuyWDY4pq5w/PKDSj2olDqilDrS23tZhbRlXFrI8bG/P8kbD/TwjV+7g5VShd/5/47b9vlOsLxS4rf/5nkO9LXxzf/wRrpbI/zmXx+jVK443TTLqFQUv/W1Y7RFQvzDr7+BW4Y7eOBvj5POFZ1umqV89BsnSeeK/M2vvo533pDgD7/5EudmlpxulqX8t0fP8NJUlgf/zav4wOv38MUnL/DE2Rmnm+UodgnBODBS9XgYmLjCcdfw6e+PUior/svP3sQtIx38+tsO8P0zMzx7cd7pplnGV54eI5kp8PvvvpHr+mP8p58+xOj0Ev9wfNLpplnGd15KceJShgfuvo4bBuN8/F/cSDpX5ItPnHe6aZZxairLN09O8W/fdA2v2t3F77/7RkKBAH/y2Fmnm2YZ80sr/MWTF/jZW4d4xw39PHD3dQzEo/zxdxq3z1vBLiF4CPgFPXvotUBaKTUJfAt4h4h06pPE79CPuYJ8sczXjo7zUzcPMNyphYLufc0u2iIh/uqHFx1unTUopfjLH17k8EgHr97TBcA7DiXY093SsH0G+KsfXSQRi/CuWwYBuGEwzhv29/Dlp8coN2gM+Us/ukhTMMAHXr8HgL72KO++dYhvPDdBJt+YntDfPnuJXLHM/W/Wwl/RcJD7Xr+HJ0dnd9Rc2HrMSh/9EvAkcK2IjIvIB0XkV0TkV/RTHgZGgbPAnwP/DkApNQf8PvC0/vMx/Zgr+O5LKbKFEu951fDqsbZIiLtu7OcfT0yRL5YdbJ01vDy9xNnUIj9729pUTSAg/Nxtw/zw3ByT6cabLM/ki/zz6WnefesQoeDaLfHeI8NcWsjx4wb0/soVxd8dm+DOQwk6W5tWj7/3yDCFUoVvv5B0sHXW8Y3nLnHjUIzr+mOrx3721iFE4KFjrgpG2IpZWUP3KqUGlFJhpdSwUuozSqk/VUr9qf68Ukr9mlLqGqXUTUqpo1Wv/axSar/+8zkz2mMW334xRUdLmNft637F8Z+8qZ/FQomj5xvPQHz7Rc0AvP36xCuO33mD9vh7pxsvs+T7p2coV9RlfX7rdX00BQN888SUQy2zjhOX0swurfCOG17Z51tHOhiMR/nHBuxzKpvn+fE0d9/4ygSAvliUV+/p4tEXG1P8toJfWbwJSikePzvDHdf0vGKUCPDafd2Eg9KQ6XaPvpjkhsEYgx3Nrzh+baKdRCzCPzegEHz3VIp4c5hbRzpecbw9GuY1+7oa8nv+59PTiMAb9ve84riI8KaDvTw1OttwIbEnzs4C8KYDlyebvOlADycnMswtrdjdLFfgC8EmvDy9xFQmzx3rbhSAlqYQt+3q5PtnGivTYGF5hWcuzPO2dSNj0AzEmw/28oMzMw2VPVSpKB47Nc2bD/ZeJvigif7p5CKziwUHWmcd3zs9zU1DcbrbIpc99/r9PWTzJU5OpB1omXV8/8wMnS1hbhiMXfaccZ8/8XJj3dNbxReCTXhcTydbP2IyeNPBXl6YzDDTQAbimQvzVBTccU33hs+/5do+MvkSx8Ybp9jqdCrLzGKBNx/cOCX5tXpY8EfnXDN1VTfpXJFnxxY27bMRCn3i5Vk7m2UpSil+cHaa1+/vIRC4PGv9pqE47dHQ6n2/0/CFYBMePzvDcGfzpoVjxgjiqdHGuVl+fHGeUEC4ZV2IxOA1e7UsomcuNM7cyLMXNVF71e6Ni+VuHo7THA421Pd8bGyBckWtitx6etsjHEy0NZQQjM4skcwUNh3YhYIBXruvm8fPNk6ft4MvBJtwbHxhNX1yIw4NxGgKBnh+vHHc52cuzHNoMEY0HNzw+e62CCNdzRwba5w+P3txns6WMLs3EfxwMMCRPZ08Ndo4HsGxsQVE4Kbh+KbnvHZfN8+cn2uY5Ree173YK1XHH9ndycW55R05T+ALwQYkM3mSmQI3DW1+ozSFAlw/GONYg6xJUypXODaWvuoyErcMdzTUOjzPXlzg1l2diGxU5K7xqt2dnE5lWSqUbGyZdRwbX+Ca3jZi0fCm59w0FGdppcxog1QZHxtL0xwOsr+vbdNzDGF8voFCn1vFF4INOK6P8m8Z2VwIAG4einPiUrohRk0vTWXJFcvctkmIxODwSAeXFnJMZ70/N5LJFzk7vcjhTUJhBjcOxlEKXprK2NQy61BK8dxYmluGr9xnwyieuNQY3t/z4wvcOBQjuMH8gMGN+sDveAN5+VvFF4INeP5SmoDAoYGrCMGwMWryfkWiEeJan0K5HmP+oBE8oefH0igFt+66cp9vGNKyTE5c8r4QTKTzzCwWOHyVQc7+3jYioQDHG0AIiuUKJycy3HwV8YtFw+zrbeX5BujzdvGFYAOeH1/gYKKd5qaNY+UGa0bR+xfOS1MZ2iIhhjubr3jejYNxggFpCPfZSI+8UggQoD8Wpbu1qSFGx4aAX80ohoIBrh+INYQQnE5mKZQq3HyFORGDm4fiDXFtbxdfCDbgxKX0qpt4Ja7pbaM5HOREA+RbvzSZ5br+9ivGygGam4Ls6W5ZXcLXy5yaypKIRehoabrieSLCocEYJye87xG8NJUlIHBtf/tVz71pKM4LExnPhz5P6p7c1QQf4KbhDpKZAqlM3upmuQpfCNYxs1hgZnGF6wcuLzpZTzAgHEi0cSbp7dCQUooXpzJcN3B14wCaETmd9L4QvDSV5dr+q3/PoMWPtZGlt9eXOj2VZU9366aZYdXcOBRjsVDiwtyyDS2zjlPJLJFQgN3drVc993pdIE81wPW9HXwhWIdh4A4mNs8uqOZAX7vnL5qJdJ5svvSKhbiuxMFEOxfmlsmteNcolsoVzk4vct0WRsagpQuXKsrzK1SeTmY5mNhan43zGqHP+/varjhRbHBA77PXB3fbxReCdRgXwFZvlmv725jOFlhY9m7u8UuTmuu8VaN4baIdpbxtIM7PLrNSqnDtFr9nI+3Qy33OF8ucn13i4Ba/Z6PPZ1LeHuicSS5u+X7uaWuisyXs+T5vF18I1nE6mSUWDdHXfvkaLBthjCBOe3gEYcT7t2ogjPO8nE55Su/zVmLlAHt7WgkIvOxhITibWqSi2LL4tUfDDMSjnPXwtZ3OFZnK5DmwRQ9fRDjQ1+7p+7kWfCFYx5nkIgcSV580NTi4KgTeHUGcSWYZjEevWGBUze6uFppCAU/3+dRUhoBwxQKjaqLhILu6Wjg77V0DYXxf1/Zvrc+g/X/OeFr89EFO39bED+BAoo3TySxKeXuSfDv4QlCFUorTqeyW5wcABuNR2iIhznjYKI7OLLGvd+t9DgUD7O9t45SHR00vTy+xq6tlS5OmBvv7vJ0YcCqZpSm4tUlTg4OJds2T8Gjm0OlthnqNc7P5EsmM94smt4pZO5TdJSKnROSsiDywwfOfFJHn9J/TIrJQ9Vy56rmHzGhPrcwsrrCwXOTANkYPIsL+vjbPupJKKUanl9jXu3XjAHBNXxvnPFxIt13xA9jf18752SXPLsM9Or3E7u4Wwhsst70ZB/rayBXLXFrw5s50Z5KLRMOBq9bHVGOEkbzs8W6XuoVARILAp4C7gUPAvSJyqPocpdT/rpQ6rJQ6DPwx8LdVT+eM55RS76q3PfXwsu72X7PFcIHBvt5Wzs96c02W6cUCi4US+3q2JwR7e1oZn895Mp2yUlGcn1li7zb7vL+vjWJZeTadspY+G0bRq5OnozOL7O1p23Dp6c3Yrw8QRj0cBtwuZngEtwNnlVKjSqkV4MvAPVc4/17gSyZ8rulc0I353m24zsb5k+m8J9MpR6e1Pm93dLyvpxWl4OKs94ziVCZPrliuSQjAm5lD5Yriwuwye7fp+e3r0fp8bsZ73zMY4rfxyrKb0dseobUpyHkPXtu1YoYQDAFjVY/H9WOXISK7gb3Ad6oOR0XkqIg8JSLv3uxDROR+/byj09PWbB14bmaZcFAY7Ihu63V7dIPiRa/AEILtGkWjz+c8uDql0eZavCDQjIvXmFjIsVKubHuQ09ESJhYNebLPxXKFsfkce7bZZxFhd7d3vfxaMEMINvK5NptZeh/wNaVU9dB5l1LqCPB+4I9E5JqNXqiUelApdUQpdaS3d+Odlerl/MwSI10tG25ZeCW8bCBGpxeJhAIMdWw9hgprXpMXhcBYWnm7XlC8OUxnS9iToSHje9qu4IsIe3q8aRTH53OUK2p10LId9va0evJ+rhUzhGAcGKl6PAxMbHLu+1gXFlJKTei/R4HHgFtNaFNNnJ9d2vaICapGxx68WUb1uPF2YqgA8ZYwXa1NnhSCc9NLNIeDJGJbqxWpZnd362oI0UsYhny7QgBGn70nfudrFD+APT0tjM3nKHo0MWC7mCEETwMHRGSviDShGfvLsn9E5FqgE3iy6liniET0v3uAO4AXTGjTtlFKi6FuJ7XOoC0Soqct4skRxPnZpW27zgZ7e1q9KQQzi+ztad1yrUg1e7pbOO/BePno9BKtTUF6t1goWc3e7hbG57VKbC9hXJu1XN+7u1spVxTj897MltoudQuBUqoEfBj4FvAi8FWl1EkR+ZiIVGcB3Qt8Wb2ySuN64KiIHAO+C3xCKeWIECQzBX0CcXsTSwZ7e7xnICr6hT7Stb2wkIFXheDC7DJ7avyed3e3Mpn2XrbUuZkl9vbWJn67u1upKBif99b1fX52SR+kXXl12Y3Y6+F5v1oImfEmSqmHgYfXHfvddY9/b4PXPQHcZEYb6sX4wmuJJ4I26njstDWT2FYxvVhgpVRhpKtGo9jVQipbIF8sb6swy0kM8bvzUKKm1+/ubtGNYo5rtjnH4CQX55Y5tIUVdTfCEM0Ls8vbnldxknMzS+zpaanR86ua97vW7Ja5D7+yWMeI+9YaJtnd3cJ0tuCpFNIxfdKzViEwXuelkWIqW2ClXGG4VvHTrw8vzRNUKopL8zmGa/T8jD57bXQ8NrfM7q7a7ueetibaIiFPzo3Ugi8EOuPzOYIBYSC+vdRRg+FOzbBcWvDOhTOmG/CRztqMolGtOeahOOr4ap9rM4p7utdGx15hVfxq/J67W71nFCsVxaWF2sVPRBjubPbUIKcefCHQGZ/PMRCPbjt11MCLRnFsTmvrdsrvq1n1CDyUTrkqfjV6BF0eNIr1ip8XjWIqW6BYVjWLH6D32Tv3cz34QqAzPr9cs0GENY/ASxfO2Nwyfe2RmuP7vW0RmkIBj/VZa+t26yYM1oyid/pstHUnGcV6xQ+0/9f4fG5HrELqC4HO+HyOoY7ab5S+9ghNwYCnRk0X55ZrHhkDBALCcIe3DES94geaUfTSImzGXFA9A52hjmYuecgomiV+i4US6VzRrGa5Fl8IgJVShalMvq4bJRAQhjw3asqxqw4hABjqbF4Nt3iBsfn6xA80o+glwR+fz9Fbt/i1kC2UyORKJrbMOozvpz4vv1l/L+/c07XiCwEwmc6hVH0XDXjLfS6WK0ymc3W5zqDF2r3SZ9Bu6nr7PNTZTDZfIpP3xkhxbH657j6vGkWPJEOMz+foaatf/Iz3anR8IcAcN1J7fTOXPDJSnFjIUVHUnEZpMNzZzNzSCksF948US+UKk+m8CR6BniHmEQMxPp+r+9oe8tjoWOuzSeLnkXu6HnwhwBw3Unt9CzOLK56oJTAmTWtNHTXw0qhpMp2nXFEmGgj397lcUUwsmGEUvSZ+9SV/gLbIYFsk5InvuV58IaD+GgIDL40g1tIo6wwNeanPc/XVTRgYo2MveH9TmTyliqrbC+psCdMcDnrCKK7WENT5PXsxQ6xWfCFAG+X0x2qvITDw0khxbG6ZUEAYiJszUhzzQC1BvTUEBt2tTUTDAU9kDo2bkDEE3qolSGbzeg1BfX0GPNPnevGFAHPiiVAdJnH/hTM+n2OgI0pwm8tPr6enTTOK3hA/czw/EWGwwxsppEaBY71eEGiekBf6vDbnZ8497aW02VrxhQAjnlj/jdLbZtQSuP9mmUrnGazTGwBjpOiNzKFLC+Z4foBn+jw+v4wIDGxz172N8EqYZG3Or/57eriz2VNps7Wy44XAjBoCAy/VEkykc3WPjA2GPVJLMLGQ2/Y2pJthFFi5nfH5HIn2KJFQ/avDDne2kM4Vybo8bXa8zqVTqvFa2myt7HghmErnqai1CcB68UJMsVJRJDN5BmpcZmE9A/FmptJ5U97LSibT+brnRAyGO5uZXXJ/hthk2lzxA1wfHtJqCJpMWRrdS1lx9bDjhcBQ+mHTjGKUCZcbxZklbUEuszyCwXiU2aUV8kX3GsVKRTGVzpsSIgHvGMXJBXPFD9ZG3G5lIp1j0KT72XgfL3h/9WCKEIjIXSJySkTOisgDGzz/ARGZFpHn9J8PVT13n4ic0X/uM6M928EYyZo5Op7RN3xxK5MLep9NMhDG/y6Zca8Azi6tsFKumDIvAt5IFVZK6V6QSeLX6Q3xmzKxz50tYSKhAFMuvrbNoG4hEJEg8CngbuAQcK+IHNrg1K8opQ7rP5/WX9sFfBR4DXA78FER6ay3TdthUheC/pg5F85APIpSkMq698Ix+mzWzWK8z8SCm/usGa+dZBTTuSK5Ypl+k/rc0xohHBTXG0UzQ4AiWpbZpMu9/HoxwyO4HTirlBpVSq0AXwbu2eJr3wk8opSaU0rNA48Ad5nQpi0zmc7R0RKmucmcrRaN0bGbLxyzjaLxPsb7upEJk72g3rYIAYGki79no89mhUkCASERi7p6PiibL7JYKJl2bQP0x6NMuljwzcAMIRgCxqoej+vH1vNzIvK8iHxNREa2+VpE5H4ROSoiR6enzdsbeMrE0QNUG0X33iyT6TxNoQBdrdvf1HsjjP+fm/s8ZYifSXMEoWCAvnZ3jxSnMuYKvvFeEy42ioZImeUFAQzGm139PZuBGUKwUUXS+uqLvwP2KKVuBr4NfGEbr9UOKvWgUuqIUupIb29vzY1dj5kxVKgSAhffLEafa9nUeyOam4J0tIRd7REY4tdtkvgBJOJRV4dJzPaCAPrjze7uc9qKPkdJZvJUKo1bVGaGEIwDI1WPh4GJ6hOUUrNKqYL+8M+BV231tVYzmc6bOnpoj2oLVbl5BDG5YF4NgcFAvHl1EtqNTJgsfgADLg+TTKa1Sure9ohp72nEy91aaTtlctjTeK9SRTGzWLj6yR7FDCF4GjggIntFpAl4H/BQ9QkiMlD18F3Ai/rf3wLeISKd+iTxO/RjtpAvlplbWmHQdKPodgNhbjgMcP2EmhXi1+9yj2AynSfRHql7GZFq+mNRVkoV5pfdWVQ2mc4jAgmTkj/AG6HPeqlbCJRSJeDDaAb8ReCrSqmTIvIxEXmXftqvi8hJETkG/DrwAf21c8Dvo4nJ08DH9GO2YKQ79ptsFPvjUdeGScpGMZkF4ufWPoN2E5uVOmrQH4+SzZdYdOleDJML5hUNGrg9MWByIU+Pvpe2WfR7YN6vXkJmvIlS6mHg4XXHfrfq748AH9nktZ8FPmtGO7bLWgzVXKM4GG/m1FTW1Pc0i5nFAqWKssRAzC8Xya2UTcvAMotyRTGVMTcECGspx1PpPPv72kx9bzOYyuQ5NBgz9T2N62YqneeGwbip720GkxYNcsC94mcGO7qy2IqsCtBGENOLBYpl9xWVrdYQmOg6w5r77MZQycxigbIF4mcIixsL6ZTSNqSxIuwJ7h0dT6VzptUEGXS1NtEUCrg63FsvO1oIJi1INYO1ojI3Gggjm8msNEoD4/3cmC1lpDuabRQNg+NGozi/XKRQqpg+F9TTps05uHV0PLmQN61uwsAoKnP70jH1sLOFYCFPvDlMS5MpEbJVqt1ntzFpQXpd9fu50Sha1Wc3ewRmFw0aBANCoj3iyu85my+SLZRMH9iBJvpTLhU/M9jZQmByDYHB6pILLrxZJtM5IqEAnS1hU9/XzXFUwyMw+7uOhoN0urR+YnU9KZNHx6BnS7nw2jYE2Yp7erCjsYvKdrQQTGXMTymEtQvRjSMIK/LpQTOKXa1NrhS/VLZAUyhAh8niB7h2yQWrPALtPd257LgVBXQGjV5UtqOFYHIhb3rqKLi7qMzsJTWqScSipFwYJkll8iRiEdPFD/SaERf2OZkpEAwIPW3mFZMZuLWobHUlYYsGd8WyYmapMYvKdqwQFEplZpdWLLlowL3u8+RCzvSJYoNELEIy474bJZkpkGjfWd9zMpOnt83cYjKD/niUXLHsuu0bDUHui5kvfquJAS6unq+HHSsEKd1gmZ1qZpCIRUhl3WUUyxVFMluwTPwS7VFXTpwms3lTK02r6Y81M7O44rr9J5LZAgkLDCKshV4mXBb6TGbydLU2mbIt53qMCWi33dNmsXOFIGvd6AHcaRRn9Xx6K8VvZrFAyWX1E6lMwdT1dqrpj2vv67bvOpXJ02uZF+TOPiczBfos+p6NgYTb+mwWO1YIjBCGVSPFvliUVKbgqjiqHX2uKG03MLewVNCWgLDMI4i7c3e2lIUeQZ8uMCmXhQFT2Tx9Fn3P3a1NBARXzoGZwQ4WAu0LtcpAJGIRVsoVFly0OFdyNYZqVZ/dN2oyXHmrjKIbi8oKJW0xResE350eQSpTIGGRRxAKBuhpc+ccmBnsYCEoEA6K6fn0BqtG0UVbVlptFI33ddPkqdWC37+aKuyePk9b/D1HQlr9hJuu7XJFMb1YsOx7Bu0aclOfzWTHCkEqm6ev3fx8eoPE6qjJPSOIZEZboteKlEKoFj939RmwLHYci4ZoaQq6KoXUuOas8vxACw+56dqeXdLmv6wSP3BvVpwZ7FwhyBQsmyiGtTiqm9znVDZPd2sT4aA1X3uPvo+vm+KoxujYKqMoIvryA+7pc8pi8QMtPOSmDBpjvsKqCXIw5v3c8z2byY4VgmQmb1luOazFUd104aQyhVWBsgJjNyw3iV8ykycaDhCLmrueVDVu26BmLQRobZjEVdd21ggBWugRtEeZXXJfqrAZmCIEInKXiJwSkbMi8sAGz/+GiLygb17/qIjsrnquLCLP6T8PrX+tVST1alOrWI2jusiV1PLpresz6HFUN/U5o8WNrQoBAq7zCJKZPKGA0NVi3v7M6zHqZNyy5ILVGXHae2v3znQDbllZtxCISBD4FHA3cAi4V0QOrTvtWeCIvnn914D/u+q5nFLqsP7zLmwgXyyTyZcsjaGCYRTdZCCs9QjAiB27qc95S0MkoIcMsu5Zh8bIpw9YUFVskIhFKVeUa1KFjWvOqnoRcGdWnFmY4RHcDpxVSo0qpVaALwP3VJ+glPquUmpZf/gU2ib1jmHEE+0wEG6ZOC2VK8wuWpdbbuC2iurpbMFywe+PRSiWFfPL7jCKVubTG7htDiyZKVg6/wXuDPeahRn/tSFgrOrxuH5sMz4I/GPV46iIHBWRp0Tk3Zu9SETu1887Oj09XVeDk1lrUwoNEu0R11w0s0srVJS1mSSg/U/nllYolMqWfs5WsXouCKpHiu4QQHu8IN0ouiSdctoG8XPb92wmZgjBRv7nhj6yiPxr4AjwX6sO71JKHQHeD/yRiFyz0WuVUg8qpY4opY709vbW1WCrc8sNErGoa+KoVqdRGqzGUV3gFSwWSiytlC33gvpcFjLQqortMYpuqS7W5oKs/Z67WpoIBcQ137OZmCEE48BI1eNhYGL9SSLyduB3gHcppVavHqXUhP57FHgMuNWENl2RtYkl60dNbomjpmyYTINqo+i8gVirpLb2e3bTTmX5YpmF5aLl13Zvm7vqZOzw/AJ6VpybQp9mYYYQPA0cEJG9ItIEvA94RfaPiNwK/BmaCKSqjneKSET/uwe4A3jBhDZdkVQmT1MoQLzZmqpiAzfFUe0LhxkjRef7vCp+FhsINxlFq+smDJpCAbpbm1xRaVuuKGYWra0LMuhzWQKIWdSdXK2UKonIh4FvAUHgs0qpkyLyMeCoUuohtFBQG/DXehrfRT1D6Hrgz0SkgiZKn1BKWS8EWS2rwsqUQljzOLQ4atzSz7oayUxBryq2LqUQqiuqnb9Z1laYtccouqGWwK6wJ7inwGp2sWDL/Bdo834XZpevfqLHMKXKRin1MPDwumO/W/X32zd53RPATWa0YTtoNQQ2XDQuCpNMZ/N0t0YIWZhVAdDZ0kQ4KK7IllozitaPFN1SYJrAvkcAACAASURBVJW0KSPO+Aw3XNuroV4b+pyIRfnR+TnLP8dudmRlsdXFZAZGTrMbRsd2TKaBFkd1Sy1BMlOgORykLWJdVbFBIhZxRZgkZVMIUPuMiCuyhuz0ghKxCAvLRfJFd2TFmcWOFAKrl1owCAcD9LQ1uWTUZH1KoUFfLOKKbBJjTX6rQ4BgbGLvfJ+tXlW3mkQsynRWW+zNSZIWbzJVjRF+ckNWnJnsOCFYXimRLZRsuWhAmzB2Q8jAjpRCA7fszpbMWJ9bbpCIRZldKlB0eHe2VMbaVXWrWd2IyOElF1Kr81/2hIbAHV6+mew4IbArk8TADSGDUrmiZ1XY12c3TJymbJoLAs1AKAUzDhtFO9aTMki0uyNbKqXPf1lZVWzgxuXlzWDHCYGd8UTjc5y+aGYWV1DKnglEgEQ8SjZfYnmlZMvnbYRSajU7zA7csimPscieHbhldGzX/BesDSCd7rPZ7DwhsHj3pvX0xaKOb+hu5wQiVNcSOCeAi4USyzZUFRu4JUPM7rkgcH4XPjv73NESpikYcLzPZrPjhGB10w4bwyRayMC56mK7KqkN3DBStGNZ4mpWl1xw0EDkVspkbVhV16CnLYKI88tM2Dn/JSKuSYYwkx0nBMlMnkjI2o1KqnGDK7m2zpB94gfObllpCL6VyxJX092qrUPjZGjIbs8vHAzQ3epsCqnd81/gvuXlzWDHCYExerAjqwLcMTpOZe2pKjYwbkons6Xs2KWrGq1+wtkCK7s9P+OznOyzMf9lf599IfA0dhWTGbhldNzTZn1VsUEsGiIaDrjCC7JLCGBtgxqncKLPTo+OV5cRscnbNT7LDw15HG3Tevsumm4XbOhu52QaaHHURCzKlMOj49Yme6qKDRKxiKOhIbuWGq/GaY/AGS8oSrZQYqngXFac2ew4IbBjudpq3LChu52TaQYJhwvpkjZsVLKefodHx9PZgi2r6lbT264V0jmVFeeMF2QsJtk4XsGOEgJjoxK7qooNtLV3nB012TliAn2ZCQdvlOmMfTUEBn2xKJl8idyKM+vQGGFPu+a/wPmsuFQmT0C0yXq7cMO8n9nsKCFIrY4e7DUQTu7jWypXmF0q0GujFwTOb2KvVdja7AU5bCCSmYKt3i44nxWXyhbotnH+C9ZCb75H4FGSNi8vYeDkuu1OZFWA9nnLK2UWHYijKqVsTwoALTQEDgqBg+Ln1JIiTnzPbsiKM5sdJQR2bVSynkR7lNmlFVZK9sdRV2Oodo8UHTSKmXyJfLFiayYJOJ8hlsoUbKubMHA6Xu6EF+SGrDizMUUIROQuETklImdF5IENno+IyFf0538oInuqnvuIfvyUiLzTjPZshp0blVRjzEk4sSCZXfv2rmd1+QEHbpZpG5clrmZ1v2YHMoeWCiUWCyXbPQKns+JSDiQFiGh7bvihoSpEJAh8CrgbOATcKyKH1p32QWBeKbUf+CTwh/prD6HtcXwDcBfwP/X3swQ7NyqpxsntG+0urDJYXXLBgUlyu5eXMIhFQzSHgw5/z/aKXzAg9LQ5s+RCsVxhdmnF9qQAaLyiMjM8gtuBs0qpUaXUCvBl4J5159wDfEH/+2vA20RLbbgH+LJSqqCUOgec1d/PEuzcqKSatU3s7b9ZnMiqAGdDQ06kFIJRPxFxJDTkVJ+Nz3RiEbaZxYI+/2V/n7V5P98jqGYIGKt6PK4f2/AcpVQJSAPdW3wtACJyv4gcFZGj09PTNTU03hzihiH7N5E3QhTTDtwsyYz9WRUAbZEQLU1BR9xnO/ftXU9fLOpIaMipsKfxmU4McpwoJjPoc7g2yGzMiJFsNLxev3fdZuds5bXaQaUeBB4EOHLkSE174/3Bu2+q5WV1090aIRgQZzwCGzcqWY9Tyw+ksnnaIiFabQ4BgpY5dGx8wfbPNUandsfLjc989qL9fXbaC1rSs+LsDjVbgRnDxHFgpOrxMDCx2TkiEgLiwNwWX+t5ggGht82ZEYQTWRUGfe3OxI61ZUScEj/te1bK3n18U9k80XCAdgeMUl97xJGsOMPbdGqOABonhdQMIXgaOCAie0WkCW3y96F15zwE3Kf//R7gO0q7Ux4C3qdnFe0FDgA/MqFNrqPPodixllXhoEfgSDjM3mVEqknEouSLFTI5e+snjJ3J7J7/grURud1ZcavzXzbsVbyehIPzflZQtxDoMf8PA98CXgS+qpQ6KSIfE5F36ad9BugWkbPAbwAP6K89CXwVeAH4JvBrSiln6vMtxolN7NeyKpwyis6MjpMOi5/RBjuxe2HBapzKiktm8vS2a2FXu+lbrZ9oDI/AFD9SKfUw8PC6Y79b9XceeO8mr/048HEz2uFmErEIP744b+tnOplVAZr45YsVMvmSbQuhKaVI2bhv73qqs6UOJtpt+9xUtsANgzHbPq8ap7LikpmCY4OcPgfTo61gR1UWO0lfe5Q5m+OoTmbPgDPZUplciUKp4vjo2O7lqLWlFpwyis6Mjo10cCdojzhXM2IFvhDYhHHBTtsYR005VFVs4MSG7kmbt2tcz9rexfb1ebFQYnml7Jj4GVlxdo+OUxn7q4oNjL2Lndxwykx8IbAJJwqsjIu03wVhErtwYnOWaqLhIPHmsCN9dkr8nMiKWylp819OJQWA83tumIkvBDZhLAZm54XjZFYFrBljOz2ClEPLS1Rj905lTq0nVY3dFdWGZ+1UaAic33PDTHwhsAknQgZOZlUAtEZCtEdCNntBbjCKUVuNohvEz+6l1p32gozPdiIrzgp8IbCJ7tYmvbrYzpvFuewZg95YxNZJxFSmQHs0REuTc9WeiR1oFPva7R0dOz3/BVqfndpzw2x8IbCJQED09Uns9QicSq8z0OKodvfZOeMAazvSlSv2jBSTmQKtTfavqltNIqZlxRVK9pQBObXCbDV2e/lnkln+27fPMG3B5/lCYCO2j5ocTK8z0GLHNnoEWee9oEQsSrmimF2y57t2Yk3+9axmxdl0fSczeUIBoavF3lV1q7F7z41j42k++e3TLK+Y74H4QmAjdsZRC6Uyc0srrjCKyUzBtjiqk/n0BnbvxZDKFBz3gvpsThVO6n0OODT/BWuFdHZ9z1aGAH0hsBE7N7OYdmijkvX0xaKslCqkc0XLP0spRSrrvFFc3cfXpswhJ/YqXk+fzVlxbvKC7JoDS2byxJvDRMPm793lC4GN9LVHmV8u2hJHTTq4LHE1a+vQWD9qWlguslKqOG4U1/Yutt5AKKUc2cB9PXbHy93gBRl7btjnBVn3PftCYCN2xlGNkZmTBTdQ5T7bYBSdrio26G2LIGKP+GXyJfJF58Wvq6WJkI1ZcW7wgrQd6ezbc8PKLEBfCGzEzjiqkztWVWOnR2CEYvrjzvY5FAzQ0xaxZacyQ/B7HR4d25kVly+WWVguOn5tg/Z/t28uyLosQF8IbMTOOGoyWyAcFDodzKqA6pUp7TCKxiJ7zo4Uwb5sqbVN653vc28saovnZ3jUToc9Qa8ZsaHPlYqyNAvQFwIbsTOOatQQOJlVAdDcFCQWDdkjfi4oMjLoj0VtmSx2QzGZQcKm0bHb+mxHVtzc8gqliqI/7nsEnsfOOKqT2zWux0ghtZqpTJ7OljCRkPlZFdulLxa1SfCdXWq8Grt2pHNy0/r19MUi5IplshZXFxuDCleGhkSkS0QeEZEz+u/ODc45LCJPishJEXleRP5l1XOfF5FzIvKc/nO4nva4nUBA6LUpjurkdo3r6bMpTOKGJTUMEu32VNomM3naIyFaXbCBeiIWYWG5SL5ofZ/B+UQIsK9mJJW1ds6vXo/gAeBRpdQB4FH98XqWgV9QSt0A3AX8kYh0VD3/W0qpw/rPc3W2x/X02RRTdENKoYFdy0ykXJBJYmBMWNthINzi+Rkxe6uz4pLZPE3BAB0t9ux6dyXWisqsvaetXlKjXiG4B/iC/vcXgHevP0EpdVopdUb/ewJIAb11fq5nsSOOmlspk8mXXDGZBmviZ3Uc1U3it7qVocWi7+R2jetZW3bc2j4bYU8RZ+e/wL6akaTF2WH1CkFCKTUJoP/uu9LJInI70AS8XHX443rI6JMismkvReR+ETkqIkenp6frbLZz2BEmSbkkn94gEYtQLCvml62rLi6VK0xnC45twrOehE37+GpekDvEz65kCDcsI2JgV0p4MlOgp62JcNCaad2rvquIfFtETmzwc892PkhEBoC/AH5RKWVs3PsR4Drg1UAX8NubvV4p9aBS6ohS6khvr3cdikR7lAWLq4vdNJkG9uxUNru0QkW5I6UQWM3usDJzSKsqdtG8iE070rlhhVmDtkiI1qag9SFAi8XvqjNMSqm3b/aciCRFZEApNakb+tQm58WAfwD+o1Lqqar3ntT/LIjI54Df3FbrPUj15NJIV4sln+Gm9DqoLirLc/1AzJLPcFufO1vChINiqfeXzmlLarhF/Fb7bLkXVOCNB9wzGLQjW8rqSup6/YyHgPv0v+8DvrH+BBFpAr4OfFEp9dfrnhvQfwva/MKJOtvjevpsWKjKTVkVYM8qjYbxcUtoSETos3iS3G2e31qfrbu2l1dKZPMl10yQg1FdbK0QTKWtXVK+XiH4BHCniJwB7tQfIyJHROTT+jk/D7wJ+MAGaaJ/KSLHgeNAD/AHdbbH9dhhFFPZApFQgFiz8ymFULVfs4XiN+WSJTWq6Y9bW1S2WkDnEsEH6/fxXd2W00V9TlhcM1IsV5hdsjYpoC5LoZSaBd62wfGjwIf0v/8X8L82ef1b6/l8L1IdJrGKqbTmRrohqwIgGg7S0RK2NGSQyuQJCHS3uUcIErEIL01lLXv/lEuWGq8m0R7l5elFy97fbSFAWFteXillyT03s1hAKWv77FcW20xnS5MeO7YyZOCeTBKDRLu1qzQmM3l62yMEHV5SoxrrQ0Pu8wis3nMj6Ubxi0XJFytk8tZUF9sRAvSFwGYCAaG3zdqbJZUtuGYC0UBLm7U2Xu6W+QGD/niUxULJss3NU5k8sWiI5ibnl9Qw6ItFyeRL5FasyYpb27TePd91r8WLSdrhBflC4AB9sahl1ZfGRiVuM4pWTyImM87vWLUeq8OAbkodNeizeD4omckTDQeIRd0x/wXW10+kfCFoTKx0nxcLJZZXyq5ynUHr83S2QKViTXWxW8NhYKEQuGh5CQOrjaIhfm6Z/wLr6yeSmQLBgNDdat2S8r4QOEBfu3WrcVq9JkmtJGJRShXF3PKK6e9dKJWZXy66zgtKxK01EFPpPP2xZkveu1asN4ruKSYzWFtaw5p7ekrvs5VLyvtC4AD98SjpXNGSOGrKhROIYG2YZHVDGrcJgYXLD5TKFVLZAgMWrU9fK1bvSJfM5OmPu0v8WiMh2iMha8XP4mvbFwIHMG7eyXTO9Pc2KhzdFjJYXYTNAgPhxpRCWFt+wAoDMbO4QtnCjUpqJd4cpikUsKTPSikm03nXiR9ogzsr7mcwlpS39n72hcABrFyHZlJ/T7fdLFaGDNxWVVxNIm5N2qxhdNz2PYuIZbuzzS8XKZQqrvyerSwenEznGeyw1gvyhcABBnTXdtIKIVjIE28O09LknqwKgN4260IGhlF022QxGPUT5vfZMDpu8whAEycrRsduFT8w+mz+/bxY0JbUsLrPvhA4gPGlTlkyUnSn69wUCtDd2mRZn5vDQeLNzm9Ush6rMsTWPD93xcvBOqNoiN+AxaPjWhiINzO9WKBYrlz95G0wpYuf1YLvC4EDRMNBOlvClo2a3CgEAAMd1o0UBzrclVJokIhr1cVmb8ozlcnTFArQ6YJdutYz0NFMMpM3PVXYrWFP0NqklPmhz4kF7f380FCD0h9vZnLBmlGT27IqDAYs6vNkOs+gS/ucaI+yUq6YvimP4fm5UfwG4lGKZcXMkrkhscl0jmBA6HHRelIGVs37rYYA/ayhxsQK9zlfLDO7tMKgC0dMoPV5wgqPYCHvylg5WDdJPpXOuXLSFKrmwEwW/cm0lj3jpvWkDIwRu9n39EQ6h4j1GXG+EDjEQDxqerzcMDZuNYoD8WayeXPX3tHy6fOuFT9jE3uzv2u3zgVBdXq0+aNjN84PgLUeQU9bhKaQtabaFwKHGIhHmVtaIV80r6jMrnhirQx26AZiwTyvIJktUFHunECE6v0nzDMQlYpyZWGVgVV1MlrY053i167XjJjt8U7YJPh1CYGIdInIIyJyRv/ducl55apNaR6qOr5XRH6ov/4r+m5mOwLjJjYzZDCVsSfDoFaMkMGEiaMmQ1TcOjrus6DSdnZphWJZubbPXa1NNIUCpo6OV4vJXBoOExEGOpot8AjsCQHW6xE8ADyqlDoAPKo/3oicUuqw/vOuquN/CHxSf/088ME62+MZjJt4wsQ46qpH4PaRookegZvTKAEioSBdJqfNurmGAHSjGI+aKvjpXJFcsezaPoM1836TC9YXk0H9QnAP8AX97y+g7Tu8JfR9it8KfK2W13udtVoC84ziVDpPR0vYVevTV9MfjyJiskdgFBl1uNdA9Jm8p62bC6sMtOpi8wXfrWFP0PpsZjgsmy+SLZRsEb96hSChlJoE0H/3bXJeVESOishTImIY+25gQSllzByOA0ObfZCI3K+/x9Hp6ek6m+08/RZMqE26OJMEIBwM0NsWMdUjmFjI0xYJEYu6L5/eIBEzt7p4yuVJAaAZbDO9Xbd7QaDNU6Wy5hWVTdlYN3HVdQhE5NtA/wZP/c42PmeXUmpCRPYB39E3rM9scN6mFShKqQeBBwGOHDlizaL2NtLSFCLeHDY1pmjHmiT1MtDRbGqYZDKdc7VxAG2k+MLkRpd7bUym84QCQk+r+/LpDQb0NZYqFWXK8sluLiYzMIrKprMFU+5DO8OeVxUCpdTbN3tORJIiMqCUmhSRASC1yXtM6L9HReQx4Fbgb4AOEQnpXsEwMFFDHzyL2THFyXSeW0Y6THs/KxiMRzmdNG9DdzenURokYhFmFguUyhVCwfoT9SYWciRiUUvXp6+Xgbi2/8TMojnbpk6mcwRkbc0qN1Lt5ZsjBPaFAOu9Kh8C7tP/vg/4xvoTRKRTRCL63z3AHcALSqu5/y7wniu9vpEZiEeZMClMki+WmXNxMZnBQLyZyXTetCUX3FxVbNAX00aKM4vmbMpzaT7HcKe7+2z2wooTC3kSsagpQmoVg6t9NueeNv53diyvXu9/9RPAnSJyBrhTf4yIHBGRT+vnXA8cFZFjaIb/E0qpF/Tnfhv4DRE5izZn8Jk62+MphjqbuWSSEKzFUN1tIAY7oiyvlMnk6i8qWylVmFkseCI0BOYVlV1ayDHkciFYGx2bc31fWlhmyPVhT63Pl+ZNEoIFe4rJYAuhoSuhlJoF3rbB8aPAh/S/nwBu2uT1o8Dt9bTBywx3trCwXCSbL9Je52Sn4Vl4wSMArXQ+XueCaclMHqXWCtXcipnLTKyUKkxl8gx3ttT9XlZiGO1LJk0Yj8/nOLJ7wzIl1xCLhok3h00b3F1asM/zc6+ftQMwvmQzLpxxfRQy0uVuA2GMmswYKV5aLSZz90ix38T6iam0Jn7DLh8dd7SEaW0KMj6/XPd7lcoVJtPuFz/Q7ulxkzyCsfllXwh2AsaFbYYrOT6/TEDcnV4H5o4UvSJ+PW1NRMMBxkz6ngHXzxGICCNdLYzN1d/nZLZAuaJc32cwhKB+8StXFBMLOdvEzxcCBzGMohkjiLH5HAPxZsIunkwDLeujKRRgfK7+m2VsbhkR94eGRIThzhZTDMS47lW4fY4AzDOKxrXijT63MD6fqzsZIpXNUyzbJ37uthoNTk9bE5FQwJybxUY3sh4CAWG4o5kxE/o8Nr9Moj1KJOTOSupqRjqbTRkdX5rXliV2ezgMNKN4yQSjaAyUvBAaGupoZnmlXPf+E2t99oWg4dFGiubEFMfn7XMj62XYpJDB+HyOkS73G0TAPI9gPkeiPWpLJkm9DHc2ky2U6s4QM+4Pt3t+sGa46/2u10KAfmhoRzDc2VL3ZLGRSeIVozjSaY5HMD63zIhHxG+kq5lMvkQ6V99I8dLCsidCJLBmxOr9ri8tLJOIRTzh+Rl9rndwNz7newQ7iiETPIKJhZyWSeIZo7iWNlsrK6UKk5m8J8JhUGUU65wbGfdAMZmBeaPjnOtrCAyGTOxzb3uEaNge8fOFwGGGO5uZW1pheaV299nueGK9jKwaxdoFcDKti5/LM4YMRkwYKZbKFabSec8YRTP6bLzeK4OceHOYWDRUdybg+IK9c36+EDiMGSmkXkkpNDBCWPWEDMZsdp3rxehzPSPFZLZAqaI8YxRjzSHaI6G6hGAtjdIb3zOsZQ7Vg93i5wuBw6y5z7VfOGPzy4QC4uolqKsZMSFMYhhUr8wRxJvDtNVpFI3BglfmCESE4a76JslT2bynxA/qLypzQvx8IXCY4Y76R4rj8zkGOty9IFc1HS31G8Wx+WWCAXH9yqMGRoZYPeJ3acFbnh+g97keb9dbnh+sZYjVmjabzNhbQwC+EDiOsahUPUZxfD7HcId3RkxmGMWxuRwDce+IH2gGop5w2MVZ3SPwyBwBrBWV1WoUjQGSV7wg0Nq6tFJmocZaAifqJrxzFzUogYBmFC/WGSbxSuqowUhXfUZxfN47qaMGI13NdVWdXphdYjAetS2TxAyGO1vqMopeFT+ofQ7MiTk/XwhcwN7uVs7P1nbR5ItlkpkCQx7yCECL7Y/N1W4UxzxUTGYw0tnC8oq2b0QtnJ9dYnd3q8mtspYR3ZjVOtDxovjt0b+jWu/pi/rSKXaKny8ELmB3dysXZpdqMorGDbanx2NC0NVMrlhmtgajmC+Wmc4WPDWBCGuL49VuFJc99z3v6TGM4lJNrz83u7T6Hl5hd7f2HZ2fqa3P52eWGIw32yp+vhC4gL092khxOrv9Dc7P6RfbXo/dLLvqMIqGUfGagdijG4gLNYwUM/kis0srnvMIdnW1IALnZ2oXP6/1ORoOMhCP1iwE5xwQ/LqEQES6ROQRETmj/75s5wgR+QkRea7qJy8i79af+7yInKt67nA97fEqxoV+roYLx3iN54yi3t5z0zX0WX/NPo/1eVe3ZhRHa/ieL+riYYiJV4iGgwzGmzk3s7jt16ZzReaWVtjrMS8ItPBQrV7Q+Zml1fCSXdTrETwAPKqUOgA8qj9+BUqp7yqlDiulDgNvBZaBf6o65beM55VSz9XZHk9ijOZrGSmen1mip62JWJ07nNnNrq4WggGpSfxGPSp+kVCQ4c7mmvpsGBWvjY5Bu77P1Xhtgzf7vKentnm/+aUV0rmi7R5+vUJwD/AF/e8vAO++yvnvAf5RKVX/imMNxEA8SjgonKthBHHOgdGDGYSDAXZ1tTBaw0jx3MwSfe0R2iJ17bTqCHt72moaHRuDhN0e8whAm786N7247TkwQ/y8FvYEzXOb0436djBsgNc8goRSahJA/913lfPfB3xp3bGPi8jzIvJJEYls9kIRuV9EjorI0enp6fpa7TJCwQAjXS01xRTPzXhvMs1gb08rozWEhs7PLHnSOIAWzjo/s/28+vMzS/S2R2hp8p747eluJZMvbXuNfmNeYZdH1pOqZnWSfJv3tHH+3l6XCYGIfFtETmzwc892PkhEBtA2sf9W1eGPANcBrwa6gN/e7PVKqQeVUkeUUkd6e3u389GeYE9367ZDBkuFEqlswdtGcXaJSmV7RvHczBL7bL5RzGJvTyuLhRLTi9tLDHh5epFrPNpn47va7vV9fnaJAY+ljhqspZBuXwgCYv/SKVcVAqXU25VSN27w8w0gqRt4w9CnrvBWPw98XSm1OixQSk0qjQLwOeD2+rrjXfb3tTE6s0R5G0bRqxlDBnt7W8kXteWkt0p6Wcue8Wyfa5gkV0pxJrXI/r42q5plKXtqTIY46+E+7+5uISDwcmp7YcDRmSWGO1ts33io3k97CLhP//s+4BtXOPde1oWFqkRE0OYXTtTZHs+yv6+NlVJlW+mUL09rF5lXR8f7erSbfHR66zeLUzFUszCEYDuZQ6lsgWy+xIG+dquaZSkjXS2Eg8LZbRjFSkV5Wgii4SC7u1s5s00hOJNc5IADfa5XCD4B3CkiZ4A79ceIyBER+bRxkojsAUaAf173+r8UkePAcaAH+IM62+NZDia0m/xMMrvl15xOZgkFZNWgeg1DwLYzajqt/38OJLxpFIc6mmkOBzmT3HqfDQPqhIEwg3AwwDW9bdu6ti8t5MgVy6v3hRc50Ne2er1uhWK5wujMoiPXdl0zT0qpWeBtGxw/Cnyo6vF5YGiD895az+c3EsbI50xqkXfcsLXXnJpaZG9Pqyf2r92IvvYI8eYwp7ZhFE9NZYmGA56cQARtbamDiTZOJTNbfo1hQL06OgZNuJ+9OL/l88+kdMH3cJ8PJtp59KUUhVJ5S9tsXphdolhWHEx4zyPwMYm2SIjBeHRbo6YzqSwH+707YhIRru1v59TU1o3i6WSWA33tBANiYcus5WCinVNT2/AIpheJRUP0tm+aVOd6rk20MT6fY6mwtZ34DI/Jq54fwIFEG+WK2nJVtXFNOOEF+ULgIg4k2jm9xdHx8kqJi3PLHPRo3Njgun6tz1vNHHppKuvpcAHAtf3tzCwWmN1i5tCZpBYr16bSvIlh0LcaMz+dXCQR0zxGr2LM6Ww1PHQ6mUXEGc/PFwIXcaCvjZenF7eUOXQ2tYhScG2/d11ngOv6YywWSlxauPp+DHNLK0xnC1znYS8INCEALcx1NZRSnE42gPgltmcUz6aynp0cN9jX20pAtj7vdyaVZXdXiyPpsr4QuIhr+9splCpbqjw1PAfPGwjdKL60BaNoGE4vh8OgSgi2YCAm0nnml4vcMBS3ulmWMtLVQiQU2JL4lcoVTiWzq/8nrxINB9nT08qLW+gzaNe3U6EwXwhcxM3DHQAcv5S+6rknJ9KenjQ1WBsdIyorAwAADNZJREFUX32ewDjH6x5Bb1uEzpYwL01e3UAcH9euhRsHY1Y3y1KCAeG6/nZemLj693x2epF8scLNw94WP4CbhuKc2ML9vFgoMTqzxKEBZ75nXwhcxDW9rUTDAZ4fv/qF8/x4mpuG4p7aqnEj2iIhdnW18MLk1Q3E8+Npetqa6PPwpClok+Q3DsV5fouCHwwI1ztkIMzk5uEOjl9KX3U+yLj+b/S4FwSaEEym86SyVy6aPHkpjVJwy4gzffa2FWkwQsEANwxefQRRLFc4cSm96kF4nZuH4zx3ceGq5z03vsDhkQ5PT5oaHB7p4HQyy/LKlbNoTlxKc6CvzZPLLKzn5uG4PvK9cujzxKU0bZEQez1aNFiNcY9e7Z42xM+pe9oXApdx01CckxOZK04Yn5rKUig1husMcNuuTibSeabSm4+a0stFRqeXODzSGOJ3eKSDckVx4tLmnpBSiuOXMtww2Bjf8y36d3ds7OpG8YbBGAEPpwgb3DAYQ4SrevnHxhcY6mimp80Zb9cXApdx01Cc5ZXyFZddMC6qRjGKt+7S+nGlgqNj45rHcHjksr2PPIlhFJ8b27zPk+k8M4sFbhzyflgI4JreNlqbgqvf5UYUyxVemMw0zCCnNRJif2/b6lzPZjw/nna0z74QuIzDulF8+vwVjOLYAh0tYc9PFBvcMBinKRTg2bHNDcRzYwuIwM0OxVDNpqctwnBnM89doc9Pjc4CcPveLruaZSnBgDY3cuwKfT5+Kc1KqdIwgg+a6P/44vymcyNzSytcnFt2NNTrC4HL2NfTSiIW4fGXZzY958nRWV61q7MhYuUATaEANw7G+PGFzcXvmQvz7O9t89xObFfi1l2dHD0/v+neBE++PEtHS5jr+xvDIwB49Z4uTkxkNt2w5Ymz2nX/2n2NIX4Ar9vXzfxykRc3yYx7Qr/XnRR8XwhchohwxzU9PPny7IYjiAuzS1ycW+ZNBxtrT4bb93bz3NgC2fzlBiJfLPPU6Cx37O9xoGXW8Yb93aSyhU1rKJ46N8tr9nY1RKzc4I0HeihXFE++PLvh84+fneX6gRjdDsXKrcC4bh8/u/Hg7gdnZmiPhrjFDw35VPP6/T3MLa1sWHD0vdPa7myNJgRvva6PUkXx/TOX3yxPjs5SKFV4y7WN1ec3H9Q29Hvs1OU77o3PLzM2l+O1+7rtbpal3La7k9amIN8/c3mf88Uyz1yc545rGqvP/fEo+/va+MHZy8VPKe2af/013Y6mgvtC4ELu2K/dCBvdLN87M8NwZzN7PLh37ZW4bVcH8eYwj754+d5G/3xqmmg40HBGsT8e5br+dh47tUGfdcF//TWN5QWFgwFed00P3zszfVlI7Onzc6yUKg3n+QG8YX8PPzo3S75YfsXx0ZklLi3keOMBZwc5vhC4kIF4M4cGYjx8fOoVx5dXSjx+doY3H+xtmPkBg1AwwFuu7eWxU6lXpM4qpfjOSylet6+7IXLp1/MT1/XxzIV50uv28/3miSn29rQ6siSx1bz52l7G5nKXebwPH5+ipSnYcIIP2vecL1ZWBd7gn04mAXizwx6+LwQu5WduGeS5sYVXpJF+88QUyytl7jl82dYODcE7DvUzu7TyCk/omQvzXJxb5u6bBhxsmXX81E0DlCqKh45dWj12aSHH42dn+KmbBhpO8AF+8sZ+QgHhb3+81ud8scw/npjk7dcnaG5qPMF//TXddLU28fWqPiul+Pqz49y2q4MRhzMA6xICEXmviJwUkYqIHLnCeXeJyCkROSsiD1Qd3ysiPxSRMyLyFRFpqqc9jcTPvWqIcFD43OPnAe2i+cwPzrGvp5Ujuxsnta6aOw8l6Glr4rN6nwE++/g52iMhfvrmxhSCG4fi3DAY43NPnF/1hL745HkU8C9fPeJo26yiuy3CnYcSfPlHF1eTA/7mx+MsLBd5/2t2Odw6awgHA7z3yDD/9MIUY/p2tD84O8Pp5CLve7Xzfa7XIzgB/Czwvc1OEJEg8CngbuAQcK+IHNKf/kPgk0qpA8A88ME629Mw9LVHec+rRvjSjy5yfDzNl58e4+REhl95yzUNlUVSTVMowC+/cR/fOz3Nt05O8YMzMzx8fIpfvGMPLU11babnaj78E/sZnV7ic4+f40wyy+cfP889tww6Pkq0kl99yzVk8iX+67dOkcrm+eQjZ7h1VwevaZCaiY34xdfvpSkU4KMPnWSxUOLj//AiA/Eo99w66HTTkM1ymLf1JiKPAb+pb1G5/rnXAb+nlHqn/vgj+lOfAKaBfqVUaf15V+LIkSPq6NHLPqrhmF0s8DN//AOmMnkqSptE/otfek3DCgFoIYL3/umTHL+URkSrRv3Gr91Ba6RxhUApxS9/8Rm+/WKSgEBXa4S//9/eQH886nTTLOU//91JPvf4eYIBoSkY4Gu/+rqGWU5jMz7/+Dl+7+9ewLiFP3Pfq/mJ6/ps+3wReUYpdVn0xo67awgYq3o8DrwG6AYWlFKlquObBr9F5H7gfoBdu5x3peyguy3CV3/ldXzmB+eIRcP8ypsb1xswiIaDfPGXbufB749Srij+7Zv2NbQIgFY78j/efyuf/v4o09kCv/SGvQ0vAgD/6acOsbenlRcns7z/9l0NLwIAH7hjL52tTTxxdpafuWWQNxxwR4bUVT0CEfk20L/BU7+jlPqGfs5jbO4RvBd4p1LqQ/rjfwPcDnwMeFIptV8/PgI8rJS66WqN3ikegY+Pj4+Z1OwRKKXeXudnjwPVs17DwAQwA3SISEj3CozjPj4+Pj42Ykf66NPAAT1DqAl4H/CQ0lyR7wLv0c+7D/iGDe3x8fHx8ami3vTRfyEi48DrgH8QkW/pxwdF5GEAfbT/YeBbwIvAV5VSJ/W3+G3gN0TkLNqcwWfqaY+Pj4+Pz/YxJWvIbvw5Ah8fH5/ts9kcgV9Z7OPj47PD8YXAx8fHZ4fjC4GPj4/PDscXAh8fH58djicni0VkGrhQ48t70GoYdhJ+n3cGfp93BvX0ebdS6rI1rz0pBPUgIkc3mjVvZPw+7wz8Pu8MrOizHxry8fHx2eH4QuDj4+Ozw9mJQvCg0w1wAL/POwO/zzsD0/u84+YIfHx8fHxeyU70CHx8fHx8qvCFwMfHx2eHs6OEQETuEpFTInJWRB5wuj1mISKfFZGUiJyoOtYlIo+IyBn9d6d+XETkv+v/g+dF5DbnWl4bIjIiIt8VkRdF5KSI/Hv9eCP3OSoiPxKRY3qf/7N+fK+I/FDv81f0pd4RkYj++Kz+/B4n218PIhIUkWdF5O/1xw3dZxE5LyLHReQ5ETmqH7P02t4xQiAiQeBTwN3AIeBeETnkbKtM4/PAXeuOPQA8qpQ6ADyqPwat/wf0n/uBP7GpjWZSAv4PpdT1wGuBX9O/y0bucwF4q1LqFuAwcJeIvBb4Q+CTep/ngQ/q538QmNd3APykfp5X+fdoS9gb7IQ+/4RS6nBVvYC117ZSakf8oO2Z8K2qxx8BPuJ0u0zs3x7gRNXjU8CA/vcAcEr/+8+Aezc6z6s/aBsa3blT+gy0AD9G2/t7Bgjpx1evcbT9P16n/x3SzxOn215DX4d1w/dW4O8B2QF9Pg/0rDtm6bW9YzwCYAgYq3o8rh9rVBJKqUkA/Xeffryh/g+6+38r8EMavM96iOQ5IAU8ArwMLCht8yd4Zb9W+6w/n0bb/Mlr/BHwfwIV/XE3jd9nBfyTiDwjIvfrxyy9tq+6Z3EDIRsc24m5sw3zfxCRNuBvgP+glMqIbNQ17dQNjnmuz0qpMnBYRDqArwPXb3Sa/tvzfRaRnwZSSqlnROQtxuENTm2YPuvcoZSaEJE+4BEReekK55rS553kEYwDI1WPh4EJh9piB0kRGQDQf6f04w3xfxCRMJoI/KVS6m/1ww3dZwOl1ALwGNr8SIeIGAO66n6t9ll/Pg7M2dvSurkDeJeInAe+jBYe+iMau88opSb03yk0wb8di6/tnSQETwMH9IyDJuB9wEMOt8lKHgLu0/++Dy2Obhz/BT3b4LVA2nA5vYJoQ//PAC8qpf7fqqcauc+9uieAiDQDb0ebQP0u8B79tPV9Nv4X7wG+o/QgsldQSn1EKTWslNqDdr9+Ryn1r2jgPotIq4i0G38D7wBOYPW17fTEiM2TMD8JnEaLrf6O0+0xsV9fAiaBItoI4YNosdFHgTP67y79XEHLnnoZOA4ccbr9NfT3DWju7/PAc/rPTzZ4n28GntX7fAL4Xf34PuBHwFngr4GIfjyqPz6rP7/P6T7U2f+3AH/f6H3W+3ZM/zlp2Cmrr21/iQkfHx+fHc5OCg35+Pj4+GyALwQ+Pj4+OxxfCHx8fHx2OL4Q+Pj4+OxwfCHw8fHx2eH4QuDj4+Ozw/GFwMfHx2eH8/8DRi6NeytyhLcAAAAASUVORK5CYII=\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot(sine_sd[0:500]);"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"By clipping the tops of the sine wave, we get a square wave.\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"slideshow": {
"slide_type": "fragment"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"square_sd = minimum(.1, maximum(-.1,sine_sd))\n",
"plot(square_sd[0:500]);"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"slideshow": {
"slide_type": "slide"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
""
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"## What does a square wave sound like?\n",
"Audio(data=square_sd, rate=Fs)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"The Sine and Square waves have the same **pitch** (frequency) but different **timbres**."
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Beats\n",
"Playing two tones at similar frequencies results in **beats**. This is useful for tuning instruments!"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"slideshow": {
"slide_type": "slide"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
""
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sine2_sd = sin(2*pi*440*t) - sin(2*pi*442*t)\n",
"Audio(data=sine2_sd, rate=Fs)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"We can plot to see the beats, or variations in amplitude. \n",
"\n",
"Note we plot the whole 3 seconds of the sound. Two beats per second. "
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"slideshow": {
"slide_type": "fragment"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plot(t,sine2_sd);"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## A chirp\n",
"\n",
"Bats use chirps, tones that rapidly increase in frequency, for echolocation like sonar.\n",
"\n",
"We can use a chirp to explore the range of frequencies that we can hear.\n",
"\n",
"Humans (with very good ears) can hear from 20 Hz to 20,000 Hz. "
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"slideshow": {
"slide_type": "slide"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
""
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"f = 20000/(2*Len)\n",
"chirp_sd = sin(2*pi*f*t**2) ## t**2 creates the increasing freq's.\n",
"\n",
"Audio(data=chirp_sd, rate=Fs)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Count the pulses\n",
"\n",
"We test how well you hear, by testing various frequencies.\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"slideshow": {
"slide_type": "fragment"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
""
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"freq = 10000\n",
"\n",
"n = random.randint(1,5)\n",
"test_sd = sin(2*pi*freq*t)*sin(pi*n*t/Len)\n",
"Audio(data=test_sd,rate=Fs,autoplay=True)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## More on chirps.\n",
"\n",
"We can vary the parameters, to vary the sounds"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"slideshow": {
"slide_type": "fragment"
},
"tags": [
"hide-input"
]
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
""
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Fs = 44100\n",
"Len = 3\n",
"t = linspace(0,Len,Fs*Len)\n",
"fmax = 15000\n",
"chirp2_sd = sin(pi*(fmax/Len)*t**2) \n",
"\n",
"Audio(data=chirp2_sd, rate=Fs,autoplay=True)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Summary\n",
"This notebook was a brief introduction to the mathematics of sound. We generated vibrations in air pressure using code that the computer sent to speakers.\n",
"\n",
"We learned about sine and square waves, beats, and chirps.\n",
"\n",
"For more information on these topics, check out the notebook on the mathematics of pitch."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"[](https://github.com/callysto/curriculum-notebooks/blob/master/LICENSE.md)"
]
}
],
"metadata": {
"celltoolbar": "Edit 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.7.4"
}
},
"nbformat": 4,
"nbformat_minor": 4
}