* G05KGF Example Program Text * Mark 22 Release. NAG Copyright 2006. * .. Parameters .. INTEGER NOUT PARAMETER (NOUT=6) INTEGER MSTATE, N PARAMETER (MSTATE=633,N=5) * .. Local Scalars .. INTEGER GENID, I, IFAIL, LSTATE, SUBID * .. Local Arrays .. DOUBLE PRECISION X(N) INTEGER STATE(MSTATE) * .. External Subroutines .. EXTERNAL G05KGF, G05SAF * .. Executable Statements .. WRITE (NOUT,*) 'G05KGF Example Program Results' WRITE (NOUT,*) * GENID and SUBID identify the base generator GENID = 1 SUBID = 1 * Initialize the generator to an unrepeatable sequence LSTATE = MSTATE IFAIL = 1 CALL G05KGF(GENID,SUBID,STATE,LSTATE,IFAIL) IF (IFAIL.NE.0) THEN WRITE (NOUT,99998) IFAIL GO TO 20 END IF * Generate the variates IFAIL = 1 CALL G05SAF(N,STATE,X,IFAIL) IF (IFAIL.NE.0) THEN WRITE (NOUT,99997) IFAIL GO TO 20 END IF * Display the variates WRITE (NOUT,99999) (X(I),I=1,N) * 20 CONTINUE * 99999 FORMAT (1X,F10.4) 99998 FORMAT (1X,' ** G05KGF returned with IFAIL = ',I5) 99997 FORMAT (1X,' ** G05SAF returned with IFAIL = ',I5) END