numpy.polynomial.legendre.legint
-
numpy.polynomial.legendre.legint(c, m=1, k=[], lbnd=0, scl=1, axis=0)[source] -
Интегрирование ряда Лежандра.
Возвращает коэффициенты ряда Лежандра
cинтегрированногоmраз отlbndвдольaxis. На каждом шаге результирующий ряд умножается наsclи добавляется константа интегрирования,k. Коэффициент масштабирования используется для линейного изменения переменной. («Будьте осторожны»: обратите внимание, что в зависимости от задачи,sclможет быть обратной ожидаемой величине; для получения дополнительной информации см. раздел Примечания ниже.) Аргументcпредставляет собой массив коэффициентов от низкой до высокой степени вдоль каждой оси, например, [1,2,3] представляет рядL_0 + 2*L_1 + 3*L_2, а [[1,2],[1,2]] представляет1*L_0(x)*L_0(y) + 1*L_1(x)*L_0(y) + 2*L_0(x)*L_1(y) + 2*L_1(x)*L_1(y), если ось axis=0 этоx, а ось axis=1 этоy.Параметры: -
c : array_like -
Массив коэффициентов ряда Лежандра. Если c многомерный, различные оси соответствуют различным переменным, а степень на каждой оси задаётся соответствующим индексом.
-
m : int, optional -
Порядок интегрирования, должен быть положительным. (По умолчанию: 1)
-
k : {[], list, scalar}, optional -
Константа(ы) интегрирования. Значение первого интеграла в
lbnd- это первое значение в списке, значение второго интеграла вlbnd- второе значение и т. д. Еслиk == [](по умолчанию), все константы устанавливаются в ноль. Еслиm == 1, вместо списка можно указать одно скалярное значение. -
lbnd : scalar, optional -
Нижний предел интеграла. (По умолчанию: 0)
-
scl : scalar, optional -
После каждого интегрирования результат умножается на
sclперед добавлением константы интегрирования. (По умолчанию: 1) -
axis : int, optional -
Ось, по которой производится интегрирование. (По умолчанию: 0).
Введено в версии 1.7.0.
Возвращает: -
S : ndarray -
Массив коэффициентов ряда Лежандра интеграла.
Возможные исключения: - ValueError
-
Если
m < 0,len(k) > m,np.ndim(lbnd) != 0, илиnp.ndim(scl) != 0.
См. также
Примечания
Обратите внимание, что результат каждого интегрирования умножается на
scl. Почему важно об этом помнить? Предположим, что проводится линейное изменение переменнойв интеграле относительно
x. Тогда, поэтому необходимо установить
sclравным— возможно, не то, что вы ожидали вначале.
Также обратите внимание, что, как правило, результат интегрирования ряда C необходимо «перепроектировать» на базис ряда C. Таким образом, обычно результат этой функции является «неинтуитивным», хотя и правильным; см. раздел Примеры ниже.
Примеры
>>> from numpy.polynomial import legendre as L >>> c = (1,2,3) >>> L.legint(c) array([ 0.33333333, 0.4 , 0.66666667, 0.6 ]) >>> L.legint(c, 3) array([ 1.66666667e-02, -1.78571429e-02, 4.76190476e-02, -1.73472348e-18, 1.90476190e-02, 9.52380952e-03]) >>> L.legint(c, k=3) array([ 3.33333333, 0.4 , 0.66666667, 0.6 ]) >>> L.legint(c, lbnd=-2) array([ 7.33333333, 0.4 , 0.66666667, 0.6 ]) >>> L.legint(c, scl=2) array([ 0.66666667, 0.8 , 1.33333333, 1.2 ]) -
© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.16.1/reference/generated/numpy.polynomial.legendre.legint.html