Difference between revisions of "cpp/numeric"
Line 3: | Line 3: | ||
The C++ numerics library includes common mathematical functions and types, as well as optimized numeric arrays and support for random number generation. | The C++ numerics library includes common mathematical functions and types, as well as optimized numeric arrays and support for random number generation. | ||
+ | |||
+ | ==Mathematical functions and types== | ||
===[[cpp/numeric/math|Common mathematical functions]]=== | ===[[cpp/numeric/math|Common mathematical functions]]=== | ||
Line 30: | Line 32: | ||
{{dsc end}} | {{dsc end}} | ||
− | + | ==Numeric algorithms== | |
+ | |||
+ | ===Factor operations=== | ||
+ | |||
{{dsc begin}} | {{dsc begin}} | ||
{{dsc header | numeric}} | {{dsc header | numeric}} | ||
{{dsc inc | cpp/numeric/dsc gcd}} | {{dsc inc | cpp/numeric/dsc gcd}} | ||
{{dsc inc | cpp/numeric/dsc lcm}} | {{dsc inc | cpp/numeric/dsc lcm}} | ||
− | + | {{dsc end}} | |
+ | |||
+ | ===Numeric operations=== | ||
+ | |||
+ | {{dsc begin}} | ||
{{dsc inc | cpp/algorithm/dsc iota}} | {{dsc inc | cpp/algorithm/dsc iota}} | ||
{{dsc inc | cpp/algorithm/dsc accumulate}} | {{dsc inc | cpp/algorithm/dsc accumulate}} | ||
Line 48: | Line 57: | ||
{{dsc inc | cpp/algorithm/dsc transform_exclusive_scan}} | {{dsc inc | cpp/algorithm/dsc transform_exclusive_scan}} | ||
{{dsc end}} | {{dsc end}} | ||
+ | |||
+ | ==Miscellanous== | ||
===[[cpp/numeric/random|Pseudo-random number generation]]=== | ===[[cpp/numeric/random|Pseudo-random number generation]]=== | ||
Line 61: | Line 72: | ||
The header {{tt|cfenv}} defines [[cpp/numeric/fenv|flags and functions related to exceptional floating-point state]], such as overflow and division by zero. | The header {{tt|cfenv}} defines [[cpp/numeric/fenv|flags and functions related to exceptional floating-point state]], such as overflow and division by zero. | ||
− | + | ==See also== | |
{{dsc begin}} | {{dsc begin}} | ||
{{dsc see c | c/numeric | Numerics}} | {{dsc see c | c/numeric | Numerics}} |
Revision as of 12:50, 1 February 2017
The C++ numerics library includes common mathematical functions and types, as well as optimized numeric arrays and support for random number generation.
Contents |
Mathematical functions and types
Common mathematical functions
The header cmath
provides standard C library mathematical functions such as std::fabs, std::sqrt, and std::sin.
Mathematical special functionsThe header |
(since C++17) |
Complex numbers
Defined in header
<complex> | |
a complex number type (class template) |
Numeric arrays
Defined in header
<valarray> | |
numeric arrays and array slices (class template) |
Numeric algorithms
Factor operations
Defined in header
<numeric> | |
(C++17) |
computes the greatest common divisor of two integers (function template) |
(C++17) |
computes the least common multiple of two integers (function template) |
Numeric operations
(C++11) |
fills a range with successive increments of the starting value (function template) |
sums up or folds a range of elements (function template) | |
(C++17) |
similar to std::accumulate, except out of order (function template) |
(C++17) |
applies an invocable, then reduces out of order (function template) |
computes the inner product of two ranges of elements (function template) | |
computes the differences between adjacent elements in a range (function template) | |
computes the partial sum of a range of elements (function template) | |
(C++17) |
similar to std::partial_sum, includes the ith input element in the ith sum (function template) |
(C++17) |
similar to std::partial_sum, excludes the ith input element from the ith sum (function template) |
(C++17) |
applies an invocable, then calculates inclusive scan (function template) |
(C++17) |
applies an invocable, then calculates exclusive scan (function template) |
Miscellanous
Pseudo-random number generation
The header random
defines pseudo-random number generators and numerical distributions. The header cstdlib
also includes C-style random number generation via std::srand and std::rand.
Compile time rational arithmetic (since C++11)
The header ratio
provides types and functions for manipulating and storing compile-time ratios.
Floating-point environment(since C++11)
The header cfenv
defines flags and functions related to exceptional floating-point state, such as overflow and division by zero.
See also
C documentation for Numerics
|