예제 #1
0
    /**
     * Вычисление корня от скаляра
     *
     * @param Scalar $scalar_a Скаляр
     *
     * @return Scalar
     */
    public static function sqrt(Scalar $scalar_a)
    {
        if (!Scalar_Helper::is_positive($scalar_a))
            throw new MathException('Не могу вычислить скаляр из отрицательного числа: ' . $scalar_a);

        return new Scalar(sqrt($scalar_a->get_value()));
    }
예제 #2
0
    /**
     *
     * @param Matrix $matrix_a
     *
     * @return bool
     */
    public static function is_positive_matrix(Matrix $matrix_a)
    {
        $is_positive_matrix = true;

        for ($i = 0; $i < $matrix_a->get_rows_count(); $i++)
            for ($j = 0; $j < $matrix_a->get_cols_count(); $j++)
                $is_positive_matrix = $is_positive_matrix && Scalar_Helper::is_positive($matrix_a->get_item($i, $j));

        return $is_positive_matrix;
    }