Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use doubles for random generators instead of ints and floats.
authoralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Sat, 15 Mar 2008 20:37:09 +0000 (20:37 +0000)
committeralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Sat, 15 Mar 2008 20:37:09 +0000 (20:37 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@5296 48e7efb5-ca39-0410-a469-dd3cf9ba447f

src/include/surf/random_mgr.h
src/surf/random_mgr.c

index 6ef40d9..d02ec3d 100644 (file)
@@ -12,14 +12,14 @@ SG_BEGIN_DECL()
 typedef enum {NONE, DRAND48, RAND} Generator;
 
 typedef struct random_data_desc {
 typedef enum {NONE, DRAND48, RAND} Generator;
 
 typedef struct random_data_desc {
-  int max, min, mean, stdDeviation;
+  double max, min, mean, stdDeviation;
   Generator generator;
 } s_random_data_t, *random_data_t;
 
 XBT_PUBLIC_DATA(xbt_dict_t) random_data_list;
 
   Generator generator;
 } s_random_data_t, *random_data_t;
 
 XBT_PUBLIC_DATA(xbt_dict_t) random_data_list;
 
-XBT_PUBLIC(float) random_generate(random_data_t random);
-XBT_PUBLIC(random_data_t) random_new(int generator, int min, int max, int mean, int stdDeviation);
+XBT_PUBLIC(double) random_generate(random_data_t random);
+XBT_PUBLIC(random_data_t) random_new(Generator generator, double min, double max, double mean, double stdDeviation);
 
 SG_END_DECL()
 
 
 SG_END_DECL()
 
index bbbe414..4a9a0b7 100644 (file)
@@ -10,7 +10,7 @@ static double drand48(void)
 }
 #endif
 
 }
 #endif
 
-static double custom_random(int generator){
+static double custom_random(Generator generator){
    switch(generator) {
       
        case DRAND48:return drand48();  
    switch(generator) {
       
        case DRAND48:return drand48();  
@@ -20,8 +20,8 @@ static double custom_random(int generator){
 }
 
 /* Generate numbers between min and max with a given mean and standard deviation */
 }
 
 /* Generate numbers between min and max with a given mean and standard deviation */
-float random_generate(random_data_t random){  
-  float x1, x2, w, y;
+double random_generate(random_data_t random){  
+  double x1, x2, w, y;
   
   if (random == NULL) return 0.0f;  
 
   
   if (random == NULL) return 0.0f;  
 
@@ -46,7 +46,7 @@ float random_generate(random_data_t random){
   return y;
 }
 
   return y;
 }
 
-random_data_t random_new(int generator, int min, int max, int mean, int stdDeviation){
+random_data_t random_new(Generator generator, double min, double max, double mean, double stdDeviation){
   random_data_t random = xbt_new0(s_random_data_t, 1);
   random->generator = generator;
   random->min = min;
   random_data_t random = xbt_new0(s_random_data_t, 1);
   random->generator = generator;
   random->min = min;