]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/boost/random/poisson_distribution.hpp
update sources to ceph Nautilus 14.2.1
[ceph.git] / ceph / src / boost / boost / random / poisson_distribution.hpp
index 759f206e4295da68595c2fb143f573131f72b4c1..1281a7d859dcbfd06c1d555b63ce5fc9f12d7625 100644 (file)
@@ -255,13 +255,13 @@ private:
         using std::exp;
 
         if(use_inversion()) {
-            _exp_mean = exp(-_mean);
+            _u._exp_mean = exp(-_mean);
         } else {
-            _ptrd.smu = sqrt(_mean);
-            _ptrd.b = 0.931 + 2.53 * _ptrd.smu;
-            _ptrd.a = -0.059 + 0.02483 * _ptrd.b;
-            _ptrd.inv_alpha = 1.1239 + 1.1328 / (_ptrd.b - 3.4);
-            _ptrd.v_r = 0.9277 - 3.6224 / (_ptrd.b - 2);
+            _u._ptrd.smu = sqrt(_mean);
+            _u._ptrd.b = 0.931 + 2.53 * _u._ptrd.smu;
+            _u._ptrd.a = -0.059 + 0.02483 * _u._ptrd.b;
+            _u._ptrd.inv_alpha = 1.1239 + 1.1328 / (_u._ptrd.b - 3.4);
+            _u._ptrd.v_r = 0.9277 - 3.6224 / (_u._ptrd.b - 2);
         }
     }
     
@@ -275,18 +275,18 @@ private:
         while(true) {
             RealType u;
             RealType v = uniform_01<RealType>()(urng);
-            if(v <= 0.86 * _ptrd.v_r) {
-                u = v / _ptrd.v_r - 0.43;
+            if(v <= 0.86 * _u._ptrd.v_r) {
+                u = v / _u._ptrd.v_r - 0.43;
                 return static_cast<IntType>(floor(
-                    (2*_ptrd.a/(0.5-abs(u)) + _ptrd.b)*u + _mean + 0.445));
+                    (2*_u._ptrd.a/(0.5-abs(u)) + _u._ptrd.b)*u + _mean + 0.445));
             }
 
-            if(v >= _ptrd.v_r) {
+            if(v >= _u._ptrd.v_r) {
                 u = uniform_01<RealType>()(urng) - 0.5;
             } else {
-                u = v/_ptrd.v_r - 0.93;
+                u = v/_u._ptrd.v_r - 0.93;
                 u = ((u < 0)? -0.5 : 0.5) - u;
-                v = uniform_01<RealType>()(urng) * _ptrd.v_r;
+                v = uniform_01<RealType>()(urng) * _u._ptrd.v_r;
             }
 
             RealType us = 0.5 - abs(u);
@@ -294,13 +294,13 @@ private:
                 continue;
             }
 
-            RealType k = floor((2*_ptrd.a/us + _ptrd.b)*u+_mean+0.445);
-            v = v*_ptrd.inv_alpha/(_ptrd.a/(us*us) + _ptrd.b);
+            RealType k = floor((2*_u._ptrd.a/us + _u._ptrd.b)*u+_mean+0.445);
+            v = v*_u._ptrd.inv_alpha/(_u._ptrd.a/(us*us) + _u._ptrd.b);
 
             RealType log_sqrt_2pi = 0.91893853320467267;
 
             if(k >= 10) {
-                if(log(v*_ptrd.smu) <= (k + 0.5)*log(_mean/k)
+                if(log(v*_u._ptrd.smu) <= (k + 0.5)*log(_mean/k)
                                - _mean
                                - log_sqrt_2pi
                                + k
@@ -320,7 +320,7 @@ private:
     template<class URNG>
     IntType invert(URNG& urng) const
     {
-        RealType p = _exp_mean;
+        RealType p = _u._exp_mean;
         IntType x = 0;
         RealType u = uniform_01<RealType>()(urng);
         while(u > p) {
@@ -344,7 +344,7 @@ private:
         } _ptrd;
         // for inversion
         RealType _exp_mean;
-    };
+    } _u;
 
     /// @endcond
 };