hoyt#
- class agabpylib.stats.distributions.hoyt(momtype=1, a=None, b=None, xtol=1e-14, badvalue=None, name=None, longname=None, shapes=None, seed=None)#
Bases:
rv_continuous
Hoyt distribution.
Notes
This distribution applies to the Euclidian norm of a 2-vector for which the components are distributed as indepenent random normal variables with zero mean and variances \(\sigma^2_1\) and \(\sigma^2_2\), with \(0 < \sigma^2_2 \leq \sigma^2_1\). The parameters \(a`and :math:`b\) of the Hoyt distribution are then given by:
\[a = \sqrt{\frac{\sigma^2_2}{\sigma^2_1}}\,,\quad b = \sigma^2_1+\sigma^2_2\]See footnote (2) in https://members.noa.gr/tronto/IEEE_TR_WC_DEC08.pdf (page 5012). The probability density function for hoyt is:
\[f(x, a, b) = \frac{(1+a^2)x}{ab} \exp\left[-\frac{(1+a^2)^2 x^2}{4a^2b}\right] I_0\left(\frac{(1-a^4)x^2}{4a^2b}\right)\]where \(I_0\) is the modified Bessel function of the first kind of order zero (scipy.special.iv). The PDF is zero for \(x\leq0\).
Note that for correlated random components of the vector one can use the variances \(\sigma^2_1\) and \(\sigma^2_2\) of the diagonalized covariance matrix.
Moments of the distribution were taken from https://www.wolframalpha.com/input/?i=hoyt+distribution
hoyt takes \(a\) and \(b\) as shape parameters.