numpy.polynomial.polynomial.polyfromroots#

polynomial.polynomial.polyfromroots(корни)[источник]#

Сгенерировать монический полином с заданными корнями.

Возвращает коэффициенты полинома

\[p(x) = (x - r_0) * (x - r_1) * ... * (x - r_n),\]

где \(r_n\) являются корнями, указанными в roots. Если ноль имеет кратность n, то он должен появиться в roots n раз. Например, если 2 является корнем кратности три, а 3 — корнем кратности 2, то roots выглядит примерно как [2, 2, 2, 3, 3]. Корни могут появляться в любом порядке.

Если возвращённые коэффициенты c, затем

\[p(x) = c_0 + c_1 * x + ... + x^n\]

Коэффициент последнего члена равен 1 для монических полиномов в этой форме.

Параметры:
корниarray_like

Последовательность, содержащая корни.

Возвращает:
выходndarray

Одномерный массив коэффициентов полинома. Если все корни вещественные, то выход также является вещественным, в противном случае он комплексный. (см. примеры ниже).

Примечания

Коэффициенты определяются путем перемножения линейных множителей вида (x - r_i), т.е.

\[p(x) = (x - r_0) (x - r_1) ... (x - r_n)\]

где n == len(roots) - 1; обратите внимание, что это подразумевает, что 1 всегда возвращается для \(a_n\).

Примеры

>>> from numpy.polynomial import polynomial as P
>>> P.polyfromroots((-1,0,1))  # x(x - 1)(x + 1) = x^3 - x
array([ 0., -1.,  0.,  1.])
>>> j = complex(0,1)
>>> P.polyfromroots((-j,j))  # complex returned, though values are real
array([1.+0.j,  0.+0.j,  1.+0.j])