fastjet 2.4.5
Public Types | Public Member Functions | Static Public Member Functions | Private Attributes
fastjet::BasicRandom< double > Class Template Reference

template specialization (double) for the BasicRandom template class. More...

#include <BasicRandom.hh>

List of all members.

Public Types

typedef double value_type
typedef unsigned int size_type
typedef value_typepointer

Public Member Functions

 BasicRandom (int __s1=12345, int __s2=67890)
 constructor that takes two integers to specify the seed
value_type operator() ()
 return a single pseudorandom double number, in the range 0.0 to 1.0 (not sure whether this range is open or closed)
void operator() (size_type __n, pointer __res)
 given a pointer __res to the beginning of an array, fill that array with __n random numbers
void randomize (void *__iseed)
 (re)initialize the random number generator from an array of seeds
void set_status (const std::vector< int > &__iseed)
void get_status (std::vector< int > &__iseed)
void print_info (std::ostream &__os=std::cout)
 print information about the generator to the stream

Static Public Member Functions

static value_type min ()
 minimum value returned by the generator
static value_type max ()
 maximum value returned by the generator

Private Attributes

int _M_iseed [2]

Detailed Description

template<>
class fastjet::BasicRandom< double >

template specialization (double) for the BasicRandom template class.

Definition at line 115 of file BasicRandom.hh.


Member Typedef Documentation

Definition at line 119 of file BasicRandom.hh.

typedef unsigned int fastjet::BasicRandom< double >::size_type

Definition at line 118 of file BasicRandom.hh.

typedef double fastjet::BasicRandom< double >::value_type

Definition at line 117 of file BasicRandom.hh.


Constructor & Destructor Documentation

fastjet::BasicRandom< double >::BasicRandom ( int  __s1 = 12345,
int  __s2 = 67890 
) [inline, explicit]

constructor that takes two integers to specify the seed

Definition at line 122 of file BasicRandom.hh.

                                                           {
    _M_iseed[0] = __s1;
    _M_iseed[1] = __s2;
  }

Member Function Documentation

void fastjet::BasicRandom< double >::get_status ( std::vector< int > &  __iseed) [inline]

Definition at line 153 of file BasicRandom.hh.

                                            {
    __iseed.resize(2);
    __iseed[0] = _M_iseed[0];
    __iseed[1] = _M_iseed[1];
  }
static value_type fastjet::BasicRandom< double >::max ( ) [inline, static]

maximum value returned by the generator

Definition at line 162 of file BasicRandom.hh.

{ return 1.0;}
static value_type fastjet::BasicRandom< double >::min ( ) [inline, static]

minimum value returned by the generator

Definition at line 160 of file BasicRandom.hh.

{ return 0.0;}
value_type fastjet::BasicRandom< double >::operator() ( ) [inline]

return a single pseudorandom double number, in the range 0.0 to 1.0 (not sure whether this range is open or closed)

Definition at line 129 of file BasicRandom.hh.

References fastjet::__default_random_generator().

                           { 
    return 4.6566128752457969241e-10*__default_random_generator(_M_iseed);
  }
void fastjet::BasicRandom< double >::operator() ( size_type  __n,
pointer  __res 
) [inline]

given a pointer __res to the beginning of an array, fill that array with __n random numbers

Definition at line 135 of file BasicRandom.hh.

                                                 {
    for(size_type __i = 0; __i < __n; __i++) 
      __res[__i] = this -> operator()(); 
  }
void fastjet::BasicRandom< double >::print_info ( std::ostream &  __os = std::cout) [inline]

print information about the generator to the stream

Definition at line 165 of file BasicRandom.hh.

                                              {
    __os<<"BasicRandom<double> : "<<_M_iseed[0]<<", "<<_M_iseed[1]<<std::endl;
  }
void fastjet::BasicRandom< double >::randomize ( void *  __iseed) [inline]

(re)initialize the random number generator from an array of seeds

Definition at line 141 of file BasicRandom.hh.

                                {
    int *__new_seed = (int*) __iseed;
    _M_iseed[0] = __new_seed[0];
    _M_iseed[1] = __new_seed[1];
  }
void fastjet::BasicRandom< double >::set_status ( const std::vector< int > &  __iseed) [inline]

Definition at line 147 of file BasicRandom.hh.

                                                  {
    assert(__iseed.size() >= 2);
    _M_iseed[0] = __iseed[0];
    _M_iseed[1] = __iseed[1];
  }

Member Data Documentation

int fastjet::BasicRandom< double >::_M_iseed[2] [private]

Definition at line 170 of file BasicRandom.hh.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines