diff --git a/.gitignore b/.gitignore index b7376142..71196cf7 100644 --- a/.gitignore +++ b/.gitignore @@ -56,3 +56,5 @@ _build .ipynb_checkpoints temp + +.venv diff --git a/acoustics/signal.py b/acoustics/signal.py index 4481ae66..3f78a076 100644 --- a/acoustics/signal.py +++ b/acoustics/signal.py @@ -389,6 +389,14 @@ def angular(self): """ return 2.0 * np.pi * self.center + def __getitem__(self, key): + return type(self)( + center=self.center[key], + lower=self.lower[key], + upper=self.upper[key], + bandwidth=self.bandwidth[key] + ) + class EqualBand(Frequencies): """ diff --git a/examples/frequencies_class_modification.ipynb b/examples/frequencies_class_modification.ipynb new file mode 100644 index 00000000..c765a0f8 --- /dev/null +++ b/examples/frequencies_class_modification.ipynb @@ -0,0 +1,176 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from acoustics import Signal\n", + "from acoustics.signal import Frequencies" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[]" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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PIAzZ85gwoQJOHXqFFq1aoWFCxeWGsBKRERE1qN7IAIAI0aMwIgRI4w4FBEREfkRU82aISIiImthIEJERETCMBAhIiIiYRiIEBERkTCWDERsNk7gJSIiMgNLBiKSxNV3iYiIzMCSgQgRERGZAwMRIiIiEoaBCBEREQnDQISIiIiEYSBCREREwjAQISIiImEYiBAREZEwDESIiIhIGAYiREREJAwDESIiIhLGkoEIE7wTERGZgyUDES55R0REZA6WDESIiIjIHBiIEBERkTAMRIiIiEgYBiJEREQkjCUDEc6aISIiMgdLBiJERERkDgxEiIiISBgGIkRERCSMJQMRJjQjIiIyB0sGIkRERGQOlgxEOGuGiIioSGiI2FDAkoEIERERFSkfUUbo8RmIEBERWZgkuJuAgQgREREJw0CEiIiIhNEtEJk4cSI6d+6MiIgIxMbG6nUYIiIi8mO6BSJ5eXm4//77MWzYML0OQURERD4SPZM0RK8dv/baawCA6dOn63UIIiIi8nO6BSJq5ObmIjc31/7v7OxsXY7DzKpERETmYKrBqikpKYiJibH/JCQk6HIc0c1QREREVERRIDJ+/HjYbDaPP3v37lVdmOTkZGRlZdl/0tPTVe/LI0YiREREAIBbm8QLPb6irpkxY8Zg8ODBHrepU6eO6sKEhYUhLCxM9euJiIhImfAywUKPrygQqVSpEipVqqRXWYzDQSJERESmoNtg1bS0NJw/fx5paWkoKChAamoqAKBevXqIjIzU67BERETkR3QLRCZMmICvvvrK/u/WrVsDAJYvX44ePXrodVgiIiLyI7rNmpk+fTokSSr1wyCEiIjIPESPVjDV9F0iIiKyFgYiREREJAwDESIiIguzCe6bYSBCREREwjAQISIiImGsGYgwxTsREZEpWDMQISIiIgCATfAgEQYiREREJAwDESIfVY7iQo1ERGpZMxAR1ApVs2KEmANb2DM319P9GOXCdFspgSggiF5m3pv729YQXQShmFlVANEnnYzTo+GN1aIXjrpJl2PweiKtNYyPEl0EzdStVA5De9QVXQyP3r6/ZUCdc6VEz9+wZCAi6qTzgWW8tjUrYN4zXZE64RaULROsz0H4wfqVFc/3QNd6cfj+iY6ii+KW6ARTViQJfxxblzXblHm9WUqz6jEAgKwr13TZP58Z/qVWXDl8a+IgBAAk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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "sample_rate = 44100\n", + "signal = Signal(np.random.randn(10000), sample_rate)\n", + "fig, ax = plt.subplots()\n", + "ax.plot(signal)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "s = Signal(signal, sample_rate)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[]" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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//77Pc+39nE+/vjjplevXqagoMDzOHz4cNCMzxhjjh49ajp16mQmTJhg1qxZY/bs2WOWLFlidu3a5Tmntf/NKSoq8voMly5daiSZFStWGGNa/+f4zDPPmMTERPOPf/zD5OXlmXfffde0adPGvPTSS55zAvEzDPrwcdlll5lJkyZ5fna5XCYjI8PMnDnTwqrOz6nhw+12m7S0NPP73//e81xJSYmx2+1m/vz5xhhjtm3bZiSZtWvXes758MMPjc1mMwcOHDDGGPPnP//ZtGvXzlRXV3vOeeSRR0yPHj1aeESnKyoqMpLMqlWrjDH144mMjDTvvvuu55xvvvnGSDKrV682xtQHtLCwMFNYWOg5Z9asWSY+Pt4zpocfftj06tXL63fdeuutZsSIES09pDNq166d+e///u+gG19ZWZnp1q2bWbp0qbn66qs94SMYxvn444+bfv36nfFYMIzPmPr/7q+44oqzHg/Gvzn333+/6dKli3G73UHxOY4ePdpMnDjR67kxY8aYcePGGWMC9zMM6ssuNTU1Wr9+vYYPH+55LiwsTMOHD9fq1astrKx58vLyVFhY6DUeh8OhwYMHe8azevVqJSQkaODAgZ5zhg8frrCwMK1Zs8ZzzlVXXaWoqCjPOSNGjFBubq6OHTvmp9HUKy0tlSS1b99ekrR+/XrV1tZ6jbFnz57KysryGmOfPn2UmprqOWfEiBFyOp36+uuvPeec/B6N5/j7c3e5XFqwYIEqKio0ZMiQoBvfpEmTNHr06NNqCZZx7ty5UxkZGercubPGjRun/Px8ScEzvvfff18DBw7ULbfcopSUFPXv31+vv/6653iw/c2pqanR3LlzNXHiRNlstqD4HIcOHarly5drx44dkqRNmzbp008/1ahRoyQF7mcY1OGjuLhYLpfL6380kpSamqrCwkKLqmq+xprPNZ7CwkKlpKR4HY+IiFD79u29zjnTe5z8O/zB7XZrypQpGjZsmHr37u35/VFRUUpISDitvqbUf7ZznE6nqqqqWmI4XrZs2aI2bdrIbrfrnnvu0aJFi3TxxRcHzfgkacGCBfrqq680c+bM044FwzgHDx6sN998U4sXL9asWbOUl5enK6+8UmVlZUExPknas2ePZs2apW7dumnJkiW69957NXnyZM2ZM8erzmD5m/Pee++ppKREEyZM8Pzu1v45Tp06Vbfddpt69uypyMhI9e/fX1OmTNG4ceO8agy0zzDg7mqL0DFp0iRt3bpVn376qdWl+FyPHj20ceNGlZaW6q9//avGjx+vVatWWV2Wz+zfv1/333+/li5dqujoaKvLaRGN/89Rkvr27avBgwerU6dOeueddxQTE2NhZb7jdrs1cOBAzZgxQ5LUv39/bd26Va+++qrGjx9vcXW+98Ybb2jUqFHKyMiwuhSfeeedd/TWW29p3rx56tWrlzZu3KgpU6YoIyMjoD/DoJ75SEpKUnh4+Gkrlw8dOqS0tDSLqmq+xprPNZ60tDQVFRV5Ha+rq9PRo0e9zjnTe5z8O1raL3/5S/3jH//QihUr1LFjR8/zaWlpqqmpUUlJyWn1NaX+s50THx/vly+OqKgode3aVQMGDNDMmTPVr18/vfTSS0EzvvXr16uoqEiXXnqpIiIiFBERoVWrVunll19WRESEUlNTg2KcJ0tISFD37t21a9euoPkc09PTdfHFF3s9d9FFF3kuLwXT35x9+/Zp2bJl+ulPf+p5Lhg+x4ceesgz+9GnTx/95Cc/0QMPPOCZkQzUzzCow0dUVJQGDBig5cuXe55zu91avny5hgwZYmFlzZOTk6O0tDSv8TidTq1Zs8YzniFDhqikpETr16/3nPPRRx/J7XZr8ODBnnM+/vhj1dbWes5ZunSpevTooXbt2rXoGIwx+uUvf6lFixbpo48+Uk5OjtfxAQMGKDIy0muMubm5ys/P9xrjli1bvP5jWbp0qeLj4z1/SIcMGeL1Ho3nWPW5u91uVVdXB834rrvuOm3ZskUbN270PAYOHKhx48Z5/jkYxnmy8vJy7d69W+np6UHzOQ4bNuy0re47duxQp06dJAXH35xGs2fPVkpKikaPHu15Lhg+x8rKSoWFeX+Vh4eHy+12Swrgz7BZy1RbkQULFhi73W7efPNNs23bNnP33XebhIQEr5XLgaSsrMxs2LDBbNiwwUgyL7zwgtmwYYPZt2+fMaZ+y1RCQoL5+9//bjZv3mxuuummM26Z6t+/v1mzZo359NNPTbdu3by2TJWUlJjU1FTzk5/8xGzdutUsWLDAxMbG+mXb27333mscDodZuXKl1/a3yspKzzn33HOPycrKMh999JFZt26dGTJkiBkyZIjneOPWt+uvv95s3LjRLF682CQnJ59x69tDDz1kvvnmG/OnP/3Jb1vfpk6dalatWmXy8vLM5s2bzdSpU43NZjP/+te/gmJ8Z3PybhdjWv84H3zwQbNy5UqTl5dnPvvsMzN8+HCTlJRkioqKgmJ8xtRvk46IiDDPPPOM2blzp3nrrbdMbGysmTt3ruec1v43x5j6XY5ZWVnmkUceOe1Ya/8cx48fbzp06ODZartw4UKTlJRkHn74Yc85gfgZBn34MMaYV155xWRlZZmoqChz2WWXmS+++MLqks5qxYoVRtJpj/Hjxxtj6rdNTZ8+3aSmphq73W6uu+46k5ub6/UeR44cMbfffrtp06aNiY+PN3feeacpKyvzOmfTpk3miiuuMHa73XTo0ME8++yzfhnfmcYmycyePdtzTlVVlfnFL35h2rVrZ2JjY80PfvADU1BQ4PU+e/fuNaNGjTIxMTEmKSnJPPjgg6a2ttbrnBUrVphLLrnEREVFmc6dO3v9jpY0ceJE06lTJxMVFWWSk5PNdddd5wkexrT+8Z3NqeGjtY/z1ltvNenp6SYqKsp06NDB3HrrrV79L1r7+Bp98MEHpnfv3sZut5uePXua1157zet4a/+bY4wxS5YsMZJOq9uY1v85Op1Oc//995usrCwTHR1tOnfubH7zm994bYkNxM/QZsxJbdAAAABaWFCv+QAAAIGH8AEAAPyK8AEAAPyK8AEAAPyK8AEAAPyK8AEAAPyK8AEAAPyK8AEAAPyK8AEAAPyK8AEAAPyK8AEAAPyK8AEAAPzq/wPfoTkftG4BzQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# dB in octave bands:\n", + "f, o = s.octaves()\n", + "Lp = o.leq()\n", + "fig, ax = plt.subplots()\n", + "ax.plot(f.center, Lp, \".-\")" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Frequencies([ 150. 300. 1200. 4800.])" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# db in specified bands:\n", + "freq_bands = np.array([[100, 200], [200, 400], [800, 1600], [3200, 6400]])\n", + "frequencies = Frequencies(center=freq_bands.mean(axis=1), lower=freq_bands[:, 0], upper=freq_bands[:, 1])\n", + "frequencies" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[]" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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NWOZbk51dbXIysoSWVlZAoBYvny5yMrKEnl5eUKI5pbn4OBg8e9//1scOnRIPPjgg9dseR46dKjYt2+f2LNnj+jdu3erlueqqioRGRkpZs+eLXJycsS6deuEn58fW54v+c1vfiO0Wq345ptvWrUa1tbWSts89dRTIi4uTuzcuVOYTCYxatQoMWrUKOn1llbDe++9V2RnZ4utW7eK8PDwa7YaLly4UBw7dky88847bPW8ZNGiRWL37t0iNzdXHDp0SCxatEgoFArx9ddfCyF4/OXy4+4hIfg5dLTnn39efPPNNyI3N1d89913Yty4cSIsLEyUlZUJIVzr+LtVaBFCiLffflvExcUJtVotRowYIX744Qe5S3JLu3btEgCueqSmpgohmtuelyxZIiIjI4VGoxH33HOPOHHiRKt9nD9/XsycOVMEBASIoKAg8eijj4rq6upW2xw8eFDccccdQqPRiJiYGLFs2bLOeosu71rHH4BYtWqVtE1dXZ14+umnRbdu3YSfn594+OGHRXFxcav9nDt3TkycOFH4+vqKsLAw8fzzz4vGxsZW2+zatUsMGTJEqNVq0aNHj1a/w5PNnTtXdO/eXajVahEeHi7uueceKbAIweMvlytDCz+HjpWSkiKio6OFWq0WMTExIiUlRZw+fVp63ZWOv0IIIZw7N0NERETU+dxmTgsRERF5NoYWIiIicgsMLUREROQWGFqIiIjILTC0EBERkVtgaCEiIiK3wNBCREREboGhhYiIiNwCQwsRERG5BYYWIiIicgsMLUREROQWGFqIiIjILfx/NlbofLTxkvAAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "f, o = s.bandpass_frequencies(frequencies=frequencies)\n", + "Lp = o.leq()\n", + "fig, ax = plt.subplots()\n", + "ax.plot(f.center, Lp, \".-\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "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.11.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}