LAL  7.5.0.1-bede9b2
LALMarcumQ.h File Reference

Prototypes

double XLALMarcumQmodified (double M, double x, double y)
 The modified form of the Marcum Q function. More...
 
double XLALMarcumQ (double M, double a, double b)
 The function defined by J. Marcum,. More...
 

Go to the source code of this file.

Function Documentation

◆ XLALMarcumQmodified()

double XLALMarcumQmodified ( double  M,
double  x,
double  y 
)

The modified form of the Marcum Q function.

Used by Gil et al. in

A. Gil, J. Segura, and N. M. Temme. Algorithm 939: Computation of the Marcum Q-Function. ACM Transactions on Mathematical Software (TOMS), Volume 40 Issue 3, April 2014, Article No. 20. arXiv:1311.0681

The relationship between this function and the standard Marcum Q function is

 XLALMarcumQmodified(M, x, y) = XLALMarcumQ(M, sqrt(2. * x), sqrt(2. * y)).

The function is defined for \(1 \leq M\), \(0 \leq x\), \(0 \leq y\). Additionally, the implementation here becomes inaccurate when \(M\), \(x\), or \(y\) is \(\geq 10000\).

Definition at line 626 of file XLALMarcumQ.c.

◆ XLALMarcumQ()

double XLALMarcumQ ( double  M,
double  a,
double  b 
)

The function defined by J. Marcum,.

\[ Q_{M}(a, b) = \int_{b}^{\infty} x \left( \frac{x}{a} \right)^{M - 1} \exp \left( -\frac{x^{2} + a^{2}}{2} \right) I_{M - 1}(a x) \,\mathrm{d}x, \]

where \(I_{M - 1}\) is the modified Bessel function of order \(M - 1\).

The CCDF for the random variable \(x\) distributed according to the noncentral \(\chi^{2}\) distribution with \(k\) degrees-of-freedom and noncentrality parameter \(\lambda\) is \(Q_{k/2}(\sqrt{\lambda}, \sqrt{x})\).

The CCDF for the random variable \(x\) distributed according to the Rice distribution with noncentrality parameter \(\nu\) and width \(\sigma\) is \(Q_{1}(\nu/\sigma, x/\sigma)\).

The probability that a signal that would be seen in a two-phase matched filter with |SNR| \(\rho_{0}\) is seen to have matched filter |SNR| \(\geq \rho\) in stationary Gaussian noise is \(Q_{1}(\rho_{0}, \rho)\).

This function is implemented by computing the modified form used by Gil et al.,

 XLALMarcumQ(M, a, b) = XLALMarcumQmodified(M, a * a / 2., b * b / 2.).

Definition at line 742 of file XLALMarcumQ.c.