Chi-Squared Distribution - 5.2 English - 68552

AOCL API Guide (68552)

Document ID
68552
Release Date
2025-12-29
Version
5.2 English

Generates a vector of random variates from a χ2 distribution with probability density function, \(f (X)\), where:

\[f (X) = \frac{X^{\frac{v}{2}-1} e^{-\frac{X}{2}}}{2^{\frac{v}{2}}(\frac{v}{2}-1)!}\]

if \(X > 0\), otherwise \(f (X) = 0\). Here ν is the degrees of freedom, DF.

C Generate 100 values from the Chi-squared distribution
    INTEGER LSTATE,N
    PARAMETER (LSTATE=16,N=100)
    INTEGER I,INFO,SEED(1),STATE(LSTATE) INTEGER DF
    DOUBLE PRECISION X(N)

C Set the seed
    SEED(1) = 1234

C Read in the distributional parameters
    READ(5,*) DF

C Initialize the STATE vector
    CALL DRANDINITIALIZE(1,1,SEED,1,STATE,LSTATE,INFO)

C Generate N variates from the Chi-squared distribution
    CALL DRANDCHISQUARED(N,DF,STATE,X,INFO)

C Print the results
    WRITE(6,*) (X(I),I=1,N)