Re: [Boost-bugs] [Boost C++ Libraries] #8621: erf function gives wrong results with pgcpp - PGI 10.4

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #8621: erf function gives wrong results with pgcpp - PGI 10.4
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-06-07 18:26:16


#8621: erf function gives wrong results with pgcpp - PGI 10.4
-------------------------------------------------+-------------------------
  Reporter: Jacques Desfosses | Owner: johnmaddock
  <jacques.desfosses@…> | Status: new
      Type: Bugs | Component: math
 Milestone: To Be Determined | Severity: Problem
   Version: Boost 1.53.0 | Keywords: erf pgi
Resolution: |
-------------------------------------------------+-------------------------

Comment (by Jacques Desfosses <jacques.desfosses@…>):

 Hi John,

 The output with the updated version of erf.hpp is below. I just noticed
 that when I compile with -DBOOST_MATH_INSTRUMENT the output from BOOST is
 still incorrect (8.506645778731253E-01) but different than the output from
 the version compiled without the define (8.368481544380342E-01).

 Thanks!

 Jacques

 ../boost/math/special_functions/erf.hpp:1055 result_type = long double
 ../boost/math/special_functions/erf.hpp:1056 value_type = long double
 ../boost/math/special_functions/erf.hpp:1057 precision_type =
 boost::math::policies::digits2<53>
 ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_<53>
 ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp
 called
 ../boost/math/special_functions/erf.hpp:1055 result_type = long double
 ../boost/math/special_functions/erf.hpp:1056 value_type = long double
 ../boost/math/special_functions/erf.hpp:1057 precision_type =
 boost::math::policies::digits2<53>
 ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_<53>
 ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp
 called
 ../boost/math/special_functions/erf.hpp:1055 result_type = long double
 ../boost/math/special_functions/erf.hpp:1056 value_type = long double
 ../boost/math/special_functions/erf.hpp:1057 precision_type =
 boost::math::policies::digits2<53>
 ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_<53>
 ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp
 called
 ../boost/math/special_functions/erf.hpp:269 Y = 0.40593576431274414
 ../boost/math/special_functions/erf.hpp:270 P[0] = -0.098090592216281252
 ../boost/math/special_functions/erf.hpp:271 Q[0] =
 -8.7793466483067508e+269
 ../boost/math/special_functions/erf.hpp:272 z = 1.25
 ../boost/math/special_functions/erf.hpp:274 result = 0.40593576431274414
 ../boost/math/special_functions/erf.hpp:276 result = 0.068071006921468324
 ../boost/math/special_functions/erf.hpp:1055 result_type = long double
 ../boost/math/special_functions/erf.hpp:1056 value_type = long double
 ../boost/math/special_functions/erf.hpp:1057 precision_type =
 boost::math::policies::digits2<53>
 ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_<53>
 ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp
 called
 ../boost/math/special_functions/erf.hpp:1055 result_type = long double
 ../boost/math/special_functions/erf.hpp:1056 value_type = long double
 ../boost/math/special_functions/erf.hpp:1057 precision_type =
 boost::math::policies::digits2<53>
 ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_<53>
 ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp
 called
 ../boost/math/special_functions/erf.hpp:1055 result_type = long double
 ../boost/math/special_functions/erf.hpp:1056 value_type = long double
 ../boost/math/special_functions/erf.hpp:1057 precision_type =
 boost::math::policies::digits2<53>
 ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_<53>
 ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp
 called
 ../boost/math/special_functions/erf.hpp:1055 result_type = double
 ../boost/math/special_functions/erf.hpp:1056 value_type = long double
 ../boost/math/special_functions/erf.hpp:1057 precision_type =
 boost::math::policies::digits2<53>
 ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_<53>
 ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp
 called
 ../boost/math/special_functions/erf.hpp:269 Y = 0.40593576431274414
 ../boost/math/special_functions/erf.hpp:270 P[0] = -0.098090592216281252
 ../boost/math/special_functions/erf.hpp:271 Q[0] =
 -8.7793466483067508e+269
 ../boost/math/special_functions/erf.hpp:272 z = 1
 ../boost/math/special_functions/erf.hpp:274 result = 0.40593576431274414
 ../boost/math/special_functions/erf.hpp:276 result = 0.14933542212687465
 BOOST : 8.506645778731253E-01
 MATH_H: 8.427007929497149E-01

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/8621#comment:7>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:13 UTC