Changeset 3005 for trunk/psLib/src/math/psRandom.c
- Timestamp:
- Jan 14, 2005, 2:45:25 PM (22 years ago)
- File:
-
- 1 edited
-
trunk/psLib/src/math/psRandom.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/math/psRandom.c
r3001 r3005 10 10 * @author GLG, MHPCC 11 11 * 12 * @version $Revision: 1. 4$ $Name: not supported by cvs2svn $13 * @date $Date: 2005-01-1 4 23:34:46$12 * @version $Revision: 1.5 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2005-01-15 00:45:25 $ 14 14 * 15 15 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii … … 50 50 } 51 51 52 // Send log message of the system seed value used 53 psLogMsg(__func__,PS_LOG_INFO,"System random seed value used seed = %llX hex",seedVal); 54 52 55 return seedVal; 53 56 } … … 81 84 psU64 seed) 82 85 { 83 gsl_rng_set(rand->gsl, seed); 86 // Check null psRandom 87 if(rand==NULL) { 88 psError(PS_ERR_UNEXPECTED_NULL, 89 true, 90 PS_ERRORTEXT_psRandom_NULL_RANDOM_VAR); 91 } else { 92 // Check seed value to see if system seed should be used 93 if(seed == 0) { 94 gsl_rng_set(rand->gsl,p_psRandomGetSystemSeed()); 95 } else { 96 gsl_rng_set(rand->gsl, seed); 97 } 98 } 84 99 } 85 100 86 101 psF64 psRandomUniform(const psRandom *r) 87 102 { 88 return(gsl_rng_uniform(r->gsl)); 103 // Check null psRandom variable 104 if(r == NULL) { 105 psError(PS_ERR_UNEXPECTED_NULL, 106 true, 107 PS_ERRORTEXT_psRandom_NULL_RANDOM_VAR); 108 return(0); 109 } else { 110 return(gsl_rng_uniform(r->gsl)); 111 } 89 112 } 90 113 91 114 psF64 psRandomGaussian(const psRandom *r) 92 115 { 93 // XXX: What should sigma be? 94 return(gsl_ran_gaussian(r->gsl, 1.0)); 116 // Check null psRandom variable 117 if(r == NULL) { 118 psError(PS_ERR_UNEXPECTED_NULL, 119 true, 120 PS_ERRORTEXT_psRandom_NULL_RANDOM_VAR); 121 return(0); 122 } else { 123 // XXX: What should sigma be? 124 return(gsl_ran_gaussian(r->gsl, 1.0)); 125 } 95 126 } 96 127 97 128 psF64 psRandomPoisson(const psRandom *r, psF64 mean) 98 129 { 99 return((psF64) gsl_ran_poisson(r->gsl, mean)); 130 // Check null psRandom variable 131 if(r == NULL) { 132 psError(PS_ERR_UNEXPECTED_NULL, 133 true, 134 PS_ERRORTEXT_psRandom_NULL_RANDOM_VAR); 135 return(0); 136 } else { 137 return((psF64) gsl_ran_poisson(r->gsl, mean)); 138 } 100 139 }
Note:
See TracChangeset
for help on using the changeset viewer.
