Numerics library
Библиотека численных методов C++ включает общие математические функции и типы, а также оптимизированные численные массивы и поддержку генерации случайных чисел.
Содержание |
Математические функции и типы
Общие математические функции
Заголовок <cmath> предоставляет стандартные математические функции библиотеки C , такие как std::fabs , std::sqrt и std::sin .
Специальные математические функции (начиная с C++17)
Заголовок <cmath> также предоставляет несколько специальных математических функций, таких как std::beta , std::hermite и std::cyl_bessel_i .
Математические константы (since C++20)
Заголовок <numbers> предоставляет несколько математических констант, таких как std::numbers::pi или std::numbers::sqrt2
Базовые алгоритмы линейной алгебры (since C++26)
Заголовок <linalg> предоставляет базовые алгоритмы линейной алгебры, основанные на BLAS.
Типы для параллельной обработки данных (начиная с C++26)
Заголовок <simd> предоставляет переносимые типы для явного указания параллелизма данных и структурирования данных для более эффективного доступа SIMD.
Арифметика комплексных чисел
|
Определено в заголовочном файле
<complex>
|
|
|
тип комплексного числа
(шаблон класса) |
|
Числовые массивы
|
Определено в заголовочном файле
<valarray>
|
|
|
числовые массивы, маски массивов и срезы массивов
(шаблон класса) |
|
Численные алгоритмы
Заголовок <numeric> предоставляет следующие численные алгоритмы:
Операции с факторами (since C++17)
|
Определено в заголовочном файле
<numeric>
|
|
|
(C++17)
|
вычисляет наибольший общий делитель двух целых чисел
(шаблон функции) |
|
(C++17)
|
вычисляет наименьшее общее кратное двух целых чисел
(шаблон функции) |
Операции интерполяции (C++20)
|
Определено в заголовочном файле
<numeric>
|
|
|
(C++20)
|
средняя точка между двумя числами или указателями
(шаблон функции) |
|
Определено в заголовочном файле
<cmath>
|
|
|
(C++20)
|
функция линейной интерполяции
(функция) |
Арифметика с насыщением (начиная с C++26)
|
Определено в заголовочном файле
<numeric>
|
|
|
(C++26)
|
операция насыщающего сложения для двух целых чисел
(шаблон функции) |
|
(C++26)
|
операция насыщающего вычитания для двух целых чисел
(шаблон функции) |
|
(C++26)
|
операция насыщающего умножения для двух целых чисел
(шаблон функции) |
|
(C++26)
|
операция насыщающего деления для двух целых чисел
(шаблон функции) |
|
(C++26)
|
возвращает целочисленное значение, ограниченное диапазоном другого целочисленного типа
(шаблон функции) |
Числовые операции
|
Определено в заголовочном файле
<numeric>
|
|
|
(C++11)
|
заполняет диапазон последовательными приращениями начального значения
(шаблон функции) |
|
(C++23)
|
заполняет диапазон последовательными приращениями начального значения
(функциональный объект алгоритма) |
|
суммирует или сворачивает диапазон элементов
(шаблон функции) |
|
|
(C++17)
|
аналогично
std::accumulate
, но без сохранения порядка
(шаблон функции) |
|
(C++17)
|
применяет вызываемый объект, затем выполняет сокращение без сохранения порядка
(шаблон функции) |
|
вычисляет скалярное произведение двух диапазонов элементов
(шаблон функции) |
|
|
вычисляет разности между соседними элементами в диапазоне
(шаблон функции) |
|
|
вычисляет частичную сумму диапазона элементов
(шаблон функции) |
|
|
(C++17)
|
аналогично
std::partial_sum
, включает
i
-й
входной элемент в
i
-ю
сумму
(шаблон функции) |
|
(C++17)
|
аналогично
std::partial_sum
, исключает
i
-й
входной элемент из
i
-й
суммы
(шаблон функции) |
|
(C++17)
|
применяет вызываемый объект, затем вычисляет инклюзивное сканирование
(шаблон функции) |
|
(C++17)
|
применяет вызываемый объект, затем вычисляет эксклюзивное сканирование
(шаблон функции) |
Разное
Генерация псевдослучайных чисел
Заголовок <random> определяет генераторы псевдослучайных чисел и числовые распределения . Заголовок <cstdlib> также включает генерацию случайных чисел в стиле C через std::srand и std::rand .
Среда чисел с плавающей точкой (начиная с C++11)
Заголовок <cfenv> определяет флаги и функции, связанные с исключительными состояниями чисел с плавающей точкой , такие как переполнение и деление на ноль.
Манипуляция битами (since C++20)
Заголовок <bit> предоставляет несколько шаблонов функций для доступа, манипуляции и обработки отдельных битов и битовых последовательностей. Порядок байтов ( endianness ) скалярных типов может быть проверен с помощью std:: endian механизма.
Проверенная целочисленная арифметика (since C++26)
Заголовок совместимости с C <stdckdint.h> предоставляет несколько шаблонов функций для проверенной целочисленной арифметики.
|
Определено в заголовке
<stdckdint.h>
|
|
|
(C++26)
|
проверенная операция сложения двух целых чисел
(шаблон функции) |
|
(C++26)
|
проверенная операция вычитания двух целых чисел
(шаблон функции) |
|
(C++26)
|
проверенная операция умножения двух целых чисел
(шаблон функции) |
Смотрите также
|
Документация по C
для
Numerics
|