{ "cells": [ { "cell_type": "markdown", "metadata": { "nbsphinx": "hidden" }, "source": [ "# Continuous Signals\n", "\n", "*This Jupyter notebook is part of a [collection of notebooks](../index.ipynb) in the bachelors module Signals and Systems, Communications Engineering, Universität Rostock. Please direct questions and suggestions to [Sascha.Spors@uni-rostock.de](mailto:Sascha.Spors@uni-rostock.de).*" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Elementary Operations\n", "\n", "Operations like superposition, temporal shifting and scaling are used to construct signals with a more complex structure than the previously introduced [standard signals](standard_signals.ipynb). A set of elementary operations are introduced that are frequently used in signal processing." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Superposition\n", "\n", "The weighted superposition $x(t)$ of two signals $x_\\text{A}(t)$ and $x_\\text{B}(t)$ is given as\n", "\n", "\\begin{equation}\n", "x(t) = A \\cdot x_\\text{A}(t) + B \\cdot x_\\text{B}(t)\n", "\\end{equation}\n", "\n", "with the complex weights $A, B \\in \\mathbb{C}$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example**\n", "\n", "The following example illustrates the superposition of two harmonic signals $x_\\text{A}(t) = A \\cdot \\cos(\\omega_\\text{A} t)$ and $x_\\text{B}(t) = B \\cdot \\cos(\\omega_\\text{B} t)$ with weights $A$, $B$ and angular frequencies $\\omega_\\text{A}$ and $\\omega_\\text{B}$." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "application/pdf": "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IDYwMAo2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDMxOCA0MDEgNDYwIDgzOCA2MzYKOTUwIDc4MCAyNzUgMzkwIDM5MCA1MDAgODM4IDMxOCAzNjEgMzE4IDMzNyA2MzYgNjM2IDYzNiA2MzYgNjM2IDYzNiA2MzYgNjM2CjYzNiA2MzYgMzM3IDMzNyA4MzggODM4IDgzOCA1MzEgMTAwMCA2ODQgNjg2IDY5OCA3NzAgNjMyIDU3NSA3NzUgNzUyIDI5NQoyOTUgNjU2IDU1NyA4NjMgNzQ4IDc4NyA2MDMgNzg3IDY5NSA2MzUgNjExIDczMiA2ODQgOTg5IDY4NSA2MTEgNjg1IDM5MCAzMzcKMzkwIDgzOCA1MDAgNTAwIDYxMyA2MzUgNTUwIDYzNSA2MTUgMzUyIDYzNSA2MzQgMjc4IDI3OCA1NzkgMjc4IDk3NCA2MzQgNjEyCjYzNSA2MzUgNDExIDUyMSAzOTIgNjM0IDU5MiA4MTggNTkyIDU5MiA1MjUgNjM2IDMzNyA2MzYgODM4IDYwMCA2MzYgNjAwIDMxOAozNTIgNTE4IDEwMDAgNTAwIDUwMCA1MDAgMTM1MCA2MzUgNDAwIDEwNzAgNjAwIDY4NSA2MDAgNjAwIDMxOCAzMTggNTE4IDUxOAo1OTAgNTAwIDEwMDAgNTAwIDEwMDAgNTIxIDQwMCAxMDI4IDYwMCA1MjUgNjExIDMxOCA0MDEgNjM2IDYzNiA2MzYgNjM2IDMzNwo1MDAgNTAwIDEwMDAgNDcxIDYxNyA4MzggMzYxIDEwMDAgNTAwIDUwMCA4MzggNDAxIDQwMSA1MDAgNjM2IDYzNiAzMTggNTAwCjQwMSA0NzEgNjE3IDk2OSA5NjkgOTY5IDUzMSA2ODQgNjg0IDY4NCA2ODQgNjg0IDY4NCA5NzQgNjk4IDYzMiA2MzIgNjMyIDYzMgoyOTUgMjk1IDI5NSAyOTUgNzc1IDc0OCA3ODcgNzg3IDc4NyA3ODcgNzg3IDgzOCA3ODcgNzMyIDczMiA3MzIgNzMyIDYxMSA2MDgKNjMwIDYxMyA2MTMgNjEzIDYxMyA2MTMgNjEzIDk5NSA1NTAgNjE1IDYxNSA2MTUgNjE1IDI3OCAyNzggMjc4IDI3OCA2MTIgNjM0CjYxMiA2MTIgNjEyIDYxMiA2MTIgODM4IDYxMiA2MzQgNjM0IDYzNCA2MzQgNTkyIDYzNSA1OTIgXQplbmRvYmoKMTUgMCBvYmoKPDwgL3QgMTYgMCBSIC94IDE3IDAgUiA+PgplbmRvYmoKMjIgMCBvYmoKPDwgL0ZpbHRlciAvRmxhdGVEZWNvZGUgL0xlbmd0aCAyNDcgPj4Kc3RyZWFtCnicTVG7bUQxDOvfFFzgAOtreZ4LUl32b0PJCJDCIKEvKaclFvbGSwzhB1sPvuSRVUN/Hj8x7DMsPcnk1D/muclUFL4VqpuYUBdi4f1oBLwWdC8iK8oH349lDHPO9+CjEJdgJjRgrG9JJhfVvDNkwomhjsNBm1QYd00ULK4VzTPI7VY3sjqzIGx4JRPixgBEBNkXkM1go4yxlZDFch6oCpIFWmDX6RtRi4IrlNYJdKLWxLrM4Kvn9nY3Qy/y4Ki6eH0M60uwwuileyx8rkIfzPRMO3dJI73wphMRZg8FUpmdkZU6PWJ9t0D/n2Ur+PvJz/P9CxUoXCoKZW5kc3RyZWFtCmVuZG9iagoyMyAwIG9iago8PCAvRmlsdGVyIC9GbGF0ZURlY29kZSAvTGVuZ3RoIDkwID4+CnN0cmVhbQp4nE2NQRLAIAgD77wiT1BE0P90etL/X6vUDr3ATgKJFkWC9DVqSzDuuDIVa1ApmJSXwFUwXAva7qLK/jJJTJ2G03u3A4Oy8XGD0kn79nF6AKv9egbdD9IcIlgKZW5kc3RyZWFtCmVuZG9iagoyNCAwIG9iago8PCAvQkJveCBbIC0xMDIxIC00NjMgMTc5NCAxMjMzIF0gL0ZpbHRlciAvRmxhdGVEZWNvZGUgL0xlbmd0aCAzNwovU3VidHlwZSAvRm9ybSAvVHlwZSAvWE9iamVjdCA+PgpzdHJlYW0KeJzjMjQwUzA2NVXI5TI3NgKzcsAsI3MjIAski2BBZNMAAV8KCgplbmRzdHJlYW0KZW5kb2JqCjI1IDAgb2JqCjw8IC9GaWx0ZXIgL0ZsYXRlRGVjb2RlIC9MZW5ndGggODAgPj4Kc3RyZWFtCnicRYy7DcAwCER7pmAEfiZmnyiVs38bIErccE+6e7g6EjJT3mGGhwSeDCyGU/EGmaNgNbhGUo2d7KOwbl91geZ6U6v19wcqT3Z2cT3Nyxn0CmVuZHN0cmVhbQplbmRvYmoKMjYgMCBvYmoKPDwgL0ZpbHRlciAvRmxhdGVEZWNvZGUgL0xlbmd0aCAxNDcgPj4Kc3RyZWFtCnicPU+5DQMxDOs9BRc4wHosW/NckOqyfxvKRlIIIkDxkWVHxwpcYgKTjjkSL2k/+GkagVgGNUf0hIphWOBukgIPgyxKV54tXgyR2kJdSPjWEN6tTGSiPK8RO3AnF6MHPlQbWR56QDtEFVmuScNY1VZdap2wAhyyzsJ1PcyqBOXRJ2spH1BUQr10/5972vsLAG8v6wplbmRzdHJlYW0KZW5kb2JqCjI3IDAgb2JqCjw8IC9GaWx0ZXIgL0ZsYXRlRGVjb2RlIC9MZW5ndGggMTQ5ID4+CnN0cmVhbQp4nDWPSw4DIQxD9zmFLzBSfoRwHqqupvffNmFaCQkL2y/BFoORjEtMYOyYY+ElVE+tPiQjj7pJORCpUDcET2hMDDNs0iXwynTfMp5bvJxW6oJOSOTprDYaooxmXsPRU84Km/7L3CRqZUaZAzLrVLcTsrJgBeYFtTz3M+6oXOiEh53KsOhOMaLcZkYafv/b9P4CezIwYwplbmRzdHJlYW0KZW5kb2JqCjI4IDAgb2JqCjw8IC9GaWx0ZXIgL0ZsYXRlRGVjb2RlIC9MZW5ndGggNDkgPj4Kc3RyZWFtCnicMza0UDBQMDQwB5JGhkCWkYlCiiEXSADEzOWCCeaAWQZAGqI4B64mhysNAMboDSYKZW5kc3RyZWFtCmVuZG9iagoyOSAwIG9iago8PCAvRmlsdGVyIC9GbGF0ZURlY29kZSAvTGVuZ3RoIDEzMSA+PgpzdHJlYW0KeJxFj8sNBCEMQ+9U4RLyGT6ph9We2P6v6zCaQUL4QSI78TAIrPPyNtDF8NGiwzf+NtWrY5UsH7p6UlYP6ZCHvPIVUGkwUcSFWUwdQ2HOmMrIljK3G+G2TYOsbJVUrYN2PAYPtqdlqwh+qW1h6izxDMJVXrjHDT+QS613vVW+f0JTMJcKZW5kc3RyZWFtCmVuZG9iagozMCAwIG9iago8PCAvRmlsdGVyIC9GbGF0ZURlY29kZSAvTGVuZ3RoIDI0OCA+PgpzdHJlYW0KeJwtUTmSA0EIy+cVekJz0++xy5H3/+kKygGDhkMgOi1xUMZPEJYr3vLIVbTh75kYwXfBod/KdRsWORAVSNIYVE2oXbwevQd2HGYC86Q1LIMZ6wM/Ywo3enF4TMbZ7XUZNQR712tPZlAyKxdxycQFU3XYyJnDT6aMC+1czw3IuRHWZRikm5XGjIQjTSFSSKHqJqkzQZAEo6tRo40cxX7pyyOdYVUjagz7XEvb13MTzho0OxarPDmlR1ecy8nFCysH/bzNwEVUGqs8EBJwv9tD/Zzs5Dfe0rmzxfT4XnOyvDAVWPHmtRuQTbX4Ny/i+D3j6/n8A6ilWxYKZW5kc3RyZWFtCmVuZG9iagozMSAwIG9iago8PCAvRmlsdGVyIC9GbGF0ZURlY29kZSAvTGVuZ3RoIDIxMCA+PgpzdHJlYW0KeJw1UMsNQzEIu2cKFqgUAoFknla9df9rbdA7YRH/QljIlAh5qcnOKelLPjpMD7Yuv7EiC611JezKmiCeK++hmbKx0djiYHAaJl6AFjdg6GmNGjV04YKmLpVCgcUl8Jl8dXvovk8ZeGoZcnYEEUPJYAlquhZNWLQ8n5BOAeL/fsPuLeShkvPKnhv5G5zt8DuzbuEnanYi0XIVMtSzNMcYCBNFHjx5RaZw4rPWd9U0EtRmC06WAa5OP4wOAGAiXlmA7K5EOUvSjqWfb7zH9w9AAFO0CmVuZHN0cmVhbQplbmRvYmoKMjAgMCBvYmoKPDwgL0Jhc2VGb250IC9EZWphVnVTYW5zIC9DaGFyUHJvY3MgMjEgMCBSCi9FbmNvZGluZyA8PAovRGlmZmVyZW5jZXMgWyA0MCAvcGFyZW5sZWZ0IC9wYXJlbnJpZ2h0IDQ2IC9wZXJpb2QgNDggL3plcm8gL29uZSAvdHdvIDUyIC9mb3VyIC9maXZlCjExNiAvdCBdCi9UeXBlIC9FbmNvZGluZyA+PgovRmlyc3RDaGFyIDAgL0ZvbnRCQm94IFsgLTEwMjEgLTQ2MyAxNzk0IDEyMzMgXSAvRm9udERlc2NyaXB0b3IgMTkgMCBSCi9Gb250TWF0cml4IFsgMC4wMDEgMCAwIDAuMDAxIDAgMCBdIC9MYXN0Q2hhciAyNTUgL05hbWUgL0RlamFWdVNhbnMKL1N1YnR5cGUgL1R5cGUzIC9UeXBlIC9Gb250IC9XaWR0aHMgMTggMCBSID4+CmVuZG9iagoxOSAwIG9iago8PCAvQXNjZW50IDkyOSAvQ2FwSGVpZ2h0IDAgL0Rlc2NlbnQgLTIzNiAvRmxhZ3MgMzIKL0ZvbnRCQm94IFsgLTEwMjEgLTQ2MyAxNzk0IDEyMzMgXSAvRm9udE5hbWUgL0RlamFWdVNhbnMgL0l0YWxpY0FuZ2xlIDAKL01heFdpZHRoIDEzNDIgL1N0ZW1WIDAgL1R5cGUgL0ZvbnREZXNjcmlwdG9yIC9YSGVpZ2h0IDAgPj4KZW5kb2JqCjE4IDAgb2JqClsgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAKNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCAzMTggNDAxIDQ2MCA4MzggNjM2Cjk1MCA3ODAgMjc1IDM5MCAzOTAgNTAwIDgzOCAzMTggMzYxIDMxOCAzMzcgNjM2IDYzNiA2MzYgNjM2IDYzNiA2MzYgNjM2IDYzNgo2MzYgNjM2IDMzNyAzMzcgODM4IDgzOCA4MzggNTMxIDEwMDAgNjg0IDY4NiA2OTggNzcwIDYzMiA1NzUgNzc1IDc1MiAyOTUKMjk1IDY1NiA1NTcgODYzIDc0OCA3ODcgNjAzIDc4NyA2OTUgNjM1IDYxMSA3MzIgNjg0IDk4OSA2ODUgNjExIDY4NSAzOTAgMzM3CjM5MCA4MzggNTAwIDUwMCA2MTMgNjM1IDU1MCA2MzUgNjE1IDM1MiA2MzUgNjM0IDI3OCAyNzggNTc5IDI3OCA5NzQgNjM0IDYxMgo2MzUgNjM1IDQxMSA1MjEgMzkyIDYzNCA1OTIgODE4IDU5MiA1OTIgNTI1IDYzNiAzMzcgNjM2IDgzOCA2MDAgNjM2IDYwMCAzMTgKMzUyIDUxOCAxMDAwIDUwMCA1MDAgNTAwIDEzNDIgNjM1IDQwMCAxMDcwIDYwMCA2ODUgNjAwIDYwMCAzMTggMzE4IDUxOCA1MTgKNTkwIDUwMCAxMDAwIDUwMCAxMDAwIDUyMSA0MDAgMTAyMyA2MDAgNTI1IDYxMSAzMTggNDAxIDYzNiA2MzYgNjM2IDYzNiAzMzcKNTAwIDUwMCAxMDAwIDQ3MSA2MTIgODM4IDM2MSAxMDAwIDUwMCA1MDAgODM4IDQwMSA0MDEgNTAwIDYzNiA2MzYgMzE4IDUwMAo0MDEgNDcxIDYxMiA5NjkgOTY5IDk2OSA1MzEgNjg0IDY4NCA2ODQgNjg0IDY4NCA2ODQgOTc0IDY5OCA2MzIgNjMyIDYzMiA2MzIKMjk1IDI5NSAyOTUgMjk1IDc3NSA3NDggNzg3IDc4NyA3ODcgNzg3IDc4NyA4MzggNzg3IDczMiA3MzIgNzMyIDczMiA2MTEgNjA1CjYzMCA2MTMgNjEzIDYxMyA2MTMgNjEzIDYxMyA5ODIgNTUwIDYxNSA2MTUgNjE1IDYxNSAyNzggMjc4IDI3OCAyNzggNjEyIDYzNAo2MTIgNjEyIDYxMiA2MTIgNjEyIDgzOCA2MTIgNjM0IDYzNCA2MzQgNjM0IDU5MiA2MzUgNTkyIF0KZW5kb2JqCjIxIDAgb2JqCjw8IC9maXZlIDIyIDAgUiAvZm91ciAyMyAwIFIgL29uZSAyNSAwIFIgL3BhcmVubGVmdCAyNiAwIFIKL3BhcmVucmlnaHQgMjcgMCBSIC9wZXJpb2QgMjggMCBSIC90IDI5IDAgUiAvdHdvIDMwIDAgUiAvemVybyAzMSAwIFIgPj4KZW5kb2JqCjMgMCBvYmoKPDwgL0YxIDIwIDAgUiAvRjIgMTQgMCBSID4+CmVuZG9iago0IDAgb2JqCjw8IC9BMSA8PCAvQ0EgMCAvVHlwZSAvRXh0R1N0YXRlIC9jYSAxID4+Ci9BMiA8PCAvQ0EgMSAvVHlwZSAvRXh0R1N0YXRlIC9jYSAxID4+ID4+CmVuZG9iago1IDAgb2JqCjw8ID4+CmVuZG9iago2IDAgb2JqCjw8ID4+CmVuZG9iago3IDAgb2JqCjw8IC9GMS1EZWphVnVTYW5zLW1pbnVzIDI0IDAgUiA+PgplbmRvYmoKMiAwIG9iago8PCAvQ291bnQgMSAvS2lkcyBbIDEwIDAgUiBdIC9UeXBlIC9QYWdlcyA+PgplbmRvYmoKMzIgMCBvYmoKPDwgL0NyZWF0aW9uRGF0ZSAoRDoyMDIxMDQyMTEyMzkyMyswMicwMCcpCi9DcmVhdG9yIChNYXRwbG90bGliIHYzLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZykKL1Byb2R1Y2VyIChNYXRwbG90bGliIHBkZiBiYWNrZW5kIHYzLjMuNCkgPj4KZW5kb2JqCnhyZWYKMCAzMwowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMDAwMTYgMDAwMDAgbiAKMDAwMDAxNTk5NiAwMDAwMCBuIAowMDAwMDE1NzYzIDAwMDAwIG4gCjAwMDAwMTU4MDYgMDAwMDAgbiAKMDAwMDAxNTkwNSAwMDAwMCBuIAowMDAwMDE1OTI2IDAwMDAwIG4gCjAwMDAwMTU5NDcgMDAwMDAgbiAKMDAwMDAwMDA2NSAwMDAwMCBuIAowMDAwMDAwMzk3IDAwMDAwIG4gCjAwMDAwMDAyMDggMDAwMDAgbiAKMDAwMDAwOTc1NSAwMDAwMCBuIAowMDAwMDEwNzIyIDAwMDAwIG4gCjAwMDAwMTA1MTQgMDAwMDAgbiAKMDAwMDAxMDE5MSAwMDAwMCBuIAowMDAwMDExNzc1IDAwMDAwIG4gCjAwMDAwMDk3NzYgMDAwMDAgbiAKMDAwMDAxMDAyNyAwMDAwMCBuIAowMDAwMDE0NTYzIDAwMDAwIG4gCjAwMDAwMTQzNjMgMDAwMDAgbiAKMDAwMDAxMzk5MiAwMDAwMCBuIAowMDAwMDE1NjE2IDAwMDAwIG4gCjAwMDAwMTE4MTcgMDAwMDAgbiAKMDAwMDAxMjEzNyAwMDAwMCBuIAowMDAwMDEyMjk5IDAwMDAwIG4gCjAwMDAwMTI0NjkgMDAwMDAgbiAKMDAwMDAxMjYyMSAwMDAwMCBuIAowMDAwMDEyODQxIDAwMDAwIG4gCjAwMDAwMTMwNjMgMDAwMDAgbiAKMDAwMDAxMzE4NCAwMDAwMCBuIAowMDAwMDEzMzg4IDAwMDAwIG4gCjAwMDAwMTM3MDkgMDAwMDAgbiAKMDAwMDAxNjA1NiAwMDAwMCBuIAp0cmFpbGVyCjw8IC9JbmZvIDMyIDAgUiAvUm9vdCAxIDAgUiAvU2l6ZSAzMyA+PgpzdGFydHhyZWYKMTYyMTMKJSVFT0YK\n", "image/svg+xml": [ "\n", "\n", "\n", "\n", " \n", " \n", " \n", " \n", " 2021-04-21T12:39:22.974009\n", " image/svg+xml\n", " \n", " \n", " Matplotlib v3.3.4, https://matplotlib.org/\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n" ], "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import sympy as sym\n", "sym.init_printing()\n", "\n", "t = sym.symbols('t', real=True)\n", "\n", "A = .3\n", "omA = 3\n", "B = .5\n", "omB = 5\n", "\n", "x = A*sym.cos(omA*t) + B*sym.cos(omB*t)\n", "\n", "sym.plot(x, (t, -5, 5), ylim=[-1.2, 1.2], ylabel=r'$x(t)$');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Temporal Shift\n", "\n", "The temporal shift of a signal $x(t)$ by the time $\\tau$ is a frequently applied operation in signal processing. For instance, to model the propagation of signals from an actuator to a sensor.\n", "\n", "The temporally shifted signal $x(t)$ is defined as\n", "\n", "\\begin{equation}\n", "y(t) = x(t-\\tau)\n", "\\end{equation}\n", "with $\\tau \\in \\mathbb{R}$. The signal $x(t)$ is\n", "\n", "* shifted to the right (*delayed*) for $\\tau > 0$\n", "* shifted to the left (*leading*) for $\\tau < 0$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example**\n", "\n", "In order to illustrate the temporal shifting of signals, the construction of a staircase signal by a superposition of shifted [rectangular signals](standard_signals.ipynb#Rectangular-Signal) is considered\n", "\n", "\\begin{equation}\n", "x(t) = \\text{rect}\\left(t - \\frac{1}{2} \\right) + \\frac{2}{3} \\cdot \\text{rect}\\left(t-\\frac{3}{2} \\right) + \\frac{1}{3} \\cdot \\text{rect} \\left(t-\\frac{5}{2} \\right)\n", "\\end{equation}" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "application/pdf": "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IFsgMTE2IC90IDEyMCAveCBdIC9UeXBlIC9FbmNvZGluZyA+PiAvRmlyc3RDaGFyIDAKL0ZvbnRCQm94IFsgLTEwMTYgLTM1MSAxNjYwIDEwNjggXSAvRm9udERlc2NyaXB0b3IgMTMgMCBSCi9Gb250TWF0cml4IFsgMC4wMDEgMCAwIDAuMDAxIDAgMCBdIC9MYXN0Q2hhciAyNTUgL05hbWUgL0RlamFWdVNhbnMtT2JsaXF1ZQovU3VidHlwZSAvVHlwZTMgL1R5cGUgL0ZvbnQgL1dpZHRocyAxMiAwIFIgPj4KZW5kb2JqCjEzIDAgb2JqCjw8IC9Bc2NlbnQgOTI5IC9DYXBIZWlnaHQgMCAvRGVzY2VudCAtMjM2IC9GbGFncyA5NgovRm9udEJCb3ggWyAtMTAxNiAtMzUxIDE2NjAgMTA2OCBdIC9Gb250TmFtZSAvRGVqYVZ1U2Fucy1PYmxpcXVlCi9JdGFsaWNBbmdsZSAwIC9NYXhXaWR0aCAxMzUwIC9TdGVtViAwIC9UeXBlIC9Gb250RGVzY3JpcHRvciAvWEhlaWdodCAwID4+CmVuZG9iagoxMiAwIG9iagpbIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwCjYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgMzE4IDQwMSA0NjAgODM4IDYzNgo5NTAgNzgwIDI3NSAzOTAgMzkwIDUwMCA4MzggMzE4IDM2MSAzMTggMzM3IDYzNiA2MzYgNjM2IDYzNiA2MzYgNjM2IDYzNiA2MzYKNjM2IDYzNiAzMzcgMzM3IDgzOCA4MzggODM4IDUzMSAxMDAwIDY4NCA2ODYgNjk4IDc3MCA2MzIgNTc1IDc3NSA3NTIgMjk1CjI5NSA2NTYgNTU3IDg2MyA3NDggNzg3IDYwMyA3ODcgNjk1IDYzNSA2MTEgNzMyIDY4NCA5ODkgNjg1IDYxMSA2ODUgMzkwIDMzNwozOTAgODM4IDUwMCA1MDAgNjEzIDYzNSA1NTAgNjM1IDYxNSAzNTIgNjM1IDYzNCAyNzggMjc4IDU3OSAyNzggOTc0IDYz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SGVpZ2h0IDAgL0Rlc2NlbnQgLTIzNiAvRmxhZ3MgMzIKL0ZvbnRCQm94IFsgLTEwMjEgLTQ2MyAxNzk0IDEyMzMgXSAvRm9udE5hbWUgL0RlamFWdVNhbnMgL0l0YWxpY0FuZ2xlIDAKL01heFdpZHRoIDEzNDIgL1N0ZW1WIDAgL1R5cGUgL0ZvbnREZXNjcmlwdG9yIC9YSGVpZ2h0IDAgPj4KZW5kb2JqCjE4IDAgb2JqClsgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAKNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCAzMTggNDAxIDQ2MCA4MzggNjM2Cjk1MCA3ODAgMjc1IDM5MCAzOTAgNTAwIDgzOCAzMTggMzYxIDMxOCAzMzcgNjM2IDYzNiA2MzYgNjM2IDYzNiA2MzYgNjM2IDYzNgo2MzYgNjM2IDMzNyAzMzcgODM4IDgzOCA4MzggNTMxIDEwMDAgNjg0IDY4NiA2OTggNzcwIDYzMiA1NzUgNzc1IDc1MiAyOTUKMjk1IDY1NiA1NTcgODYzIDc0OCA3ODcgNjAzIDc4NyA2OTUgNjM1IDYxMSA3MzIgNjg0IDk4OSA2ODUgNjExIDY4NSAzOTAgMzM3CjM5MCA4MzggNTAwIDUwMCA2MTMgNjM1IDU1MCA2MzUgNjE1IDM1MiA2MzUgNjM0IDI3OCAyNzggNTc5IDI3OCA5NzQgNjM0IDYxMgo2MzUgNjM1IDQxMSA1MjEgMzkyIDYzNCA1OTIgODE4IDU5MiA1OTIgNTI1IDYzNiAzMzcgNjM2IDgzOCA2MDAgNjM2IDYwMCAzMTgKMzUyIDUxOCAxMDAwIDUwMCA1MDAgNTAwIDEzNDIgNjM1IDQwMCAxMDcwIDYwMCA2ODUgNjAwIDYwMCAzMTggMzE4IDUxOCA1MTgKNTkwIDUwMCAxMDAwIDUwMCAxMDAwIDUyMSA0MDAgMTAyMyA2MDAgNTI1IDYxMSAzMTggNDAxIDYzNiA2MzYgNjM2IDYzNiAzMzcKNTAwIDUwMCAxMDAwIDQ3MSA2MTIgODM4IDM2MSAxMDAwIDUwMCA1MDAgODM4IDQwMSA0MDEgNTAwIDYzNiA2MzYgMzE4IDUwMAo0MDEgNDcxIDYxMiA5NjkgOTY5IDk2OSA1MzEgNjg0IDY4NCA2ODQgNjg0IDY4NCA2ODQgOTc0IDY5OCA2MzIgNjMyIDYzMiA2MzIKMjk1IDI5NSAyOTUgMjk1IDc3NSA3NDggNzg3IDc4NyA3ODcgNzg3IDc4NyA4MzggNzg3IDczMiA3MzIgNzMyIDczMiA2MTEgNjA1CjYzMCA2MTMgNjEzIDYxMyA2MTMgNjEzIDYxMyA5ODIgNTUwIDYxNSA2MTUgNjE1IDYxNSAyNzggMjc4IDI3OCAyNzggNjEyIDYzNAo2MTIgNjEyIDYxMiA2MTIgNjEyIDgzOCA2MTIgNjM0IDYzNCA2MzQgNjM0IDU5MiA2MzUgNTkyIF0KZW5kb2JqCjIxIDAgb2JqCjw8IC9laWdodCAyMiAwIFIgL2ZpdmUgMjMgMCBSIC9mb3VyIDI0IDAgUiAvb25lIDI2IDAgUiAvcGFyZW5sZWZ0IDI3IDAgUgovcGFyZW5yaWdodCAyOCAwIFIgL3BlcmlvZCAyOSAwIFIgL3NpeCAzMCAwIFIgL3QgMzEgMCBSIC90aHJlZSAzMiAwIFIKL3R3byAzMyAwIFIgL3plcm8gMzQgMCBSID4+CmVuZG9iagozIDAgb2JqCjw8IC9GMSAyMCAwIFIgL0YyIDE0IDAgUiA+PgplbmRvYmoKNCAwIG9iago8PCAvQTEgPDwgL0NBIDAgL1R5cGUgL0V4dEdTdGF0ZSAvY2EgMSA+PgovQTIgPDwgL0NBIDEgL1R5cGUgL0V4dEdTdGF0ZSAvY2EgMSA+PiA+PgplbmRvYmoKNSAwIG9iago8PCA+PgplbmRvYmoKNiAwIG9iago8PCA+PgplbmRvYmoKNyAwIG9iago8PCAvRjEtRGVqYVZ1U2Fucy1taW51cyAyNSAwIFIgPj4KZW5kb2JqCjIgMCBvYmoKPDwgL0NvdW50IDEgL0tpZHMgWyAxMCAwIFIgXSAvVHlwZSAvUGFnZXMgPj4KZW5kb2JqCjM1IDAgb2JqCjw8IC9DcmVhdGlvbkRhdGUgKEQ6MjAyMTA0MjExMjM5MjMrMDInMDAnKQovQ3JlYXRvciAoTWF0cGxvdGxpYiB2My4zLjQsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcpCi9Qcm9kdWNlciAoTWF0cGxvdGxpYiBwZGYgYmFja2VuZCB2My4zLjQpID4+CmVuZG9iagp4cmVmCjAgMzYKMDAwMDAwMDAwMCA2NTUzNSBmIAowMDAwMDAwMDE2IDAwMDAwIG4gCjAwMDAwMDk3NDUgMDAwMDAgbiAKMDAwMDAwOTUxMiAwMDAwMCBuIAowMDAwMDA5NTU1IDAwMDAwIG4gCjAwMDAwMDk2NTQgMDAwMDAgbiAKMDAwMDAwOTY3NSAwMDAwMCBuIAowMDAwMDA5Njk2IDAwMDAwIG4gCjAwMDAwMDAwNjUgMDAwMDAgbiAKMDAwMDAwMDM5NyAwMDAwMCBuIAowMDAwMDAwMjA4IDAwMDAwIG4gCjAwMDAwMDIxNzkgMDAwMDAgbiAKMDAwMDAwMzE0NiAwMDAwMCBuIAowMDAwMDAyOTM4IDAwMDAwIG4gCjAwMDAwMDI2MTUgMDAwMDAgbiAKMDAwMDAwNDE5OSAwMDAwMCBuIAowMDAwMDAyMjAwIDAwMDAwIG4gCjAwMDAwMDI0NTEgMDAwMDAgbiAKMDAwMDAwODI3MiAwMDAwMCBuIAowMDAwMDA4MDcyIDAwMDAwIG4gCjAwMDAwMDc2ODIgMDAwMDAgbiAKMDAwMDAwOTMyNSAwMDAwMCBuIAowMDAwMDA0MjQxIDAwMDAwIG4gCjAwMDAwMDQ3MDYgMDAwMDAgbiAKMDAwMDAwNTAyNiAwMDAwMCBuIAowMDAwMDA1MTg4IDAwMDAwIG4gCjAwMDAwMDUzNTggMDAwMDAgbiAKMDAwMDAwNTUxMCAwMDAwMCBuIAowMDAwMDA1NzMwIDAwMDAwIG4gCjAwMDAwMDU5NTIgMDAwMDAgbiAKMDAwMDAwNjA3MyAwMDAwMCBuIAowMDAwMDA2NDYzIDAwMDAwIG4gCjAwMDAwMDY2NjcgMDAwMDAgbiAKMDAwMDAwNzA3OCAwMDAwMCBuIAowMDAwMDA3Mzk5IDAwMDAwIG4gCjAwMDAwMDk4MDUgMDAwMDAgbiAKdHJhaWxlcgo8PCAvSW5mbyAzNSAwIFIgL1Jvb3QgMSAwIFIgL1NpemUgMzYgPj4Kc3RhcnR4cmVmCjk5NjIKJSVFT0YK\n", "image/svg+xml": [ "\n", "\n", "\n", "\n", " \n", " \n", " \n", " \n", " 2021-04-21T12:39:23.597190\n", " image/svg+xml\n", " \n", " \n", " Matplotlib v3.3.4, https://matplotlib.org/\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n" ], "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "rect = sym.Heaviside(t + 1/2) - sym.Heaviside(t - 1/2)\n", "x = rect.subs(t, t-1/2) + 2/3*rect.subs(t, t-3/2) + 1/3*rect.subs(t, t-5/2)\n", "\n", "sym.plot(x, (t, -1, 5), ylim=[-0.2, 1.2], ylabel='$x(t)$');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise**\n", "\n", "* Add another step to the beginning of the staircase signal by modifying above example." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Temporal Scaling\n", "\n", "The temporal scaling of a signal $x(t)$ is defined as\n", "\n", "\\begin{equation}\n", "y(t) = x(a \\cdot t)\n", "\\end{equation}\n", "\n", "with $a \\in \\mathbb{R}$. The signal $x(t)$ is\n", "\n", "* stretched for $0 < a < 1$\n", "* compressed for $a > 1$\n", "* time-reversed and scaled for $a < 0$\n", "\n", "An application of temporal scaling in signal processing is the adaption of the time scale for standard signals and the modeling of the [Doppler effect](https://en.wikipedia.org/wiki/Doppler_effect)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example**\n", "\n", "The following example illustrates the temporal scaling of the staircase signal $y(t) = x(a \\cdot t)$ introduced in the previous example. The original $x(t)$ is plotted in gray, the scaled signal $y(t)$ in blue. Here stretching is realized, such that $y(t)$ is twice as long as $x(t)$." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "application/pdf": "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aW5nID4+IC9GaXJzdENoYXIgMAovRm9udEJCb3ggWyAtMTAxNiAtMzUxIDE2NjAgMTA2OCBdIC9Gb250RGVzY3JpcHRvciAxMyAwIFIKL0ZvbnRNYXRyaXggWyAwLjAwMSAwIDAgMC4wMDEgMCAwIF0gL0xhc3RDaGFyIDI1NSAvTmFtZSAvRGVqYVZ1U2Fucy1PYmxpcXVlCi9TdWJ0eXBlIC9UeXBlMyAvVHlwZSAvRm9udCAvV2lkdGhzIDEyIDAgUiA+PgplbmRvYmoKMTMgMCBvYmoKPDwgL0FzY2VudCA5MjkgL0NhcEhlaWdodCAwIC9EZXNjZW50IC0yMzYgL0ZsYWdzIDk2Ci9Gb250QkJveCBbIC0xMDE2IC0zNTEgMTY2MCAxMDY4IF0gL0ZvbnROYW1lIC9EZWphVnVTYW5zLU9ibGlxdWUKL0l0YWxpY0FuZ2xlIDAgL01heFdpZHRoIDEzNTAgL1N0ZW1WIDAgL1R5cGUgL0ZvbnREZXNjcmlwdG9yIC9YSGVpZ2h0IDAgPj4KZW5kb2JqCjEyIDAgb2JqClsgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAKNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCAzMTggNDAxIDQ2MCA4MzggNjM2Cjk1MCA3ODAgMjc1IDM5MCAzOTAgNTAwIDgzOCAzMTggMzYxIDMxOCAzMzcgNjM2IDYzNiA2MzYgNjM2IDYzNiA2MzYgNjM2IDYzNgo2MzYgNjM2IDMzNyAzMzcgODM4IDgzOCA4MzggNTMxIDEwMDAgNjg0IDY4NiA2OTggNzcwIDYzMiA1NzUgNzc1IDc1MiAyOTUKMjk1IDY1NiA1NTcgODYzIDc0OCA3ODcgNjAzIDc4NyA2OTUgNjM1IDYxMSA3MzIgNjg0IDk4OSA2ODUgNjExIDY4NSAzOTAgMzM3CjM5MCA4MzggNTAwIDUwMCA2MTMgNjM1IDU1MCA2MzUgNjE1IDM1MiA2MzUgNjM0IDI3OCAyNzggNTc5IDI3OCA5NzQgNjM0IDYxMgo2MzUgNjM1IDQxMSA1MjEgMzkyIDYzNCA1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MSAwIDAgMC4wMDEgMCAwIF0gL0xhc3RDaGFyIDI1NSAvTmFtZSAvRGVqYVZ1U2FucwovU3VidHlwZSAvVHlwZTMgL1R5cGUgL0ZvbnQgL1dpZHRocyAxOCAwIFIgPj4KZW5kb2JqCjE5IDAgb2JqCjw8IC9Bc2NlbnQgOTI5IC9DYXBIZWlnaHQgMCAvRGVzY2VudCAtMjM2IC9GbGFncyAzMgovRm9udEJCb3ggWyAtMTAyMSAtNDYzIDE3OTQgMTIzMyBdIC9Gb250TmFtZSAvRGVqYVZ1U2FucyAvSXRhbGljQW5nbGUgMAovTWF4V2lkdGggMTM0MiAvU3RlbVYgMCAvVHlwZSAvRm9udERlc2NyaXB0b3IgL1hIZWlnaHQgMCA+PgplbmRvYmoKMTggMCBvYmoKWyA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMAo2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDMxOCA0MDEgNDYwIDgzOCA2MzYKOTUwIDc4MCAyNzUgMzkwIDM5MCA1MDAgODM4IDMxOCAzNjEgMzE4IDMzNyA2MzYgNjM2IDYzNiA2MzYgNjM2IDYzNiA2MzYgNjM2CjYzNiA2MzYgMzM3IDMzNyA4MzggODM4IDgzOCA1MzEgMTAwMCA2ODQgNjg2IDY5OCA3NzAgNjMyIDU3NSA3NzUgNzUyIDI5NQoyOTUgNjU2IDU1NyA4NjMgNzQ4IDc4NyA2MDMgNzg3IDY5NSA2MzUgNjExIDczMiA2ODQgOTg5IDY4NSA2MTEgNjg1IDM5MCAzMzcKMzkwIDgzOCA1MDAgNTAwIDYxMyA2MzUgNTUwIDYzNSA2MTUgMzUyIDYzNSA2MzQgMjc4IDI3OCA1NzkgMjc4IDk3NCA2MzQgNjEyCjYzNSA2MzUgNDExIDUyMSAzOTIgNjM0IDU5MiA4MTggNTkyIDU5MiA1MjUgNjM2IDMzNyA2MzYgODM4IDYwMCA2MzYgNjAwIDMxOAozNTIgNTE4IDEwMDAgNTAwIDUwMCA1MDAgMTM0MiA2MzUgNDAwIDEwNzAgNjAwIDY4NSA2MDAgNjAwIDMxOCAzMTggNTE4IDUxOAo1OTAgNTAwIDEwMDAgNTAwIDEwMDAgNTIxIDQwMCAxMDIzIDYwMCA1MjUgNjExIDMxOCA0MDEgNjM2IDYzNiA2MzYgNjM2IDMzNwo1MDAgNTAwIDEwMDAgNDcxIDYxMiA4MzggMzYxIDEwMDAgNTAwIDUwMCA4MzggNDAxIDQwMSA1MDAgNjM2IDYzNiAzMTggNTAwCjQwMSA0NzEgNjEyIDk2OSA5NjkgOTY5IDUzMSA2ODQgNjg0IDY4NCA2ODQgNjg0IDY4NCA5NzQgNjk4IDYzMiA2MzIgNjMyIDYzMgoyOTUgMjk1IDI5NSAyOTUgNzc1IDc0OCA3ODcgNzg3IDc4NyA3ODcgNzg3IDgzOCA3ODcgNzMyIDczMiA3MzIgNzMyIDYxMSA2MDUKNjMwIDYxMyA2MTMgNjEzIDYxMyA2MTMgNjEzIDk4MiA1NTAgNjE1IDYxNSA2MTUgNjE1IDI3OCAyNzggMjc4IDI3OCA2MTIgNjM0CjYxMiA2MTIgNjEyIDYxMiA2MTIgODM4IDYxMiA2MzQgNjM0IDYzNCA2MzQgNTkyIDYzNSA1OTIgXQplbmRvYmoKMjEgMCBvYmoKPDwgL2VpZ2h0IDIyIDAgUiAvZm91ciAyMyAwIFIgL29uZSAyNSAwIFIgL3BhcmVubGVmdCAyNiAwIFIKL3BhcmVucmlnaHQgMjcgMCBSIC9wZXJpb2QgMjggMCBSIC9zaXggMjkgMCBSIC90IDMwIDAgUiAvdHdvIDMxIDAgUgovemVybyAzMiAwIFIgPj4KZW5kb2JqCjMgMCBvYmoKPDwgL0YxIDIwIDAgUiAvRjIgMTQgMCBSID4+CmVuZG9iago0IDAgb2JqCjw8IC9BMSA8PCAvQ0EgMCAvVHlwZSAvRXh0R1N0YXRlIC9jYSAxID4+Ci9BMiA8PCAvQ0EgMSAvVHlwZSAvRXh0R1N0YXRlIC9jYSAxID4+ID4+CmVuZG9iago1IDAgb2JqCjw8ID4+CmVuZG9iago2IDAgb2JqCjw8ID4+CmVuZG9iago3IDAgb2JqCjw8IC9GMS1EZWphVnVTYW5zLW1pbnVzIDI0IDAgUiA+PgplbmRvYmoKMiAwIG9iago8PCAvQ291bnQgMSAvS2lkcyBbIDEwIDAgUiBdIC9UeXBlIC9QYWdlcyA+PgplbmRvYmoKMzMgMCBvYmoKPDwgL0NyZWF0aW9uRGF0ZSAoRDoyMDIxMDQyMTEyMzkyNCswMicwMCcpCi9DcmVhdG9yIChNYXRwbG90bGliIHYzLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZykKL1Byb2R1Y2VyIChNYXRwbG90bGliIHBkZiBiYWNrZW5kIHYzLjMuNCkgPj4KZW5kb2JqCnhyZWYKMCAzNAowMDAwMDAwMDAwIDY1NTM1IGYgCjAwMDAwMDAwMTYgMDAwMDAgbiAKMDAwMDAwOTg0OSAwMDAwMCBuIAowMDAwMDA5NjE2IDAwMDAwIG4gCjAwMDAwMDk2NTkgMDAwMDAgbiAKMDAwMDAwOTc1OCAwMDAwMCBuIAowMDAwMDA5Nzc5IDAwMDAwIG4gCjAwMDAwMDk4MDAgMDAwMDAgbiAKMDAwMDAwMDA2NSAwMDAwMCBuIAowMDAwMDAwMzk3IDAwMDAwIG4gCjAwMDAwMDAyMDggMDAwMDAgbiAKMDAwMDAwMzAwMCAwMDAwMCBuIAowMDAwMDA0MDE1IDAwMDAwIG4gCjAwMDAwMDM4MDcgMDAwMDAgbiAKMDAwMDAwMzQ4NCAwMDAwMCBuIAowMDAwMDA1MDY4IDAwMDAwIG4gCjAwMDAwMDMwMjEgMDAwMDAgbiAKMDAwMDAwMzI3MiAwMDAwMCBuIAowMDAwMDA4NDAzIDAwMDAwIG4gCjAwMDAwMDgyMDMgMDAwMDAgbiAKMDAwMDAwNzgyMCAwMDAwMCBuIAowMDAwMDA5NDU2IDAwMDAwIG4gCjAwMDAwMDUxMTAgMDAwMDAgbiAKMDAwMDAwNTU3NSAwMDAwMCBuIAowMDAwMDA1NzM3IDAwMDAwIG4gCjAwMDAwMDU5MDcgMDAwMDAgbiAKMDAwMDAwNjA1OSAwMDAwMCBuIAowMDAwMDA2Mjc5IDAwMDAwIG4gCjAwMDAwMDY1MDEgMDAwMDAgbiAKMDAwMDAwNjYyMiAwMDAwMCBuIAowMDAwMDA3MDEyIDAwMDAwIG4gCjAwMDAwMDcyMTYgMDAwMDAgbiAKMDAwMDAwNzUzNyAwMDAwMCBuIAowMDAwMDA5OTA5IDAwMDAwIG4gCnRyYWlsZXIKPDwgL0luZm8gMzMgMCBSIC9Sb290IDEgMCBSIC9TaXplIDM0ID4+CnN0YXJ0eHJlZgoxMDA2NgolJUVPRgo=\n", "image/svg+xml": [ "\n", "\n", "\n", "\n", " \n", " \n", " \n", " \n", " 2021-04-21T12:39:24.453448\n", " image/svg+xml\n", " \n", " \n", " Matplotlib v3.3.4, https://matplotlib.org/\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n" ], "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "a = 1/2\n", "y = x.subs(t, a*t)\n", "\n", "\n", "px = sym.plot(x, (t, -3, 7), ylim=[-0.2, 1.2],\n", " ylabel=r'$x(t)$', show=False, line_color='gray')\n", "py = sym.plot(y, (t, -3, 7),\n", " ylim=[-0.2, 1.2], ylabel=r'$y(t)$', show=False)\n", "py.extend(px)\n", "py.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Exercise**\n", "\n", "* Modify above example such that the signal is compressed.\n", "* Modify above example such that the signal is scaled and time reversed. What scaling factors `a` lead to stretching/compression in this context?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Temporal Flipping" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The temporal flipping of a signal $x(t)$ is defined as\n", "\n", "\\begin{equation}\n", "y(t) = x(\\tau - t)\n", "\\end{equation}\n", "\n", "for $\\tau \\in \\mathbb{R}$. As $x(\\tau - t) = x(- (t - \\tau))$ the flipping operation can also be represented as a time-reversal of the signal $x(t)$ followed by a shift of $\\tau$ of the reversed signal. For $\\tau = 0$ this results in only a time-reversal of the signal. \n", "\n", "The temporal flipping operation can be interpreted geometrically as a mirroring of the signal $x(t)$ at the vertical axis $t=\\frac{\\tau}{2}$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Example**\n", "\n", "The following example illustrates the temporal flipping $y(t) = x(\\tau - t)$ of the staircase signal $x(t)$ introduced before." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "application/pdf": "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b250QkJveCBbIC0xMDE2IC0zNTEgMTY2MCAxMDY4IF0gL0ZvbnREZXNjcmlwdG9yIDEzIDAgUgovRm9udE1hdHJpeCBbIDAuMDAxIDAgMCAwLjAwMSAwIDAgXSAvTGFzdENoYXIgMjU1IC9OYW1lIC9EZWphVnVTYW5zLU9ibGlxdWUKL1N1YnR5cGUgL1R5cGUzIC9UeXBlIC9Gb250IC9XaWR0aHMgMTIgMCBSID4+CmVuZG9iagoxMyAwIG9iago8PCAvQXNjZW50IDkyOSAvQ2FwSGVpZ2h0IDAgL0Rlc2NlbnQgLTIzNiAvRmxhZ3MgOTYKL0ZvbnRCQm94IFsgLTEwMTYgLTM1MSAxNjYwIDEwNjggXSAvRm9udE5hbWUgL0RlamFWdVNhbnMtT2JsaXF1ZQovSXRhbGljQW5nbGUgMCAvTWF4V2lkdGggMTM1MCAvU3RlbVYgMCAvVHlwZSAvRm9udERlc2NyaXB0b3IgL1hIZWlnaHQgMCA+PgplbmRvYmoKMTIgMCBvYmoKWyA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMAo2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDMxOCA0MDEgNDYwIDgzOCA2MzYKOTUwIDc4MCAyNzUgMzkwIDM5MCA1MDAgODM4IDMxOCAzNjEgMzE4IDMzNyA2MzYgNjM2IDYzNiA2MzYgNjM2IDYzNiA2MzYgNjM2CjYzNiA2MzYgMzM3IDMzNyA4MzggODM4IDgzOCA1MzEgMTAwMCA2ODQgNjg2IDY5OCA3NzAgNjMyIDU3NSA3NzUgNzUyIDI5NQoyOTUgNjU2IDU1NyA4NjMgNzQ4IDc4NyA2MDMgNzg3IDY5NSA2MzUgNjExIDczMiA2ODQgOTg5IDY4NSA2MTEgNjg1IDM5MCAzMzcKMzkwIDgzOCA1MDAgNTAwIDYxMyA2MzUgNTUwIDYzNSA2MTUgMzUyIDYzNSA2MzQgMjc4IDI3OCA1NzkgMjc4IDk3NCA2MzQgNjEyCjYzNSA2MzUgNDExIDUyMSAzOTIgNjM0IDU5MiA4MTggNTkyIDU5MiA1MjUgNjM2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dENoYXIgMjU1IC9OYW1lIC9EZWphVnVTYW5zCi9TdWJ0eXBlIC9UeXBlMyAvVHlwZSAvRm9udCAvV2lkdGhzIDE4IDAgUiA+PgplbmRvYmoKMTkgMCBvYmoKPDwgL0FzY2VudCA5MjkgL0NhcEhlaWdodCAwIC9EZXNjZW50IC0yMzYgL0ZsYWdzIDMyCi9Gb250QkJveCBbIC0xMDIxIC00NjMgMTc5NCAxMjMzIF0gL0ZvbnROYW1lIC9EZWphVnVTYW5zIC9JdGFsaWNBbmdsZSAwCi9NYXhXaWR0aCAxMzQyIC9TdGVtViAwIC9UeXBlIC9Gb250RGVzY3JpcHRvciAvWEhlaWdodCAwID4+CmVuZG9iagoxOCAwIG9iagpbIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwCjYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgMzE4IDQwMSA0NjAgODM4IDYzNgo5NTAgNzgwIDI3NSAzOTAgMzkwIDUwMCA4MzggMzE4IDM2MSAzMTggMzM3IDYzNiA2MzYgNjM2IDYzNiA2MzYgNjM2IDYzNiA2MzYKNjM2IDYzNiAzMzcgMzM3IDgzOCA4MzggODM4IDUzMSAxMDAwIDY4NCA2ODYgNjk4IDc3MCA2MzIgNTc1IDc3NSA3NTIgMjk1CjI5NSA2NTYgNTU3IDg2MyA3NDggNzg3IDYwMyA3ODcgNjk1IDYzNSA2MTEgNzMyIDY4NCA5ODkgNjg1IDYxMSA2ODUgMzkwIDMzNwozOTAgODM4IDUwMCA1MDAgNjEzIDYzNSA1NTAgNjM1IDYxNSAzNTIgNjM1IDYzNCAyNzggMjc4IDU3OSAyNzggOTc0IDYzNCA2MTIKNjM1IDYzNSA0MTEgNTIxIDM5MiA2MzQgNTkyIDgxOCA1OTIgNTkyIDUyNSA2MzYgMzM3IDYzNiA4MzggNjAwIDYzNiA2MDAgMzE4CjM1MiA1MTggMTAwMCA1MDAgNTAwIDUwMCAxMzQyIDYzNSA0MDAgMTA3MCA2MDAgNjg1IDYwMCA2MDAgMzE4IDMxOCA1MTggNTE4CjU5MCA1MDAgMTAwMCA1MDAgMTAwMCA1MjEgNDAwIDEwMjMgNjAwIDUyNSA2MTEgMzE4IDQwMSA2MzYgNjM2IDYzNiA2MzYgMzM3CjUwMCA1MDAgMTAwMCA0NzEgNjEyIDgzOCAzNjEgMTAwMCA1MDAgNTAwIDgzOCA0MDEgNDAxIDUwMCA2MzYgNjM2IDMxOCA1MDAKNDAxIDQ3MSA2MTIgOTY5IDk2OSA5NjkgNTMxIDY4NCA2ODQgNjg0IDY4NCA2ODQgNjg0IDk3NCA2OTggNjMyIDYzMiA2MzIgNjMyCjI5NSAyOTUgMjk1IDI5NSA3NzUgNzQ4IDc4NyA3ODcgNzg3IDc4NyA3ODcgODM4IDc4NyA3MzIgNzMyIDczMiA3MzIgNjExIDYwNQo2MzAgNjEzIDYxMyA2MTMgNjEzIDYxMyA2MTMgOTgyIDU1MCA2MTUgNjE1IDYxNSA2MTUgMjc4IDI3OCAyNzggMjc4IDYxMiA2MzQKNjEyIDYxMiA2MTIgNjEyIDYxMiA4MzggNjEyIDYzNCA2MzQgNjM0IDYzNCA1OTIgNjM1IDU5MiBdCmVuZG9iagoyMSAwIG9iago8PCAvZWlnaHQgMjIgMCBSIC9mb3VyIDIzIDAgUiAvb25lIDI1IDAgUiAvcGFyZW5sZWZ0IDI2IDAgUgovcGFyZW5yaWdodCAyNyAwIFIgL3BlcmlvZCAyOCAwIFIgL3NpeCAyOSAwIFIgL3QgMzAgMCBSIC90d28gMzEgMCBSCi96ZXJvIDMyIDAgUiA+PgplbmRvYmoKMyAwIG9iago8PCAvRjEgMjAgMCBSIC9GMiAxNCAwIFIgPj4KZW5kb2JqCjQgMCBvYmoKPDwgL0ExIDw8IC9DQSAwIC9UeXBlIC9FeHRHU3RhdGUgL2NhIDEgPj4KL0EyIDw8IC9DQSAxIC9UeXBlIC9FeHRHU3RhdGUgL2NhIDEgPj4gPj4KZW5kb2JqCjUgMCBvYmoKPDwgPj4KZW5kb2JqCjYgMCBvYmoKPDwgPj4KZW5kb2JqCjcgMCBvYmoKPDwgL0YxLURlamFWdVNhbnMtbWludXMgMjQgMCBSID4+CmVuZG9iagoyIDAgb2JqCjw8IC9Db3VudCAxIC9LaWRzIFsgMTAgMCBSIF0gL1R5cGUgL1BhZ2VzID4+CmVuZG9iagozMyAwIG9iago8PCAvQ3JlYXRpb25EYXRlIChEOjIwMjEwNDIxMTIzOTI1KzAyJzAwJykKL0NyZWF0b3IgKE1hdHBsb3RsaWIgdjMuMy40LCBodHRwczovL21hdHBsb3RsaWIub3JnKQovUHJvZHVjZXIgKE1hdHBsb3RsaWIgcGRmIGJhY2tlbmQgdjMuMy40KSA+PgplbmRvYmoKeHJlZgowIDM0CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAwMDAxNiAwMDAwMCBuIAowMDAwMDA5ODI3IDAwMDAwIG4gCjAwMDAwMDk1OTQgMDAwMDAgbiAKMDAwMDAwOTYzNyAwMDAwMCBuIAowMDAwMDA5NzM2IDAwMDAwIG4gCjAwMDAwMDk3NTcgMDAwMDAgbiAKMDAwMDAwOTc3OCAwMDAwMCBuIAowMDAwMDAwMDY1IDAwMDAwIG4gCjAwMDAwMDAzOTcgMDAwMDAgbiAKMDAwMDAwMDIwOCAwMDAwMCBuIAowMDAwMDAyOTc4IDAwMDAwIG4gCjAwMDAwMDM5OTMgMDAwMDAgbiAKMDAwMDAwMzc4NSAwMDAwMCBuIAowMDAwMDAzNDYyIDAwMDAwIG4gCjAwMDAwMDUwNDYgMDAwMDAgbiAKMDAwMDAwMjk5OSAwMDAwMCBuIAowMDAwMDAzMjUwIDAwMDAwIG4gCjAwMDAwMDgzODEgMDAwMDAgbiAKMDAwMDAwODE4MSAwMDAwMCBuIAowMDAwMDA3Nzk4IDAwMDAwIG4gCjAwMDAwMDk0MzQgMDAwMDAgbiAKMDAwMDAwNTA4OCAwMDAwMCBuIAowMDAwMDA1NTUzIDAwMDAwIG4gCjAwMDAwMDU3MTUgMDAwMDAgbiAKMDAwMDAwNTg4NSAwMDAwMCBuIAowMDAwMDA2MDM3IDAwMDAwIG4gCjAwMDAwMDYyNTcgMDAwMDAgbiAKMDAwMDAwNjQ3OSAwMDAwMCBuIAowMDAwMDA2NjAwIDAwMDAwIG4gCjAwMDAwMDY5OTAgMDAwMDAgbiAKMDAwMDAwNzE5NCAwMDAwMCBuIAowMDAwMDA3NTE1IDAwMDAwIG4gCjAwMDAwMDk4ODcgMDAwMDAgbiAKdHJhaWxlcgo8PCAvSW5mbyAzMyAwIFIgL1Jvb3QgMSAwIFIgL1NpemUgMzQgPj4Kc3RhcnR4cmVmCjEwMDQ0CiUlRU9GCg==\n", "image/svg+xml": [ "\n", "\n", "\n", "\n", " \n", " \n", " \n", " \n", " 2021-04-21T12:39:25.322316\n", " image/svg+xml\n", " \n", " \n", " Matplotlib v3.3.4, https://matplotlib.org/\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n" ], "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "tau = -1\n", "y = x.subs(t, tau - t)\n", "\n", "px = sym.plot(x, (t, -5, 5), ylim=[-0.2, 1.2],\n", " ylabel=r'$x(t)$', show=False, line_color='gray')\n", "py = sym.plot(y, (t, -5, 5), ylim=[-0.2, 1.2], ylabel=r'$y(t)$', show=False)\n", "py.extend(px)\n", "py.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Excercise**\n", "\n", "* For what value $\\tau$ does the flipped signal $y(t)$ start at $t=0$?\n", "* Realize the temporal flipping by splitting it into two consecutive operations: (i) time-reversal and (ii) temporal shift." ] }, { "cell_type": "markdown", "metadata": { "nbsphinx": "hidden" }, "source": [ "**Copyright**\n", "\n", "This notebook is provided as [Open Educational Resource](https://en.wikipedia.org/wiki/Open_educational_resources). Feel free to use the notebook for your own purposes. The text is licensed under [Creative Commons Attribution 4.0](https://creativecommons.org/licenses/by/4.0/), the code of the IPython examples under the [MIT license](https://opensource.org/licenses/MIT). Please attribute the work as follows: *Sascha Spors, Continuous- and Discrete-Time Signals and Systems - Theory and Computational Examples*." ] } ], "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.7.10" } }, "nbformat": 4, "nbformat_minor": 1 }