[section:constants Numeric Constants] [h4 Synopsis] `` #include `` namespace boost{ namespace math{ namespace constants{ template T pi(); template T root_pi(); template T root_half_pi(); template T root_two_pi(); template T root_ln_four(); template T e(); template T half(); template T euler(); template T root_two(); template T ln_two(); template T ln_ln_two(); template T third(); template T twothirds(); template T pi_minus_three(); template T four_minus_pi(); }}} // namespaces [h4 Description] The header `boost/math/constants/constants.hpp` contains some numeric constants that we have found useful in the development of this library. New constants are added on an ad-hoc basis based on need. Usage is like this: template T circumference(T r) { return 2 * boost::math::constants::pi() * r; } All the constants are accurate to at least the 34 decimal digits required for 128-bit long doubles, and most are accurate to 100 digits or more when used with a suitable arbitrary precision type. The following table summarises the constants we have at present: [table [[Constant][Meaning][Value]] [[pi][[pi]][3.1415926535897932384...]] [[root_pi][[radic][pi]][1.772453850905516027...]] [[root_half_pi][[radic]([pi]/2)][1.253314137315500251...]] [[root_two_pi][[radic](2*[pi])][2.506628274631000502...]] [[root_ln_four][[radic](ln(4))][1.17741002251547469...]] [[e][['e]][2.71828182845904523536...]] [[half][0.5][0.5]] [[euler][Euler's constant][0.577215664901532860606]] [[root_two][[radic]2][1.4142135623730950488...]] [[ln_two][ln(2)][0.6931471805599453094...]] [[ln_ln_two][ln(ln(2))][-0.3665129205816643...]] [[third][1/3][0.333333333333333333...]] [[twothirds][2/3][0.666666666666666666...]] [[pi_minus_three][[pi]-3][0.14159265358979323846...]] [[four_minus_pi][4-[pi]][0.85840734641020676153735...]] ] [endsect][/section Numeric Constants] [/ Copyright 2008 John Maddock and Paul A. Bristow. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt). ]