chi_square#
Generates chi-square distributed random values.
Description#
The chi_square
class object is used in the generate
function to provide random numbers with chi-square
distribution and ν
degrees of freedom, \(n \in N; n > 0\).
The probability density function is:
\[\begin{split}F_{v}(x) =
\begin{cases}
\frac {x^{\frac {n-2}{2}} e^{-\frac{x}{2}}}
{2^{n/2} \Gamma (\frac {n}{2})} dy,
& x \geq 0 \\
0, & x < 0
\end{cases}\end{split}\]
The cumulative distribution function is:
\[\begin{split}F_{v}(x) =
\begin{cases}
\int _{0}^{x}
\frac {y^{\frac {n-2}{2}} e^{-\frac{n}{2}}}
{2^{n/2} \Gamma (\frac {n}{2})} dy,
& x \geq 0 \\
0, & x < 0
\end{cases}\end{split}\]
API#
Syntax#
namespace oneapi::mkl::rng {
template<typename RealType = float,
typename Method = chi_square_method::by_default>
class chi_square {
public:
using method_type = Method;
using result_type = RealType;
chi_square(): chi_square(5){}
explicit chi_square(std::int32_t n);
explicit chi_square(const param_type& pt);
std::int32_t n() const;
param_type param() const;
void param(const param_type& pt);
};
}
Devices supported: CPU and GPU.
Include Files#
oneapi/mkl/rng.hpp
Template Parameters#
|
Type of the produced values. The specific values are as follows:
|
|
Generation method. The specific values are as follows:
See brief descriptions of the methods in Distributions Template Parameter Method. |
Input Parameters#
Name |
Type |
Description |
---|---|---|
n |
|
Degrees of freedom. |