import matplotlib
import matplotlib.pyplot as plt
import numpy as np
import warnings
# Ignore all warnings
warnings.simplefilter('ignore')
Bestimme die Transformation in den Bildbereich mittels der angegebenen Korrespondenz (dargestellt mittels $\leftrightarrow$)
- $f(t) = \mathrm{e}^{-at^2}$ mit $\mathrm{e}^{-t^2} \leftrightarrow \sqrt{\pi} \mathrm{e}^{-\frac{\omega^2}{4}}$
- $f(t) = \sigma(t) - \sigma(t-2a)$ mit $\sigma(t+a) - \sigma(t-a) \leftrightarrow\dfrac{2\sin(\omega a)}{\omega}$
- $f(t) = t \mathrm{e}^{-5t} \sigma(t)$ mit $\mathrm{e}^{-5t} \sigma(t) \leftrightarrow \dfrac{1}{5 + j\omega}$
- $f(t) = \mathrm{e}^{-a|t|}$ mit $\dfrac{1}{a^2 + t^2} \leftrightarrow \dfrac{\pi \mathrm{e}^{-a |\omega|}}{a}$
- $f(t) = \delta(t-T) \quad T > 0$ mit $\delta(t) \leftrightarrow 1$
- $f(t) = \sin(\omega_0 t + \varphi)$ mit $\sin(t) \leftrightarrow \dfrac{1}{s^2 + 1}$
- $f(t) = 2^{3t}$ mit $1 \leftrightarrow \dfrac{1}{s}$
- $f(t) = \int_0^t \cos(u) \mathrm{d}{u}$ mit $\cos(t) \leftrightarrow \dfrac{s}{s^2 + 1}$
Fourier-Transformation¶
- Beispiel: Ähnlichkeitssatz mit $t \rightarrow \sqrt{a}t$, Lösung: $$F(\omega) = \sqrt{\frac{\pi}{a}}\mathrm{e}^{-\frac{\omega^2}{4a}}$$
- Beispiel: Zeitverschiebung nach rechts mit $a$, Lösung: $$F(\omega) = \dfrac{2 \sin(\omega a) \mathrm{e}^{-j\omega a}}{\omega}$$
- Beispiel: Ableitung im Bildbereich, Lösung: $$F(\omega) = \dfrac{1}{(5 + j\omega)^2}$$
- Beispiel: Vertauschungssatz, Lösung: $$F(\omega) = \dfrac{2a}{a^2 + \omega^2}$$
t = np.linspace(0,2,201)
w = np.linspace(-2,2,201)
a = 2
ft_orig = np.exp(-t**2)
ft_new = np.exp(-a*t**2)
fw_orig = np.sqrt(np.pi) * np.exp(-w**2/(4))
fw_new = np.sqrt(np.pi/a) * np.exp(-w**2/(4*a))
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(t, ft_new, label='transfomiert')
cax.plot(t, ft_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$t$')
cax.legend()
cax = axs[1]
cax.plot(w, fw_new, label='transformiert')
cax.plot(w, fw_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$\omega$')
cax.legend()
fig.suptitle('Beispiel 1')
plt.show()
t = np.linspace(-2,4,601)
w = np.linspace(-4,4,801)
a = 1.5
ft_orig = np.heaviside(t+a,1) - np.heaviside(t-a,1)
ft_new = np.heaviside(t,1) - np.heaviside(t-2*a,1)
fw_orig = 2*np.sin(w*a)/w
fw_new = 2*np.sin(w*a)/w*np.exp(-1j*w*a)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(t, ft_new, label='transfomiert')
cax.plot(t, ft_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$t$')
cax.legend()
cax = axs[1]
cax.plot(w, fw_new, label='transformiert')
cax.plot(w, fw_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$\omega$')
cax.legend()
fig.suptitle('Beispiel 2')
plt.show()
t = np.linspace(0,2,201)
w = np.linspace(-2,2,201)
ft_orig = np.exp(-5*t)
ft_new = t*np.exp(-5*t)
fw_orig = 1/(5 + 1j*w)
fw_new = 1/(5 + 1j*w)**2
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(t, ft_new, label='transfomiert')
cax.plot(t, ft_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$t$')
cax.legend()
cax = axs[1]
cax.plot(w, np.abs(fw_new), label='transformiert')
cax.plot(w, np.abs(fw_orig), linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$\omega$')
cax.legend()
fig.suptitle('Beispiel 3')
plt.show()
t = np.linspace(0,2,201)
w = np.linspace(0,2,201)
a = 3
ft_orig = 1/(a**2 + t**2)
ft_new = np.exp(-a*t)
fw_orig = np.pi*np.exp(-a*np.abs(w))/a
fw_new = 2*a/(a**2 + w**2)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(t, ft_new, label='transfomiert')
cax.plot(t, ft_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$t$')
cax.legend()
cax = axs[1]
cax.plot(w, fw_new, label='transformiert')
cax.plot(w, fw_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$\omega$')
cax.legend()
fig.suptitle('Beispiel 4')
plt.show()
Laplace-Transformation¶
- Beispiel: Zeitverschiebung um $T$ nach rechts, Lösung: $$L(s) = \mathrm{e}^{-sT}$$
- Beispiel: Verschiebung um $\varphi$ nach links und Ähnlichkeitssatz mit $\omega_0$, Lösung: $$L(s) = \dfrac{s \sin(\varphi) + \omega_0 \cos(\varphi)}{s^2 + \omega_0^2}$$
- Beispiel: Dämpfung mit $\mathrm{e}^{3 \ln(2)t}$, Lösung: $$L(\omega) = \dfrac{1}{s - 3 \ln(2)}$$
- Beispiel: Integral im Zeitbereich, Lösung: $$L(s) = \dfrac{1}{s^2 + 1}$$
t = np.linspace(0,4,401)
s = np.linspace(-4,4,801)
w0 = np.pi/4
phi = np.pi/3
ft_orig = np.sin(t)
ft_new = np.sin(w0*t + phi)
ls_orig = 1/(s**2 + 1)
ls_new = (s*np.sin(phi) + w0*np.cos(phi))/(s**2 + w0**2)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(t, ft_new, label='transfomiert')
cax.plot(t, ft_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$t$')
cax.legend()
cax = axs[1]
cax.plot(s, ls_new, label='transformiert')
cax.plot(s, ls_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$s$')
cax.legend()
fig.suptitle('Beispiel 6')
plt.show()
t = np.linspace(0,1,101)
s = np.linspace(-1,3,401)
ft_orig = np.ones_like(t)
ft_new = 2**(3*t)
ls_orig = 1/s
ls_new = 1/(s - 3*np.log(2))
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(t, ft_new, label='transfomiert')
cax.plot(t, ft_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$t$')
cax.legend()
cax = axs[1]
cax.plot(s, ls_new, label='transformiert')
cax.plot(s, ls_orig, linestyle='--', label='Korrespondenz')
cax.grid()
cax.set_xlabel('$s$')
cax.legend()
cax.set_ylim([-100,100])
fig.suptitle('Beispiel 7')
plt.show()
Bestimme die Rücktransformation in den Originalbereich.
- $\mathcal{L}(s) = \dfrac{1}{s^2 + 25} - \dfrac{3s}{s^2 - 1}$
- $\mathcal{L}(s) = \dfrac{1}{(s-5)^3} + \dfrac{2s}{s^2 + 25} + \dfrac{5}{(s-3)^2 + 1}$
- $\mathcal{L}(s) = \dfrac{\hat{u}}{\tau} \dfrac{\omega_0}{s^2 + \omega_0^2} \dfrac{1}{s + \tau^{-1}} \quad \hat{u}, \tau, \omega_0 \text{ sind konstant}$
- $\mathcal{L}(s) = \dfrac{s^3 + 2s^2 + 2}{s^2(s-1)(s+3)}$
- $F(\omega) = \dfrac{2}{5+j\omega} - \dfrac{3}{(2+j\omega)}$
- $F(\omega) = \dfrac{6}{(2+j\omega)^2} - \dfrac{\pi \mathrm{e}^{-5|\omega|}}{5} + \dfrac{8}{4+\omega^2} $
- $F(\omega) = \dfrac{K \mathrm{e}^{-j \omega T_1}}{1 + j \omega T_2}$
- $F(\omega) = \dfrac{3}{(2+j\omega) (5+j\omega)}$
- Beispiel, Rücktransformation mittels Tabellen, Lösung: $$f(t) = \dfrac{\sin(5t)}{5} - 3 \mathrm{cosh}(t)$$
- Beispiel, Rücktransformation mittels Tabellen, Lösung: $$f(t) = \dfrac{t^2 \mathrm{e}^{5t}}{2} + 2\cos(5t) + 5 \mathrm{e}^{3t}\sin(t)$$
- Beispiel, Rücktransformation mittels Faltungssatz und Tabellen, Lösung: $$f(t) = \dfrac{\hat{u}}{1 + (\omega_0 \tau)^2}\left[\sin(\omega_0t) - \omega_0 \tau \cos(\omega_0 t) + \omega_0 \tau \mathrm{e}^{-\frac{t}{\tau}}\right]$$
- Beispiel, Rücktransformation mittels Partialbruchzerlegung und Tabellen, Lösung: $$f(t) = -\dfrac{4}{9} - \dfrac{2t}{3} + \dfrac{5 \mathrm{e}^{t}}{4} + \dfrac{7 \mathrm{e}^{-3t}}{36}$$
t = np.linspace(0,1,101)
s = np.linspace(1.1,5,401)
ft = np.sin(5*t)/5 - 3*np.cosh(t)
ls = 1/(s**2 +25) - 3*s/(s**2 - 1)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(s, ls)
cax.grid()
cax.set_xlabel('$s$')
cax = axs[1]
cax.plot(t, ft)
cax.grid()
cax.set_xlabel('$t$')
fig.suptitle('Beispiel 1')
plt.show()
t = np.linspace(0,1,101)
s = np.linspace(5.5,10,501)
ft = t**2*np.exp(5*t)/2 + 2*np.cos(5*t) + 5*np.exp(3*t)*np.sin(t)
ls = 1/(s-5)**3 + 2*s/(s**2 + 25) + 5/((s-3)**2+1)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(s, ls)
cax.grid()
cax.set_xlabel('$s$')
cax = axs[1]
cax.plot(t, ft)
cax.grid()
cax.set_xlabel('$t$')
fig.suptitle('Beispiel 2')
plt.show()
t = np.linspace(0,10,1001)
s = np.linspace(0,5,501)
uhat = 10
tau = 0.5
w0 = 4
ft = uhat/(1 +w0**2*tau**2)*(np.sin(w0*t) - w0*tau*np.cos(w0*t) + w0*tau*np.exp(-t/tau))
ls = uhat/tau * w0/(s**2 + w0**2)*1/(s + 1/tau)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(s, ls)
cax.grid()
cax.set_xlabel('$s$')
cax = axs[1]
cax.plot(t, ft)
cax.grid()
cax.set_xlabel('$t$')
fig.suptitle('Beispiel 3')
plt.show()
t = np.linspace(0,1,101)
s = np.linspace(2,7,501)
ft = -4/9 - 2*t/3 + 5/4*np.exp(t) + 7/36*np.exp(-3*t)
ls = (s**3 + 2*s**2 +2)/(s**2)/(s-1)/(s+3)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(s, ls)
cax.grid()
cax.set_xlabel('$s$')
cax = axs[1]
cax.plot(t, ft)
cax.grid()
cax.set_xlabel('$t$')
fig.suptitle('Beispiel 4')
plt.show()
- Beispiel, Rücktransformation mittels Tabellen, Lösung: $$f(t) = (2\mathrm{e}^{-5t} - 3\mathrm{e}^{-2t})\sigma(t)$$
- Beispiel, Rücktransformation mittels Tabellen, Lösung: $$f(t) = 6t\mathrm{e}^{-2t} \sigma(t) - \dfrac{1}{25 + t^2} + 2 \mathrm{e}^{-2|t|}$$
- Beispiel, Rücktransformation mittels Faltungssatz oder Zeitverschiebung und Tabellen, Lösung: $$f(t) = \dfrac{K}{T_2}\mathrm{e}^{-\frac{t-T_1}{T_2}} \sigma(t-T_1)$$
- Beispiel, Rücktransformation mittels Partialbruchzerlegung und Tabellen, Lösung: $$f(t) = (\mathrm{e}^{-2t} - \mathrm{e}^{-5t})\sigma(t)$$
t = np.linspace(-1,3,401)
w = np.linspace(-2,2,401)
ft = (2*np.exp(-5*t) - 3*np.exp(-2*t))*np.heaviside(t,1)
fw = 2/(5+1j*w) - 3/(2 + 1j*w)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(w, fw)
cax.grid()
cax.set_xlabel('$\omega$')
cax = axs[1]
cax.plot(t, ft)
cax.grid()
cax.set_xlabel('$t$')
fig.suptitle('Beispiel 5')
plt.show()
t = np.linspace(-4,4,801)
w = np.linspace(-2,2,401)
ft = 6*t*np.exp(-2*t)*np.heaviside(t,1) - 1/(25 + t**2) + 2*np.exp(-2*np.abs(t))
fw = 6/(2+1j*w)**2 - np.pi/5*np.exp(-5*np.abs(w)) + 8/(4+w**2)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(w, fw)
cax.grid()
cax.set_xlabel('$\omega$')
cax = axs[1]
cax.plot(t, ft)
cax.grid()
cax.set_xlabel('$t$')
fig.suptitle('Beispiel 6')
plt.show()
t = np.linspace(0,4,401)
w = np.linspace(-2,2,401)
K = 0.1
T1 = 1
T2 = 2
ft = K/T2*np.exp(-(t-T1)/T2)*np.heaviside(t-T1,1)
fw = K/(1 + 1j*w*T2)*np.exp(-1j*w*T1)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(w, fw)
cax.grid()
cax.set_xlabel('$\omega$')
cax = axs[1]
cax.plot(t, ft)
cax.grid()
cax.set_xlabel('$t$')
fig.suptitle('Beispiel 7')
plt.show()
t = np.linspace(0,2,201)
w = np.linspace(-2,2,401)
ft = np.exp(-2*t) - np.exp(-5*t)
fw = 3/(2+1j*w)/(5+1j*w)
fig, axs = plt.subplots(1,2,figsize=(12,4))
cax = axs[0]
cax.plot(w, fw)
cax.grid()
cax.set_xlabel('$\omega$')
cax = axs[1]
cax.plot(t, ft)
cax.grid()
cax.set_xlabel('$t$')
fig.suptitle('Beispiel 8')
plt.show()
Ein Stromkreis mit einen ohmschen Widerstand $R$ und eine Induktivität $L$ erfährt eine von außen angelegte Spannung von $u(t) = k t$ mit $k > 0$. Bestimme den zeitlichen Verlauf der Stromstärke, wenn der Stromkreis im Einschaltzeitpunkt $t=0$ stromlos ist. Der Stromkreis kann mittels folgender DGL beschrieben werden: $$L \dfrac{\mathrm{d}{i(t)}}{\mathrm{d}{t}} + R i(t) = u(t)$$
Lösung: $$ i(t) = \dfrac{kL}{R^2} \left(\mathrm{e}^{-\frac{Rt}{L}} + \dfrac{Rt}{L} - 1\right) \qquad t \geq 0$$
t = np.linspace(0,0.5,501)
R = 10
L = 4
k = 2
it = k*L/R**2*(np.exp(-R/L*t) + R/L*t - 1)
fig, ax = plt.subplots(1,1,figsize=(8,3))
ax.plot(t,it)
ax.set_xlabel('$t$')
ax.set_ylabel('$i(t)$')
ax.grid()
plt.show()
Ein schwingungsfähiges, gedämpftes Feder-Masse-System mit der Masse $m =50 kg$, der Federkonstanten $c = 10,2 \frac{kN}{m}$ und der Dämpferkonstanten $b = 2000 \frac{kg}{s}$ wird zur Zeit $t = 0$ aus der Gleichgewichtelage heraus mit der Geschwindigkeit $v_0 = 2,8 \frac{m}{s}$ angestoßen. Untersuche die Bewegung der Masse mit Hilfe der Schwingungsgleichung $$m \ddot{x} + b \dot{x} +cx = 0$$
Lösung: $$ x(t) = 0,2 \cdot \mathrm{e}^{-20t} \sinh(14t) \qquad t \geq 0$$
t = np.linspace(0,0.5,501)
xt = 0.2*np.exp(-20*t)*np.sinh(14*t)
fig, ax = plt.subplots(1,1,figsize=(8,3))
ax.plot(t,xt)
ax.set_xlabel('$t$')
ax.set_ylabel('$x(t)$')
ax.grid()
plt.show()