В ходе решения некоторой задачи возникла задача посчитать интегралы вида
![$$P_N^M(\gamma)=\int_0^{\infty} e^{-\gamma x - \frac12 x^2} x^M L_{N-M}^{M} (x^2) dx,$$ $$P_N^M(\gamma)=\int_0^{\infty} e^{-\gamma x - \frac12 x^2} x^M L_{N-M}^{M} (x^2) dx,$$](https://dxdy-03.korotkov.co.uk/f/2/b/3/2b35fa55379aada1300c5e5b3a7e5afd82.png)
где
![$L_N^M$ $L_N^M$](https://dxdy-03.korotkov.co.uk/f/e/b/b/ebb997d431fe1240c4921a896a4941c682.png)
-- полиномы Лагерра. Причём хочется делать это точно и по мере возможности быстро.
Начал с простого -- для небольших
![$N$ $N$](https://dxdy-04.korotkov.co.uk/f/f/9/c/f9c4988898e7f532b9f826a75014ed3c82.png)
численно интегрирую, для больших заменяю полиномы на функцию Бесселя и пишу ответ. Хотелось бы сделать что-то получше.
В принципе, есть вариант выразить эти интегралы через
![$$R_N(\gamma)=\int_0^{\infty} e^{-\gamma x - \frac12 x^2} x^N dx,$$ $$R_N(\gamma)=\int_0^{\infty} e^{-\gamma x - \frac12 x^2} x^N dx,$$](https://dxdy-01.korotkov.co.uk/f/8/f/4/8f44b0e9650cf101f3efe039309703e282.png)
но тут опять засада. Для этих интегралов можно получить рекуррентное соотношение
![$$R_N(\gamma) = \sqrt2 S_N(\gamma) + \left[ \sqrt{\frac{\pi}2} e^{\frac12 \gamma^2} \mathrm{erfc}\left( \frac{\gamma}{\sqrt2} \right) \right] T_N(\gamma),$$ $$R_N(\gamma) = \sqrt2 S_N(\gamma) + \left[ \sqrt{\frac{\pi}2} e^{\frac12 \gamma^2} \mathrm{erfc}\left( \frac{\gamma}{\sqrt2} \right) \right] T_N(\gamma),$$](https://dxdy-02.korotkov.co.uk/f/5/3/b/53b2ece00c689b906d92e32aa76a8e3982.png)
![$$S_{N+1}(\gamma) = T_N(\gamma) - \frac{\partial S_N(\gamma)}{\partial \gamma} ,\;\;\;\;
T_{N+1}(\gamma) = - \gamma T_N(\gamma) - \frac{\partial T_N(\gamma)}{\partial \gamma}$$ $$S_{N+1}(\gamma) = T_N(\gamma) - \frac{\partial S_N(\gamma)}{\partial \gamma} ,\;\;\;\;
T_{N+1}(\gamma) = - \gamma T_N(\gamma) - \frac{\partial T_N(\gamma)}{\partial \gamma}$$](https://dxdy-04.korotkov.co.uk/f/7/5/c/75c84ce57ee4c6511687bffdf43249b882.png)
Плюс
![$T_0=1$ $T_0=1$](https://dxdy-04.korotkov.co.uk/f/f/c/2/fc29f764d752cc949ab9f082840f731882.png)
.
Если попытаться посмотреть на несколько первых
![$N$ $N$](https://dxdy-04.korotkov.co.uk/f/f/9/c/f9c4988898e7f532b9f826a75014ed3c82.png)
, оказывается что так считать точно и быстро не получится, потому что по отдельности оба слагаемых довольно велики, то есть для вычисления
![$R_N$ $R_N$](https://dxdy-02.korotkov.co.uk/f/d/0/3/d03e5299fcd6df02c3a8aa9475a6603482.png)
с разумной точностью придётся сделать что-то весьма нетривиальное.
Собственно, в этом и вопрос. Что такое нетривиальное можно сделать чтобы достаточно точно посчитать
![$R_N$ $R_N$](https://dxdy-02.korotkov.co.uk/f/d/0/3/d03e5299fcd6df02c3a8aa9475a6603482.png)
или сразу
![$P_N^M$ $P_N^M$](https://dxdy-01.korotkov.co.uk/f/4/0/7/407c212b9f19b69dc1b3963ff6c8ebe082.png)
? Может, кто-то сталкивался с подобной задачей?
Да, сразу оговорюсь. Вопрос задаю в Computer Science потому, что в принципе
![$R_N$ $R_N$](https://dxdy-02.korotkov.co.uk/f/d/0/3/d03e5299fcd6df02c3a8aa9475a6603482.png)
можно выразить через конечную сумму функций параболического цилиндра, т.е. получить замкнутый ответ. Вот только посчитать для аргументов больше 1 не получится, так как в какой-то момент придётся умножать большое значение экспоненты на маленькое значение функции параболического цилиндра, что приводит к ещё большим проблемам, несмотря на "аналитическое" решение.
Вопрос именно в том, как это можно посчитать.
Заранее спасибо.