Defines | Functions
core/vnl/algo/vnl_chi_squared.h File Reference

Name space for various (mostly templated) chi-squared distribution functions. More...

Go to the source code of this file.

Defines

#define VNL_CHI_SQUARED_INSTANTIATE(T)   extern "please include vnl/algo/vnl_chi_squared.txx first"

Functions

template<class T >
double vnl_chi_squared_cumulative (T chisq, long dof)
 Compute cumulative distribution function value for chi-squared distribution.
template<class T >
double vnl_chi_squared_statistic_1 (T const *A, T const *B, int n, bool normalize)
 Name space for various chi-squared distribution functions.
template<class T >
double vnl_chi_squared_statistic_2 (T const *A, T const *B, int n, bool normalize)
 $\displaystyle \sum_i \frac{ (a[i] - b[i])^2 }{ b[i] } $
template<class T >
double vnl_chi_squared_statistic_12 (T const *A, T const *B, int n, bool normalize)
 $\displaystyle \sum_i \frac{ (a[i] - b[i])^2 }{ a[i] + b[i] } $

Detailed Description

Name space for various (mostly templated) chi-squared distribution functions.

Author:
Rupert Curwen, GE CRD
Date:
August 18th, 1998
    Modifications
     26/03/2001   dac (Manchester) tidied up documentation
     24 Mar 2010  Peter Vanroose   made vnl_chi_squared_cumulative() templated
   

Definition in file vnl_chi_squared.h.


Define Documentation

#define VNL_CHI_SQUARED_INSTANTIATE (   T)    extern "please include vnl/algo/vnl_chi_squared.txx first"

Definition at line 65 of file vnl_chi_squared.h.


Function Documentation

template<class T >
double vnl_chi_squared_cumulative ( chisq,
long  dof 
)

Compute cumulative distribution function value for chi-squared distribution.

This subroutine computes the cumulative distribution function value for the chi-squared distribution with integer degrees of freedom parameter = dof. This distribution is defined for all non-negative chisq. Thus if a random variable x is drawn from a chi-squared distribution with d degrees of freedom, then $P(x < X) =$ vnl_chi_squared_cumulative(X,d). Internally, T=double is used.

Definition at line 19 of file vnl_chi_squared.txx.

template<class T >
double vnl_chi_squared_statistic_1 ( T const *  A,
T const *  B,
int  n,
bool  normalize 
)

Name space for various chi-squared distribution functions.

A[] and B[] are (pointers to) arrays containing histograms. If the 'normalize' parameter is true, each histogram will be implicitly normalized (so as to sum to 1) before the statistic is calculated :

$a[i] = A[i] / \sum_j A[j]$

$b[i] = B[i] / \sum_j B[j]$

*DO NOT* add scale factors to these functions or you will break the code written by those who read the documentation. fsm.

$\displaystyle \sum_i \frac{ (a[i] - b[i])^2 }{ a[i] } $

Definition at line 29 of file vnl_chi_squared.txx.

template<class T >
double vnl_chi_squared_statistic_12 ( T const *  A,
T const *  B,
int  n,
bool  normalize 
)

$\displaystyle \sum_i \frac{ (a[i] - b[i])^2 }{ a[i] + b[i] } $

Definition at line 69 of file vnl_chi_squared.txx.

template<class T >
double vnl_chi_squared_statistic_2 ( T const *  A,
T const *  B,
int  n,
bool  normalize 
)

$\displaystyle \sum_i \frac{ (a[i] - b[i])^2 }{ b[i] } $

Definition at line 63 of file vnl_chi_squared.txx.