@@ 82-84 (lines=3) @@ | ||
79 | */ |
|
80 | private static function beta($p, $q) |
|
81 | { |
|
82 | if ($p <= 0.0 || $q <= 0.0 || ($p + $q) > LOG_GAMMA_X_MAX_VALUE) { |
|
83 | return 0.0; |
|
84 | } |
|
85 | ||
86 | return exp(self::logBeta($p, $q)); |
|
87 | } |
|
@@ 112-114 (lines=3) @@ | ||
109 | return 0.0; |
|
110 | } elseif ($x >= 1.0) { |
|
111 | return 1.0; |
|
112 | } elseif (($p <= 0.0) || ($q <= 0.0) || (($p + $q) > LOG_GAMMA_X_MAX_VALUE)) { |
|
113 | return 0.0; |
|
114 | } |
|
115 | $beta_gam = exp((0 - self::logBeta($p, $q)) + $p * log($x) + $q * log(1.0 - $x)); |
|
116 | if ($x < ($p + 1.0) / ($p + $q + 2.0)) { |
|
117 | return $beta_gam * self::betaFraction($x, $p, $q) / $p; |