27 public static function distribution($value, $trials, $probability, $cumulative)
39 return $e->getMessage();
42 if (($value < 0) || ($value > $trials)) {
51 * (1 - $probability) ** ($trials - $value);
68 public static function range($trials, $probability, $successes, $limit =
null)
81 return $e->getMessage();
84 if (($successes < 0) || ($successes > $trials)) {
87 if (($limit < 0) || ($limit > $trials) || $limit < $successes) {
92 for (
$i = $successes;
$i <= $limit; ++
$i) {
94 * (1 - $probability) ** ($trials -
$i);
118 public static function negative($failures, $successes, $probability)
129 return $e->getMessage();
132 if (($failures < 0) || ($successes < 1)) {
136 if (($failures + $successes - 1) <= 0) {
142 * ($probability ** $successes) * ((1 - $probability) ** $failures);
157 public static function inverse($trials, $probability, $alpha)
168 return $e->getMessage();
173 } elseif (($alpha < 0.0) || ($alpha > 1.0)) {
178 while ($successes <= $trials) {
195 for (
$i = 0;
$i <= $value; ++
$i) {
197 * (1 - $probability) ** ($trials -
$i);
An exception for terminatinating execution or to throw for unit testing.
const COMPATIBILITY_GNUMERIC
static flattenSingleValue($value='')
Convert an array to a single scalar value by extracting the first element.
static getCompatibilityMode()
Return the current Compatibility Mode.
static withoutRepetition($numObjs, $numInSet)
COMBIN.
static negative($failures, $successes, $probability)
NEGBINOMDIST.
static calculateCumulativeBinomial(int $value, int $trials, float $probability)
static distribution($value, $trials, $probability, $cumulative)
BINOMDIST.
static range($trials, $probability, $successes, $limit=null)
BINOM.DIST.RANGE.
static inverse($trials, $probability, $alpha)
CRITBINOM.
static validateProbability($probability)
static validateFloat($value)
static validateBool($value)
static validateInt($value)