Numerics library

< cpp
Revision as of 23:15, 31 May 2013 by P12bot (Talk | contribs)

The C++ numerics library includes common mathematical functions and types, as well as optimized numeric arrays and support for random number generation.


Common mathematical functions

The header cmath provides standard C library mathematical functions such as std::fabs, std::sqrt, and std::sin.

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)

Generic numeric operations

Defined in header <numeric>
fills a range with successive increments of the starting value
(function template) [edit]
sums up a range of elements
(function template) [edit]
computes the inner product of two ranges of elements
(function template) [edit]
computes the differences between adjacent elements in a range
(function template) [edit]
computes the partial sum of a range of elements
(function template) [edit]

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

The header fenv defines flags and functions related to exceptional floating-point state, such as overflow and division by zero.