Namespaces
Variants

Numerics library

From cppreference.net

Библиотека численных методов 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)
операция насыщающего деления для двух целых чисел
(шаблон функции)
возвращает целочисленное значение, ограниченное диапазоном другого целочисленного типа
(шаблон функции)

Числовые операции

Определено в заголовочном файле <numeric>
(C++11)
заполняет диапазон последовательными приращениями начального значения
(шаблон функции)
заполняет диапазон последовательными приращениями начального значения
(функциональный объект алгоритма)
суммирует или сворачивает диапазон элементов
(шаблон функции)
(C++17)
аналогично std::accumulate , но без сохранения порядка
(шаблон функции)
применяет вызываемый объект, затем выполняет сокращение без сохранения порядка
(шаблон функции)
вычисляет скалярное произведение двух диапазонов элементов
(шаблон функции)
вычисляет разности между соседними элементами в диапазоне
(шаблон функции)
вычисляет частичную сумму диапазона элементов
(шаблон функции)
аналогично std::partial_sum , включает i входной элемент в i сумму
(шаблон функции)
аналогично std::partial_sum , исключает i входной элемент из i суммы
(шаблон функции)
применяет вызываемый объект, затем вычисляет инклюзивное сканирование
(шаблон функции)
применяет вызываемый объект, затем вычисляет эксклюзивное сканирование
(шаблон функции)

Разное

Генерация псевдослучайных чисел

Заголовок <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)
проверенная операция умножения двух целых чисел
(шаблон функции)

Смотрите также