/*Translated by FOR_C, v3.4.2 (-), on 07/09/115 at 08:33:12 */ /*FOR_C Options SET: ftn=u io=c no=p op=aimnv pf=,p_drane s=dbov str=l x=f - prototypes */ #include #include "fcrt.h" #include #include #include "p_drane.h" /* program DRDRANE *>> 2001-05-22 DRDRANE Krogh Minor change for making .f90 version. *>> 1996-05-28 DRDRANE Krogh Added external statement. *>> 1994-10-19 DRDRANE Krogh Changes to use M77CON *>> 1987-12-09 DRDRANE Lawson Initial Code. *--D replaces "?": DR?RANE, ?RANE, ?STAT1, ?STAT2 * * Driver to demonstrate use of DRANE to generate random numbers * from the exponential distribution with standard deviation, STDDEV. * Program computes histogram for N numbers * ------------------------------------------------------------------ */ /* PARAMETER translations */ #define NCELLS (12 + 2) #define ZERO 0.0e0 /* end of PARAMETER translations */ int main( ) { long int i, ihist[NCELLS]; double stats[5], ytab[1]; static long n = 10000; static double y1 = 0.0e0; static double y2 = 6.0e0; static double stddev = 1.0e0; /* OFFSET Vectors w/subscript range: 1 to dimension */ long *const Ihist = &ihist[0] - 1; double *const Stats = &stats[0] - 1; double *const Ytab = &ytab[0] - 1; /* end of OFFSET VECTORS */ /* ------------------------------------------------------------------ */ Stats[1] = ZERO; for (i = 1; i <= n; i++) { /* Get random number */ Ytab[1] = drane( stddev ); /* Accumulate statistics and histogram. * */ dstat1( &Ytab[1], 1, stats, ihist, NCELLS, y1, y2 ); } printf(" Exponential random numbers from DRANE\n"); printf(" with STDDEV = %12.4g\n \n", stddev); /* Print the statistics and histogram. * */ dstat2( stats, ihist, NCELLS, y1, y2 ); exit(0); } /* end of function */