<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Noncentral T Distribution</title>
<link rel="stylesheet" href="../../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
<link rel="home" href="../../../../index.html" title="Math Toolkit">
<link rel="up" href="../dists.html" title="Distributions">
<link rel="prev" href="nc_f_dist.html" title="Noncentral F Distribution">
<link rel="next" href="normal_dist.html" title="Normal (Gaussian) Distribution">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="nc_f_dist.html"><img src="../../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../dists.html"><img src="../../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="normal_dist.html"><img src="../../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h5 class="title">
<a name="math_toolkit.dist.dist_ref.dists.nc_t_dist"></a><a class="link" href="nc_t_dist.html" title="Noncentral T Distribution"> Noncentral
          T Distribution</a>
</h5></div></div></div>
<p>
            
</p>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">distributions</span><span class="special">/</span><span class="identifier">non_central_t</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></pre>
<p>
          </p>
<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span> 

<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span> <span class="special">=</span> <span class="keyword">double</span><span class="special">,</span> 
          <span class="keyword">class</span> <a class="link" href="../../../policy.html" title="Policies">Policy</a>   <span class="special">=</span> <a class="link" href="../../../policy/pol_ref/pol_ref_ref.html" title="Policy Class Reference">policies::policy&lt;&gt;</a> <span class="special">&gt;</span>
<span class="keyword">class</span> <span class="identifier">non_central_t_distribution</span><span class="special">;</span>

<span class="keyword">typedef</span> <span class="identifier">non_central_t_distribution</span><span class="special">&lt;&gt;</span> <span class="identifier">non_central_t</span><span class="special">;</span>

<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">RealType</span><span class="special">,</span> <span class="keyword">class</span> <a class="link" href="../../../policy.html" title="Policies">Policy</a><span class="special">&gt;</span>
<span class="keyword">class</span> <span class="identifier">non_central_t_distribution</span>
<span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
   <span class="keyword">typedef</span> <span class="identifier">RealType</span>  <span class="identifier">value_type</span><span class="special">;</span>
   <span class="keyword">typedef</span> <span class="identifier">Policy</span>    <span class="identifier">policy_type</span><span class="special">;</span>

   <span class="comment">// Constructor:
</span>   <span class="identifier">non_central_t_distribution</span><span class="special">(</span><span class="identifier">RealType</span> <span class="identifier">v</span><span class="special">,</span> <span class="identifier">RealType</span> <span class="identifier">delta</span><span class="special">);</span>

   <span class="comment">// Accessor to degrees_of_freedom parameter v:
</span>   <span class="identifier">RealType</span> <span class="identifier">degrees_of_freedom</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>

   <span class="comment">// Accessor to non-centrality parameter lambda:
</span>   <span class="identifier">RealType</span> <span class="identifier">non_centrality</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
<span class="special">};</span>

<span class="special">}}</span> <span class="comment">// namespaces
</span></pre>
<p>
            The noncentral T distribution is a generalization of the <a class="link" href="students_t_dist.html" title="Students t Distribution">Students
            t Distribution</a>. Let X have a normal distribution with mean &#948; and
            variance 1, and let &#957; S<sup>2</sup> have a chi-squared distribution with degrees of
            freedom &#957;. Assume that X and S<sup>2</sup> are independent. The distribution of t<sub>&#957;</sub>(&#948;)=X/S
            is called a noncentral t distribution with degrees of freedom &#957; and noncentrality
            parameter &#948;.
          </p>
<p>
            This gives the following PDF:
          </p>
<p>
            <span class="inlinemediaobject"><img src="../../../../../equations/nc_t_ref1.png"></span>
          </p>
<p>
            where <sub>1</sub>F<sub>1</sub>(a;b;x) is a confluent hypergeometric function.
          </p>
<p>
            The following graph illustrates how the distribution changes for different
            values of &#948;:
          </p>
<p>
            <span class="inlinemediaobject"><img src="../../../../../graphs/nc_t_pdf.png" align="middle"></span>
          </p>
<a name="math_toolkit.dist.dist_ref.dists.nc_t_dist.member_functions"></a><h5>
<a name="id1050010"></a>
            <a class="link" href="nc_t_dist.html#math_toolkit.dist.dist_ref.dists.nc_t_dist.member_functions">Member
            Functions</a>
          </h5>
<pre class="programlisting"><span class="identifier">non_central_t_distribution</span><span class="special">(</span><span class="identifier">RealType</span> <span class="identifier">v</span><span class="special">,</span> <span class="identifier">RealType</span> <span class="identifier">lambda</span><span class="special">);</span>
</pre>
<p>
            Constructs a non-central t distribution with degrees of freedom parameter
            <span class="emphasis"><em>v</em></span> and non-centrality parameter <span class="emphasis"><em>delta</em></span>.
          </p>
<p>
            Requires v &gt; 0 and finite delta, otherwise calls <a class="link" href="../../../main_overview/error_handling.html#domain_error">domain_error</a>.
          </p>
<pre class="programlisting"><span class="identifier">RealType</span> <span class="identifier">degrees_of_freedom</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
</pre>
<p>
            Returns the parameter <span class="emphasis"><em>v</em></span> from which this object was
            constructed.
          </p>
<pre class="programlisting"><span class="identifier">RealType</span> <span class="identifier">non_centrality</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
</pre>
<p>
            Returns the non-centrality parameter <span class="emphasis"><em>delta</em></span> from
            which this object was constructed.
          </p>
<a name="math_toolkit.dist.dist_ref.dists.nc_t_dist.non_member_accessors"></a><h5>
<a name="id1050149"></a>
            <a class="link" href="nc_t_dist.html#math_toolkit.dist.dist_ref.dists.nc_t_dist.non_member_accessors">Non-member
            Accessors</a>
          </h5>
<p>
            All the <a class="link" href="../nmp.html" title="Non-Member Properties">usual non-member
            accessor functions</a> that are generic to all distributions are supported:
            <a class="link" href="../nmp.html#math.dist.cdf">Cumulative Distribution Function</a>,
            <a class="link" href="../nmp.html#math.dist.pdf">Probability Density Function</a>, <a class="link" href="../nmp.html#math.dist.quantile">Quantile</a>, <a class="link" href="../nmp.html#math.dist.hazard">Hazard
            Function</a>, <a class="link" href="../nmp.html#math.dist.chf">Cumulative Hazard Function</a>,
            <a class="link" href="../nmp.html#math.dist.mean">mean</a>, <a class="link" href="../nmp.html#math.dist.median">median</a>,
            <a class="link" href="../nmp.html#math.dist.mode">mode</a>, <a class="link" href="../nmp.html#math.dist.variance">variance</a>,
            <a class="link" href="../nmp.html#math.dist.sd">standard deviation</a>, <a class="link" href="../nmp.html#math.dist.skewness">skewness</a>,
            <a class="link" href="../nmp.html#math.dist.kurtosis">kurtosis</a>, <a class="link" href="../nmp.html#math.dist.kurtosis_excess">kurtosis_excess</a>,
            <a class="link" href="../nmp.html#math.dist.range">range</a> and <a class="link" href="../nmp.html#math.dist.support">support</a>.
          </p>
<p>
            The domain of the random variable is [-&#8734;, +&#8734;].
          </p>
<a name="math_toolkit.dist.dist_ref.dists.nc_t_dist.accuracy"></a><h5>
<a name="id1050249"></a>
            <a class="link" href="nc_t_dist.html#math_toolkit.dist.dist_ref.dists.nc_t_dist.accuracy">Accuracy</a>
          </h5>
<p>
            The following table shows the peak errors (in units of <a href="http://en.wikipedia.org/wiki/Machine_epsilon" target="_top">epsilon</a>)
            found on various platforms with various floating-point types. Unless
            otherwise specified, any floating-point type that is narrower than the
            one shown will have <a class="link" href="../../../backgrounders/relative_error.html#zero_error">effectively zero error</a>.
          </p>
<div class="table">
<a name="math_toolkit.dist.dist_ref.dists.nc_t_dist.errors_in_cdf_of_the_noncentral_t_distribution"></a><p class="title"><b>Table&#160;15.&#160;Errors In CDF of the Noncentral T Distribution</b></p>
<div class="table-contents"><table class="table" summary="Errors In CDF of the Noncentral T Distribution">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                    <p>
                      Significand Size
                    </p>
                  </th>
<th>
                    <p>
                      Platform and Compiler
                    </p>
                  </th>
<th>
                    <p>
                      &#957;,&#948; &lt; 600
                    </p>
                  </th>
</tr></thead>
<tbody>
<tr>
<td>
                    <p>
                      53
                    </p>
                  </td>
<td>
                    <p>
                      Win32, Visual C++ 8
                    </p>
                  </td>
<td>
                    <p>
                      Peak=120 Mean=26
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      64
                    </p>
                  </td>
<td>
                    <p>
                      RedHat Linux IA32, gcc-4.1.1
                    </p>
                  </td>
<td>
                    <p>
                      Peak=121 Mean=26
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      64
                    </p>
                  </td>
<td>
                    <p>
                      Redhat Linux IA64, gcc-3.4.4
                    </p>
                  </td>
<td>
                    <p>
                      Peak=122 Mean=25
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      113
                    </p>
                  </td>
<td>
                    <p>
                      HPUX IA64, aCC A.06.06
                    </p>
                  </td>
<td>
                    <p>
                      Peak=115 Mean=24
                    </p>
                  </td>
</tr>
</tbody>
</table></div>
</div>
<br class="table-break"><div class="caution"><table border="0" summary="Caution">
<tr>
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../../../../../../../doc/src/images/caution.png"></td>
<th align="left">Caution</th>
</tr>
<tr><td align="left" valign="top"><p>
              The complexity of the current algorithm is dependent upon &#948;<sup>2</sup>: consequently
              the time taken to evaluate the CDF increases rapidly for &#948; &gt; 500,
              likewise the accuracy decreases rapidly for very large &#948;.
            </p></td></tr>
</table></div>
<p>
            Accuracy for the quantile and PDF functions should be broadly similar,
            note however that the <span class="emphasis"><em>mode</em></span> is determined numerically
            and can not in principal be more accurate than the square root of machine
            epsilon.
          </p>
<a name="math_toolkit.dist.dist_ref.dists.nc_t_dist.tests"></a><h5>
<a name="id1050449"></a>
            <a class="link" href="nc_t_dist.html#math_toolkit.dist.dist_ref.dists.nc_t_dist.tests">Tests</a>
          </h5>
<p>
            There are two sets of tests of this distribution: basic sanity checks
            compare this implementation to the test values given in "Computing
            discrete mixtures of continuous distributions: noncentral chisquare,
            noncentral t and the distribution of the square of the sample multiple
            correlation coefficient." Denise Benton, K. Krishnamoorthy, Computational
            Statistics &amp; Data Analysis 43 (2003) 249-267. While accuracy checks
            use test data computed with this implementation and arbitary precision
            interval arithmetic: this test data is believed to be accurate to at
            least 50 decimal places.
          </p>
<a name="math_toolkit.dist.dist_ref.dists.nc_t_dist.implementation"></a><h5>
<a name="id1050468"></a>
            <a class="link" href="nc_t_dist.html#math_toolkit.dist.dist_ref.dists.nc_t_dist.implementation">Implementation</a>
          </h5>
<p>
            The CDF is computed using a modification of the method described in "Computing
            discrete mixtures of continuous distributions: noncentral chisquare,
            noncentral t and the distribution of the square of the sample multiple
            correlation coefficient." Denise Benton, K. Krishnamoorthy, Computational
            Statistics &amp; Data Analysis 43 (2003) 249-267.
          </p>
<p>
            This uses the following formula for the CDF:
          </p>
<p>
            <span class="inlinemediaobject"><img src="../../../../../equations/nc_t_ref2.png"></span>
          </p>
<p>
            Where I<sub>x</sub>(a,b) is the incomplete beta function, and &#934;(x) is the normal
            CDF at x.
          </p>
<p>
            Iteration starts at the largest of the Poisson weighting terms (at i
            = &#948;<sup>2</sup> / 2) and then proceeds in both directions as per Benton and Krishnamoorthy's
            paper.
          </p>
<p>
            Alternatively, by considering what happens when t = &#8734;, we have x = 1,
            and therefore I<sub>x</sub>(a,b) = 1 and:
          </p>
<p>
            <span class="inlinemediaobject"><img src="../../../../../equations/nc_t_ref3.png"></span>
          </p>
<p>
            From this we can easily show that:
          </p>
<p>
            <span class="inlinemediaobject"><img src="../../../../../equations/nc_t_ref4.png"></span>
          </p>
<p>
            and therefore we have a means to compute either the probability or its
            complement directly without the risk of cancellation error. The crossover
            criterion for choosing whether to calculate the CDF or it's complement
            is the same as for the <a class="link" href="nc_beta_dist.html" title="Noncentral Beta Distribution">Noncentral
            Beta Distribution</a>.
          </p>
<p>
            The PDF can be computed by a very similar method using:
          </p>
<p>
            <span class="inlinemediaobject"><img src="../../../../../equations/nc_t_ref5.png"></span>
          </p>
<p>
            Where I<sub>x</sub><sup>'</sup>(a,b) is the derivative of the incomplete beta function.
          </p>
<p>
            The quantile is calculated via the usual <a class="link" href="../../../toolkit/internals1/roots2.html" title="Root Finding Without Derivatives">derivative-free
            root-finding techniques</a>, with the initial guess taken as the quantile
            of a normal approximation to the noncentral T.
          </p>
<p>
            There is no closed form for the mode, so this is computed via functional
            maximisation of the PDF.
          </p>
<p>
            The remaining functions (mean, variance etc) are implemented using the
            formulas given in Weisstein, Eric W. "Noncentral Student's t-Distribution."
            From MathWorld--A Wolfram Web Resource. <a href="http://mathworld.wolfram.com/NoncentralStudentst-Distribution.html" target="_top">http://mathworld.wolfram.com/NoncentralStudentst-Distribution.html</a>
            and in the <a href="http://reference.wolfram.com/mathematica/ref/NoncentralStudentTDistribution.html" target="_top">Mathematica
            documentation</a>.
          </p>
<p>
            Some analytic properties of noncentral distributions (particularly unimodality,
            and monotonicity of their modes) are surveyed and summarized by:
          </p>
<p>
            Andrea van Aubel &amp; Wolfgang Gawronski, Applied Mathematics and Computation,
            141 (2003) 3-12.
          </p>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2006 , 2007, 2008, 2009, 2010 John Maddock, Paul A. Bristow,
      Hubert Holin, Xiaogang Zhang, Bruno Lalande, Johan R&#229;de, Gautam Sewani and
      Thijs van den Berg<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="nc_f_dist.html"><img src="../../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../dists.html"><img src="../../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="normal_dist.html"><img src="../../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
