{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "688473bf-df40-4e0d-9123-c72ece5dfb26",
   "metadata": {},
   "source": [
    "# Analyse spectrale numérique"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "b9bb4e1e-56e7-4f3f-a057-bcf0af47844f",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from numpy.fft import fft\n",
    "\n",
    "plt.rcParams['figure.figsize'] = [10, 6]  # taille de sortie du graphique (modifiable)\n",
    "plt.rcParams['axes.titlesize'] = 12       # taille caractères titre du graphique (modifiable)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8d52fec9-d877-441e-a212-6ccf0394d610",
   "metadata": {},
   "source": [
    "La fonction **spectre** prend comme arguments :\n",
    "+ la fonction **signal** définissant le signal ;\n",
    "+ la fréquence d'échantillonnage **F_ech** ;\n",
    "+ la durée totale **duree** de l'échantillon ;\n",
    "+ un dernier argument optionnel qui indique la fréquence maximale jusqu'à laquelle est tracé le spectre.\n",
    "\n",
    "Elle retourne le spectre du signal."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "1cdf9e51-07f9-4756-8a5d-a0273d094801",
   "metadata": {},
   "outputs": [],
   "source": [
    "def spectre(signal,F_ech,duree,*args):\n",
    "    t = np.arange(0,duree,1/F_ech)                      # on construit le tableau des instants d'échantillonnage\n",
    "    ech = signal(t)                                     # on construit l'échantillon\n",
    "    tfd = fft(ech)                                      # on calcule le spectre par FFT\n",
    "    N = len(tfd)                                        # on construit le tableau des fréquences \n",
    "    freq = np.zeros(N)\n",
    "    for k in range(N):\n",
    "        freq[k] = 1./duree*k\n",
    "    spectre = np.absolute(tfd)*2./N                     # norme des composantes du spectre, en normalisant\n",
    "    spectre[0] = .5*spectre[0]                          # normalisation de la composante continue\n",
    "    if len(args)>0:                                     # argument optionnel : on trace le spectre\n",
    "        f_max = args[0]                                 # jusqu'à la fréquence f_max\n",
    "    else:\n",
    "        f_max = F_ech\n",
    "    N_max = int(N*f_max/F_ech)\n",
    "    plt.stem(freq[:N_max],spectre[:N_max],markerfmt=\" \",basefmt=\" \")    # tracé du spectre\n",
    "    plt.xlabel('fréquence')\n",
    "    plt.ylabel('amplitude')\n",
    "    plt.title('spectre calculé par FFT')\n",
    "    plt.show()\n",
    "    return"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b66de54d-3340-4946-a993-6b7e339efd25",
   "metadata": {},
   "source": [
    "Exemple : $s(t)=0,5+\\cos(2\\pi t)+0,6\\cos(3\\pi 2t)$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "16e8c95a-99cb-407c-b45d-d673f9aabf95",
   "metadata": {},
   "outputs": [],
   "source": [
    "def s(t):\n",
    "    return .5 + np.cos(2*np.pi*t) + .6*np.cos(2*np.pi*3*t)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4011a8a9-2d02-4593-b48f-9dd811105bc0",
   "metadata": {},
   "source": [
    "Le spectre doit être constitué de:\n",
    "+ une composante continue (fréquence nulle) d'amplitude 0,5 ;\n",
    "+ une composante de fréquence $f_1=1$ d'amplitude 1 ;\n",
    "+ une composante de fréquence $f_2=3$ d'amplitude 0,6."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "f0720bb1-49a0-4498-8e55-cfb13a110ace",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "spectre(s,20,10) # la fréquence d'échantillonnage est 20"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "44a1ee9c-f698-4490-9939-a2f688d0217e",
   "metadata": {},
   "source": [
    "On retourve bien les trois composantes du spectre, avec leurs amplitudes respectives. \n",
    "On observe la duplication du spectre, symmétrique par rapport à $f_\\mathrm{e}/2=10$.\n",
    "Le critère de Shannon est bien respecté.\n",
    "\n",
    "On peut ne représenter que la partie utile du spectre, jusqu'à $f_\\mathrm{e}/2$ :"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "110cf936-acc7-4990-a20a-88c06d4f95b6",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmEAAAGECAYAAAB+lPfnAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAcb0lEQVR4nO3dfbRdVX3u8e9DIm8KIhKthoSgRhRbURp5qUpV1BKqDTpUwLcWdQTuhYJaq+i1FbXe2lFr1SGKFBG9VVEBNdVUsN6r1iEoIO8gNfKWAEoQEXxBDPzuH3ul7hzOSTYxK3PnnO9njDPOXnPNNddv7z2SPJlr7rVTVUiSJGnz2qp1AZIkSTORIUySJKkBQ5gkSVIDhjBJkqQGDGGSJEkNGMIkSZIaMIRJmlGSPCPJqk0wzteTvGaS9pck+WqSbX/Xc0ia3gxhkjaLJJXkMa3r6FOSJwOvBg6pqrsa1bCge61/PvRzSbfvL5LcM2HfByds35vkV0PbL2vxPKSZYHbrAiQJIMnsqlrTuo7fRVVdBPzJ5jrfBl6znabYd25VPW1C2zFDY14HvKaq/mMTlSlpCs6ESTNUkjcluTHJnUmuTnJg135CkjOSfKbb970kew0d98gkZyZZneTaJMcO7ZuV5C1Jftgde2GSeUm+2XW5pJtdOXTtZcGujh8BH0uyVZLju+N/kuSzSXZez3NYkuTiJHd0xxzUtR+R5KquhmuSHLmeMeYlOat7Pj9J8sGh1+Ffh/qtnWGa9D+vSV7VnfOnSc5OstsU/daOszTJTUluTvJXQ/v3SXJuktu7fR9MsvXQ/kpydJIfAD+Y6nlJGn+GMGkGSrIHg9mPp1TVDgxmb64b6rIE+BywM/Ap4AtJHpBkK+DfgEuAucCBwGuTrJ39eT1wOHAwsCPwKuCXVXVAt3+vqnpQVX2m2/697hy7AUuBY4FDgD8GHgn8FDhxiuewD/AJ4K+BnYADhp7DLcDzuhqOAP45yd6TjDEL+BJwPbCge06nT/GyTSnJIcBbgBcCc4D/BD69gcOeCSwEngscn+TZXfs9wOuAXYD9GbzG/3PCsYcA+wJ73t9aJY0PQ5g0M90DbAPsmeQBVXVdVf1waP+FVXVGVf0GeC+wLbAf8BRgTlW9o6rurqprgH8BDuuOew3w1qq6ugYuqaqfrKeOe4G3VdWvq+pXwJHA/6qqVVX1a+AE4EVTzD69Gji1qr5aVfdW1Y1V9X2AqvpyVf2wq+EbwDnA0ycZYx8GYe+vq+oXVXVXVX1rwy/ffRwJ/H1VXdVdAvzfwJOmmg3rvL0752XAxxiEV6rqwqo6r6rWVNV1wEcYhNJhf19Vt3Wv2VRu7WbTbk/yhqH2/Ybab0+y3/19spI2DdeESTNQVa1I8loGIecJSc4GXl9VN3VdVg71vTeDTxM+EijgkUluHxpuFoOZH4B5wHCY25DVExaw7wZ8Psm9Q233AA8Hbpxw7Dxg+WSDJlkMvA14LIP/bG4PXDZJ13nA9ZtgLdpuwPuT/NNwGQxm1q6f4piVQ4+vB/4AIMljGQTfRV3ds4EL13PsVHaZ4nmdN8maMEkNOBMmzVBV9anuH+PdGISrfxjaPW/tg+4S5K7ATQz+8b+2qnYa+tmhqg7uuq8EHn1/ypiwvRJYPGH8batqYgCb8lxJtgHOBN4DPLyqdmIQ1jLFGPOnmGn7BYMQtNbvred5rASOnFD3dlX17fUcM2/o8XwGry/Ah4HvAwurakcGlzkn1j7xdZO0BTKESTNQkj2SPKsLLHcBv2Iw47TWHyZ5YRdOXgv8GjgP+C5wR7eYfrtuIf7vJ3lKd9wpwDuTLMzAE5M8tNv3Y+BRGyjtJOBday/jJZmTZMkUfT8KHJHkwG5B/9wkjwO2ZnCpdTWwppsVe+4UY3wXuBl4d5IHJtk2yVO7fRcDBySZn+TBwJs3UPebkzyhq/vBSV68gef6N0m27445Ali7Tm4H4A7g593z+R8bGEfSFsoQJs1M2wDvBm4FfgQ8jMGMy1pfBA5lsDD+FcALq+o3VXUP8HzgScC13fGnAA/ujnsv8FkGa7DuYBCUtuv2nQB8vFuH9JIp6no/sAw4J8mdDILfvpN1rKrv0i26B34GfAPYraruZLDA/7Nd/S/txpxsjLXP5zHADcCq7nlTVV9lEIwuZXA58EtT1ExVfZ7BTOLpSe4ALgcWT9W/8w1gBfA14D1VdU7X/oau5jsZrLf7zOSHS9rSpcpZbUm/leQE4DFV9fLWtUxHSRYwCLAP2NLviybpd+NMmCRJUgOGMEmSpAa8HClJktSAM2GSJEkNGMIkSZIa2OLumL/LLrvUggULWpchSZK0QRdeeOGtVTVnsn1bXAhbsGABF1xwQesyJEmSNijJVF9d5uVISZKkFgxhkiRJDRjCJEmSGjCESZIkNWAIkyRJasAQJkmS1IAhTJIkqQFDmCRJUgOGMEmSpAZ6C2FJTk1yS5LLp9ifJB9IsiLJpUn27qsWSZKkcdPnTNhpwEHr2b8YWNj9LAU+3GMtkiRJY6W3EFZV3wRuW0+XJcAnauA8YKckj+irHkmSpHHSck3YXGDl0Paqrk2SJGnaaxnCMklbTdoxWZrkgiQXrF69uueyppdDP3Iuh37k3NZlSJKkCVqGsFXAvKHtXYGbJutYVSdX1aKqWjRnzpzNUpwkSVKfWoawZcAru09J7gf8rKpubliPJEnSZjO7r4GTfBp4BrBLklXA24AHAFTVScBy4GBgBfBL4Ii+apEkSRo3vYWwqjp8A/sLOLqv80uSJI0z75gvSZLUgCFMkiSpAUOYJElSA4YwSZKkBgxhkiRJDRjCJEmSGjCESZIkNWAIkyRJasAQJkmS1IAhTJIkqQFDmCRJUgOGMEmSpAYMYZIkSQ0YwiRJkhowhEmSJDVgCJMkSWrAECZJktSAIUySJKkBQ5gkSVIDhjBJkqQGDGGSJEkNGMIkSZIaMIRJkiQ1YAiTJElqwBAmSZLUgCFMkiSpAUOYJElSA4YwSZKkBgxhkiRJDRjCJEmSGjCESZIkNWAIkyRJasAQJkmS1IAhTJIkqQFDmCRJUgOGMEmSpAYMYZIkSQ0YwiRJkhowhEmSJDVgCJMkSWrAECZJktSAIUySJKkBQ5gkSVIDhjBJkqQGDGGSJEkNGMIkSZIaMIRJkiQ1YAiTJElqwBAmSZLUgCFMkiSpgV5DWJKDklydZEWS4yfZ/+Ak/5bkkiRXJDmiz3okSZLGRW8hLMks4ERgMbAncHiSPSd0Oxq4sqr2Ap4B/FOSrfuqSZIkaVz0ORO2D7Ciqq6pqruB04ElE/oUsEOSAA8CbgPW9FiTJEnSWOgzhM0FVg5tr+rahn0QeDxwE3AZcFxV3dtjTZIkSWOhzxCWSdpqwvafABcDjwSeBHwwyY73GShZmuSCJBesXr16U9cpSZK02fUZwlYB84a2d2Uw4zXsCOCsGlgBXAs8buJAVXVyVS2qqkVz5szprWBJkqTNpc8Qdj6wMMnu3WL7w4BlE/rcABwIkOThwB7ANT3WJEmSNBZm9zVwVa1JcgxwNjALOLWqrkhyVLf/JOCdwGlJLmNw+fJNVXVrXzVJkiSNi95CGEBVLQeWT2g7aejxTcBz+6xBkiRpHHnHfEmSpAYMYZIkSQ0YwiRJkhowhEmSJDVgCJMkSWrAECZJktSAIUySJKkBQ5gkSVIDhjBJkqQGDGGSJEkNGMIkSZIaMIRJkiQ1YAiTJElqwBAmSZLUgCFMkiSpAUOYJElSA4YwSZKkBgxhkiRJDRjCJEmSGjCESZIkNWAIkyRJasAQJkmS1IAhTJIkqQFDmCRJUgOGMEmSpAYMYZIkSQ0YwiRJkhowhEmSJDVgCJMkSWrAECZJktSAIUySJKkBQ5gkSVIDhjBJkqQGDGGSJEkNGMIkSZIaMIRJkiQ1YAiTJElqwBAmSZLUgCFMkiSpAUOYJElSA4YwSZKkBgxhkiRJDRjCJEmSGjCESZIkNWAIkyRJasAQJkmS1IAhTJIkqQFDmCRJUgOGMEmSpAYMYZIkSQ0YwiRJkhroNYQlOSjJ1UlWJDl+ij7PSHJxkiuSfKPPeiRJksbF7L4GTjILOBF4DrAKOD/Jsqq6cqjPTsCHgIOq6oYkD+urHkmSpHHS50zYPsCKqrqmqu4GTgeWTOjzUuCsqroBoKpu6bEeSZKksdFnCJsLrBzaXtW1DXss8JAkX09yYZJX9liPJEnS2OjtciSQSdpqkvP/IXAgsB1wbpLzquq/1hkoWQosBZg/f34PpUqb16EfOReAzxy5f+NKJEmt9DkTtgqYN7S9K3DTJH2+UlW/qKpbgW8Ce00cqKpOrqpFVbVozpw5vRUsSZK0ufQZws4HFibZPcnWwGHAsgl9vgg8PcnsJNsD+wJX9ViTJEnSWOjtcmRVrUlyDHA2MAs4taquSHJUt/+kqroqyVeAS4F7gVOq6vK+apIkSRoXfa4Jo6qWA8sntJ00YfsfgX/ssw5JkqRx4x3zJUmSGjCESZIkNTBSCEvy2CRfS3J5t/3EJG/ttzRJkqTpa9SZsH8B3gz8BqCqLmXwaUdJkiRthFFD2PZV9d0JbWs2dTGSJEkzxagh7NYkj6a7432SFwE391aVJEnSNDfqLSqOBk4GHpfkRuBa4OW9VSVJkjTNjRTCquoa4NlJHghsVVV39luWJEnS9LbeEJbk9VO0A1BV7+2hJkmSpGlvQzNhO3S/9wCewm+/+/H5DL5sW5IkSRthvSGsqt4OkOQcYO+1lyGTnAB8rvfqJEmSpqlRPx05H7h7aPtuYMEmr0aSJGmGGPXTkf8H+G6SzzO4TcULgE/0VpUkSdI0N+qnI9+V5N+Bp3dNR1TVRf2VJUmSNL2NFMKSzAduBT4/3FZVN/RVmCRJ0nQ26uXIL9PdLR/YDtgduBp4Qh9FSZIkTXejXo78g+HtJHsDR/ZSkSRJ0gww6qcj11FV32Nw3zBJkiRthFHXhA3fOX8rYG9gdS8VSZIkzQCjrgnbYejxGgZrxM7c9OVIkiTNDKOGsCurap075Cd5Md41X5IkaaOMuibszSO2SZIkaQTrnQlLshg4GJib5ANDu3ZkcFlSkiRJG2FDlyNvAi4A/gy4cKj9TuB1fRUlSZI03a03hFXVJcAlST5ZVTNm5uvQj5wLwGeO3L9xJZIkabra0OXIz1bVS4CLktTE/VX1xN4qkyRJmsY2dDnyuO738/ouRJIkaSbZ0OXIm7vf12+eciRJkmaGDV2OvJPffnE3QLrtAFVVO/ZYmyRJ0rS1oZmwHda3X5IkSRtn1Dvmk2Rv4GkMZsK+VVUX9VaVJEnSNDfSHfOT/C3wceChwC7AaUne2mdhkiRJ09moM2GHA0+uqrsAkrwb+B7wd30VJkmSNJ2N+t2R1wHbDm1vA/xwk1cjSZI0Q4w6E/Zr4IokX2WwJuw5wLfWfp9kVR3bU32SJEnT0qgh7PPdz1pf3/SlSJIkzRwjhbCq+njfhUiSJM0ko3468nlJLkpyW5I7ktyZ5I6+i5MkSZquRr0c+T7ghcBlVXWfL/KWJEnS/TPqpyNXApcbwCRJkjaNUWfC3ggsT/INBp+UBKCq3ttLVZIkSdPcqCHsXcDPGdwrbOv+ypEkSZoZRg1hO1fVc3utRJIkaQYZdU3YfyQxhEmSJG0io4awo4GvJPmVt6iQJEn63Y16s9YdkuwMLGTd75CUJEnSRhgphCV5DXAcsCtwMbAf8G3gwN4qkyRJmsZGvRx5HPAU4PqqeibwZODW3qqSJEma5kYNYXdV1V0ASbapqu8De/RXliRJ0vQ26i0qViXZCfgC8NUkPwVu6qsoSZKk6W6kmbCqekFV3V5VJwB/A3wUOGRDxyU5KMnVSVYkOX49/Z6S5J4kLxqxbkmSpC3aqDNh/62qvjFKvySzgBOB5wCrgPOTLKuqKyfp9w/A2fe3FkmSpC3VqGvCNsY+wIqquqaq7gZOB5ZM0u8vgTOBW3qsRZIkaaz0GcLmAiuHtld1bf8tyVzgBcBJPdYhSZI0dvoMYZmkrSZsvw94U1Xds96BkqVJLkhywerVqzdVfZIkSc3c7zVh98MqYN7Q9q7c9xOVi4DTkwDsAhycZE1VfWG4U1WdDJwMsGjRoolBTpIkaYvTZwg7H1iYZHfgRuAw4KXDHapq97WPk5wGfGliAJMkSZqOegthVbUmyTEMPvU4Czi1qq5IclS333VgkiRpxupzJoyqWg4sn9A2afiqqr/osxZJkqRx0ufCfEmSJE3BECZJktSAIUySJKkBQ5gkSVIDhjBJkqQGDGGSJEkNGMIkSZIaMIRJkiQ1YAiTJElqwBAmSZLUgCFMkiSpAUOYJElSA4YwSZKkBgxhkiRJDRjCJEmSGjCESZIkNWAIkyRJasAQJkmS1IAhTJIkqQFDmCRJUgOGMEmSpAYMYZIkSQ0YwiRJkhowhEmSJDVgCJMkSWrAECZJktSAIUySJKkBQ5gkSVIDhjBJkqQGDGGSJEkNGMIkSZIaMIRJkiQ1YAiTJElqwBAmSZLUgCFMkiSpAUOYJElSA4YwSZKkBgxhkiRJDRjCJEmSGjCESZIkNWAIkyRJasAQJkmS1IAhTJIkqQFDmCRJUgOGMEmSpAYMYZIkSQ0YwiRJkhowhEmSJDVgCJMkSWrAECZJktRAryEsyUFJrk6yIsnxk+x/WZJLu59vJ9mrz3okSZLGRW8hLMks4ERgMbAncHiSPSd0uxb446p6IvBO4OS+6pEkSRonfc6E7QOsqKprqupu4HRgyXCHqvp2Vf202zwP2LXHeiRJksZGnyFsLrByaHtV1zaVVwP/3mM9kiRJY2N2j2NnkraatGPyTAYh7GlT7F8KLAWYP3/+pqpPkiSpmT5nwlYB84a2dwVumtgpyROBU4AlVfWTyQaqqpOralFVLZozZ04vxUqSJG1OfYaw84GFSXZPsjVwGLBsuEOS+cBZwCuq6r96rEWSJGms9HY5sqrWJDkGOBuYBZxaVVckOarbfxLwt8BDgQ8lAVhTVYv6qkmSJGlc9LkmjKpaDiyf0HbS0OPXAK/pswZJkqRx5B3zJUmSGjCESZIkNWAIkyRJasAQJkmS1IAhTJIkqQFDmCRJUgOGMEmSpAYMYZIkSQ0YwiRJkhowhEmSJDVgCJMkSWrAECZJktSAIUySJKkBQ5gkSVIDhjBJkqQGDGGSJEkNGMIkSZIaMIRJkiQ1YAiTJElqwBAmSZLUgCFMkiSpAUOYJElSA4YwSZKkBgxhkiRJDRjCJEmSGjCESZIkNWAIkyRJasAQJkmS1IAhTJIkqQFDmCRJUgOGMEmSpAYMYZIkSQ0YwiRJkhowhEmSJDVgCJMkSWrAECZJktSAIUySJKkBQ5gkSVIDhjBJkqQGDGGSJEkNGMIkSZIaMIRJkiQ1YAiTJElqwBAmSZLUgCFMkiSpAUOYJElSA4YwSZKkBgxhkiRJDRjCJEmSGjCESZIkNWAIkyRJaqDXEJbkoCRXJ1mR5PhJ9ifJB7r9lybZu896JEmSxkVvISzJLOBEYDGwJ3B4kj0ndFsMLOx+lgIf7qseSZKkcdLnTNg+wIqquqaq7gZOB5ZM6LME+EQNnAfslOQRPdYkSZI0Fmb3OPZcYOXQ9ipg3xH6zAVuHu6UZCmDmTLmz5+/yQud6DNH7t/7OTaX6fRcphPfF0lSnzNhmaStNqIPVXVyVS2qqkVz5szZJMVJkiS11GcIWwXMG9reFbhpI/pIkiRNO32GsPOBhUl2T7I1cBiwbEKfZcAru09J7gf8rKpunjiQJEnSdNPbmrCqWpPkGOBsYBZwalVdkeSobv9JwHLgYGAF8EvgiL7qkSRJGid9LsynqpYzCFrDbScNPS7g6D5rkCRJGkfeMV+SJKkBQ5gkSVIDhjBJkqQGDGGSJEkNGMIkSZIaMIRJkiQ1YAiTJElqwBAmSZLUgCFMkiSpgQxuWr/lSLIauH4znGoX4NbNcB7dP74v48v3Zjz5vown35fxtanfm92qas5kO7a4ELa5JLmgqha1rkPr8n0ZX74348n3ZTz5voyvzfneeDlSkiSpAUOYJElSA4awqZ3cugBNyvdlfPnejCffl/Hk+zK+Ntt745owSZKkBpwJkyRJasAQNkGSg5JcnWRFkuNb16OBJPOS/L8kVyW5IslxrWvSbyWZleSiJF9qXYt+K8lOSc5I8v3uz87+rWsSJHld9/fY5Uk+nWTb1jXNVElOTXJLksuH2nZO8tUkP+h+P6Sv8xvChiSZBZwILAb2BA5PsmfbqtRZA/xVVT0e2A842vdmrBwHXNW6CN3H+4GvVNXjgL3wPWouyVzgWGBRVf0+MAs4rG1VM9ppwEET2o4HvlZVC4Gvddu9MIStax9gRVVdU1V3A6cDSxrXJKCqbq6q73WP72Twj8nctlUJIMmuwJ8Cp7SuRb+VZEfgAOCjAFV1d1Xd3rQorTUb2C7JbGB74KbG9cxYVfVN4LYJzUuAj3ePPw4c0tf5DWHrmgusHNpehf/Qj50kC4AnA99pXIoG3ge8Ebi3cR1a16OA1cDHukvFpyR5YOuiZrqquhF4D3ADcDPws6o6p21VmuDhVXUzDCYAgIf1dSJD2LoySZsfHx0jSR4EnAm8tqruaF3PTJfkecAtVXVh61p0H7OBvYEPV9WTgV/Q42UVjaZbX7QE2B14JPDAJC9vW5VaMYStaxUwb2h7V5wmHhtJHsAggH2yqs5qXY8AeCrwZ0muY3D5/llJ/rVtSeqsAlZV1doZ4zMYhDK19Wzg2qpaXVW/Ac4C/qhxTVrXj5M8AqD7fUtfJzKEret8YGGS3ZNszWCx5LLGNQlIEgZrW66qqve2rkcDVfXmqtq1qhYw+PPyf6vK/9WPgar6EbAyyR5d04HAlQ1L0sANwH5Jtu/+XjsQPzAxbpYBf949/nPgi32daHZfA2+JqmpNkmOAsxl8YuXUqrqicVkaeCrwCuCyJBd3bW+pquXtSpLG3l8Cn+z+U3kNcETjema8qvpOkjOA7zH41PdFePf8ZpJ8GngGsEuSVcDbgHcDn03yagah+cW9nd875kuSJG1+Xo6UJElqwBAmSZLUgCFMkiSpAUOYJElSA4YwSZKkBgxhkqaFJLOTHJNkm9a1SNIoDGGStghJjk1yVZJPTrIvDL7D8tKq+vVmL06SNoL3CZO0RUjyfWBxVV071Da7qtY0LEuSNpozYZLGXpKTgEcBy5L8LMnJSc4BPpFkTpIzk5zf/Ty1O+ahSc5JclGSjyS5PskuSRYkuXxo7DckOaF7/OgkX0lyYZL/TPK4rv20JB9I8u0k1yR50dDxb0xyWZJLkrx7feNI0jC/tkjS2Kuqo5IcBDwTOAZ4PvC0qvpVkk8B/1xV30oyn8HXjj2ewdePfKuq3pHkT4GlI5zqZOCoqvpBkn2BDwHP6vY9Anga8DgG3y13RpLFwCHAvlX1yyQ7jzCOJAGGMElbpmVV9avu8bOBPQfLwgDYMckOwAHACwGq6stJfrq+AZM8CPgj4HNDYw0v8v9CVd0LXJnk4UPn/lhV/bI7z20jjCNJgCFM0pbpF0OPtwL2HwplAHQBaLJFr2tYdynGtkPj3F5VT5rinMML/jP0e+I5NjSOJAGuCZO05TuHwSVKAJI8qXv4TeBlXdti4CFd+4+Bh3VrxrYBngdQVXcA1yZ5cXdMkuw1wrlflWT77pidN3IcSTOQIUzSlu5YYFGSS5NcCRzVtb8dOCDJ94DnAjcAVNVvgHcA3wG+BHx/aKyXAa9OcglwBbBkfSeuqq8wWB92QZKLgTdszDiSZiZvUSFpRkhyHbCoqm5tXYskgTNhkiRJTTgTJkmS1IAzYZIkSQ0YwiRJkhowhEmSJDVgCJMkSWrAECZJktSAIUySJKmB/w/9FwalFdD8UQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 720x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "spectre(s,20,10,10)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "51f16740-b6c6-405f-b536-71b6cb3f3111",
   "metadata": {},
   "source": [
    "Prenons comme fréquence d'échantillonnage $F_\\mathrm{ech}=5$.\n",
    "La condition de Shannon n'est pas respectée : il faut $F_\\mathrm{ech}>2f_\\mathrm{max}=2\\times{}3=6$.\n",
    "On représente la partie \"utile\" du spectre, sur l'intervalle $[0,F_\\mathrm{ech}/2]$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "79ed1bd4-4a4a-43ca-81a1-c47fcd6af240",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "spectre(s,5,10,2.5)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4f52bc81-2420-4b62-8166-df53ab619aaa",
   "metadata": {},
   "source": [
    "Il apparaît dans le spectre la fréquence $f=2$, qui est absente du signal étudié. C'est le phénomène de **repliement de spectre** : on retrouve le symétrique de chaque fréquence du signal par rapport à $F_\\mathrm{ech}/2=2,5$. La fréquence $f_2=3$ donne donc une raie à la fréquence $2$, symétrique par rapport à $2,5$. \n",
    "\n",
    "On peut mieux le comprendre en visualisant la totalité du spectre :"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "3cd4c161-7bb7-4040-811b-1fee70c195ff",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "spectre(s,5,10)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8bab1ea3-baf4-4a4a-8ac6-e7b48bfac3b0",
   "metadata": {},
   "source": [
    "Le signal a pour période $T=1$. Nous avons précédemment calculé le spectre pour une durée totale d'échantillon $T_\\mathrm{tot}=10$, multiple de la période $T$ du signal.\n",
    "\n",
    "Que se passe-t-il si la durée de l'échantillon n'est plus un multiple de la période du signal ?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "2805d902-6201-44d1-b2a4-c6a154f20dc8",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "spectre(s,10,10.5,5)  # F_ech = 10, tracé sur [0,F_ech/2]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e60599e5-e4a3-41e5-9444-dd10cc569daf",
   "metadata": {},
   "source": [
    "Le spectre n'est pas celui attendu.!\n",
    "\n",
    "Le calcul de la FFT se base sur la construction d'un signal périodique, à partir de l'échantillon de longueur finie (donc non périodique), en concaténant des copies de l'échantillon. On obtient alors un signal de période maximale $T_\\mathrm{ech}$.\n",
    "\n",
    "Si la durée de l'échantillon est un multiple de celle du signal initial, le signal construit s'identifie au signal initial. Si ce n'est pas le cas, on a construit un signal différent, dont le spectre est logiquement différent de celui attenndu.\n",
    "\n",
    "On peut \"limiter les dégats\" en multipliant le signal par une fenêtre : on montre que les choses s'améliorent si le signal périodique construit est continu aux points de raccordement. On multiplie donc l'échantillon par une fonction qui tend vers 0 aux extrémités (la fenêtre), assurant la continuité du raccordement.\n",
    "\n",
    "Il existe plusieurs types de fenêtres, accessibles avec numpy. On les sélectionne ici selon :\n",
    "\n",
    "1 : fenêtre de Hamming,\n",
    "2 : fenêtre de Hanning,\n",
    "3 : fenêtre de Blakcman,\n",
    "4 : fenêtre de Bartlett,\n",
    "5 : fenêtre de Kaiser,\n",
    "autre : sans fenêtre"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "954a8175-7ca1-4e8d-95f6-87ee1e3fbc06",
   "metadata": {},
   "outputs": [],
   "source": [
    "def spectre_fenetre(signal,F_ech,duree,fenetre,*args):\n",
    "    t = np.arange(0,duree,1/F_ech)      # on construit le tableau des instants d'échantillonnage\n",
    "    ech = signal(t)                     # on construit l'échantillon\n",
    "    M = len(ech)                        # nombre de points de l'échantillon\n",
    "    if fenetre == 1:\n",
    "        window = np.hamming(M)          # fenêtre de Hamming\n",
    "        nom = \"avec fenêtre de Hamming\"\n",
    "    elif fenetre == 2:\n",
    "        window = np.hanning(M)          # fenêtre de Hanning \n",
    "        nom = \"avec fenêtre de Hanning\"\n",
    "    elif fenetre == 3:\n",
    "        window = np.blackman(M)         # fenêtre de Blackman \n",
    "        nom = \"avec fenêtre de Blackman\"\n",
    "    elif fenetre == 4:\n",
    "        window = np.bartlett(M)         # fenêtre de Bartlett\n",
    "        nom = \"avec fenêtre de Bartlett\"\n",
    "    elif fenetre == 5:\n",
    "        window = np.kaiser(M,14)        # fenêtre de Kaiser (coeff. modifiable)\n",
    "        nom = \"avec fenêtre de Kaiser\"\n",
    "    else:\n",
    "        window = 1.\n",
    "        nom = \"sans fenêtre\"\n",
    "    ech_fenetre = window*ech\n",
    "    tfd = fft(ech_fenetre)              # on calcule le spectre par FFT\n",
    "    N = len(tfd)                        # on construit le tableau des fréquences \n",
    "    freq = np.zeros(N)\n",
    "    for k in range(N):\n",
    "        freq[k] = 1./duree*k\n",
    "    spectre = np.absolute(tfd)*2./N     # norme des composantes du spectre, en normalisant\n",
    "    spectre[0] = .5*spectre[0]          # normalisation de la composante continue\n",
    "    if len(args)>0:                     # argument optionnel : on trace le spectre\n",
    "        f_max = args[0]                 # jusqu'à la fréquence f_max\n",
    "    else:\n",
    "        f_max = F_ech\n",
    "    N_max = int(N*f_max/F_ech)\n",
    "    plt.stem(freq[:N_max],spectre[:N_max],markerfmt=\" \",basefmt=\" \")    # tracé du spectre\n",
    "    plt.xlabel(\"fréquence\")\n",
    "    plt.ylabel(\"amplitude\")\n",
    "    plt.title(\"spectre calculé par FFT \"+str(nom))\n",
    "    plt.show\n",
    "    return"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "ab0690a3-7b56-41ed-b86a-dd0b38df7039",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "spectre_fenetre(s,10,10.5,1,5)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "385c25de-b0c9-4bef-99c2-35f8c8a227d6",
   "metadata": {},
   "source": [
    "On retrouve un spectre plus proche du spectre attendu, avec trois pics, certes un peu élargis."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "ad93820e-8174-44d2-9d43-ec0936f0d970",
   "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.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
