[Boost-bugs] [Boost C++ Libraries] #10480: Wrong CDF values, quantile in non_central_t_distribution

Subject: [Boost-bugs] [Boost C++ Libraries] #10480: Wrong CDF values, quantile in non_central_t_distribution
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-09-08 12:22:51


#10480: Wrong CDF values, quantile in non_central_t_distribution
------------------------------+-------------------------
 Reporter: ffaul@… | Owner: johnmaddock
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: math
  Version: Boost 1.56.0 | Severity: Showstopper
 Keywords: |
------------------------------+-------------------------
 I currently try to use boost::math::non_central_t but apparently
 immediately ran into an error.

 For the case with two degrees of freedom df=2 and delta > 0 the cdf and
 quantile values are wrong and not even consistent, i.e. for a = cdf(nct,x)
 it does not hold that x == quantile(nct,a).

 A specific example is: non_central_t_distributon<> ndist(2.0,4.0);

 quantile(ndist,0.5) here gives 3.9310 but the true value is approx. 4.753

 cdf(ndist,3.931) yields 0.8992 but should (to be consistent) give 0.5.
 With the correct quantile of 4.743 the result is also wrong (0.924).

 Similar errors are found for other values of delta as long as df = 2. The
 results for a few other df's that I tested were correct.


 The true values were determines with Mathematica 9 and another numeric
 library.

 The compiler is gcc 4.8.3 under MINGW64 (Window 7).

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/10480>
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:16 UTC