/*Translated by FOR_C, v3.4.2 (-), on 07/09/115 at 08:33:18 */ /*FOR_C Options SET: ftn=u io=c no=p op=aimnv pf=,p_srane s=dbov str=l x=f - prototypes */ #include #include "fcrt.h" #include #include #include "p_srane.h" /* program DRSRANE *>> 2001-05-22 DRSRANE Krogh Minor change for making .f90 version. *>> 1996-05-28 DRSRANE Krogh Added external statement. *>> 1994-10-19 DRSRANE Krogh Changes to use M77CON *>> 1987-12-09 DRSRANE Lawson Initial Code. *--S replaces "?": DR?RANE, ?RANE, ?STAT1, ?STAT2 * * Driver to demonstrate use of SRANE 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]; float stats[5], ytab[1]; static long n = 10000; static float y1 = 0.0e0; static float y2 = 6.0e0; static float stddev = 1.0e0; /* OFFSET Vectors w/subscript range: 1 to dimension */ long *const Ihist = &ihist[0] - 1; float *const Stats = &stats[0] - 1; float *const Ytab = &ytab[0] - 1; /* end of OFFSET VECTORS */ /* ------------------------------------------------------------------ */ Stats[1] = ZERO; for (i = 1; i <= n; i++) { /* Get random number */ Ytab[1] = srane( stddev ); /* Accumulate statistics and histogram. * */ sstat1( &Ytab[1], 1, stats, ihist, NCELLS, y1, y2 ); } printf(" Exponential random numbers from SRANE\n"); printf(" with STDDEV = %12.4g\n \n", stddev); /* Print the statistics and histogram. * */ sstat2( stats, ihist, NCELLS, y1, y2 ); exit(0); } /* end of function */