/home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/util/include/RAT/RadicalInverse.hh Source File

Ratpac-two: /home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/util/include/RAT/RadicalInverse.hh Source File
Ratpac-two
RadicalInverse.hh
1 #ifndef __RAT_RadicalInverse__
2 #define __RAT_RadicalInverse__
3 
4 namespace RAT {
5 
6 inline double RadicalInverse(int n, int base) {
7  double val = 0;
8  double invBase = 1.0 / base, invBi = invBase;
9 
10  while (n > 0) {
11  int d_i = (n % base);
12  val += d_i * invBi;
13  n /= base;
14  invBi *= invBase;
15  }
16 
17  return val;
18 }
19 
20 } // namespace RAT
21 
22 #endif
Definition: CCCrossSecMessenger.hh:29