RANDCHI Generate Chi-Square Random Variable

Section: Random Number Generation


Generates a vector of chi-square random variables with the given number of degrees of freedom. The general syntax for its use is
   y = randchi(n)

where n is an array containing the degrees of freedom for each generated random variable.

Function Internals

A chi-square random variable is essentially distributed as the squared Euclidean norm of a vector of standard Gaussian random variables. The number of degrees of freedom is generally the number of elements in the vector. In general, the PDF of a chi-square random variable is


First, a plot of the PDF for a family of chi-square random variables
--> f = zeros(7,100);
--> x = (1:100)/10;
--> for n=1:7;t=x.^(n/2-1).*exp(-x/2);f(n,:)=10*t/sum(t);end
--> plot(x,f');

The PDF is below:

Here is an example of using randchi and randn to compute some chi-square random variables with four degrees of freedom.

--> randchi(4*ones(1,6))

ans = 
    8.9675    4.0015    3.2578    5.5461    2.5090    5.7587 

--> sum(randn(4,6).^2)

ans = 
    1.1941   10.6441    3.6228    8.4425    2.5031    1.9058