Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext

cbrt

#include <boost/math/special_functions/cbrt.hpp>

namespace boost{ namespace math{

template <class T>
calculated-result-type cbrt(T x);

template <class T, class Policy>
calculated-result-type cbrt(T x, const Policy&);

}} // namespaces

Returns the cubed root of x: x1/3.

The return type of this function is computed using the result type calculation rules: the return is double when x is an integer type and T otherwise.

The final Policy argument is optional and can be used to control the behaviour of the function: how it handles errors, what level of precision to use etc. Refer to the policy documentation for more details.

Implemented using Halley iteration.

Accuracy

For built in floating-point types cbrt should have approximately 2 epsilon accuracy.

Testing

A mixture of spot test sanity checks, and random high precision test values calculated using NTL::RR at 1000-bit precision.


PrevUpHomeNext