GDET3 z-Transformation GUI.ipynb 4.19 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "jupyter": {
     "source_hidden": true
    }
   },
   "outputs": [],
   "source": [
    "# Copyright 2019 Institut für Nachrichtentechnik, RWTH Aachen University\n",
    "%matplotlib widget\n",
    "\n",
    "\n",
    "from ient_nb.ient_signals import *\n",
    "from ient_nb.ient_plots import *\n",
    "from ient_nb.ient_transforms import *\n",
    "\n",
    "from src.z_transform.z_transform import zPlot\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import matplotlib.gridspec as gridspec\n",
    "import numpy as np"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<div>\n",
    "    <img src=\"ient_nb/figures/rwth_ient_logo@2x.png\" style=\"float: right;height: 5em;\">\n",
    "</div>\n",
    "\n",
36
    "# $z$-Transformation\n",
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
    "\n",
    "Zum Starten: Im Menü: Run <span class=\"fa-chevron-right fa\"></span> Run All Cells auswählen."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Interaktive Demo"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "jupyter": {
     "source_hidden": true
    }
   },
   "outputs": [],
   "source": [
58
59
    "fig = plt.figure(figsize=(10, 10/16*9))\n",
    "zp = zPlot(fig)"
60
61
62
63
64
65
66
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Anleitung\n",
67
68
69
    "In dieser interaktiven Demo kann das Pol-/Nullstellen-Diagramm, die zugehörige Impulsantwort sowie der Betrag der Übertragungsfunktion für verschiedene Filter betrachtet werden. Hierbei kann das Filter durch manuelles Hinzufügen und Löschen von Polen und Nullstellen definiert werden. \n",
    "\n",
    "Über den Schieberegler kann der Wert für $H_0$ angepasst werden. \n",
70
71
72
73
74
75
    "\n",
    "Bei *Modus* kann die Position des Konvergenzbereichs geändert werden, indem die entsprechende Option eingestellt und im Pol-/Nullstellendiagramm auf den Bereich geklickt wird, der der neue Konvergenzbereich sein soll. \n",
    "\n",
    "Ähnlich können auch Pol- und Nullstellen hinzugefügt oder gelöscht werden. Bei *Typ* wird eingestellt, ob es sich um eine Pol- oder Nullstelle handeln soll und unter *Modus* wird dann *hinzufügen* oder *löschen* ausgewählt. Durch Klicken im Pol-/Nullstellendiagramm können nun Pol- und Nullstellen hinzugefügt oder gelöscht werden. Entsprechend ändern sich dann auch die zugehörige Impulsantwort und Übertragungsfunktion.\n",
    "\n",
    "### Aufgaben\n",
76
    "* Zunächst ist weder eine Pol-, noch eine Nullstelle vorhanden. Wie sehen Impulsantwort und Übertragungsfunktion aus? Welche Auswirkung hat das Ändern von $H_0$?\n",
77
    "\n",
78
    "* Erstelle eine Polstelle auf dem Einheitskreis. Welche Auswirkung hat diese auf die Übertragungsfunktion?\n",
79
80
    "\n",
    "* Erstelle ein Pol-/Nullstellendiagram mit mehreren möglichen Polstellen. Ändere den Konvergenzbereich. Wann existiert eine Übertragungsfunktion?\n",
81
82
    "\n",
    "* Teste verschiedene Kombinationen von Pol- und Nullstellen und ihre Auswirkungen auf Impulsantwort und Übertragungsfunktion. Welche Auswirkung hat das Ändern von $H_0$ jetzt? \n",
83
84
85
86
87
88
89
90
91
92
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "This notebook is provided as [Open Educational Resource](https://en.wikipedia.org/wiki/Open_educational_resources) (OER). Feel free to use the notebook for your own purposes. The code is licensed under the [MIT license](https://opensource.org/licenses/MIT). \n",
    "\n",
    "Please attribute the work as follows: \n",
93
    "*Emin Kosar, Christian Rohlfing, Übungsbeispiele zur Vorlesung \"Grundgebiete der Elektrotechnik 3 - Signale und Systeme\"*, gehalten von Jens-Rainer Ohm, 2020, Institut für Nachrichtentechnik, RWTH Aachen University."
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
   ]
  }
 ],
 "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",
113
   "version": "3.7.6"
114
115
116
117
118
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}