next up previous
Next: Valid Domain Up: T Score Approximation Previous: Approximation Error

Approximation of the Beta function

The asymptotic expansion for the T score, equation 31, requires the value of $\log(\beta(\frac{D}{2},\frac{1}{2}))$. Equation 7 could be used, but by computing $\log(\Gamma(x))$ without computing $\Gamma(x)$ itself. This is necessary since values of $\Gamma(x)$ will be so large as to cause computer overflow. A standard algorithm could be used to compute $\log(\Gamma(x))$, alternatively the following approximation can be used.

Since the Gamma function satisfies the relation

\begin{displaymath}
\Gamma(n+1) = n \Gamma(n)
\end{displaymath} (34)

then, by using a geometric mean, the value of $\Gamma(m+\frac{1}{2})$ is approximated by:
\begin{displaymath}
\Gamma\left(m + \frac{1}{2}\right) \approx \sqrt{m} \, \Gamma(m).
\end{displaymath} (35)

Using this approximation gives a first order approximation to the Beta function as:

\begin{displaymath}
\beta(\frac{D}{2},\frac{1}{2}) \approx \sqrt{\frac{2\pi}{D}}.
\end{displaymath} (36)

In logarithmic form this becomes:

\begin{displaymath}
\log(\beta(\frac{D}{2},\frac{1}{2})) \approx -\frac{1}{2} \log(D) + \frac{1}{2} \log(2\pi).
\end{displaymath} (37)

This approximation is only close for large values of $D$. However, an empirical correction was fitted in MATLAB which gives a very close approximation (much less a relative accuracy of $10^{-3}$) for $D>10$. It is:

\begin{displaymath}
\log(\beta(\frac{D}{2},\frac{1}{2})) \approx -\frac{1}{2} \log(D) + \frac{1}{2} \log(2\pi)
+ \frac{1}{4D}.
\end{displaymath} (38)

Therefore, by storing the first 10 values, all others can be calculated using this approximation.


next up previous
Next: Valid Domain Up: T Score Approximation Previous: Approximation Error
Mark Jenkinson 2004-01-21