Changeset View
Changeset View
Standalone View
Standalone View
src/EvtGenBase/EvtSimpleRandomEngine.cpp
Show All 27 Lines | |||||
double EvtSimpleRandomEngine::random() | double EvtSimpleRandomEngine::random() | ||||
{ | { | ||||
_next = _next * 1103515245 + 123345; | _next = _next * 1103515245 + 123345; | ||||
unsigned temp = (unsigned)( _next / 65536 ) % 32768; | unsigned temp = (unsigned)( _next / 65536 ) % 32768; | ||||
return ( temp + 1.0 ) / 32769.0; | return ( temp + 1.0 ) / 32769.0; | ||||
} | } | ||||
unsigned long EvtSimpleRandomEngine::urandom() | |||||
{ | |||||
_next = _next * 1103515245 + 123345; | |||||
unsigned temp = (unsigned)( _next / 65536 ) % 32768; | |||||
return (long)temp << 49; | |||||
} |