Главная > Математика > Численные методы для ПЭВМ на языках Бейсик, Фортран и Паскаль
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

5.9. Несобственные интегралы

Известно несколько приемов вычисления разных типов несобственных интегралов [1]. Иногда удается заменой переменных перейти от интегралов с бесконечными пределами к интегралам с конечными пределами. Если подынтегральная функция после преобразования останется конечной на новом интервале, то для интегрирования можно использовать методы и программы, рассмотренные в предыдущих разделах

Довольно распространенным является способ образования верхнего предела интегрирования, при котором исходный несобственный интеграл разбивается на сумму двух интегралов

Затем оценивается аналитическими, а иногда и численными методами модуль второго интеграла и при выполнении условия

в качестве приближенного значения несобственного интеграла выбирается величина интеграла в пределах

Для вычисления несобственных интегралов с бесконечными пределами применимы и квадратурные формулы Гаусса-Кристоффеля (5.47), узлы и веса которых определяются в зависимости от вида весовой функции входящей под интеграл в форме произведения

Так, для интегралов в пределах при узлами квадратурной формулы (5.47) являются корни многочленов Лаггера а весовые коэффициенты определяются через интеграл [1]

где выбранное число узлов.

Как правило, в программах используют заранее вычисленные узлы и веса квадратурных формул, задаваемые в виде констант. В справочниках [36, 52] имеются достаточно подробные таблицы узлов и весов квадратурных формул Гаусса-Кристоффеля для различных видов функций и разных чисел

Для интегралов в пределах при узлами квадратурной формулы (5.47) будут корни многочленов Эрмита а весовые коэффициенты определяются по формуле, аналогичной (5.55), где интеграл необходимо взять в бесконечных пределах.

Несобственные интегралы с конечными пределами интегрирования, но с подынтегральной функцией, обращающейся в бесконечность в отдельных точках интервала вычисляют методами аддитивного или мультипликативного выделения особенностей, а также построением нестандартных квадратурных формул [1]. При аддитивном способе выделения особенности подынтегральную функцию представляют в виде суммы двух функций ограниченная функция, интегрируется аналитическими методами. Для мультипликативного способа функция представляется в виде произведения где ограничена, а положительна и интегрируема на отрезке Тогда можно применить квадратурные формулы Гаусса-Кристоффеля, которые требуют вычисления в узлах лишь функции при этом рассматривается как весовая функция.

В программах 5.8 реализовано применение квадратурных формул Гаусса-Кристоффеля для вычисления интегралов.

Для примера использована функция [53]. Узлы и веса квадратурной формулы взяты из [36].

В программе значения узлов X и весов С задаются операторами DATA и READ (строки 30-50) и операторами присваивания (строка 60) с учетом симметрии коэффициентов. Программа может работать как с обычной версией Бейсика, так и с версией, предусматривающей вычисления с двойной точностью. Поэтому при задании констант используется 14 значащих цифр. Для вывода результата на дисплей используется оператор форматной печати PRINT USING, формат в виде текстовой константы в строке 7. В подпрограмме вычисления интеграла (строки 100-190) в цикле накапливается сумма, входящая в квадратурную формулу (5.47). Функция определяется с помощью оператора (строка 10).

В программе значения узлов X и весовых коэффициентов С определяются с помощью операторов DATA. Для исключения операций присваивания при определении значений весов проведено изменение их нумерации по сравнению с программой При этом удалось применить множитель повтора 2. Вычисление интеграла осуществляется в подпрограмме с именем параметрами которой ьоляются переменные: К - число узлов; массивы узлов и весов; имя подпрограммы для вычисления функции значение интеграла Подпрограмма универсальна, так как составлена из произвольного числа узлов и весов; подпрограмму можно использовать для любого типа квадратур Гаусса-Кристоффеля.

В основной части программы узлы и веса задаются операторами присвоения. Параметры процедуры имеют тот же смысл, что и в программе на Фортране.

Программы 5.8 дают результат который совпадает с точным значением интеграла, равным [53], в пределах вычислений с одинарной точностью.

(см. скан)

(см. скан)

<< Предыдущий параграф Следующий параграф >>
Оглавление