Applets:Komplementäre Gaußsche Fehlerfunktionen: Unterschied zwischen den Versionen
Zeile 1: | Zeile 1: | ||
{{LntAppletLinkDeEn|qfunction|qfunction_en}} | {{LntAppletLinkDeEn|qfunction|qfunction_en}} | ||
− | |||
Version vom 25. Februar 2021, 11:36 Uhr
Applet in neuem Tab öffnen Open English Version
Inhaltsverzeichnis
Programmbeschreibung
Dieses Applet ermöglicht die Berechnung und graphische Darstellung der (komplementären) Gaußschen Fehlerfunktionen ${\rm Q}(x)$ und $1/2\cdot {\rm erfc}(x)$, die für die Fehlerwahrscheinlichkeitsberechnung von großer Bedeutung sind.
- Sowohl die Abszisse als auch der Funktionswert können entweder linear oder logarithmisch dargestellt werden.
- Für beide Funktionen wird jeweils eine obere Schranke $($englisch: Upper Bound, $\rm UB)$ und eine untere Schranke $($englisch: Lower Bound, $\rm LB)$ angegeben.
Theoretischer Hintergrund
Bei der Untersuchung digitaler Übertragungssysteme muss oft die Wahrscheinlichkeit bestimmt werden, dass eine (mittelwertfreie) gaußverteilte Zufallsgröße $x$ mit der Varianz $σ^2$ einen vorgegebenen Wert $x_0$ überschreitet. Für diese Wahrscheinlichkeit gilt:
- $${\rm Pr}(x > x_0)={\rm Q}(\frac{x_0}{\sigma}) = 1/2 \cdot {\rm erfc}(\frac{x_0}{\sqrt{2} \cdot \sigma}).$$
Die Funktion ${\rm Q}(x )$
Die Funktion ${\rm Q}(x)$ bezeichnet man als das Komplementäre Gaußsche Fehlerintegral. Es gilt folgende Berechnungsvorschrift:
- $${\rm Q}(x ) = \frac{1}{\sqrt{2\pi}}\int_{x}^{ +\infty}\hspace{-0.2cm}{\rm e}^{-u^{2}/\hspace{0.05cm} 2}\,{\rm d} u .$$
- Dieses Integral ist nicht analytisch lösbar und muss – wenn man dieses Applet nicht zur Verfügung hat – aus Tabellen entnommen werden.
- Speziell für größere $x$–Werte (also für kleine Fehlerwahrscheinlichkeiten) liefern die nachfolgend angegebenen Schranken eine brauchbare Abschätzung für das Komplementäre Gaußsche Fehlerintegral, die auch ohne Tabellen berechnet werden können.
- Eine obere Schranke (englisch: Upper Bound ) des Komplementären Gaußschen Fehlerintegrals lautet:
- $${\rm Q}_{\rm UB}(x )=\text{Upper Bound }\big [{\rm Q}(x ) \big ] = \frac{ 1}{\sqrt{2\pi}\cdot x}\cdot {\rm e}^{- x^{2}/\hspace{0.05cm}2} > {\rm Q}(x).$$
- Entsprechend gilt für die untere Schranke (englisch: Lower Bound ):
- $${\rm Q}_{\rm LB}(x )=\text{Lower Bound }\big [{\rm Q}(x ) \big ] =\frac{1-1/x^2}{\sqrt{2\pi}\cdot x}\cdot {\rm e}^{-x^ 2/\hspace{0.05cm}2} ={\rm Q}_{\rm UB}(x ) \cdot (1-1/x^2)< {\rm Q}(x).$$
In vielen Programmbibliotheken findet man allerdings die Funktion ${\rm Q}(x )$ nicht.
Die Funktion $1/2 \cdot {\rm erfc}(x )$
In fast allen Programmbibliotheken findet man dagegen die Komplementäre Gaußsche Fehlerfunktion (englisch: Complementary Gaussian Error Function)
- $${\rm erfc}(x) = \frac{2}{\sqrt{\pi}}\int_{x}^{ +\infty}\hspace{-0.2cm}{\rm e}^{-u^{2}}\,{\rm d} u .$$
die mit ${\rm Q}(x)$ wie folgt zusammenhängt: ${\rm Q}(x)=1/2\cdot {\rm erfc}(x/{\sqrt{2}}).$
- Da bei fast allen Anwendungen diese Funktion mit dem Faktor $1/2$ verwendet wird, wurde in diesem Applet genau diese Funktion realisiert:
- $$1/2 \cdot{\rm erfc}(x) = \frac{1}{\sqrt{\pi}}\int_{x}^{ +\infty}\hspace{-0.2cm}{\rm e}^{-u^{2}}\,{\rm d} u .$$
- Auch für diese Funktion kann wieder eine obere und eine untere Schranke angegeben werden:
- $$\text{Upper Bound }\big [1/2 \cdot{\rm erfc}(x) \big ] = \frac{ 1}{\sqrt{\pi}\cdot 2x}\cdot {\rm e}^{- x^{2}} ,$$
- $$\text{Lower Bound }\big [1/2 \cdot{\rm erfc}(x) \big ] = \frac{ {1-1/(2x^2)}}{\sqrt{\pi}\cdot 2x}\cdot {\rm e}^{- x^{2}} .$$
Wann bietet welche Funktion Vorteile?
$\text{Beispiel 1:}$ Wir betrachten die binäre Basisbandübertragung. Hier lautet die Bitfehlerwahrscheinlichkeit $p_{\rm B} = {\rm Q}({s_0}/{\sigma_d})$, wobei das Nutzsignal die Werte $\pm s_0$ annehmen kann und der Rauscheffektivwert $\sigma_d$ ist.
Es wird vorausgesetzt, dass Tabellen zur Verfügung stehen, in denen das Argument der Gaußschen Fehlerfunktionen im Abstand $0.1$ aufgelistet sind. Mit $s_0/\sigma_d = 4$ erhält man für die Bitfehlerwahrscheinlichkeit gemäß der Q–Funktion:
- $$p_{\rm B} = {\rm Q} (4) \approx 0.317 \cdot 10^{-4}\hspace{0.05cm}.$$
Nach der zweiten Gleichung ergibt sich:
- $$p_{\rm B} = {1}/{2} \cdot {\rm erfc} ( {4}/{\sqrt{2} })= {1}/{2} \cdot {\rm erfc} ( 2.828)\approx {1}/{2} \cdot {\rm erfc} ( 2.8)= 0.375 \cdot 10^{-4}\hspace{0.05cm}.$$
- Richtiger ist der erste Wert. Bei der zweiten Berechnungsart muss man runden oder – noch besser – interpolieren, was aufgrund der starken Nichtlinearität dieser Funktion sehr schwierig ist.
- Bei den gegebenen Zahlenwerten ist demnach Q–Funktion besser geeignet. Außerhalb von Übungsbeispielen wird allerdings $s_0/\sigma_d$ in der Regel einen „krummen” Wert besitzen. In diesem Fall bietet ${\rm Q}(x)$ natürlich keinen Vorteil gegenüber $1/2 \cdot{\rm erfc}(x)$.
$\text{Beispiel 2:}$ Mit der Energie pro Bit $(E_{\rm B})$ und der Rauschleistungsdichte $(N_0)$ gilt für die Bitfehlerwahrscheinlichkeit von Binary Phase Shift Keying (BPSK):
- $$p_{\rm B} = {\rm Q} \left ( \sqrt{ {2 E_{\rm B} }/{N_0} }\right ) = {1}/{2} \cdot {\rm erfc} \left ( \sqrt{ {E_{\rm B} }/{N_0} }\right ) \hspace{0.05cm}.$$
Für die Zahlenwerte $E_{\rm B} = 16 \ \rm mWs$ und $N_0 = 1 \ \rm mW/Hz$ erhält man:
- $$p_{\rm B} = {\rm Q} \left (4 \cdot \sqrt{ 2} \right ) = {1}/{2} \cdot {\rm erfc} \left ( 4\right ) \hspace{0.05cm}.$$
- Der erste Weg führt zum Ergebnis $p_{\rm B} = {\rm Q} (5.657) \approx {\rm Q} (5.7) = 0.6 \cdot 10^{-8}\hspace{0.05cm}$, während $1/2 \cdot{\rm erfc}(x)$ hier den richtigeren Wert $p_{\rm B} \approx 0.771 \cdot 10^{-8}$ liefert.
- Wie im ersten Beispiel erkennt man aber auch hier: Die Funktionen ${\rm Q}(x)$ und $1/2 \cdot{\rm erfc}(x)$ sind grundsätzlich gleich gut geeignet.
- Vor– oder Nachteile der einen oder anderen Funktion ergeben sich nur bei konkreten Zahlenwerten.
Versuchsdurchführung
- Wählen Sie zunächst die Nummer $(1,\ 2$, ... $)$ der zu bearbeitenden Aufgabe. Die Nummer $0$ entspricht einem „Reset”: Einstellung wie beim Programmstart.
- Eine Aufgabenbeschreibung wird angezeigt. Parameterwerte sind angepasst. Lösung nach Drücken von „Musterlösung”.
(1) Ermitteln Sie die Werte der Funktion ${\rm Q}(x)$ für $x=1$, $x=2$, $x=4$ und $x=6$. Interpretieren Sie die Grafiken bei linearer und logarithmischer Ordinate.
- Das Applet liefert die Werte ${\rm Q}(1)=1.5866 \cdot 10^{-1}$, ${\rm Q}(2)=2.275 \cdot 10^{-2}$, ${\rm Q}(4)=3.1671 \cdot 10^{-5}$ und ${\rm Q}(6)=9.8659 \cdot 10^{-10}$.
- Bei linearer Ordinate sind die Werte für $x>3$ nicht von der Nulllinie zu unterscheiden. Interessanter ist die Darstellung mit logarithmischer Ordinate.
(2) Bewerten Sie die beiden Schranken ${\rm UB}(x )=\text{Upper Bound }\big [{\rm Q}(x ) \big ]$ und ${\rm LB}(x )=\text{Lower Bound }\big [{\rm Q}(x ) \big ]$ für die ${\rm Q}$–Funktion.
- Für $x\ge 2$ liegt die obere Schranke nur geringfügig oberhalb von ${\rm Q}(x)$ und die untere Schranke nur geringfügig unterhalb von ${\rm Q}(x)$.
- Zum Beispiel: ${\rm Q}(x=4)=3.1671 \cdot 10^{-5}$ ⇒ ${\rm LB}(x=4)=3.1366 \cdot 10^{-5}$, ${\rm UB}(x=4)=3.3458 \cdot 10^{-5}$.
- Die „Upper Bound” hat eine größere Bedeutung zur Beurteilung eines Nachrichtensystems als „LB”, da dies einer „Worst Case”–Betrachtung entspricht.
(3) Versuchen Sie, mit der App den Funktionswert ${\rm Q}(x=2 \cdot \sqrt{2} \approx 2.828)$ trotz der Quantisierung des Eingabeparameters möglichst exakt zu bestimmen.
- Das Programm liefert für $x=2.8$ das zu große Ergebnis $2.5551 \cdot 10^{-3}$ und für $x=2.85$ das Ergebnis $2.186 \cdot 10^{-3}$. Der exakte Wert liegt dazwischen.
- Es gilt aber auch: ${\rm Q}(x=2 \cdot \sqrt{2})=0.5 \cdot {\rm erfc}(x=2)$. Damit erhält man den exakten Wert ${\rm Q}(x=2 \cdot \sqrt{2})=2.3389 \cdot 10^{-3}$.
(4) Ermitteln Sie die Werte der Funktion $0.5 \cdot {\rm erfc}(x)$ für $x=1$, $x=2$, $x=3$ und $x=4$. Interpretieren Sie die die exakten Ergebnisse und die Schranken.
- Das Applet liefert: $0.5 \cdot {\rm erfc}(1)=7.865 \cdot 10^{-2}$, $0.5 \cdot {\rm erfc}(2)=2.3389 \cdot 10^{-3}$, $0.5 \cdot {\rm erfc}(3)=1.1045 \cdot 10^{-5}$ und $0.5 \cdot {\rm erfc}(4)=7.7086 \cdot 10^{-9}$.
- Alle obigen Aussagen zur ${\rm Q}$–Funktion bezüglich geeigneter Darstellungsart sowie oberer und unterer Schranke gelten auch für die Funktion $0.5 \cdot {\rm erfc}(x)$.
(5) Die Ergbnisse von (4) sollen nun für den Fall einer logarithmischen Abszisse umgerechnet werden. Die Umrechnung erfolgt entsprechend $\rho\big[{\rm dB}\big ] = 20 \cdot \lg(x)$.
- Der lineare Abszissenwert $x=1$ führt zum logarithmischen Abszissenwert $\rho=0\ \rm dB$ ⇒ $0.5 \cdot {\rm erfc}(\rho=0\ {\rm dB})={0.5 \cdot \rm erfc}(x=1)=7.865 \cdot 10^{-2}$.
- Entsprechend gilt auch $0.5 \cdot {\rm erfc}(\rho=6.021\ {\rm dB}) =0.5 \cdot {\rm erfc}(x=2)=2.3389 \cdot 10^{-3}$, $0.5 \cdot {\rm erfc}(\rho=9.542\ {\rm dB})= 0.5 \cdot {\rm erfc}(3)=1.1045 \cdot 10^{-5}$,
- $0.5 \cdot {\rm erfc}(\rho=12.041\ {\rm dB})= 0.5 \cdot {\rm erfc}(4)=7.7086 \cdot 10^{-9}$.
- Laut rechtem Diagramm: $0.5 \cdot {\rm erfc}(\rho=6\ {\rm dB}) =2.3883 \cdot 10^{-3}$, $0.5 \cdot {\rm erfc}(\rho=9.5\ {\rm dB}) =1.2109 \cdot 10^{-5}$, $0.5 \cdot {\rm erfc}(\rho=12\ {\rm dB}) =9.006 \cdot 10^{-9}$.
(6) Ermitteln Sie ${\rm Q}(\rho=0\ {\rm dB})$, ${\rm Q}(\rho=5\ {\rm dB})$ und ${\rm Q}(\rho=10\ {\rm dB})$, und stellen Sie den Zusammenhang zwischen linearer und logarithmischer Abszisse her.
- Das Programm liefert für logarithmische Abszisse die Werte ${\rm Q}(\rho=0\ {\rm dB})=1.5866 \cdot 10^{-1}$, ${\rm Q}(\rho=5\ {\rm dB})=3.7679 \cdot 10^{-2}$, ${\rm Q}(\rho=10\ {\rm dB})=7.827 \cdot 10^{-4}$.
- Die Umrechnung erfolgt gemäß der Gleichung $x=10^{\hspace{0.05cm}0.05\hspace{0.05cm} \cdot\hspace{0.05cm} \rho[{\rm dB}]}$. Für $\rho=0\ {\rm dB}$ ergibt sich $x=1$ ⇒ ${\rm Q}(\rho=0\ {\rm dB})={\rm Q}(x=1) =1.5866 \cdot 10^{-1}$.
- Für $\rho=5\ {\rm dB}$ ergibt sich $x=1.1778$ ⇒ ${\rm Q}(\rho=5\ {\rm dB})={\rm Q}(x=1.778) =3.7679 \cdot 10^{-2}$. Aus dem linken Diagramm: ${\rm Q}(x=1.8) =3.593 \cdot 10^{-2}$.
- Für $\rho=10\ {\rm dB}$ ergibt sich $x=3.162$ ⇒ ${\rm Q}(\rho=10\ {\rm dB})={\rm Q}(x=3.162) =7.827 \cdot 10^{-4}$. Nach „Quantisierung”: ${\rm Q}(x=3.15) =8.1635 \cdot 10^{-4}$.
Zur Handhabung des Applets
(A) Verwendete Gleichungen am Beispiel ${\rm Q}(x)$
(B) Auswahloption für ${\rm Q}(x)$ oder ${\rm 0.5 \cdot erfc}(x)$
(C) Schranken ${\rm LB}$ und ${\rm UB}$ werden gezeichnet
(D) Auswahl, ob Abszisse linear $\rm (lin)$ oder logarithmisch $\rm (log)$
(E) Auswahl, ob Ordinate linear $\rm (lin)$ oder logarithmisch $\rm (log)$
(F) Numerikausgabe am Beispiel ${\rm Q}(x)$ bei linearer Abszisse
(G) Slidereingabe des Abszissenwertes $x$ für lineare Abszisse
(H) Slidereingabe des Abszissenwertes $\rho \ \rm [dB]$ für logarithmische Abszisse
(I) Grafikausgabe der Funktion ${\rm Q}(x)$ – hier: lineare Abszisse
(J) Grafikausgabe der Funktion ${\rm 0.5 \cdot erfc}(x)$ – hier: lineare Abszisse
(K) Variationsmöglichkeit für die graphischen Darstellungen
$\hspace{1.5cm}$„$+$” (Vergrößern),
$\hspace{1.5cm}$ „$-$” (Verkleinern)
$\hspace{1.5cm}$ „$\rm o$” (Zurücksetzen)
$\hspace{1.5cm}$ „$\leftarrow$” (Verschieben nach links), usw.
Über die Autoren
Dieses interaktive Berechnungstool wurde am Lehrstuhl für Nachrichtentechnik der Technischen Universität München konzipiert und realisiert.
- Die erste Version wurde 2007 von Thomas Großer im Rahmen seiner Diplomarbeit mit „FlashMX–Actionscript” erstellt (Betreuer: Günter Söder).
- 2018/2019 wurde das Programm von Marwen Ben Ammar und Xiaohan Liu (Bachelorarbeit, Betreuer: Tasnád Kernetzky ) auf „HTML5” umgesetzt und neu gestaltet.
Die Umsetzung dieses Applets auf HTML 5 wurde durch Studienzuschüsse der Fakultät EI der TU München finanziell unterstützt. Wir bedanken uns.