77 while ((w = u * u + v * v) > 1.0);
79 return(u * std::sqrt( a * ( std::exp(- 2.0 / a * std::log(w)) - 1.0) / w));
85 for(
double*
v = vect;
v != vect + size; ++
v )
90 const int size,
double* vect,
93 for(
double*
v = vect;
v != vect + size; ++
v )
106 while ((w = u * u + v * v) > 1.0);
108 return(u * std::sqrt( a * ( std::exp(- 2.0 / a * std::log(w)) - 1.0) / w));
113 for(
double*
v = vect;
v != vect + size; ++
v )
120 for(
double*
v = vect;
v != vect + size; ++
v )
130 u = 2.0 * anEngine->
flat() - 1.0;
131 v = 2.0 * anEngine->
flat() - 1.0;
133 while ((w = u * u + v * v) > 1.0);
135 return(u * std::sqrt( a * ( std::exp(- 2.0 / a * std::log(w)) - 1.0) / w));
139 int pr=os.precision(20);
140 std::vector<unsigned long>
t(2);
141 os <<
" " <<
name() <<
"\n";
142 os <<
"Uvec" <<
"\n";
144 os <<
defaultA <<
" " << t[0] <<
" " << t[1] <<
"\n";
152 if (inName !=
name()) {
153 is.clear(std::ios::badbit | is.rdstate());
154 std::cerr <<
"Mismatch when expecting to read state of a "
155 <<
name() <<
" distribution\n"
156 <<
"Name found was " << inName
157 <<
"\nistream is left in the badbit state\n";
161 std::vector<unsigned long>
t(2);