Vendor/phpspreadsheet/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Statistical.php
public static function WEIBULL($value, $alpha, $beta, $cumulative)
    {
        $value = Functions::flattenSingleValue($value);
        $alpha = Functions::flattenSingleValue($alpha);
        $beta = Functions::flattenSingleValue($beta);

        if ((is_numeric($value)) && (is_numeric($alpha)) && (is_numeric($beta))) {
            if (($value < 0) || ($alpha <= 0) || ($beta <= 0)) {
                return Functions::NAN();
            }
            if ((is_numeric($cumulative)) || (is_bool($cumulative))) {
                if ($cumulative) {
                    return 1 - exp(0 - pow($value / $beta, $alpha));
                }

                return ($alpha / pow($beta, $alpha)) * pow($value, $alpha - 1) * exp(0 - pow($value / $beta, $alpha));
            }
        }

        return Functions::VALUE();
    }
public static function WEIBULL($value, $alpha, $beta, $cumulative)
    {
        $value = Functions::flattenSingleValue($value);
        $alpha = Functions::flattenSingleValue($alpha);
        $beta = Functions::flattenSingleValue($beta);

        if ((is_numeric($value)) && (is_numeric($alpha)) && (is_numeric($beta))) {
            if (($value < 0) || ($alpha <= 0) || ($beta <= 0)) {
                return Functions::NAN();
            }
            if ((is_numeric($cumulative)) || (is_bool($cumulative))) {
                if ($cumulative) {
                    return 1 - exp(0 - pow($value / $beta, $alpha));
                }

                return ($alpha / pow($beta, $alpha)) * pow($value, $alpha - 1) * exp(0 - pow($value / $beta, $alpha));
            }
        }

        return Functions::VALUE();
    }
public static function WEIBULL ( $ value , $ alpha , $ beta , $ cumulative ) { $ value = Functions :: flattenSingleValue ( $ value ) ; $ alpha = Functions :: flattenSingleValue ( $ alpha ) ; $ beta = Functions :: flattenSingleValue ( $ beta ) ; if ( ( is_numeric ( $ value ) ) && ( is_numeric ( $ alpha ) ) && ( is_numeric ( $ beta ) ) ) { if ( ( $ value < 0 ) || ( $ alpha <= 0 ) || ( $ beta <= 0 ) ) { return Functions :: NAN ( ) ; } if ( ( is_numeric ( $ cumulative ) ) || ( is_bool ( $ cumulative ) ) ) { if ( $ cumulative ) { return 1 - exp ( 0 - pow ( $ value / $ beta , $ alpha ) ) ; } return ( $ alpha / pow ( $ beta , $ alpha ) ) * pow ( $ value , $ alpha - 1 ) * exp ( 0 - pow ( $ value / $ beta , $ alpha ) ) ; } } return Functions :: VALUE ( ) ; }
WEIBULL.

Returns the Weibull distribution. Use this distribution in reliability
analysis, such as calculating a device's mean time to failure.

@param float $value
@param float $alpha Alpha Parameter
@param float $beta Beta Parameter
@param bool $cumulative

@return float
WEIBULL .