numpy.polynomial.legendre.legroots#

polynomial.legendre.legroots(c)[источник]#

Вычислить корни ряда Лежандра.

Возвращает корни (также известные как «нули») полинома

\[p(x) = \sum_i c[i] * L_i(x).\]
Параметры:
cОдномерный массивоподобный объект

1-D массив коэффициентов.

Возвращает:
выходndarray

Массив корней ряда. Если все корни вещественные, то выход также является вещественным, иначе он комплексный.

Примечания

Оценки корней получаются как собственные значения сопровождающей матрицы. Корни, далёкие от начала комплексной плоскости, могут иметь большие погрешности из-за численной неустойчивости ряда для таких значений. Корни с кратностью больше 1 также покажут большие погрешности, поскольку значение ряда вблизи таких точек относительно нечувствительно к погрешностям в корнях. Изолированные корни вблизи начала можно улучшить несколькими итерациями метода Ньютона.

Базисные полиномы ряда Лежандра не являются степенями x поэтому результаты этой функции могут показаться неинтуитивными.

Примеры

>>> import numpy.polynomial.legendre as leg
>>> leg.legroots((1, 2, 3, 4)) # 4L_3 + 3L_2 + 2L_1 + 1L_0, all real roots
array([-0.85099543, -0.11407192,  0.51506735]) # may vary