// C++ Exactly representable interval values of pi for 2 radix & 24 significand bits. static const float pi_l = 3.141592502593994140625F; static const float pi = 3.14159265358979323846264F; static const float pi_u = 3.1415927410125732421875F; // C++ Exactly representable interval values of pi for 2 radix & 53 significand bits. static const double pi_l = 3.141592653589793115997963468544185161590576171875; static const double pi = 3.1415926535897932384626433832795028841971694007530293; static const double pi_u = 3.141592653589793560087173318606801331043243408203125; // C++ Exactly representable interval values of pi for 2 radix & 113 significand bits. static const long double pi_l = 3.141592653589793238462643383279502797479068098137295573004504331874296718662975536062731407582759857177734375L; static const long double pi = 3.1415926535897932384626433832795028841971694007530292958410328557937120280044899746529304611532080295833741639955L; static const long double pi_u = 3.141592653589793238462643383279503182665056975584466184200092848859760426283305179140370455570518970489501953125L; // C++ Exactly representable interval values of pi for 2 radix & 64 significand bits. static const long double pi_l = 3.141592653589793238295968524909085317631252110004425048828125L; static const long double pi = 3.141592653589793238462643383279502884197169400753029295841032856L; static const long double pi_u = 3.14159265358979323851280895940618620443274267017841339111328125L; // C++ Exactly representable interval values of pi for 2 radix & 105 significand bits. static const long double pi_l = 3.1415926535897932384626433832794319232571146478579031130162172065489745165223212097771465778350830078125L; static const long double pi = 3.14159265358979323846264338327950288419716940075302929584103285579371202800448997465293046115320802958337L; static const long double pi_u = 3.141592653589793238462643383279530530870267274333579579086877554827683667326709837652742862701416015625L; // C++ Exactly representable interval values of pi for 2 radix & 106 significand bits. static const long double pi_l = 3.14159265358979323846264338327948122706369096109574134605154738068832909192451552371494472026824951171875L; static const long double pi = 3.141592653589793238462643383279502884197169400753029295841032855793712028004489974652930461153208029583374L; static const long double pi_u = 3.141592653589793238462643383279530530870267274333579579086877554827683667326709837652742862701416015625L; // C++ Exactly representable interval values of pi for 2 radix & 107 significand bits. static const long double pi_l = 3.14159265358979323846264338327948122706369096109574134605154738068832909192451552371494472026824951171875L; static const long double pi = 3.1415926535897932384626433832795028841971694007530292958410328557937120280044899746529304611532080295833742L; static const long double pi_u = 3.141592653589793238462643383279505878966979117714660462569212467758006379625612680683843791484832763671875L; // C++ Exactly representable interval values of pi for 2 radix & 127 significand bits. static const long double pi_l = 3.14159265358979323846264338327950288418353141478922216077851131738713791456774700357190699406828571227379143238067626953125L; static const long double pi = 3.141592653589793238462643383279502884197169400753029295841032855793712028004489974652930461153208029583374163995479477762273746L; static const long double pi_u = 3.14159265358979323846264338327950288420704130180566791093788604813158282812412031470734874449846074639935977756977081298828125L; // C++ Exactly representable interval values of third for 2 radix & 24 significand bits. static const float third_l = 0.333333313465118408203125F; static const float third = 0.333333333333333333333333F; static const float third_u = 0.333333343267440795898438F; // C++ Exactly representable interval values of third for 2 radix & 53 significand bits. static const double third_l = 0.33333333333333331482961625624739099293947219848632813; static const double third = 0.33333333333333333333333333333333333333333333345010821; static const double third_u = 0.33333333333333337034076748750521801412105560302734375; // C++ Exactly representable interval values of third for 2 radix & 64 significand bits. static const long double third_l = 0.3333333333333333333152632971252415927665424533188343048095703125L; static const long double third = 0.3333333333333333333333333333333333333333333334501082053604014226L; static const long double third_u = 0.3333333333333333333423683514373792036167287733405828475952148438L; // C++ Exactly representable interval values of ten_div_three for 2 radix & 24 significand bits. static const float ten_div_three_l = 3.3333332538604736328125F; static const float ten_div_three = 3.33333333333333333333333F; static const float ten_div_three_u = 3.333333492279052734375F; // C++ Exactly representable interval values of ten_div_three for 2 radix & 53 significand bits. static const double ten_div_three_l = 3.33333333333333303727386009995825588703155517578125; static const double ten_div_three = 3.3333333333333333333333333333333333333333333323991344; static const double ten_div_three_u = 3.333333333333333481363069950020872056484222412109375; // C++ Exactly representable interval values of ten_div_three for 2 radix & 64 significand bits. static const long double ten_div_three_l = 0.3333333333333333333152632971252415927665424533188343048095703125L; static const long double ten_div_three = 0.3333333333333333333333333333333333333333333334501082053604014226L; static const long double ten_div_three_u = 0.3333333333333333333423683514373792036167287733405828475952148438L; // C++ Exactly representable interval values of cent_div_three for 2 radix & 53 significand bits. static const double cent_div_three_l = 33.3333333333333285963817615993320941925048828125F; static const double cent_div_three = 33.33333333333333333333333333333333333333333331838615F; static const double cent_div_three_u = 33.33333333333333570180911920033395290374755859375F; // C++ Exactly representable interval values of cent_div_three for 2 radix & 24 significand bits. static const float cent_div_three_l = 33.333332061767578125; static const float cent_div_three = 33.3333333333333333333333; static const float cent_div_three_u = 33.33333587646484375; // C++ Exactly representable interval values of cent_div_three for 2 radix & 64 significand bits. static const long double cent_div_three_l = 33.3333333333333333321768510160154619370587170124053955078125L; static const long double cent_div_three = 33.33333333333333333333333333333333333333333331838614971386861791L; static const long double cent_div_three_u = 33.333333333333333335646297967969076125882565975189208984375L; // C++ Exactly representable interval values of log10Two for 2 radix & 24 significand bits. static const float log10Two_l = 0.301029980182647705078125F; static const float log10Two = 0.301029995663981195213739F; static const float log10Two_u = 0.301030009984970092773438F; // C++ Exactly representable interval values of log10Two for 2 radix & 53 significand bits. static const double log10Two_l = 0.30102999566398114250631579125183634459972381591796875; static const double log10Two = 0.30102999566398119521373889472449302999999999996966115; static const double log10Two_u = 0.30102999566398119801746702250966336578130722045898438; // C++ Exactly representable interval values of log10Two for 2 radix & 64 significand bits. static const long double log10Two_l = 0.30102999566398119519854137404735183736192993819713592529296875L; static const long double log10Two = 0.3010299956639811952137388947244930299999999999696611534712523753L; static const long double log10Two_u = 0.3010299956639811952256464283594894482121162582188844680786132813L; // C++ Exactly representable interval values of gamma for 2 radix & 24 significand bits. static const float gamma_l = 0.577215611934661865234375F; static const float gamma = 0.577215664901532860606512F; static const float gamma_u = 0.577215671539306640625F; // C++ Exactly representable interval values of gamma for 2 radix & 53 significand bits. static const double gamma_l = 0.57721566490153275452712477999739348888397216796875; static const double gamma = 0.57721566490153286060651209008240243104215933589957992; static const double gamma_u = 0.57721566490153286554942724251304753124713897705078125; // C++ Exactly representable interval values of gamma for 2 radix & 64 significand bits. static const long double gamma_l = 0.57721566490153286056209724907972713481285609304904937744140625L; static const long double gamma = 0.577215664901532860606512090082402431042159335899579919912462376L; static const long double gamma_u = 0.5772156649015328606163073577040023565132287330925464630126953125L; // C++ Exactly representable interval values of two for 2 radix & 24 significand bits. static const float two_l = 2.F; static const float two = 2.F; static const float two_u = 2.F; // C++ Exactly representable interval values of two for 2 radix & 53 significand bits. static const double two_l = 2.; static const double two = 2.; static const double two_u = 2.; // C++ Exactly representable interval values of two for 2 radix & 64 significand bits. static const long double two_l = 2.L; static const long double two = 2.L; static const long double two_u = 2.L; #endif // End of double_constants.hpp