где x i — корень i -й степени полинома Лагерра L n ( x ), а вес w i определяется по формуле [1]
Следующий код Python с библиотекой SymPy позволит вычислять значения и с точностью до 20 знаков:
из симпи импорт *def lag_weights_roots ( n ): x = Symbol ( "x" ) roots = Poly ( laguerre ( n , x )) . all_roots () x_i = [ rt . evalf ( 20 ) для rt в корнях ] w_i = [( rt / (( n + 1 ) * laguerre ( n + 1 , rt )) ** 2 ) . evalf ( 20 ) для rt в корнях ] return x_i , w_iраспечатать ( lag_weights_roots ( 5 ))
Для более общих функций
Для интегрирования функции применим следующее преобразование
где . Для последнего интеграла затем используется квадратура Гаусса-Лагерра. Обратите внимание, что хотя этот подход работает с аналитической точки зрения, он не всегда численно устойчив.
Обобщенная квадратура Гаусса–Лагерра
В более общем случае можно также рассматривать подынтегральные функции, имеющие известную степенную особенность при x = 0 для некоторого действительного числа , что приводит к интегралам вида:
Salzer, HE; Zucker, R. (1949). «Таблица нулей и весовых множителей первых пятнадцати полиномов Лагерра». Бюллетень Американского математического общества . 55 (10): 1004–1012. doi : 10.1090/S0002-9904-1949-09327-8 .
Concus, P.; Cassatt, D.; Jaehnig, G.; Melby, E. (1963). "Таблицы для оценки ∫ 0 ∞ x β exp ( − x ) f ( x ) d x {\displaystyle \int _{0}^{\infty }x^{\beta }\exp(-x)f(x)\,dx} с помощью квадратуры Гаусса-Лагерра". Mathematics of Computation . 17 : 245–256. doi : 10.1090/S0025-5718-1963-0158534-9 .
Шао, ТС; Чен, ТС; Франк, РМ (1964). «Таблица нулей и гауссовых весов некоторых ассоциированных полиномов Лагерра и связанных с ними полиномов Эрмита». Математика вычислений . 18 (88): 598–616. doi : 10.1090/S0025-5718-1964-0166397-1 . JSTOR 2002946. MR 0166397.
Эрих, С. (2002). «О стратифицированных расширениях квадратурных формул Гаусса-Лагерра и Гаусса-Эрмита». Журнал вычислительной и прикладной математики . 140 (1–2): 291–299. doi :10.1016/S0377-0427(01)00407-1.