Spec-Zone.ru › NumPy 1.21

numpy.poly

numpy.poly(seq_of_zeros)[source]

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

Примечание

Это часть старого API многочленов. С версии 1.4 предпочтительнее использовать новый API многочленов, определенный в numpy.polynomial. Сводка различий находится в руководстве по переходу.

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

Параметры
seq_of_zerosarray_like, форма (N,) или (N, N)

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

Возвращает
cndarray

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

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)\) квадратной матрицы A размера n×n задается

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

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

Ссылки

1

M. Sullivan and M. Sullivan, III, “Algebra and Trignometry, Enhanced With Graphing Utilities,” Prentice-Hall, pg. 318, 1996.

2

G. Strang, “Linear Algebra and Its Applications, 2nd Edition,” Academic Press, pg. 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–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.poly.html

Spec-Zone.ru

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