* G10BAF Example Program Text * Mark 22 Revised. NAG Copyright 2006. * .. Parameters .. INTEGER NIN, NOUT PARAMETER (NIN=5,NOUT=6) INTEGER N, NS, MSTATE, MSEED PARAMETER (N=1000,NS=100,MSTATE=200,MSEED=1) * .. Local Scalars .. DOUBLE PRECISION SHI, SLO, WINDOW INTEGER GENID, IFAIL, LSEED, LSTATE, NSTEPX, NSTEPY, + SUBID LOGICAL USEFFT * .. Local Arrays .. DOUBLE PRECISION FFT(NS), SMOOTH(NS), T(NS), X(N) INTEGER ISORT(NS), SEED(MSEED), STATE(MSTATE) * .. External Subroutines .. EXTERNAL G01AGF, G05KFF, G05SKF, G10BAF * .. Executable Statements .. WRITE (NOUT,*) 'G10BAF Example Program Results' * Skip heading in data file READ (NIN,*) READ (NIN,*) WINDOW READ (NIN,*) SLO, SHI * IFAIL = 0 * GENID and SUBID identify the base generator GENID = 1 SUBID = 1 * Initialize the seed SEED(1) = 6698 * Initialize the generator to a repeatable sequence LSTATE = MSTATE LSEED = MSEED CALL G05KFF(GENID,SUBID,SEED,LSEED,STATE,LSTATE,IFAIL) * * Generate Normal (0,1) Distribution CALL G05SKF(N,0.0D0,1.0D0,STATE,X,IFAIL) * * Perform kernel density estimation USEFFT = .FALSE. CALL G10BAF(N,X,WINDOW,SLO,SHI,NS,SMOOTH,T,USEFFT,FFT,IFAIL) * * Display smoothed data WRITE (NOUT,*) NSTEPX = 40 NSTEPY = 20 IFAIL = 0 CALL G01AGF(T,SMOOTH,NS,ISORT,NSTEPX,NSTEPY,IFAIL) * END