Spec-Zone.ru › NumPy 1.20

numpy.polynomial.polynomial.polyint

polynomial.polynomial.polyint(c, m=1, k=[], lbnd=0, scl=1, axis=0) [source]

Интегрирование многочлена.

Возвращает коэффициенты многочлена c интегрированного m раз от lbnd по axis. На каждой итерации полученный ряд умножается на scl и добавляется константа интегрирования, k. Коэффициент масштабирования используется для линейного изменения переменной. («Будьте осторожны»: обратите внимание, что в зависимости от задачи, scl может быть необходимо сделать обратным тому, что ожидается; для получения дополнительной информации см. раздел Примечания ниже). Аргумент c представляет собой массив коэффициентов, от низкой до высокой степени вдоль каждой оси, например, [1,2,3] представляет многочлен 1 + 2*x + 3*x**2, а [[1,2],[1,2]] представляет 1 + 1*x + 2*y + 2*x*y если ось=0 является x и ось=1 является y.

Параметры
carray_like

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

mint, optional

Порядок интегрирования, должен быть положительным. (По умолчанию: 1)

k{[], list, scalar}, optional

Константа(ы) интегрирования. Значение первого интеграла в нуле – первое значение в списке, значение второго интеграла в нуле – второе значение и т. д. Если k == [] (по умолчанию), все константы устанавливаются в ноль. Если m == 1, вместо списка может быть указано одно скалярное значение.

lbndscalar, optional

Нижняя граница интеграла. (По умолчанию: 0)

sclscalar, optional

После каждого интегрирования результат умножается на scl перед добавлением константы интегрирования. (По умолчанию: 1)

axisint, optional

Ось, по которой выполняется интегрирование. (По умолчанию: 0).

Введено в версии 1.7.0.

Возвращает
Sndarray

Массив коэффициентов интеграла.

Возбуждает
ValueError

Если m < 1, len(k) > m, np.ndim(lbnd) != 0, или np.ndim(scl) != 0.

См. также

polyder

Примечания

Обратите внимание, что результат каждого интегрирования умножается на scl. Почему это важно отметить? Предположим, что кто-то выполняет линейное изменение переменной u = ax + b в интеграле относительно x. Тогда dx = du/a, поэтому потребуется установить scl равным 1/a - возможно, не то, что сразу приходит в голову.

Примеры

>>> from numpy.polynomial import polynomial as P
>>> c = (1,2,3)
>>> P.polyint(c) # should return array([0, 1, 1, 1])
array([0.,  1.,  1.,  1.])
>>> P.polyint(c,3) # should return array([0, 0, 0, 1/6, 1/12, 1/20])
 array([ 0.        ,  0.        ,  0.        ,  0.16666667,  0.08333333, # may vary
         0.05      ])
>>> P.polyint(c,k=3) # should return array([3, 1, 1, 1])
array([3.,  1.,  1.,  1.])
>>> P.polyint(c,lbnd=-2) # should return array([6, 1, 1, 1])
array([6.,  1.,  1.,  1.])
>>> P.polyint(c,scl=-2) # should return array([0, -2, -2, -2])
array([ 0., -2., -2., -2.])

© 2005–2021 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.20/reference/generated/numpy.polynomial.polynomial.polyint.html

Spec-Zone.ru

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