Математический анализ в Maple 9



Двойные интегралы

В Maple для вычисления двойных интегралов, в отличие от обычных, специальной процедуры не существует. Однако в пакете student есть процедура Doubleint(), которая имеет только неактивную форму и используется, как правило, для непосредственной записи двойного интеграла.

При вызове данной процедуры в качестве параметров указываются подынтегральная функция, затем (через запятую) две переменные интегрирования и, наконец, область интегрирования (в символьном виде). Если при указании переменных интегрирования сразу определить и границы их изменения, то, во-первых, область интегрирования уже не указывается и, во-вторых, значение такого интеграла можно узнать, воспользовавшись процедурой value)) (как и для обычных процедур в неактивной форме).

На заметку
Все же в некоторых случаях процедуру Doubleintf) можно использовать для вычисления двойных интегралов, о чем и пойдет речь ниже.


В следующем примере процедура Doubleint() используется для вычисления повторного интеграла.

Задача 4.11

Вычислить интеграл.

Чтобы процедура Doubleint() стала доступной, следует подключить пакет student.

Для вычисления такого интеграла воспользуемся процедурой value(), указав в качестве ее параметра рассматриваемый интефал (ссылка на этот интефал выполнена посредством переменной среды %):

Несмотря на кажущуюся простоту, использовать процедуру Doubleint() непосредственно для вычислений следует крайне осторожно. Например, поменяем в вызове этой процедуры порядок переменных интегрирования, как показано ниже.

Если теперь запросить у Maple значение интеграла, получим некорректный результат.

В данном случае вычислительным ядром Maple сначала было выполнено интегрирование по х в указанном диапазоне, а затем по у — в полном соответствии с порядком следования переменных интегрирования при вызове процедуры. Такие "тонкости" часто становятся причиной недоразумений, и их нужно отслеживать.

Описанный выше способ вычисления повторного интеграла является скорее исключением, чем правилом. Такой подход применим только для вычисления повторных интегралов. В случае двойного интеграла его сначала необходимо свести к повторному. Как это делается, можно увидеть из следующего примера.

Задача 4.12

Вычислить интеграл xyldxdy, если область ограничена параболой у1 = 2рх и прямой х = р/2 (р>0).

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

Графики построены в безразмерных переменных (нормированных на р) с явным указанием числа базовых точек по каждой из осей (grid=[50,50]), по которым они отображаются.

Далее декларируем положительность параметра р.

Чтобы воспользоваться для записи двойного интеграла процедурой Doubleint(), подключаем пакет student.

Теперь осталось этот повторный интеграл вычислить. Примем во внимание следующее. Последнее равенство присвоено в качестве значения переменной *. Вычисляемый двойной интеграл — это левая часть указанного равенства, т.е. lhs(%). Повторный интеграл (процедуры в неактивной форме) — правая часть равенства, т.е. rhs(l). Чтобы этот повторный интеграл вычислить, используем команду value(rhs(%)). Таким образом, вводим следующую команду.

Левая часть последнего равенства, разумеется, может быть пропущена — по усмотрению пользователя.

Часто при вычислении интегралов приходится переходить к новым координатам. В Maple эта операция (при вычислении интегралов) полностью автоматизирована.

Задача 4.13

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

Как обычно, подключаем пакет.

При переходе к полярным координатам используются переменные гиф. Обе переменные, по определению, неотрицательны. Это обстоятельство относительно переменной г декларируем сразу (тогда в подынтегральном выражении не будет модулей).

Замена переменных в подынтегральных выражениях осуществляется с помощью процедуры changevar(). Первым параметром этой процедуры указывается список равенств, определяющих переход от одних переменных к другим, вторым параметром — двойной интеграл, в котором выполняется замена, и третьим — список новых переменных, к которым осуществляется переход.

Теперь следует записать в новых переменных уравнения, определяющие область интегрирования. Переменной Omega присвоим в качестве значения определяющее область интегрирования неравенство (в декартовых координатах).



На заметку
Переменная Omega выглядит в области вывода как омега.

Переходим к полярным координатам.

Неравенство для области интегрирования выглядит теперь следующим образом.



На заметку
Кстати, замену переменных (т е. выполнение перехода от декартовых координат к полярным в выражении для области) можно осуществить с помощью стандартной процедуры changecoords().

Таким образом, исходный двойной интеграл в полярной системе координат записывается через повторный следующим образом.

Видим, что и в достаточно простых случаях вычисление двойных интегралов требует от пользователя определенных усилий. Конечно же, Maple в полной мере избавить от рутинной работы не может, но все же его использование существенно ускоряет и упрощает процесс поиска решения.