Spec-Zone.ru › NumPy 1.17

numpy.polyval

numpy.polyval(p, x) [source]

Вычисление значения многочлена в заданных точках.

Если p имеет длину N, эта функция возвращает значение:

p[0]*x**(N-1) + p[1]*x**(N-2) + ... + p[N-2]*x + p[N-1]

Если x является последовательностью, то p(x) возвращается для каждого элемента x. Если x - другой многочлен, то возвращается составной многочлен p(x(t)).

Параметры:
p : array_like or poly1d object

Одномерный массив коэффициентов многочлена (включая коэффициенты, равные нулю) от старшего члена к свободному члену или экземпляр poly1d.

x : array_like or poly1d object

Число, массив чисел или экземпляр poly1d, в которых нужно вычислить p.

Возвращает:
values : ndarray or poly1d

Если x — экземпляр poly1d, результат является композицией двух многочленов, т. е. x «подставляется» в p и возвращается упрощённый результат. Кроме того, тип x — array_like или poly1d — определяет тип результата: x array_like => values array_like, x объект poly1d => values также.

См. также

poly1d
Класс многочлена.

Примечания

Для вычисления многочлена используется схема Хорнера [1]. Тем не менее, для многочленов высокой степени значения могут быть неточными из-за ошибок округления. Используйте с осторожностью.

Если x является подтипом ndarray, возвращаемое значение будет того же типа.

Ссылки

[1] И. Н. Бронштейн, К. А. Семендяев и К. А. Хирш (пер. с англ. изд.), Справочник по математике, Нью-Йорк, Van Nostrand Reinhold Co., 1985, стр. 720.

Примеры

>>> np.polyval([3,0,1], 5)  # 3 * 5**2 + 0 * 5**1 + 1
76
>>> np.polyval([3,0,1], np.poly1d(5))
poly1d([76.])
>>> np.polyval(np.poly1d([3,0,1]), 5)
76
>>> np.polyval(np.poly1d([3,0,1]), np.poly1d(5))
poly1d([76.])

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

Spec-Zone.ru

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