diff options
Diffstat (limited to 'notebooks')
-rw-r--r-- | notebooks/FIR Delay .ipynb | 286 |
1 files changed, 286 insertions, 0 deletions
diff --git a/notebooks/FIR Delay .ipynb b/notebooks/FIR Delay .ipynb new file mode 100644 index 0000000..099fc25 --- /dev/null +++ b/notebooks/FIR Delay .ipynb @@ -0,0 +1,286 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np \n", + "from numpy.fft import fft,ifft,fftshift\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([-4, -3, -2, -1, 0, 1, 2, 3])" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "tau = 1/2\n", + "freq = np.arange(-4,4)\n", + "freq" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([6.12323400e-17+1.j , 3.82683432e-01+0.92387953j,\n", + " 7.07106781e-01+0.70710678j, 9.23879533e-01+0.38268343j,\n", + " 1.00000000e+00+0.j , 9.23879533e-01-0.38268343j,\n", + " 7.07106781e-01-0.70710678j, 3.82683432e-01-0.92387953j])" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "f_tabs = np.exp((-2j*np.pi*freq*tau)/8)\n", + "f_tabs" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(f_tabs.real)\n", + "plt.plot(f_tabs.imag)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([ 0.62841744+0.125j, 0.62841744-0.125j, -0.18707572+0.125j,\n", + " 0.08352233-0.125j, -0.02486405+0.125j, -0.02486405-0.125j,\n", + " 0.08352233+0.125j, -0.18707572-0.125j])" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "i_tabs = ifft(fftshift(f_tabs))\n", + "i_tabs" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "shiftet= fftshift(f_tabs)\n", + "plt.plot(shiftet.real)\n", + "plt.plot(shiftet.imag)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(i_tabs.real)\n", + "plt.plot(i_tabs.imag)\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Delay as a Convolution System" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[0, 0, 0, 1]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Create the FIR\n", + "D = 3 # Delay value\n", + "h = [0]*D+[1]\n", + "h" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "d = 1\n", + "k = np.linspace(-5,7,1000)\n", + "h_ideal = np.sinc(k-d)\n", + "plt.plot(k,h_ideal)\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "n = 4\n", + "window_sample= np.arange(np.round(d-(n-1)/2),np.round(d+(n+1)/2))\n", + "window = []\n", + "for ws in window_sample: \n", + " idx = (np.abs(k-ws)).argmin()\n", + " window.append(idx)\n", + " \n", + "plt.plot(k,h_ideal)\n", + "plt.plot(window_sample,h_ideal[window],\"*\")\n", + "plt.show()\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} |