Mathematische spezielle Funktionen (seit C++17)
Die Bibliothek für mathematische spezielle Funktionen war ursprünglich Teil von Library TR1 ISO/IEC TR 19768:2007, wurde dann als unabhängiger ISO-Standard, ISO/IEC 29124:2010, veröffentlicht und schließlich ab C++17 in ISO C++ integriert.
Siehe Mathematische spezielle Funktionen für die Version dieser Bibliothek gemäß ISO/IEC 29124:2010.
Inhalt |
[bearbeiten] Funktionen
| Definiert in der Header-Datei
<cmath> | |
| (C++17)(C++17)(C++17) |
assoziierte Laguerre-Polynome (Funktion) |
| (C++17)(C++17)(C++17) |
assoziierte Legendre-Polynome (Funktion) |
| (C++17)(C++17)(C++17) |
Betafunktion (Funktion) |
| (C++17)(C++17)(C++17) |
(vollständiges) elliptisches Integral erster Art (Funktion) |
| (C++17)(C++17)(C++17) |
(vollständiges) elliptisches Integral zweiter Art (Funktion) |
| (C++17)(C++17)(C++17) |
(vollständiges) elliptisches Integral dritter Art (Funktion) |
| (C++17)(C++17)(C++17) |
reguläre modifizierte zylindrische Besselfunktionen (Funktion) |
| (C++17)(C++17)(C++17) |
zylindrische Besselfunktionen (erster Art) (Funktion) |
| (C++17)(C++17)(C++17) |
irreguläre modifizierte zylindrische Besselfunktionen (Funktion) |
| (C++17)(C++17)(C++17) |
zylindrische Neumann-Funktionen (Funktion) |
| (C++17)(C++17)(C++17) |
(unvollständiges) elliptisches Integral erster Art (Funktion) |
| (C++17)(C++17)(C++17) |
(unvollständiges) elliptisches Integral zweiter Art (Funktion) |
| (C++17)(C++17)(C++17) |
(unvollständiges) elliptisches Integral dritter Art (Funktion) |
| (C++17)(C++17)(C++17) |
Exponentialintegral (Funktion) |
| (C++17)(C++17)(C++17) |
Hermite-Polynome (Funktion) |
| (C++17)(C++17)(C++17) |
Legendre-Polynome (Funktion) |
| (C++17)(C++17)(C++17) |
Laguerre-Polynome (Funktion) |
| (C++17)(C++17)(C++17) |
Riemannsche Zetafunktion (Funktion) |
| (C++17)(C++17)(C++17) |
sphärische Besselfunktionen (erster Art) (Funktion) |
| (C++17)(C++17)(C++17) |
assoziierte sphärische Legendre-Funktionen (Funktion) |
| (C++17)(C++17)(C++17) |
sphärische Neumann-Funktionen (Funktion) |
[bearbeiten] Anmerkungen
Die Überladungen für float und long double für mathematische spezielle Funktionen ohne den Suffix "f" oder "l" sind im endgültigen Entwurf von ISO/IEC 29124:2010 (N3060) vorhanden, fehlen aber im veröffentlichten C++17/20-Standard (siehe LWG Issue 3234). Diese Überladungen wurden von MSVC STL erst ab VS 2022 17.3 bereitgestellt.
Diese Funktionen haben keine Beziehung zu speziellen Memberfunktionen von Klassentypen.
| Feature-Test-Makro | Wert | Std | Feature |
|---|---|---|---|
__cpp_lib_math_special_functions |
201603L |
(C++17) | Mathematische Spezialfunktionen |
[bearbeiten] Fehlerberichte
Die folgenden Verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | angewendet auf | Verhalten wie veröffentlicht | Korrigiertes Verhalten |
|---|---|---|---|
| LWG 3234 (P1467R9) |
C++17 | fehlende zusätzliche Überladungen für mathematische spezielle Funktionen | diese Überladungen sind erforderlich |
[bearbeiten] Referenzen
- C++23 Standard (ISO/IEC 14882:2024)
- 28.7.6 Mathematical special functions [sf.cmath]
- C++20 Standard (ISO/IEC 14882:2020)
- 26.8.6 Mathematical special functions [sf.cmath]
- C++17 Standard (ISO/IEC 14882:2017)
- 29.9.5 Mathematical special functions [sf.cmath]