Численное интегрирование
Численное интегрирование выполняется с помощью той же самой процедуры, что и вычисление интегралов в символьном виде. Разница состоит в том, что теперь процедура int() (или Int()) сама указывается аргументом процедуры evalf(). При этом имеет место следующее правило. Если используется процедура int(), то сначала предпринимается попытка вычислить интеграл в символьном виде. Если же воспользоваться неактивной формой процедуры, т.е. Int(), то интеграл сразу будет вычисляться в численном виде. Разумеется, речь идет о тех случаях, когда процедуры сами являются параметром процедуры evalf() и для переменной интегрирования задан диапазон изменения. Параметром указанных Процедур может быть и оператор. В этом случае указывается только диапазон изменения переменной — сама переменная не указывается. .Кроме того, в процедурах Into и int() допускается использование необязательных параметров. Эти параметры описаны в табл. 7.6.
Таблица 7.6. Опции процедуры int()
Опция
|
Описание
|
digits
|
Значением опции является целое положительное число, определяющее количество значащих цифр. Допускается задавать значение опции без указания последней. По умолчанию значение опции определяется переменной среды Digits
|
epsilon
|
Верхняя граница для относительной погрешности вычислений. По умолчанию определяется согласно формуле epsilon=0.5 *10Л(1-digits)
|
method
|
Метод вычисления интеграла. Значение может указываться без ссылки на название опции
|
Первостепенное значение имеет метод, с помощью которого вычисляется интеграл. Особенно это справедливо, когда в символьном виде интеграл вычислен быть не может. Возможные значения опции method перечислены в табл. 7.7.
Рассмотрим примеры, в которых интегралы вычисляются разными методами. Для начала вычислим следующий интеграл.
Таблица 7.7. Значения опции method
Значение
|
Описание
|
CCquad
|
Метод квадратур
|
_cuhre
|
Метод вычисления многократных интегралов на областях конечных размеров (новое в Maple 9 значение)
|
dOlajc
|
Адаптивный 10-точечный метод Гаусса с использованием правила Кронрода 21 точки. Применяется при конечных пределах интегрирования
|
_d01akc
|
Адаптивный 30-точечный метод Гаусса с использованием правила Кронрода 61 точки. Применяется при конечных пределах интегрирования с осциллирующими подынтегральными выражениями
|
_d01amc
|
Метод для вычисления интегралов на бесконечных интервалах
|
_DEFAULT
|
Эквивалент отсутствия явного указания метода интегрирования
|
_Dexp
|
Адаптивный метод двойного показателя
|
Gquad
|
Адаптивный метод квадратур Гаусса (новое в Maple 9 значение)
|
_NCrule
|
Метод Ньютона-Котеса
|
_NoNAG
|
Инструкция не использовать процедуры NAG
|
_NoMultiple
|
Инструкция не вызывать процедуры вычисления многократных интегралов. Такие интегралы вычисляются в этом случае через последовательное вычисление однократных интегралов (новое в Maple 9 значение)
|
MonteCarlo
|
Метод Монте-Карло. Используется для многократных интегралов. Это значение в версии Maple 9 заменило использовавшееся ранее значение dOlgbc
|
_Sinc
|
Адаптивный метод квадратур
|
Если интеграл вычислять адаптивным 30-точечным методом Гаусса, результат получится таким же.
Далее рассмотрим интеграл от функции, имеющей особенность на границе интегрирования.
Внимание!
Явное указание метода интегрирования автоматически означает, что никакие другие методы, в том числе и методы обработки сингулярностей, не используются.
Наконец, с помощью двойного интеграла вычислим площадь круга единичного радиуса.
В Maple 9 воспользоваться приведенной выше командой не удастся из-за переопределения опции для метода Монте-Карло и изменения синтаксиса вызова команд вычисления многократных интегралов. В качестве утешения можно посчитать площадь квадрата.
На заметку
Вычисление интегралов методом Монте-Карло основано на использовании вероятностных оценок. Например, площадь круга могла бы вычисляться так: генератором случайных чисел продуцируются точки на плоскости, попадающие во внутреннюю область квадрата с координатами вершин (1,1), (-1,1), (-1,-1), (1,-1). Затем среди этих точек подсчитывается (в процентном отношении) количество тех, которые попадают во внутреннюю область круга единичного радиуса, вписанного в этот квадрат. При большом количестве точек упомянутое процентное отношение будет одновременно определять отношение площади круга к площади квадрата. Последняя, очевидно, равна 4. Метод достаточно элегантный, но не очень точный.
Вывод, как и в случае численного дифференцирования, состоит в том, что спецификацию метода разумно выполнять только в тех случаях, когда пользователь полностью уверен в правильности своих действий.
|