Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
L
lecture-tutorials
Manage
Activity
Members
Plan
Wiki
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Locked files
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Terraform modules
Analyze
Contributor analytics
Repository analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
ACS
Public
Teaching materials
Systemtheorie 2
lecture-tutorials
Commits
730e9c13
Commit
730e9c13
authored
10 months ago
by
Sebastian Schwarz
Browse files
Options
Downloads
Patches
Plain Diff
update notebook V02.1.ipynb
parent
774d9d2c
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
sys2-jupyter-notebooks/exam_examples/V02.1.ipynb
+43
-31
43 additions, 31 deletions
sys2-jupyter-notebooks/exam_examples/V02.1.ipynb
with
43 additions
and
31 deletions
sys2-jupyter-notebooks/exam_examples/V02.1.ipynb
+
43
−
31
View file @
730e9c13
...
...
@@ -82,7 +82,7 @@
},
{
"cell_type": "code",
"execution_count":
3
,
"execution_count":
null
,
"metadata": {},
"outputs": [
{
...
...
@@ -156,16 +156,6 @@
" 0 6 24 78 240\n",
"\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<IPython.core.display.Image object>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
...
...
@@ -196,7 +186,7 @@
},
{
"cell_type": "code",
"execution_count":
4
,
"execution_count":
5
,
"metadata": {},
"outputs": [
{
...
...
@@ -235,7 +225,7 @@
},
{
"cell_type": "code",
"execution_count":
5
,
"execution_count":
6
,
"metadata": {},
"outputs": [
{
...
...
@@ -266,7 +256,7 @@
},
{
"cell_type": "code",
"execution_count":
6
,
"execution_count":
7
,
"metadata": {},
"outputs": [
{
...
...
@@ -295,24 +285,54 @@
},
{
"cell_type": "code",
"execution_count":
7
,
"execution_count":
8
,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Symbolic pkg v2.9.0: Python communication link active, SymPy v1.5.1.\n",
"F1 = (sym)\n",
"Symbolic pkg v2.8.0: Python communication link active, SymPy v1.5.1.\n"
]
}
],
"source": [
"pkg load symbolic\n",
"syms z"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"F = (sym)\n",
"\n",
" 6⋅z \n",
" ────────────\n",
" 2 \n",
" z - 4⋅z + 3\n",
"\n",
"F2 = (sym)\n",
"F1 = (sym)\n",
"\n",
" 6 \n",
" ────────────\n",
" 2 \n",
" z - 4⋅z + 3\n",
"\n",
"G1 = (sym)\n",
"\n",
" 3 9 \n",
" 3 3 \n",
" - ───── + ─────\n",
" z - 1 z - 3\n",
"\n",
"Gs = (sym)\n",
"\n",
" 3⋅z 3⋅z \n",
" - ───── + ─────\n",
" z - 1 z - 3\n",
"\n"
...
...
@@ -320,11 +340,10 @@
}
],
"source": [
"pkg load symbolic\n",
"\n",
"syms z\n",
"F1 = 6*z/(z^2 - 4*z +3)\n",
"F2 = partfrac(F1)\n"
"F= 6*z/(z^2-4*z+3)\n",
"F1 = F*1/z\n",
"G1 = partfrac(F1)\n",
"Gs = expand(G1*z)"
]
},
{
...
...
@@ -372,13 +391,6 @@
"plot(k,x2(1:5))"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
...
...
%% Cell type:markdown id: tags:
# <span style='color:OrangeRed'>V2 Z-TRANSFORMATION </span>
%% Cell type:markdown id: tags:
<div
style=
"font-family: 'times'; font-size: 13pt; text-align: justify"
>
Hier vergleichen und überprüfen wir verschiedene Methoden zur Berechnung der Inverse der z-Transformation.
%% Cell type:code id: tags:
```
octave
% Necessary to use control toolbox
pkg load control
clear all
```
%% Cell type:markdown id: tags:
<div
style=
"font-family: 'times'; font-size: 13pt; text-align: justify"
>
Ein bestimmtes Signal wird durch seine z-Transformation beschrieben, für die wir Zähler und Nenner kennen.
%% Cell type:code id: tags:
```
octave
num = [6 0]
den = [1 -4 3]
G = tf(num,den,1)
```
%% Output
num =
6 0
den =
1 -4 3
Transfer function 'G' from input 'u1' to output ...
6 z
y1: -------------
z^2 - 4 z + 3
Sampling time: 1 s
Discrete-time model.
%% Cell type:markdown id: tags:
<div
style=
"font-family: 'times'; font-size: 13pt; text-align: justify"
>
Erste Option ist eine Potenzreihenentwicklung, d.h. wir wenden die Division von Zähler und Nenner mehrfach an:
%% Cell type:code id: tags:
```
octave
k=0:4;
[x(1) r] = deconv(num,den)
for j = 1:4
numnew = conv(r,[1 0])
[p r] = deconv(numnew,den)
x(j+1) = p(length(p))
end
plot(k,x)
```
%% Output
x = 0
r =
6 0
numnew =
6 0 0
p = 6
r =
0 24 -18
x =
0 6
numnew =
0 24 -18 0
p =
0 24
r =
0 0 78 -72
x =
0 6 24
numnew =
0 0 78 -72 0
p =
0 0 78
r =
0 0 0 240 -234
x =
0 6 24 78
numnew =
0 0 0 240 -234 0
p =
0 0 0 240
r =
0 0 0 0 726 -720
x =
0 6 24 78 240
%% Cell type:markdown id: tags:
<div
style=
"font-family: 'times'; font-size: 13pt; text-align: justify"
>
Zunächst beginnen wir mit der Partialbruchzerlegung. In Matlab/Octave gibt es die Funktion
<code>
residue
</code>
.
Diese Funktion wird verwendet, um einen Bruch in Terme des Typs a/(z-b) zu zerlegen.
Dann müssen wir zunächst den Zähler durch z dividieren und dann die Funktion verwenden.
%% Cell type:code id: tags:
```
octave
numz = deconv(num, [1 0])
[r,p,q]=residue(numz,den)
```
%% Output
numz = 6
r =
3.0000
-3.0000
p =
3
1
q = [](0x0)
%% Cell type:markdown id: tags:
<div
style=
"font-family: 'times'; font-size: 13pt; text-align: justify"
>
r sind die Koeffizienten für die Zähler, p sind die Pole
das Signal ist dann die Summe von Termen des Typs r
*
p^k
%% Cell type:code id: tags:
```
octave
npoles = length(p)
for i=1:npoles
s(i,:) = r(i).*p(i).^k
end
```
%% Output
npoles = 2
s =
3.0000 9.0000 27.0000 81.0000 243.0000
s =
3.0000 9.0000 27.0000 81.0000 243.0000
-3.0000 -3.0000 -3.0000 -3.0000 -3.0000
%% Cell type:code id: tags:
```
octave
plot(k,s(1,:),k,s(2,:),k,s(1,:)+s(2,:))
```
%% Output
%% Cell type:markdown id: tags:
<div
style=
"font-family: 'times'; font-size: 13pt; text-align: justify"
>
Wir können das Ergebnis auch mit Hilfe der symbolischen Toolbox überprüfen.
%% Cell type:code id: tags:
```
octave
pkg load symbolic
syms z
F1 = 6*z/(z^2 - 4*z +3)
F2 = partfrac(F1)
```
%% Output
Symbolic pkg v2.9.0: Python communication link active, SymPy v1.5.1.
F1 = (sym)
Symbolic pkg v2.8.0: Python communication link active, SymPy v1.5.1.
%% Cell type:code id: tags:
```
octave
F= 6*z/(z^2-4*z+3)
F1 = F*1/z
G1 = partfrac(F1)
Gs = expand(G1*z)
```
%% Output
F = (sym)
6⋅z
────────────
2
z - 4⋅z + 3
F
2
= (sym)
F
1
= (sym)
3 9
6
────────────
2
z - 4⋅z + 3
G1 = (sym)
3 3
- ───── + ─────
z - 1 z - 3
Gs = (sym)
3⋅z 3⋅z
- ───── + ─────
z - 1 z - 3
%% Cell type:markdown id: tags:
<div
style=
"font-family: 'times'; font-size: 13pt; text-align: justify"
>
Per Definition ist dies auch die Impulsantwort der Übertragungsfunktion, was wir wiederum mit der Funktion
<code>
impulse
</code>
aus Matlab/Octave überprüfen können.
%% Cell type:code id: tags:
```
octave
x2 = impulse(G)
plot(k,x2(1:5))
```
%% Output
x2 =
0
6
24
78
240
726
%% Cell type:code id: tags:
```
octave
```
%% Cell type:code id: tags:
```
octave
```
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment