Математические специальные функции (начиная с C++17)
Библиотека математических специальных функций первоначально входила в Library TR1 ISO/IEC TR 19768:2007, затем была опубликована как отдельный стандарт ISO — ISO/IEC 29124:2010, а в итоге вошла в ISO C++ начиная с C++17.
См. Математические специальные функции для версии этой библиотеки из ISO/IEC 29124:2010.
Функции
Определено в заголовке <cmath> |
|
|---|---|
|
(C++17)(C++17)(C++17) | присоединённые многочлены Лагерра (функция) |
|
(C++17)(C++17)(C++17) | присоединённые многочлены Лежандра (функция) |
|
(C++17)(C++17)(C++17) | бета-функция (функция) |
|
(C++17)(C++17)(C++17) | полный эллиптический интеграл первого рода (функция) |
|
(C++17)(C++17)(C++17) | полный эллиптический интеграл второго рода (функция) |
|
(C++17)(C++17)(C++17) | полный эллиптический интеграл третьего рода (функция) |
|
(C++17)(C++17)(C++17) | регулярные модифицированные цилиндрические функции Бесселя (функция) |
|
(C++17)(C++17)(C++17) | цилиндрические функции Бесселя (первого рода) (функция) |
|
(C++17)(C++17)(C++17) | нерегулярные модифицированные цилиндрические функции Бесселя (функция) |
|
(C++17)(C++17)(C++17) | цилиндрические функции Неймана (функция) |
|
(C++17)(C++17)(C++17) | неполный эллиптический интеграл первого рода (функция) |
|
(C++17)(C++17)(C++17) | неполный эллиптический интеграл второго рода (функция) |
|
(C++17)(C++17)(C++17) | неполный эллиптический интеграл третьего рода (функция) |
|
(C++17)(C++17)(C++17) | интегральная показательная функция (функция) |
|
(C++17)(C++17)(C++17) | многочлены Эрмита (функция) |
|
(C++17)(C++17)(C++17) | многочлены Лежандра (функция) |
|
(C++17)(C++17)(C++17) | многочлены Лагерра (функция) |
|
(C++17)(C++17)(C++17) | дзета-функция Римана (функция) |
|
(C++17)(C++17)(C++17) | сферические функции Бесселя (первого рода) (функция) |
|
(C++17)(C++17)(C++17) | сферические присоединённые функции Лежандра (функция) |
|
(C++17)(C++17)(C++17) | сферические функции Неймана (функция) |
Примечания
Перегрузки для float и longdouble математических специальных функций без суффикса "f" или "l" присутствуют в окончательном проекте ISO/IEC 29124:2010 (N3060), но отсутствуют в опубликованном стандарте C++17/20 (см. обсуждение LWG 3234). Эти перегрузки не предоставлялись в MSVC STL до VS 2022 17.3.
Эти функции не связаны со специальными функциями-членами типов классов.
| Макрос проверки поддержки возможностей | Значение | Стандарт | Возможность |
|---|---|---|---|
__cpp_lib_math_special_functions | 201603L | (C++17) | Математические специальные функции |
Отчёты об ошибках
Следующие отчёты об ошибках, изменяющие поведение, были ретроактивно применены к ранее опубликованным стандартам C++.
| DR | Применяется к | Опубликованное поведение | Корректное поведение |
|---|---|---|---|
|
LWG 3234 (P1467R9) | C++17 | отсутствовали дополнительные перегрузки математических специальных функций | эти перегрузки обязательны |
Ссылки
- Стандарт C++23 (ISO/IEC 14882:2024):
- 28.7.6 Математические специальные функции [sf.cmath]
- Стандарт C++20 (ISO/IEC 14882:2020):
- 26.8.6 Математические специальные функции [sf.cmath]
- Стандарт C++17 (ISO/IEC 14882:2017):
- 29.9.5 Математические специальные функции [sf.cmath]
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/numeric/special_functions