Namespaces
Variants

Numerics library

From fr.cppreference.net

La bibliothèque de calcul numérique C++ inclut des fonctions mathématiques courantes et des types, ainsi que des tableaux numériques optimisés et une prise en charge de la génération de nombres aléatoires.

Contenu

Fonctions et types mathématiques

Fonctions mathématiques communes

L'en-tête <cmath> fournit les fonctions mathématiques standards de la bibliothèque C telles que std::fabs , std::sqrt , et std::sin .

Fonctions mathématiques spéciales (depuis C++17)

L'en-tête <cmath> fournit également plusieurs fonctions mathématiques spéciales telles que std::beta , std::hermite , et std::cyl_bessel_i .

Constantes mathématiques (depuis C++20)

L'en-tête <numbers> fournit plusieurs constantes mathématiques, telles que std::numbers::pi ou std::numbers::sqrt2

Algorithmes d'algèbre linéaire de base (depuis C++26)

L'en-tête <linalg> fournit des algorithmes d'algèbre linéaire de base qui sont basés sur BLAS.

Types parallèles de données (depuis C++26)

L'en-tête <simd> fournit des types portables pour exprimer explicitement le parallélisme de données et structurer les données pour un accès SIMD plus efficace.

Arithmétique des nombres complexes

Défini dans l'en-tête <complex>
un type de nombre complexe
(modèle de classe)

Tableaux numériques

Défini dans l'en-tête <valarray>
tableaux numériques, masques de tableau et tranches de tableau
(modèle de classe)

Algorithmes numériques

L'en-tête <numeric> fournit les algorithmes numériques suivants :

Opérations de facteur (depuis C++17)

Défini dans l'en-tête <numeric>
(C++17)
calcule le plus grand commun diviseur de deux entiers
(modèle de fonction)
(C++17)
calcule le plus petit commun multiple de deux entiers
(modèle de fonction)

Opérations d'interpolation (C++20)

Défini dans l'en-tête <numeric>
(C++20)
point médian entre deux nombres ou pointeurs
(modèle de fonction)
Défini dans l'en-tête <cmath>
(C++20)
fonction d'interpolation linéaire
(fonction)

Arithmétique de saturation (depuis C++26)

Défini dans l'en-tête <numeric>
(C++26)
opération d'addition saturante sur deux entiers
(modèle de fonction)
(C++26)
opération de soustraction saturante sur deux entiers
(modèle de fonction)
(C++26)
opération de multiplication saturante sur deux entiers
(modèle de fonction)
(C++26)
opération de division saturante sur deux entiers
(modèle de fonction)
retourne une valeur entière limitée à la plage d'un autre type entier
(modèle de fonction)

Opérations numériques

Défini dans l'en-tête <numeric>
(C++11)
remplit une plage avec des incréments successifs de la valeur de départ
(gabarit de fonction & objet fonction d'algorithme)
remplit une plage avec des incréments successifs de la valeur de départ
(objet fonction d'algorithme)
additionne ou replie une plage d'éléments
(gabarit de fonction)
(C++17)
similaire à std::accumulate, sauf sans ordre défini
(gabarit de fonction)
applique un invocable, puis réduit sans ordre défini
(gabarit de fonction)
calcule le produit intérieur de deux plages d'éléments
(gabarit de fonction)
calcule les différences entre éléments adjacents dans une plage
(gabarit de fonction)
calcule la somme partielle d'une plage d'éléments
(gabarit de fonction)
similaire à std::partial_sum, inclut le ième élément d'entrée dans la ième somme
(gabarit de fonction)
similaire à std::partial_sum, exclut le ième élément d'entrée de la ième somme
(gabarit de fonction)
applique un invocable, puis calcule un balayage inclusif
(gabarit de fonction)
applique un invocable, puis calcule un balayage exclusif
(gabarit de fonction)

Divers

Génération de nombres pseudo-aléatoires

L'en-tête <random> définit des générateurs de nombres pseudo-aléatoires et des distributions numériques . L'en-tête <cstdlib> inclut également la génération de nombres aléatoires de style C via std::srand et std::rand .

Environnement de virgule flottante (depuis C++11)

L'en-tête <cfenv> définit les indicateurs et fonctions relatifs à l'état exceptionnel des nombres à virgule flottante , tels que le dépassement de capacité et la division par zéro.

Manipulation de bits (depuis C++20)

L'en-tête <bit> fournit plusieurs modèles de fonctions pour accéder, manipuler et traiter des bits individuels et des séquences de bits. L'ordre des octets ( endianness ) des types scalaires peut être inspecté via la fonctionnalité std:: endian .

Arithmétique entière vérifiée (depuis C++26)

L'en-tête de compatibilité C <stdckdint.h> fournit plusieurs modèles de fonctions pour l'arithmétique entière vérifiée.

Défini dans l'en-tête <stdckdint.h>
(C++26)
opération d'addition vérifiée sur deux entiers
(modèle de fonction)
(C++26)
opération de soustraction vérifiée sur deux entiers
(modèle de fonction)
(C++26)
opération de multiplication vérifiée sur deux entiers
(modèle de fonction)

Voir aussi

Documentation C pour Numériques