Естественно, что в этом случае решение является приближенным, но оно все же есть и с ним можно работать, например, можно построить график функции, представляющей данный интеграл.

Система Maple непрерывно совершенствуется. Например, в Maple V R4 интеграл с подынтегральной функцией ехр(х^4) не брался, а системы Maple, начиная с версии Maple 7, с легкостью берут его:

> Int(exp(x^4),х)=int(exp(х^4),х);

Хотя полученный результат, выраженный через гамма-функцию, нельзя назвать очень простым, но он существует и с ним также можно работать. Например, можно попытаться несколько упростить его, используя функцию simplify:

> simplify(%);

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

4.4.4. Вычисление определенных интегралов

Для вычисления определенных интегралов используются те же функции int и Int, в которых надо указать пределы интегрирования, например. х=а..b, если интегрируется функция переменной х. Это поясняется приведенными ниже примерами:

> Int(sin(x)/x,х=а..b)=int(sin(х)/х,х=а..b);

> Int(sin(х)/х,х=0..1.)=int(sin(х)/х, х=0..1.);

> Int(х*ln(х),х=0..1)=int(x*ln(x), х=0..1);

> Int(х*ехр(-х),х=0..infinity)=int(х*ехр(-х), х=0..infinity);

> Int(1/(х^2+6*х+12),x=-infinity..infinity);

> value(%);

⅓π√3

Как видно из этих примеров, среди значений пределов может быть бесконечность, обозначаемая как infinity.

4.4.5. Каверзные интегралы и визуализация результатов интегрирования

Рассмотрим интеграл, который встречает трудности при вычислении с ограниченным числом верных знаков в процессе вычислений. Maple 8/9/9.5 (кстати, как и Mathematica 4/5), с легкостью берут этот интеграл и позволяют сразу и без какой-либо настройки вычислить для него как точное, так и приближенное значение:

> Int(х^20*ехр(-х),х=0..1)=int(х^20*ехр(-х),х=0..1);

> evalf(%,30);

.0183504676972562063261447542317 = .01835046770

Любопытно, что версия Maple 6 при задании погрешности по умолчанию вычисляла значение этого интеграла также как 0, тогда как Maple 9.5 «поумнел» уже настолько, что дает значение 0.01835046770 даже в этом, не очень удачном, случае. Более того Maple 9/9.5 позволяет наглядно проиллюстрировать характер промежуточных вычислений подобных интегралов:

> int(х^20*ехр(-х),х);

½+½I√3, ½-½I√3, RootOf(_Z5 + _Z4 - _Z2 - _Z - 1, index = 1), RoolOf(_Z5 + _Z4 - _Z2 - _Z - 1, index = 2), RootOf(_Z5 + _Z4 – _Z2 - _Z - 1, index = 3), RootOf(_Z5 + _Z4 - _Z2 - _Z - 1, index = 4), RootOf(_Z5 + _Z4 - _Z2 - _Z - 1, index = 5)

Нетрудно заметить, что решение распадается на множество слагаемых, соответствующих общеизвестному интегрированию по частям. В каждом слагаемом имеются большие числа и потому принципиально необходимо применение арифметики высокой точности (или разрядности). Maple 9/9.5 такими средствами, причем превосходными, обладает.

Продолжим изучение данного «каверзного» интеграла. Опробуем силы Maple на интеграле более общего вида, где конкретный показатель степени заменен на обобщенный — n. Здесь нас ожидает приятный сюрприз — Maple с легкостью выдает аналитическое решение для данного определенного интеграла:

> у:=(n)->int(х^n*ехр(-х),х=0..1);

> y(n);

> y(20);

-6613313319248080001 e(-1)+ 2432902008176640000

> evalf(%,30);

.01835046770

> у(20.);

0.

Однако радоваться несколько преждевременно. Многие ли знают, что это за специальная функция — WhittakerM? Но хуже другое — Maple при конкретном n=20 дает грубо неверное решение — 0 (почему — уже объяснялось). Забавно, что при этом сама по себе функция WhittakerM вычисляется для n=20 без проблем:

> WhittakerM(10,10.5,1);

.6353509348

А теперь присмотритесь к новому результату вычисления злополучного интеграла. Оказывается, он уже не содержит больших чисел, свойственных прямому решению! Зная значение WhittakerM с погрешностью по умолчанию, можно уверенно вычислить приближенное численное значение интеграла с той же погрешностью, уже не прибегая к арифметике высокой точности:

> (ехр(-.5)*WhittakerM(10,10.5,1))/21;

.01835046770

На рис. 4.3 приведен график зависимости значений данного интеграла от показателя степени n при его изменении от 0 до 50. Плавный ход графика показывает, что в вычислении данного интеграла нет никаких признаков неустойчивости решения при изменении n, если соблюдать правило выбора достаточно малой погрешности вычислений.

Рис. 4.3. Значение интеграла от х^nехр(-х) как функция n

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату