<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Noncentral F 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_chi_squared_dist.html" title="Noncentral Chi-Squared Distribution">
<link rel="next" href="nc_t_dist.html" title="Noncentral T 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_chi_squared_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="nc_t_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_f_dist"></a><a class="link" href="nc_f_dist.html" title="Noncentral F Distribution"> Noncentral
          F 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_f</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_f_distribution</span><span class="special">;</span>

<span class="keyword">typedef</span> <span class="identifier">non_central_f_distribution</span><span class="special">&lt;&gt;</span> <span class="identifier">non_central_f</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_f_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_f_distribution</span><span class="special">(</span><span class="identifier">RealType</span> <span class="identifier">v1</span><span class="special">,</span> <span class="identifier">RealType</span> <span class="identifier">v2</span><span class="special">,</span> <span class="identifier">RealType</span> <span class="identifier">lambda</span><span class="special">);</span>

   <span class="comment">// Accessor to degrees_of_freedom parameters v1 &amp; v2:
</span>   <span class="identifier">RealType</span> <span class="identifier">degrees_of_freedom1</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
   <span class="identifier">RealType</span> <span class="identifier">degrees_of_freedom2</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 F distribution is a generalization of the <a class="link" href="f_dist.html" title="F Distribution">Fisher
            F Distribution</a>. It is defined as the ratio
          </p>
<pre class="programlisting"><span class="identifier">F</span> <span class="special">=</span> <span class="special">(</span><span class="identifier">X</span><span class="special">/</span><span class="identifier">v1</span><span class="special">)</span> <span class="special">/</span> <span class="special">(</span><span class="identifier">Y</span><span class="special">/</span><span class="identifier">v2</span><span class="special">)</span>
</pre>
<p>
            where X is a noncentral &#967;<sup>2</sup>
random variable with <span class="emphasis"><em>v1</em></span>
            degrees of freedom and non-centrality parameter &#955;, and Y is a central
            &#967;<sup>2</sup> random variable with <span class="emphasis"><em>v2</em></span> degrees of freedom.
          </p>
<p>
            This gives the following PDF:
          </p>
<p>
            <span class="inlinemediaobject"><img src="../../../../../equations/nc_f_ref1.png"></span>
          </p>
<p>
            where L<sub>a</sub><sup>b</sup>(c) is a generalised Laguerre polynomial and B(a,b) is the
            <a class="link" href="../../../special/sf_beta/beta_function.html" title="Beta">beta</a>
            function, or
          </p>
<p>
            <span class="inlinemediaobject"><img src="../../../../../equations/nc_f_ref2.png"></span>
          </p>
<p>
            The following graph illustrates how the distribution changes for different
            values of &#955;:
          </p>
<p>
            <span class="inlinemediaobject"><img src="../../../../../graphs/nc_f_pdf.png" align="middle"></span>
          </p>
<a name="math_toolkit.dist.dist_ref.dists.nc_f_dist.member_functions"></a><h5>
<a name="id1048504"></a>
            <a class="link" href="nc_f_dist.html#math_toolkit.dist.dist_ref.dists.nc_f_dist.member_functions">Member
            Functions</a>
          </h5>
<pre class="programlisting"><span class="identifier">non_central_f_distribution</span><span class="special">(</span><span class="identifier">RealType</span> <span class="identifier">v1</span><span class="special">,</span> <span class="identifier">RealType</span> <span class="identifier">v2</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 beta distribution with parameters <span class="emphasis"><em>v1</em></span>
            and <span class="emphasis"><em>v2</em></span> and non-centrality parameter <span class="emphasis"><em>lambda</em></span>.
          </p>
<p>
            Requires v1 &gt; 0, v2 &gt; 0 and lambda &gt;= 0, 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_freedom1</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
</pre>
<p>
            Returns the parameter <span class="emphasis"><em>v1</em></span> from which this object
            was constructed.
          </p>
<pre class="programlisting"><span class="identifier">RealType</span> <span class="identifier">degrees_of_freedom2</span><span class="special">()</span><span class="keyword">const</span><span class="special">;</span>
</pre>
<p>
            Returns the parameter <span class="emphasis"><em>v2</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>lambda</em></span> from
            which this object was constructed.
          </p>
<a name="math_toolkit.dist.dist_ref.dists.nc_f_dist.non_member_accessors"></a><h5>
<a name="id1048693"></a>
            <a class="link" href="nc_f_dist.html#math_toolkit.dist.dist_ref.dists.nc_f_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 [0, +&#8734;].
          </p>
<a name="math_toolkit.dist.dist_ref.dists.nc_f_dist.accuracy"></a><h5>
<a name="id1048792"></a>
            <a class="link" href="nc_f_dist.html#math_toolkit.dist.dist_ref.dists.nc_f_dist.accuracy">Accuracy</a>
          </h5>
<p>
            This distribution is implemented in terms of the <a class="link" href="nc_beta_dist.html" title="Noncentral Beta Distribution">Noncentral
            Beta Distribution</a>: refer to that distribution for accuracy data.
          </p>
<a name="math_toolkit.dist.dist_ref.dists.nc_f_dist.tests"></a><h5>
<a name="id1048816"></a>
            <a class="link" href="nc_f_dist.html#math_toolkit.dist.dist_ref.dists.nc_f_dist.tests">Tests</a>
          </h5>
<p>
            Since this distribution is implemented by adapting another distribution,
            the tests consist of basic sanity checks computed by the <a href="http://www.r-project.org/" target="_top">R-2.5.1
            Math library statistical package</a> and its pbeta and dbeta functions.
          </p>
<a name="math_toolkit.dist.dist_ref.dists.nc_f_dist.implementation"></a><h5>
<a name="id1048840"></a>
            <a class="link" href="nc_f_dist.html#math_toolkit.dist.dist_ref.dists.nc_f_dist.implementation">Implementation</a>
          </h5>
<p>
            In the following table <span class="emphasis"><em>v1</em></span> and <span class="emphasis"><em>v2</em></span>
            are the first and second degrees of freedom parameters of the distribution,
            &#955;
is the non-centrality parameter, <span class="emphasis"><em>x</em></span> is the random
            variate, <span class="emphasis"><em>p</em></span> is the probability, and <span class="emphasis"><em>q =
            1-p</em></span>.
          </p>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                    <p>
                      Function
                    </p>
                  </th>
<th>
                    <p>
                      Implementation Notes
                    </p>
                  </th>
</tr></thead>
<tbody>
<tr>
<td>
                    <p>
                      pdf
                    </p>
                  </td>
<td>
                    <p>
                      Implemented in terms of the non-central beta PDF using the
                      relation:
                    </p>
                    <p>
                      f(x;v1,v2;&#955;) = (v1/v2) / ((1+y)*(1+y)) * g(y/(1+y);v1/2,v2/2;&#955;)
                    </p>
                    <p>
                      where g(x; a, b; &#955;) is the non central beta PDF, and:
                    </p>
                    <p>
                      y = x * v1 / v2
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      cdf
                    </p>
                  </td>
<td>
                    <p>
                      Using the relation:
                    </p>
                    <p>
                      p = B<sub>y</sub>(v1/2, v2/2; &#955;)
                    </p>
                    <p>
                      where B<sub>x</sub>(a, b; &#955;) is the noncentral beta distribution CDF and
                    </p>
                    <p>
                      y = x * v1 / v2
                    </p>
                    <p>
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      cdf complement
                    </p>
                  </td>
<td>
                    <p>
                      Using the relation:
                    </p>
                    <p>
                      q = 1 - B<sub>y</sub>(v1/2, v2/2; &#955;)
                    </p>
                    <p>
                      where 1 - B<sub>x</sub>(a, b; &#955;) is the complement of the noncentral beta
                      distribution CDF and
                    </p>
                    <p>
                      y = x * v1 / v2
                    </p>
                    <p>
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      quantile
                    </p>
                  </td>
<td>
                    <p>
                      Using the relation:
                    </p>
                    <p>
                      x = (bx / (1-bx)) * (v1 / v2)
                    </p>
                    <p>
                      where
                    </p>
                    <p>
                      bx = Q<sub>p</sub><sup>-1</sup>(v1/2, v2/2; &#955;)
                    </p>
                    <p>
                      and
                    </p>
                    <p>
                      Q<sub>p</sub><sup>-1</sup>(v1/2, v2/2; &#955;)
                    </p>
                    <p>
                      is the noncentral beta quantile.
                    </p>
                    <p>
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      quantile
                    </p>
                    <p>
                      from the complement
                    </p>
                  </td>
<td>
                    <p>
                      Using the relation:
                    </p>
                    <p>
                      x = (bx / (1-bx)) * (v1 / v2)
                    </p>
                    <p>
                      where
                    </p>
                    <p>
                      bx = QC<sub>q</sub><sup>-1</sup>(v1/2, v2/2; &#955;)
                    </p>
                    <p>
                      and
                    </p>
                    <p>
                      QC<sub>q</sub><sup>-1</sup>(v1/2, v2/2; &#955;)
                    </p>
                    <p>
                      is the noncentral beta quantile from the complement.
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      mean
                    </p>
                  </td>
<td>
                    <p>
                      v2 * (v1 + l) / (v1 * (v2 - 2))
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      mode
                    </p>
                  </td>
<td>
                    <p>
                      By numeric maximalisation of the PDF.
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      variance
                    </p>
                  </td>
<td>
                    <p>
                      Refer to, <a href="http://mathworld.wolfram.com/NoncentralF-Distribution.html" target="_top">Weisstein,
                      Eric W. "Noncentral F-Distribution." From MathWorld--A
                      Wolfram Web Resource.</a>
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      skewness
                    </p>
                  </td>
<td>
                    <p>
                      Refer to, <a href="http://mathworld.wolfram.com/NoncentralF-Distribution.html" target="_top">Weisstein,
                      Eric W. "Noncentral F-Distribution." From MathWorld--A
                      Wolfram Web Resource.</a>, and to the <a href="http://reference.wolfram.com/mathematica/ref/NoncentralFRatioDistribution.html" target="_top">Mathematica
                      documentation</a>
                    </p>
                  </td>
</tr>
<tr>
<td>
                    <p>
                      kurtosis and kurtosis excess
                    </p>
                  </td>
<td>
                    <p>
                      Refer to, <a href="http://mathworld.wolfram.com/NoncentralF-Distribution.html" target="_top">Weisstein,
                      Eric W. "Noncentral F-Distribution." From MathWorld--A
                      Wolfram Web Resource.</a>, and to the <a href="http://reference.wolfram.com/mathematica/ref/NoncentralFRatioDistribution.html" target="_top">Mathematica
                      documentation</a>
                    </p>
                  </td>
</tr>
</tbody>
</table></div>
<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_chi_squared_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="nc_t_dist.html"><img src="../../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
