ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-4/src/math/RandNumGen.hpp
(Generate patch)

Comparing trunk/OOPSE-4/src/math/RandNumGen.hpp (file contents):
Revision 2611 by tim, Mon Mar 13 22:42:40 2006 UTC vs.
Revision 3470 by gezelter, Wed Oct 22 20:01:49 2008 UTC

# Line 43 | Line 43
43   #define MATH_RANDNUMGEN_HPP
44  
45   #include <vector>
46 + #include "config.h"
47   #include "MersenneTwister.hpp"
48   #include "utils/simError.h"
49  
50  
51   namespace oopse {
52  
52
53
53    /**
54     * @class RandNumGen a random number generator class
55     */
# Line 63 | Line 62 | namespace oopse {
62      }
63          
64      /** Returns a real number in [0,1] */
65 <    double rand() {
65 >    RealType rand() {
66        return mtRand_->rand();
67      }
68  
69      /** Returns a real number in [0, n] */
70 <    double rand( const double& n ) {
70 >    RealType rand( const RealType& n ) {
71        return mtRand_->rand(n);
72      }
73  
74      /** Returns a real number in [0, 1) */
75 <    double randExc() {
75 >    RealType randExc() {
76        return mtRand_->randExc();
77      }
78  
79      /** Returns a real number in [0, n) */        
80 <    double randExc( const double& n ) {
80 >    RealType randExc( const RealType& n ) {
81        return mtRand_->randExc(n);
82      }
83  
84      /** Returns a real number in (0, 1) */                
85 <    double randDblExc() {
85 >    RealType randDblExc() {
86        return mtRand_->randDblExc();
87      }
88  
89      /** Returns a real number in (0, n) */                        
90 <    double randDblExc( const double& n ) {
90 >    RealType randDblExc( const RealType& n ) {
91        return mtRand_->randDblExc(n);
92      }
93  
# Line 102 | Line 101 | namespace oopse {
101        return mtRand_->randInt(n);
102      }
103          
104 <    /** Returns a 53-bitreal number in [0,1) (capacity of IEEE double precision) */
105 <    double rand53() {
104 >    /** Returns a 53-bitreal number in [0,1) (capacity of IEEE RealType precision) */
105 >    RealType rand53() {
106        return mtRand_->rand53();
107      }
108          
109      /** Access to nonuniform random number distributions */
110 <    double randNorm( const double mean, const double variance) {
110 >    RealType randNorm( const RealType mean, const RealType variance) {
111        return mtRand_->randNorm(mean, variance);
112      }
113          
# Line 118 | Line 117 | namespace oopse {
117      virtual void seed()= 0;
118  
119    protected:
121        
120      MTRand* mtRand_;
121  
122  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines