{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## ThinkDSP\n",
"\n",
"This notebook contains code examples from Chapter 3: Non-periodic signals\n",
"\n",
"Copyright 2015 Allen Downey\n",
"\n",
"License: [Creative Commons Attribution 4.0 International](http://creativecommons.org/licenses/by/4.0/)"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"# Get thinkdsp.py\n",
"\n",
"import os\n",
"\n",
"if not os.path.exists('thinkdsp.py'):\n",
" !wget https://github.com/AllenDowney/ThinkDSP/raw/master/code/thinkdsp.py"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"from thinkdsp import decorate"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Chirp\n",
"\n",
"Make a linear chirp from A3 to A5."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
" \n",
" "
],
"text/plain": [
""
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from thinkdsp import Chirp\n",
"\n",
"signal = Chirp(start=220, end=880)\n",
"wave1 = signal.make_wave(duration=2)\n",
"wave1.make_audio()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here's what the waveform looks like near the beginning."
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"