{ "cells": [ { "cell_type": "code", "execution_count": 10, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The tikzmagic extension is already loaded. To reload it, use:\n", " %reload_ext tikzmagic\n" ] } ], "source": [ "import numpy as np\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "plt.rcParams['figure.figsize'] = (16.0, 9.0)\n", "plt.rcParams['animation.writer'] = 'avconv'\n", "%load_ext tikzmagic\n", "\n", "import scipy.integrate\n", "\n", "from matplotlib import animation\n", "from IPython.display import HTML, display\n", "from ipywidgets import interact, Layout" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Convolution Examples and the Convolution Integral\n", "\n", "The code in this recap has been taken from http://dspillustrations.com/pages/posts/misc/convolution-examples-and-the-convolution-integral.html with permission of the author. The code cannot be reused without explicit permission of the original author. \n", "In this notebook, we will recap convolution by calculating some convolutions numerically. Formally, the convolution $(f_1*f_2)(t)$ of two signals $f_1(t)$ and $f_2(t)$ is defined by the convolution integral\n", "\n", "$$\n", "(f_1*f_2)(t) = \\int_{-\\infty}^{\\infty}f_1(\\tau)f_2(t-\\tau)d\\tau.\n", "$$\n", "\n", "So, the convolution of two function is the integral over the product of both functions, where one function is time-shifted and flipped in time. Let us not think about why this operation makes sense for now. Instead, let's define two functions $f_1(t)$ and $f_2(t)$:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "f1 = lambda t: np.maximum(0, 1-abs(t))\n", "f2 = lambda t: (t>0) * np.exp(-2*t)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's plot these two functions to see how they look like:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "Fs = 50 # our sampling frequency for the plotting\n", "T = 5 # the time range we are interested in\n", "t = np.arange(-T, T, 1/Fs) # the time samples" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(15,5))\n", "plt.plot(t, f1(t), label='$f_1(t)$')\n", "plt.plot(t, f2(t), label='$f_2(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So, we see one function is a triangle, the other is the exponential impulse. Let us now evaluate the convolution integral at a given time $t_0=1$:" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "Result of the convolution (red shaded area): $(f_1*f_2)(t_0=1) = 0.19$" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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88HG1AD7HPlwiaRcoNbpJkTQsSjRQcehRAsdixItdCz2b6OttXkdveFYEJX4YIz5zFpb5HQfIjoWJRroOJRooWNRooWOxfilobkiIiIiIiISUQqiIiIiIiIiElEKonKmLXa6AZEwHYsSDXQcSrTQsSjRQsdinNI1oiIiIiIiIhJROiMqIiIiIiIiEaUgKhFjjPlnY4w1xuQ63YvEH2PMz4wxXxpjthpj3jTGDHa6J4kvxpirjDE7jTG7jDE/drofiU/GmFHGmI+NMTuMMduMMXc73ZPEL2NMojFmkzHmD073IpGnICoRYYwZBVwBfOV0LxK3lgNTrLXnA6XA/Q73I3HEGJMI/Aq4GjgX+LYx5lxnu5I45Qf+yVo7CbgI+IGORXHQ3cAOp5sQZyiISqT8N3AvoIuSxRHW2mXWWn/45SfASCf7kbhzIbDLWrvbWusFlgDXOtyTxCFrbaW1dmN4uYlQCChwtiuJR8aYkcDXgWed7kWcoSAqZ5wx5ltAubV2i9O9iIT9PfC+001IXCkA9h/3+gD68i8OM8aMAaYB65ztROLU44ROUgSdbkSckeR0A9I/GGM+AIZ38NaDwAPAlZHtSOJRV8ehtfbtcM2DhIamvRzJ3iTumQ7WaYSIOMYYkwG8DtxjrT3sdD8SX4wx3wCqrbUbjDHznO5HnKEgKn3CWju/o/XGmPOAscAWYwyEhkNuNMZcaK2timCLEgc6Ow6PMMb8DfAN4HKruasksg4Ao457PRKocKgXiXPGmGRCIfRla+0bTvcjcWk28C1jzDVAGjDIGPM7a+0ih/uSCNI8ohJRxpi9QJG1ttbpXiS+GGOuAn4BXGKtrXG6H4kvxpgkQjfJuhwoB9YDN1lrtznamMQdE/qt8ItAvbX2Hqf7EQmfEf1na+03nO5FIkvXiIpIvHgSyASWG2M2G2OedrohiR/hG2XdCSwldHOY3yuEikNmAzcDl4X/X7g5fFZKRCSidEZUREREREREIkpnREVERERERCSiFERFREREREQkohRERUREREREJKIUREVERERERCSiFERFREREREQkohRERUREREREJKIUREVERERERCSikpxuQEREpL8yxgwC/gykAGOBUsADzLLWBp3sTURExEnGWut0DyIiIv2aMeZC4EFr7bVO9yIiIhINNDRXRETkzJsCbHO6CRERkWihICoiInLmnQt84XQTIiIi0UJBVERE5MzLB6qcbkJERCRaKIiKiIiceUuB54wxlzjdiIiISDTQzYpEREREREQkonRGVERERERERCJKQVREREREREQiSkFUREREREREIkpBVERERERERCJKQVREREREREQiSkFUREREREREIkpBVERERERERCJKQVREREREREQi6v8DVbpUJev4u1sAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t0 = 1\n", "flipped = lambda tau: f2(t0-tau)\n", "product = lambda tau: f1(tau)*f2(t0-tau)\n", "\n", "plt.figure(figsize=(16,6))\n", "plt.gca().set_ymargin(0.05);\n", "plt.plot(t, f1(t), label=r'$f_1(\\tau)$')\n", "plt.plot(t, flipped(t), label=r'$f_2(t_0-\\tau)$')\n", "plt.plot(t, product(t), label=r'$f_1(\\tau)f_2(t_0-\\tau)$')\n", "plt.fill(t, product(t), color='r', alpha=0.5, hatch='//')\n", "plt.grid(True); plt.xlabel(r'$\\tau$'); plt.legend(fontsize=10);\n", "\n", "# Explicitely calculate the integral, using the Simpson integration rule\n", "display(HTML(\"Result of the convolution (red shaded area): $(f_1*f_2)(t_0=%.0f) = %.2f$\" % (t0, scipy.integrate.simps(product(t), t))))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As we see, the green curve $f_2(t_0-\\tau)$ was shifted by $t_0$ to the right, and then horizontally mirrored. The value of the convolution integral corresponds to the red shaded area, which is the product of both curves. \n", "\n", "We can now write a small function which illustrates the convolution integral for different time-shifts." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "def showConvolution(f1, f2, t0):\n", " # Calculate the overall convolution result using Simpson integration\n", " convolution = np.zeros(len(t))\n", " for n, t_ in enumerate(t):\n", " prod = lambda tau: f1(tau) * f2(t_-tau)\n", " convolution[n] = scipy.integrate.simps(prod(t), t)\n", " \n", " # Create the shifted and flipped function\n", " f_shift = lambda t: f2(t0-t)\n", " prod = lambda tau: f1(tau) * f2(t0-tau)\n", "\n", " # Plot the curves\n", " plt.gcf().clear()\n", " \n", " plt.subplot(211)\n", " plt.gca().set_ymargin(0.05)\n", " plt.plot(t, f1(t), label=r'$f_1(\\tau)$')\n", " plt.plot(t, f_shift(t), label=r'$f_2(t_0-\\tau)$')\n", " plt.fill(t, prod(t), color='r', alpha=0.5, edgecolor='black', hatch='//')\n", " plt.plot(t, prod(t), 'r-', label=r'$f_1(\\tau)f_2(t_0-\\tau)$')\n", " plt.grid(True); plt.xlabel(r'$\\tau$'); plt.ylabel(r'$x(\\tau)$')\n", " plt.legend(fontsize=10)\n", " plt.text(-4, 0.6, '$t_0=%.2f$' % t0, bbox=dict(fc='white'))\n", " \n", " # plot the convolution curve\n", " plt.subplot(212)\n", " plt.gca().set_ymargin(0.05)\n", " plt.plot(t, convolution, label='$(f_1*f_2)(t)$')\n", " \n", " # recalculate the value of the convolution integral at the current time-shift t0\n", " current_value = scipy.integrate.simps(prod(t), t)\n", " plt.plot(t0, current_value, 'ro') # plot the point\n", " plt.grid(True); plt.xlabel('$t$'); plt.ylabel('$(f_1*f_2)(t)$')\n", " plt.legend(fontsize=10)\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "9564a0a2a4354e87ba5124cabd03e51b", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(FloatSlider(value=0.0, description='t0', max=3.0, min=-2.0, step=0.05), Output()), _dom_…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(figsize = (16,9))\n", "interact(lambda t0: showConvolution(f1, f2, t0), t0 = (-2,3,0.05));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The animation shows, how the green function is gradually shifted to the right, producing more and more overlap between both curves and hence increasing the area under their product. Then, when the green curve is shifted even more to the right, we see that the area under their product decreases again. \n", "\n", "Another important property can be seen from the convolution output: Even though the green input signal has a sharp jump at $t=0$, the convolution of both functions is a smooth function. In particular, this property is due to the integral in the convolution calculation: The integral somehow creates a moving average filter, which cannot create immediate jumps in the output signal (as long as the input does not contain Dirac-impulses). So, a general property of the convolution, is the fact that the convolution product of two functions is always a smoother curve than the input signals.\n", "\n", "Let us now look at the classical example for convolution explanation: The convolution of a rectangular function with itself. Here, the result is a triangle with a maximum, when both rectangles perfectly overlap:" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0MAAAE/CAYAAACEvxh8AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3df7Dd5X0f+PfnCKkyhoALWA4WidgtxZFpY7nCjh0vyIWyQFOgHm9rd7KmtV3GM8ZuxrgbZ9Nxu97MOE1cp7PEu16m8dTp4voHaVK2IUsahzsp2A5g7Nj8sFxVhCLjFCTbWCIIge6zf9wfiHvPvZLu9+qc7+G+XjMM95zz5erDOc/cR+/7PN/PU621AAAArDWDcRcAAAAwDsIQAACwJglDAADAmiQMAQAAa5IwBAAArEnCEAAAsCadNO4CujjzzDPbli1bxl0Gx+Cpp57KS1/60nGXwYQxblgJ44aVMnZYCeOm/7761a/uba2dNey1iQ5DW7Zsyb333jvuMjgGU1NT2bFjx7jLYMIYN6yEccNKGTushHHTf1X1yFKv2SYHAACsScIQAACwJglDAADAmjTR9wwBAADH5tlnn82ePXty8ODBcZdyQmzcuDGbN2/O+vXrj/m/EYYAAGAN2LNnT0499dRs2bIlVTXuclZVay379u3Lnj17cu655x7zf2ebHAAArAEHDx7MGWec8aILQklSVTnjjDOOe9VLGAIAgDXixRiE5qzk/00YAgAA1iRhCAAAWJOEIQAAYKRuuOGGbN26Ne973/sWvfb000/n4osvzuHDh5PMNH743Oc+lyQ5dOhQLrroojz33HOrUocwBAAAjMzu3btz11135cEHH8yNN9646PVPfepTectb3pJ169YlSb74xS/mvvvuS5Js2LAhl1xyyXw46koYAgAARmLnzp25+OKL88gjj2Tbtm156qmnFl1z88035+qrr06S3HnnnfnABz6QW265Ja95zWvy8MMP55prrsnNN9+8KvU4ZwgAANaY/+3/fSAPPvbDVf2eW8/+kfzTv/XqZa85//zzc+2112bLli1597vfvej1Q4cOZffu3dmyZUuS5E1velMuvPDCfOxjH8sFF1yQJDl8+HDuueeeVanZyhAAADAy3/zmN/OTP/mT2b17d971rnflrW996/xre/fuzemnn/6C63fu3Jnzzz9//vG6deuyYcOG7N+/v3MtVoYAAGCNOdoKzon0wAMP5NWvfnVOPvnk/MZv/MYLwtBLXvKSFxycum/fvpx22mlZv379C77HM888k40bN3auxcoQAAAwEvv378/69etz8sknD339ZS97WQ4fPjwfiB5++OGcffbZL7hm3759OeussxYFpJUQhgAAgJG4//775+/9Wcpll12WO++8M0nyqle9Knv37s0FF1yQL33pS0mSO+64I1deeeWq1DOSMFRVn6qqx6vq/iVer6r6P6pqV1V9o6peO4q6AACA0XnDG96QL3zhC0lmVnje85735Gtf+1o++tGPzl9z/fXX59Of/nSS5JRTTsndd9+d+++/P2984xuTJJ/5zGdy3XXXrUo9o7pn6F8n+fUkv7nE61ckOW/2n9cn+b9m/w0AALwInXHGGfnkJz+56Plt27blzW9+cw4fPjx/1tCcQ4cO5ZprrnlBQ4UuRhKGWmt/VFVblrnk6iS/2VprSb5SVadX1Y+21r47ivoA6KZNT2ff43vSpqfHXUqe/uHePPHYn467jHl/8eWbs+4k/YoAjsc73/nOoc9v2LAh73jHO1btz+nLT+dXJnn0iMd7Zp8ThgAmwN2f/+d5/bd+edxlJJnZapD7xl3F8+45/Ypc+HOfHXcZAAzRlzBUQ55rQy+sui7JdUmyadOmTE1NncCyWC0HDhzwWXHcjJvJ8cyj38rhVrnt5auzh7uLZ599LuvX92N6e+0Tv511+79jHE8IP3NYiUkaN6eddtqqnM3TZwcPHjyuz6Mfs8XMStA5RzzenOSxYRe21m5KclOSbN++ve3YseOEF0d3U1NT8VlxvIybyfHlnV/IcwdOyt9676+Mu5RejZtv/dIfZf26db2ph+X1aewwOSZp3Dz00EM59dRTx13GCbVx48Zs27btmK/vS2vtW5O8Y7ar3E8ledL9QgCTo1rL9NBF/rWtVaWGb3QAoAdGsjJUVf82yY4kZ1bVniT/NMn6JGmtfTLJbUmuTLIryZ8n+QejqAuAVdKm04ShISrVhCGAvhpVN7m3H+X1luS9o6gFgBOhCUNDtBokGX+HPQCG68s2OQAmmW1yQ7WUdwWgx4QhALpr02nlr/2LVapZGQJY6IYbbsjWrVvzvve9b9FrTz/9dC6++OIcPnw4SbJnz5587nOfSzJz6OpFF12U5557blXqEIYA6KxskxtqJiC6ZwjgSLt3785dd92VBx98MDfeeOOi1z/1qU/lLW95S9atW5ck+eIXv5j77ps5QG7Dhg255JJL5sNRV8IQAN1poDBU00AB4AV27tyZiy++OI888ki2bduWp556atE1N998c66++uokyZ133pkPfOADueWWW/Ka17wmDz/8cK655prcfPPNq1JPX84ZAmCStek0v19bpNUgpYECwLzzzz8/1157bbZs2ZJ3v/vdi14/dOhQdu/enS1btiRJ3vSmN+XCCy/Mxz72sVxwwQVJksOHD+eee+5ZlXqEIQBWhQYKwwycMwT00+99KPmzb67u93zFX0mu+OWjXvbNb34zV199dX7nd34nv/u7v5vHH388733ve3PZZZdl7969Of30019w/c6dO3P++efPP163bl02bNiQ/fv3dz5EVhgCoDvb5IZqiTAEsMADDzyQV7/61bnwwgtzzTXX5Pvf/34++MEP5rLLLstLXvKSHDx4cP7affv25bTTTsv69etf8D2eeeaZbNy4sXMtwhAAnWmgsIQaJO4ZAvroGFZwToT9+/dn/fr1Ofnkk+ef+6Vf+qW8970zR46+7GUvy+HDh3Pw4MFs3LgxDz/8cM4+++wXfI99+/blrLPOWhSQVsIGbwC6szI01Mw5Q8IQwJz7779//t6f1lp+/ud/PldccUVe+9rXzl9z2WWX5c4770ySvOpVr8revXtzwQUX5Etf+lKS5I477siVV165KvVYGQKgu2ZlaBgNFABe6A1veEO+8IUvJEluvPHG/MEf/EGefPLJ7Nq1K+95z3uSJNdff30+/vGP59JLL80pp5ySu++++wXf4zOf+Uw++tGPrko9whAAnc1sk7PZYDGttQGW8v73vz/vf//7Fz2/bdu2vPnNb87hw4fnzxqac+jQoVxzzTUvaKjQhTAEQHdt2mawYco2OYCVeOc73zn0+Q0bNuQd73jHqv05fo0HwCpoaWVKWahprQ3Qa2YuADorK0PDldbaAH0mDAHQXXPP0DAzK0MaKAD0lZkLgM6cM7SEGmigAPRKexH/TFrJ/5swBEB3bTqthKGFnDME9MnGjRuzb9++F2Ugaq1l37592bhx43H9d7rJAdCZ1tpLqEqEIaAnNm/enD179uSJJ54YdyknxMaNG7N58+bj+m+EIQC6c+jqEioDYQjoifXr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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "f1 = lambda t: (abs(t)<0.5).astype(float)\n", "f2 = lambda t: (abs(t)<0.5).astype(float)\n", "plt.figure(figsize=(14,5))\n", "plt.plot(t, f1(t), label='$f_1(t)$')\n", "plt.plot(t, f2(t), label='$f_2(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "9fa2c441dfa04630b2f1bdfe53de3719", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(FloatSlider(value=0.0, description='t0', max=3.0, min=-2.0, step=0.05), Output()), _dom_…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "interact(lambda t0: showConvolution(f1, f2, t0), t0 = (-2,3,0.05));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this case we specifically can check where and how the integration boundaries are important. If you set the slider to $t_0 = -1$ you will see that the two pulses are just so touching. If $t_0 < -1$ the integral will be zero, as the two functions are not overlapping. If $t_0>1$ the same. In between, you find that the integration will start at $\\tau = -0.5$ and go up to $\\tau = t$. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let us finally look at the convolution of an exponentially decaying impulse with a switched-on sine wave. If we understand the blue graph as the impulse response of some LTI system and the green curve as its input signal, then the convolution of both is the output of the signal to this particular input. " ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "f1 = lambda t: (t>0) * np.exp(-2*t)\n", "f2 = lambda t: np.sin(2*np.pi*t) * (t>0)\n", "plt.figure(figsize=(15,5))\n", "plt.plot(t, f1(t), label='$f_1(t)$')\n", "plt.plot(t, f2(t), label='$f_2(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-1.1, 1.1));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We see that the impulse response (blue) is causal, i.e. $f_1(t)=0, t<0$. Since the sine-wave is switched on at $t=0$, the output of the system is zero before switching on the signal. Then, after some transient phase, the output of the system becomes a sine-wave with the same frequency but with a different phase and amplitude. This is the fundamental property of LTI systems: The response of an LTI system to a harmonic is a harmonic of the same frequency, but (possibly) with different phase and amplitude. We also say, harmonics are eigenfunctions of the LTI system. Hence, in particular harmonics are eigenfunctions of the convolution integral." ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "ef5403e09f8d40fca7201f6328c43749", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(FloatSlider(value=0.0, description='t0', max=3.0, min=-2.0, step=0.05), Output()), _dom_…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "interact(lambda t0: showConvolution(f1, f2, t0), t0 = (-2,3,0.05));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Conclusion\n", "> - The convolution operation is given by the integral over the product of two functions, where one function is flipped and shifted in time.\n", "> - The convolution operation smoothes the input signals, i.e. the output of the convolution is a more smooth function that its input functions.\n", "> - Harmonic functions (i.e. sine, cosine) are the eigenfunctions of the convolution operation. This means convolving a sine with some function yields in a sine of different amplitude and phase, but same frequency." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As a specific Example, together with the choice of integration boundaries, we want to look at the case of $y(t) = \\int \\limits_{- \\infty}^{\\infty} \\! rect(\\frac{\\tau}{T_0}-\\frac{T_0}{2}) \\cdot \\frac{1}{T} \\epsilon (t- \\tau) e^{-\\frac{t-\\tau}{T}} \\, dx$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Which is the mirrored and shifted impulse response at the rear and a rectangular input in the front. To solve the convolution we will need to split the integral. So first we will consider the integrand:\n" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "T = 1\n", "T0 = 1\n", "f3 = lambda t: (1/T)*(t>0) * np.exp(-t/T)\n", "f4 = lambda t: (abs(t/T0 - T0/2)<0.5).astype(float)\n", "plt.figure(figsize=(15,5))\n", "plt.plot(t, f3(t), label='$f_3(t)$')\n", "plt.plot(t, f4(t), label='$f_4(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we have several cases to be distinguished. Note that the integral is in terms of $\\tau$ but t is still in as a variable! The convolution is done with the Square Impulse and a flipped and shifted version of the Impulse response. For this we will now create a shifted and mirrored version of the impulse response. We will shift by t0" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "T = 1\n", "T0 = 1\n", "t0 = 0\n", "\n", "f3 = lambda t: (1/T)*((t-t0)<0) * np.exp(-(t0-t)/T)\n", "f4 = lambda t: (abs(t/T0 - T0/2)<0.5).astype(float)\n", "plt.figure(figsize=(15,5))\n", "plt.plot(t, f3(t), label='$f_3(t)$')\n", "plt.plot(t, f4(t), label='$f_4(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "When we change t0 (what is t in the real convolution, we will now shift the impulse response. For $t0<0$ like this: " ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA7MAAAIYCAYAAAC/srv2AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nOzdeXxc5X32/+vWZlnyvsnY8iKDd4NtsLEhBIuYUELC0ixtElrIAiR9CmkCv7ZJ0yRN2jRLE9rnoWkS0tA0hJ1shJBAIAgwYGzjfbeRF8m7ZMuWZMta5v79IWssb1ie+545c+75vF+vvmpJY+mb8UHSNdf5nmOstQIAAAAAIE7yoh4AAAAAAIBzRZgFAAAAAMQOYRYAAAAAEDuEWQAAAABA7BBmAQAAAACxQ5gFAAAAAMROQdQDuBgyZIgdO3Zs1GMgzZqbm1VaWhr1GADHIrICxyGyBccisgXHYtjefPPNOmvt0NN9LNZhduzYsVqyZEnUYyDNqqqqVFlZGfUYAMcisgLHIbIFxyKyBcdi2Iwx2870MU4zBgAAAADEDmEWAAAAABA7hFkAAAAAQOzEemcWAAAAAHJBW1ubamtr1dLSEvUoaVFcXKzy8nIVFhb2+O8QZgEAAAAgy9XW1qpv374aO3asjDFRj+OVtVb19fWqra1VRUVFj/8epxkDAAAAQJZraWnR4MGDgwuykmSM0eDBg8+5dSbMAgAAAEAMhBhku6Tyv40wCwAAAACIHcIsAAAAACB2CLMAAAAAgB675557NGXKFN11112nfOzIkSOaN2+eOjo6JHVeuOqxxx6TJLW2turKK69Ue3u7lzkIswAAAACAHqmurtarr76qtWvX6r777jvl4w888IDe//73Kz8/X5L0wgsvaOnSpZKkoqIizZ8/PxluXRFmAQAAAABntWHDBs2bN0/btm3TzJkz1dzcfMpjHnroId14442SpAULFujuu+/Wk08+qRkzZmjLli266aab9NBDD3mZh/vMAgAAAECMfPU3a7R25yGvn3PKiH76yvVT3/YxEydO1K233qqxY8fqtttuO+Xjra2tqq6u1tixYyVJV1xxhWbPnq3vfOc7mjZtmiSpo6NDixcv9jIzzSwAAAAAoEdWrVql6dOna926dfr0pz+tD37wg/r+978vSaqrq9OAAQNOePyGDRs0ceLE5Nv5+fkqKipSY2Oj8yw0swAAAAAQI2drUNNpzZo1mjp1qkpKSvSDH/xAiURCt99+uySpd+/eamlpST62vr5e/fv3V2Fh4Qmf4+jRoyouLnaehWYWAAAAAHBWjY2NKiwsVElJiSTpqaee0hVXXKH58+dLkgYOHKiOjo5koN2yZYtGjBhxwueor6/X0KFDTwm4qSDMAgAAAADOavXq1cndV0m64YYb9Nprr51wQadrrrlGCxYskCRNmjRJdXV1mjZtml577TVJ0osvvqjrrrvOyzycZgwAAAAAOKvLLrtMTzzxhCSpqqpKv/jFL3T06NETwumdd96pe++9V1dffbX69OmjRYsWnfA5Hn74YX3jG9/wMg9hFgAAAABwTiorK1VZWXnK+2fOnKmrrrpKHR0dyXvNdmltbdVNN910wgWhXBBmAQAAAADefOITnzjt+4uKinTLLbd4+zrszAIAAAAAYocwCwAAAACIHcIsAAAAACB2CLMAAAAAgNghzAIAAAAAYocwCwAAAACIHcIsAAAAACB2CLMAAAAAgB675557NGXKFN11112nfOzIkSOaN2+eOjo6JEm1tbV67LHHJEmtra268sor1d7e7mUOwiwAAAAAoEeqq6v16quvau3atbrvvvtO+fgDDzyg97///crPz5ckvfDCC1q6dKkkqaioSPPnz0+GW1eEWQAAAADAWW3YsEHz5s3Ttm3bNHPmTDU3N5/ymIceekg33nijJGnBggW6++679eSTT2rGjBnasmWLbrrpJj300ENe5inw8lkAAAAAAJnxu89Lu1f5/ZzDL5Te8823fcjEiRN16623auzYsbrttttO+Xhra6uqq6s1duxYSdIVV1yh2bNn6zvf+Y6mTZsmSero6NDixYu9jEwzCwAAAADokVWrVmn69OmSpObmZl1yySV6+umnJUl1dXUaMGDACY/fsGGDJk6cmHw7Pz9fRUVFamxsdJ6FZhYAAAAA4uQsDWo6rVmzRlOnTpUkfetb39Kf/dmfJT/Wu3dvtbS0JN+ur69X//79VVhYeMLnOHr0qIqLi51nIcwCAAAAAM6qsbFRhYWFKikp0fPPP68pU6acEF4HDhyojo4OtbS0qLi4WFu2bNGIESNO+Bz19fUaOnToKQE3FZxmDAAAAAA4q9WrVyd3X1988UUtXLhQDz/8sH70ox8pkUhI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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t0 = -1\n", "\n", "plt.plot(t, f3(t), label='$f_3(t)$')\n", "plt.plot(t, f4(t), label='$f_4(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So when we integrate over $\\tau$ now, we will not get anything, as one of the two factors under the integral will always be zero. When we shift to the other side, $t0 > 0$" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA7MAAAIYCAYAAAC/srv2AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nOzdeXzV9Z3v8fc3GyFhD4tCgAACsiiggKhU4pVprW1BnbbXLqO2Vbtc2051OrcznU6nndvd2ultO211rl1Fq3ZzrK1WS6yoyL5DWMKSsGYhkARClvO9fyQnBAg5Wc75/b7fX17Px6MPIDk5+RSOhHfev8/va6y1AgAAAADAJ2lhDwAAAAAAQHcRZgEAAAAA3iHMAgAAAAC8Q5gFAAAAAHiHMAsAAAAA8A5hFgAAAADgnYywB+iN4cOH24KCgrDHQIrV1dUpNzc37DEAXotwAq9DuILXIlzBazHa1q5dW2GtHdHR+7wOswUFBVqzZk3YYyDFioqKVFhYGPYYAK9FOIHXIVzBaxGu4LUYbcaY/Rd7H5cZAwAAAAC8Q5gFAAAAAHiHMAsAAAAA8I7XO7MAAAAA0Bc0NjaqrKxM9fX1YY+SEtnZ2crPz1dmZmaXP4YwCwAAAACOKysr08CBA1VQUCBjTNjjJJW1VpWVlSorK9OECRO6/HFcZgwAAAAAjquvr1deXl7kgqwkGWOUl5fX7daZMAsAAAAAHohikI3ryf83wiwAAAAAwDuEWQAAAACAdwizAAAAAIAue/DBBzV9+nR98pOfvOB9p0+f1qJFi9Tc3Cyp5cZVv/rVryRJDQ0NuuGGG9TU1JSUOQizAAAAAIAuKSkp0WuvvaZt27bpe9/73gXvf+yxx3T77bcrPT1dkvTyyy9r3bp1kqSsrCzddNNNbeG2twizAAAAAICEiouLtWjRIu3fv19z5sxRXV3dBY95/PHHtXTpUknSihUr9MADD+iZZ57R7NmztXfvXt166616/PHHkzIP58wCAAAAgEe+9N9bte3QyaQ+5/TRg/TFd83o9DFTp07VXXfdpYKCAt1zzz0XvL+hoUElJSUqKCiQJC1cuFDz5s3TQw89pJkzZ0qSmpubtXr16qTMTDMLAAAAAOiSzZs3a9asWdq+fbs+9rGP6d3vfrd++MMfSpIqKio0ZMiQcx5fXFysqVOntv06PT1dWVlZqqmp6fUsNLMAAAAA4JFEDWoqbd26VTNmzFBOTo5+9KMfKRaL6d5775Uk9e/fX/X19W2Prays1ODBg5WZmXnOc5w5c0bZ2dm9noVmFgAAAACQUE1NjTIzM5WTkyNJevbZZ7Vw4ULddNNNkqShQ4equbm5LdDu3btXo0ePPuc5KisrNWLEiAsCbk8QZgEAAAAACW3ZsqVt91WSlixZotdff/2cGzq99a1v1YoVKyRJl19+uSoqKjRz5ky9/vrrkqTly5frlltuSco8XGYMAAAAAEjo2muv1dNPPy1JKioq0m9+8xudOXPmnHB6//336+GHH9bixYs1YMAArVq16pznWLZsmb72ta8lZR7CLAAAAACgWwoLC1VYWHjB2+fMmaMbb7xRzc3NbWfNxjU0NOjWW28954ZQvUGYBQAAAAAkzYc//OEO356VlaU777wzaZ+HnVkAAAAAgHcIswAAAAAA7xBmAQAAAADeIcwCAAAAALxDmAUAAAAAeIcwCwAAAADwDmEWAAAAAOAdwiwAAAAAoMsefPBBTZ8+XZ/85CcveN/p06e1aNEiNTc3S5LKysr0q1/9SpLU0NCgG264QU1NTUmZgzALAAAAAOiSkpISvfbaa9q2bZu+973vXfD+xx57TLfffrvS09MlSS+//LLWrVsnScrKytJNN93UFm57izALAAAAAEiouLhYixYt0v79+zVnzhzV1dVd8JjHH39cS5culSStWLFCDzzwgJ555hnNnj1be/fu1a233qrHH388KfNkJOVZAAAAAADB+OPnpCObk/ucl1whvf3rnT5k6tSpuuuuu1RQUKB77rnngvc3NDSopKREBQUFkqSFCxdq3rx5euihhzRz5kxJUnNzs1avXp2UkWlmAQAAAABdsnnzZs2aNUuSVFdXp6uvvlrPPfecJKmiokJDhgw55/HFxcWaOnVq26/T09OVlZWlmpqaXs9CMwsAAAAAPknQoKbS1q1bNWPGDEnSN77xDb33ve9te1///v1VX1/f9uvKykoNHjxYmZmZ5zzHmTNnlJ2d3etZCLMAAAAAgIRqamqUmZmpnJwcvfTSS5o+ffo54XXo0KFqbm5WfX29srOztXfvXo0ePfqc56isrNSIESMuCLg9wWXGAAAAAICEtmzZ0rb7unz5cq1cuVLLli3To48+qlgsJkl661vfqhUr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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t0 = 0.5\n", "\n", "plt.plot(t, f3(t), label='$f_3(t)$')\n", "plt.plot(t, f4(t), label='$f_4(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here it will now depend on how much exactly we shift. If we shift by less than T0, then the amount of the square pulse that we have in the integral will change. Above we have T0/2, below exactly T0 and then 2*T0." ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t0 = 1\n", "\n", "plt.plot(t, f3(t), label='$f_3(t)$')\n", "plt.plot(t, f4(t), label='$f_4(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t0 = 2\n", "\n", "plt.plot(t, f3(t), label='$f_3(t)$')\n", "plt.plot(t, f4(t), label='$f_4(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "However, in all cases there is no intgral above t0, as the shifted impulse function is always zero there. So we can integrate up to t when t is less than t0 and simply up to t0 when it is larger. " ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "T = 1\n", "T0 = 1\n", "f1 = lambda t: (1/T)*(t>0) * np.exp(-t/T)\n", "f2 = lambda t: (abs(t/T0 - T0/2)<0.5).astype(float)\n", "plt.figure(figsize=(15,5))\n", "plt.plot(t, f1(t), label='$f_1(t)$')\n", "plt.plot(t, f2(t), label='$f_2(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "T1 = 1\n", "T0 = 0.5\n", "f5 = lambda t: (abs(t/T0 - T0/2)<0.5).astype(float)\n", "f6 = lambda t: (abs(t/T1 - T1/2)<0.5).astype(float)\n", "plt.figure(figsize=(15,5))\n", "plt.plot(t, f5(t), label='$f_5(t)$')\n", "plt.plot(t, f6(t), label='$f_6(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "0d3954d0d9a342518187a8d5928cfe0d", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(FloatSlider(value=0.0, description='t0', max=3.0, min=-2.0, step=0.05), Output()), _dom_…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "interact(lambda t0: showConvolution(f5, f6, t0), t0 = (-2,3,0.05));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As a further Example we consider the following: " ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "T = 1\n", "T0 = 1\n", "T1 = 0.5\n", "T2 = 2\n", "f1 = lambda t: (abs(t/T0 + T0/2)<0.5).astype(float)\n", "f2 = lambda t: (abs(t/T1 + 1.5)<0.5).astype(float)+0.5*(abs(t/T2 -0.25)<0.5).astype(float)\n", "\n", "plt.figure(figsize=(15,5))\n", "plt.plot(t, f1(t), label='$f_1(t)$')\n", "plt.plot(t, f2(t), label='$f_2(t)$')\n", "plt.grid(True); plt.ylabel('$f(t)$'); plt.xlabel('$t$'); plt.legend(fontsize=10); plt.ylim((-0.1, 1.1));" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "a96d706231b84122ae7535a398cb3c2c", "version_major": 2, "version_minor": 0 }, "text/plain": [ "interactive(children=(FloatSlider(value=0.0, description='t0', max=3.0, min=-2.0, step=0.05), Output()), _dom_…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "interact(lambda t0: showConvolution(f1, f2, t0), t0 = (-2,3,0.05));" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In order to have an easier task to find the exact areas where the integration yields a contribution in such a more complicated case, it is helpful to make up a table to find out when we have a constant area of integration that does not need $t_0$ in the boundaries and when we do have to have it, and then from where to where. So we put up a table, that marks where the integration takes place in $\\tau$ coordinates and what that means in terms of $t_0$. We split the function into its two component parts, the narrow and high rectangle (R1) and the wider and lower rectangle (R2). These do not always both contribute. We can also see that the integration always yields results only in the area where the fixed rectangle sits, i.e. in the intervall $[-1;0]$. Consequently we need to project the values of $t_0$ always so that the integration boundaries run from $[-1;0]$. That means that if we look at the case of $t_0 in [-2;-1.5]$ we find that the lower boundary is fixed at $-1$, as this is the lower end of the fixed rectangle, and the upper bound needs to start at $-1$ and increase from there. So we take $t_0 = -2$ and the intervall border needs to be $-1$ so the boundary is $t_0+1$, then for $t_0 = -2$, the boundary is $-2+1 = -1$. \n", "\n", "| Parts Contributing | $t_0 > $ than | $t_0 < $ than | Intervall of Integration (in $[-1;0]$)| Smallest Integration Intervall |Largest Integration Intervall |\n", "| --- | --- | --- | --- | --- | --- |\n", "| None | $-\\infty$ | $-2$ | - | - | - -> = 0 | \n", "| R1 | $-2$ | $-1.5$ | $[-1; t_0 +1]$ | $[-1;1]$ | $[-1;-0.5]$ | \n", "| R1 & R2 -> R1|$-1.5$ | $-1$ | $[t+0.5; t_0]$ | $[-1;-0.5]$ | $[-0.5;0] -> Constant$ | \n", "| R1 & R2 -> R2|$-1.5$ | $-1$ | $[-1; t_0+0.5]$ | $[-1;--1]$ | $[-1;-0.5]$ | \n", "| R1 &R2 -> R1 | $-1$ | $-0.5$ | $[t_0+0.5; 0]$ | $[0;0]$ | $[-0.5;0]$ | \n", "| R1 &R2 -> R2 | $-1$ | $-0.5$ | $[-1; t_0 +0.5]$ | $[-1;-0.5]$ | $[-1;0]$ |\n", "| R2 | $-0.5$ | $0.5$ | $[-1; 0]$ | $[-1;0]$ | $[-1;0]$ -> Constant |\n", "| R2 | $0.5$ | $1.5$ | $[t_0-1.5; 0]$ | $[0;0]$ | $[-1;0]$ -> Constant |\n", "| None | $1.5$ | $-\\infty$ | - | - | - -> = 0 | " ] }, { "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.6.5" } }, "nbformat": 4, "nbformat_minor": 2 }