Давайте рассмотрим конкретный пример (принял наобум)
![$$\int \limits _{-\infty}^{+\infty}{e^{-x^2}ln(10|x|)dx}$$ $$\int \limits _{-\infty}^{+\infty}{e^{-x^2}ln(10|x|)dx}$$](http://fx.ifz.ru/tex2.php?d=120&i=%24%24%5Cint%20%5Climits%20_%7B-%5Cinfty%7D%5E%7B%2B%5Cinfty%7D%7Be%5E%7B-x%5E2%7Dln%2810%7Cx%7C%29dx%7D%24%24)
Вольфрам дает только численное значение исходного интеграла:
[url=http://www.wolframalpha.com/input/?i=int%2...ty..infinity%29]http://www.wolframalpha.com/input/?i=int%2...ty..infinity%29[/url]
Он равен 2,34111
Теперь мой рекомендуемый подход. Обязательно строим подинтегральную функцию (см. Рис)
Мы видим, что функция симметричная и достаточно найти интеграл
![$$2 \int \limits _{0}^{4}{e^{-x^2}ln(10|x|)dx}$$ $$2 \int \limits _{0}^{4}{e^{-x^2}ln(10|x|)dx}$$](http://fx.ifz.ru/tex2.php?d=120&i=%24%242%20%5Cint%20%5Climits%20_%7B0%7D%5E%7B4%7D%7Be%5E%7B-x%5E2%7Dln%2810%7Cx%7C%29dx%7D%24%24)
Составим программу расчета этого интеграла методом прямоугольников. Вот прога на Yabasic:
for k=2 to 6
d=10^(-k)
for x=d/2 to 4 step d
sum=sum+exp(-x^2)*log(10*x)*d
next x
print d,2*sum
sum=0
next k
При разных d (то есть ширин полос разбиения) получим такие результаты:
d= 0.01 ; S=2.34804
d=0.001 ; S=2.3418
d=0.0001 ; S=2.34118
d=0.00001 ; S=2.34112
d=0.000001 ; S=2.34111
Как видим, задача успешно решена самым простым способом.
![Изображение](http://e-science.ru/sites/default/files/upload_forums_files/4g/expLn.gif)
Последний раз редактировалось
Георгий 29 ноя 2019, 13:35, всего редактировалось 1 раз.
Причина: test