Spec-Zone.ru › NumPy 1.16

numpy.poly

numpy.poly(seq_of_zeros) [source]

Найти коэффициенты многочлена с заданной последовательностью корней.

Возвращает коэффициенты многочлена, ведущий коэффициент которого равен единице, для заданной последовательности нулей (кратные корни должны быть включены в последовательность столько раз, сколько их кратность; см. примеры). Также можно указать квадратную матрицу (или массив, который будет рассматриваться как матрица), в этом случае возвращаются коэффициенты характеристического многочлена матрицы.

Параметры:
seq_of_zeros : array_like, shape (N,) or (N, N)

Последовательность корней многочлена или квадратный массив или объект матрицы.

Возвращает:
c : ndarray

Одномерный массив коэффициентов многочлена от старшего к младшему степеням:

c[0] * x**(N) + c[1] * x**(N-1) + ... + c[N-1] * x + c[N] где c[0] всегда равно 1.

Возможные исключения:
ValueError

Если форма входных данных неверна (входные данные должны быть одномерным или квадратным двумерным массивом).

См. также

polyval
Вычислить значения многочлена.
roots
Возвратить корни многочлена.
polyfit
Наименьшие квадраты полиномиальной подгонки.
poly1d
Класс одномерного многочлена.

Примечания

Указание корней многочлена все еще оставляет одну степень свободы, обычно представленную неопределенным ведущим коэффициентом. [1] В случае этой функции этот коэффициент — первый в возвращаемом массиве — всегда принимается равным единице. (Если по какой-либо причине у вас есть еще одна точка, единственный автоматический способ в настоящее время использовать эту информацию — использовать polyfit.)

Характеристический многочлен, p_a(t), n-на-n матрицы A задается

p_a(t) = \mathrm{det}(t\, \mathbf{I} - \mathbf{A}),

где I — n-на-n единичная матрица. [2]

Ссылки

[1] (1, 2) M. Sullivan and M. Sullivan, III, “Algebra and Trignometry, Enhanced With Graphing Utilities,” Prentice-Hall, стр. 318, 1996.
[2] (1, 2) G. Strang, “Linear Algebra and Its Applications, 2nd Edition,” Academic Press, стр. 182, 1980.

Примеры

Дана последовательность нулей многочлена:

>>> np.poly((0, 0, 0)) # Multiple root example
array([1, 0, 0, 0])

Строка выше представляет z**3 + 0*z**2 + 0*z + 0.

>>> np.poly((-1./2, 0, 1./2))
array([ 1.  ,  0.  , -0.25,  0.  ])

Строка выше представляет z**3 - z/4

>>> np.poly((np.random.random(1.)[0], 0, np.random.random(1.)[0]))
array([ 1.        , -0.77086955,  0.08618131,  0.        ]) #random

Дана квадратная матрица-объект:

>>> P = np.array([[0, 1./3], [-1./2, 0]])
>>> np.poly(P)
array([ 1.        ,  0.        ,  0.16666667])

Обратите внимание, как во всех случаях ведущий коэффициент всегда равен 1.

© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.16.1/reference/generated/numpy.poly.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API