Faddeeva-Funktion
Die Faddeeva-Funktion (auch Kramp-Funktion oder relativistische Plasma-Dispersions-Funktion) ist eine skalierte komplexe komplementäre Fehlerfunktion,
- <math>w(z):=e^{-z^2}\operatorname{erfc}(-iz)
=e^{-z^2}\left(1+\frac{2i}{\sqrt{\pi}}\int_0^z e^{t^2}\text{d}t\right).</math>
Sie ist verwandt mit den Fresnel-Integralen, den Dawson-Integralen und dem Voigt-Profil. Die Funktion ist nach Wera Nikolajewna Faddejewa benannt.
Eigenschaften
Real- und Imaginärteil
Für genauere Betrachtungen lässt sich <math>w\left(z\right)</math> mit <math>z=x+iy</math> wie folgt zerlegen:
- <math>w(z)=V\left(x,y\right)+iL\left(x,y\right)</math>,
<math>V</math> und <math>L</math> stellen hierbei die reale und imaginäre Voigt-Funktion dar, da es sich bei <math>V(x,y)</math> bis auf Vorfaktoren um das Voigt-Profil handelt.<ref name = "Avetisov 1995">{{#invoke:Vorlage:Literatur|f}}</ref>
Integraldarstellung
Die Faddeeva-Funktion besitzt die Integraldarstellung
- <math>w(z)=\frac{i}{\pi}\int_{-\infty}^{\infty} \frac{e^{- t^2}}{z - t} \,\mathrm{d}t \qquad \Im\left(z\right) > 0 </math>
sprich sie ist die Konvolution einer Gauß-Funktion und einer einfachen Polstelle.<ref name = "Avetisov 1995">
</ref>
Die reale und imaginäre Voigt-Funktion lassen sich in ähnlicher Weise darstellen:<ref name = "Avetisov 1995">
</ref>
- <math>V\left(x,y\right)=\frac{y}{\pi} \int_{-\infty}^{\infty} \frac{e^{- t^2}}{\left(x - t\right)^{2} + y^{2}} \,\mathrm{d}t</math>
- <math>L\left(x,y\right)=\frac{1}{\pi} \int_{-\infty}^{\infty} \frac{\left(x - t\right)\ \cdot\ e^{- t^2}}{\left(x - t\right)^{2} + y^{2}} \,\mathrm{d}t</math>
Verhalten bei Vorzeichenumkehr
Bei einer Vorzeichenumkehr von <math>z</math> kann bei Berechnungen auf die folgenden Zusammenhänge zurückgegriffen werden:
- <math>w(-z)=2e^{-z^2} - w(z)</math>
sowie
- <math>w(-z)=\overline{w\left(\overline{z}\right)}</math>
<math>\overline{z}</math> ist die Konjugation von <math>z</math>.<ref>{{#invoke:Vorlage:Literatur|f}}</ref>
Ableitung
In manchen Anwendungen muss nicht nur die Faddeeva-Funktion selbst, sondern auch ihre Ableitungen berechnet werden, beispielsweise bei der Nichtlinearen Regression in der Spektroskopie. Ihre analytische Ableitung lautet:<ref name = "Avetisov 1995"> </ref><ref>National Institute of Standards and Technology (NIST): 7 Error functions, Dawson's and Fresnel integrals - 7.10 Derivatives, 15. März 2023, abgerufen am 14. Mai 2023 </ref>
- <math>\frac{dw\left(z\right)}{dz} = \frac{2i}{\sqrt{\pi}} - 2\cdot z\cdot w\left(z\right)</math>
Dieser Ausdruck kann auch herangezogen werden, um die Änderungen im Real- und Imaginärteil der Faddeeva-Funktion <math>\Re\left(w\left(z\right)\right) = \Re_{w}</math> und <math>\Im\left(w\left(z\right)\right) = \Im_{w}</math> nachzuvollziehen. Im Prinzip muss dafür das Produkt <math>z\cdot w\left(z\right)</math> eingehender betrachtet werden. Mit der obigen Definition des Arguments <math>z = x + iy</math>, kann die Ableitung auch in ihre partiellen Ableitungen nach <math>x</math> und <math>y</math> zerlegt werden:
- <math>\frac{d\Re_{w}}{dx} = 2\cdot\left(y\cdot\Im_{w} - x\cdot\Re_{w}\right) = \frac{d\Im_{w}}{dy}</math>
- <math>\frac{d\Re_{w}}{dy} = -2\cdot\left(\frac{1}{\sqrt{\pi}} - x\cdot\Im_{w} - y\cdot\Re_{w}\right) = -\frac{d\Im_{w}}{dx}</math>
- <math>\frac{d\Im_{w}}{dx} = 2\cdot\left(\frac{1}{\sqrt{\pi}} - x\cdot\Im_{w} - y\cdot\Re_{w}\right) = -\frac{d\Re_{w}}{dy}</math>
- <math>\frac{d\Im_{w}}{dy} = 2\cdot\left(y\cdot\Im_{w} - x\cdot\Re_{w}\right) = \frac{d\Re_{w}}{dx}</math>
Beziehungen zu anderen Funktionen
Dawsonsche Funktion
Es gilt folgende Beziehung zur Dawsonschen Funktion <math>D_+(x)</math>
- <math>w(x)=e^{-x^2}\operatorname{erfc}(-ix)=e^{-x^2}+\frac{2i}{\sqrt{\pi}}D_{+}(x).</math><ref>{{#invoke:Vorlage:Literatur|f}}</ref>
Komplementäre Fehlerfunktion
Für rein imaginäre Argumente <math>iy</math> entspricht die Faddeeva-Funktion der skalierten Komplementären Fehlerfunktion <math>erfcx</math>
- <math>w(iy)=\mathrm{erfcx}(y)=e^{y^2}\mathrm{erfc}(y)</math>,
mit der Komplementären Fehlerfunktion <math>erfc</math>.
Geschichte
Die Funktion wurde 1954 von Wera Faddejewa und Terentjew tabuliert.<ref>V. N. Faddeeva, N. N. Terent'ev: Tables of values of the function <math>w(z)=\exp(-z^2)(1+2i/\sqrt{\pi}\int_0^z\exp(t^2)\text{d}t)</math> for complex argument. Gosud. Izdat. Teh.-Teor. Lit., Moscow, 1954; English transl., Pergamon Press, New York, 1961.</ref> Sie erscheint als namenlose Funktion <math>w(z)</math> im Standardwerk von Abramowitz-Stegun (1964), Formel 7.1.3. Der Name Faddeeva function wurde anscheinend 1990 von Poppe und Wijers eingeführt.<ref>Google-Scholar-Recherche laut engl. Wikipedia.</ref>
Implementierungen
Steven G. Johnson hat eine Implementierung als freie und offene Software veröffentlicht, die auf einer Kombination der Algorithmen 680 und 916 beruht.<ref>Faddeeva Package, unter MIT-Lizenz.</ref> Sie liegt der Funktion scipy.special.wofz in der Python-Bibliothek SciPy zugrunde, und sie ist auch in Form einer C-Bibliothek libcerf verfügbar.<ref><templatestyles src="Webarchiv/styles.css" />{{#if:
| {{#ifeq: {{{wayback}}} | *
| {{#if: Archivierte Kopie | {{#invoke:WLink|getEscapedTitle|Archivierte Kopie}} | {{#invoke:Webarchiv|getdomain|http://apps.jcns.fz-juelich.de/libcerf}} }} (Archivversionen)
| {{#iferror: {{#time: j. F Y|{{{wayback}}}}}
| {{#if: || }}Der Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
| {{#if: Archivierte Kopie | {{#invoke:WLink|getEscapedTitle|Archivierte Kopie}} | {{#invoke:Webarchiv|getdomain|http://apps.jcns.fz-juelich.de/libcerf}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y|{{{wayback}}}}} im Internet Archive{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
}}
}}
| {{#if:
| {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
| {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
| 16= {{#if: Archivierte Kopie | {{#invoke:WLink|getEscapedTitle|Archivierte Kopie}} | {{#invoke:Webarchiv|getdomain|http://apps.jcns.fz-juelich.de/libcerf}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
| 9 = {{#if: Archivierte Kopie | {{#invoke:WLink|getEscapedTitle|Archivierte Kopie}} | {{#invoke:Webarchiv|getdomain|http://apps.jcns.fz-juelich.de/libcerf}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
| #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!{{#if: || }}
}}
| c|{{{webciteID}}}}} {{#if: Archivierte Kopie | {{#invoke:WLink|getEscapedTitle|Archivierte Kopie}} | {{#invoke:Webarchiv|getdomain|http://apps.jcns.fz-juelich.de/libcerf}} }} ({{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
}}
| {{#if: 20130217044822
| Vorlage:Webarchiv/Today
| {{#if:
| Vorlage:Webarchiv/Generisch
| {{#if: Archivierte Kopie | {{#invoke:WLink|getEscapedTitle|Archivierte Kopie}} | {{#invoke:Webarchiv|getdomain|http://apps.jcns.fz-juelich.de/libcerf}} }}
}}}}}}}}{{#if:
| Vorlage:Webarchiv/archiv-bot
}}{{#invoke:TemplatePar|check
|all = url=
|opt = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
|cat = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
|errNS = 0
|template = Vorlage:Webarchiv
|format = *
|preview = 1
}}{{#ifexpr: {{#if:|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:20130217044822|+1}}{{#if:|+1}} <> 1
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
}}{{#if:
| {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
| web.archive.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}}
| webcitation.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}}
| archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
}}{{#if:
| {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
| }}
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
}}
| {{#if:
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
}}
}}{{#if:{{#invoke:URLutil|isHostPathResource|http://apps.jcns.fz-juelich.de/libcerf}}
|| {{#if: || }}
}}{{#if: Archivierte Kopie
| {{#if: {{#invoke:WLink|isBracketedLink|Archivierte Kopie}}
| {{#if: || }}
}}
| {{#if: || }}
}}{{#switch:
|addlarchives|addlpages= {{#if: || }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
}}{{#ifeq: {{#invoke:Str|find|http://apps.jcns.fz-juelich.de/libcerf%7Carchiv}} |-1
|| {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://apps.jcns.fz-juelich.de/libcerf%7C4}}%7Chttp}} |-1
|| {{#switch: {{#invoke:Webarchiv|getdomain|http://apps.jcns.fz-juelich.de/libcerf }}
| abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org =
| #default = {{#if: || }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
}}
}}
}}</ref>
Für Matlab existiert eine öffentlich einsehbare Implementierung, die auf einer Approximation durch Fourierreihen sowie einer unendlichen Bruchdarstellung basiert.<ref> Sanjar Abrarov: The Voigt/complex error function (second version), MATLAB Central File Exchange, 10. Juli 2016, abgerufen am 14. Mai 2023 </ref>
Literatur
- W. Gautschi ACM Transactions on Mathematical Software (1969?): ACM Algorithmus 363.
- W. Gautschi SIAM J. Numer. Anal. 7, 187 (1970).
- G. P. M. Poppe, C. M. J. Wijers, ACM Transactions on Mathematical Software 16, 38–46 (1990): ACM Algorithm 680.
- J. A. C. Weideman, SIAM J. Numer. Anal. 31, 1497–1518 (1994): Besonders kompakter Algorithmus in 8 Zeilen Matlab.
- M. R. Zaghloul and A. N. Ali, ACM Transactions on Mathematical Software 38, 15 (2011): ACM Algorithm 916.
- S. M. Abrarov and B. M. Quine, Appl. Math. Comp. 218, 1894–1902 (2011).
- S. M. Abrarov and B. M. Quine, Arxiv, Preprint 2012
Quellen
<references />