Spec-Zone.ru › NumPy 1.13

numpy.poly

numpy.poly(seq_of_zeros) [source]

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

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

Параметры:

seq_of_zeros : array_like, shape (N,) или (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
Класс одномерного многочлена.

Примечания

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

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

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

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

Ссылки

[R61] (1, 2) M. Sullivan and M. Sullivan, III, “Algebra and Trignometry, Enhanced With Graphing Utilities,” Prentice-Hall, pg. 318, 1996.
[R62] (1, 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])

Или квадратный объект матрицы:

>>> np.poly(np.matrix(P))
array([ 1.        ,  0.        ,  0.16666667])

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

© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.poly.html

Spec-Zone.ru

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