Spec-Zone.ru › NumPy 2.0

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 Trigonometry, Enhanced With Graphing Utilities,” Prentice-Hall, стр. 318, 1996.

[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–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.poly.html

Spec-Zone.ru

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