Примеры из курса математического анализа

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

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

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

С помощью Maple можно сэкономит массу времени и избежать многих ошибок при вычислениях.

Рассмотрим на примерах команду limit, которая позволяет находить пределы функций.

> restart;

> f(x):=(x^3-3*x^2+2*x-5)/(x^2+2);

[Maple Math]

> Limit(f(x),x=-1)=limit(f(x),x=-1);

[Maple Math]

> r:=5*sin((3*x)/(x-Pi));

[Maple Math]

> limit(r,x=Pi);

[Maple Math]

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

> plot(r,x=Pi-0.3..Pi+0.3);

[Maple Plot]

Иногда Maple не может найти предел, например:

> limit(tan(x), x=infinity);

[Maple Math]

Можно также находить односторонние пределы. Для этого достаточно указать ключевое слово left или right.

> g(x):=1/x;

[Maple Math]

> Limit(g(x),x=0,left)=limit(g(x),x=0,left);

[Maple Math]

Проверить правильность нахождения предела можно с помощью графика.

> plot(g(x),x=-1..1,view=[-1..1,-50..50],discont=true,color=blue,labels=[`x`,`g(x)`]);

[Maple Plot]

Можно также находить пределы для функций нескольких аргументов:

> limit(x+1/y, {x=0,y=infinity});

[Maple Math]

Для Maple не составит труда найти предел для функции с неизвестными параметрами:

> limit(a*x, x=infinity);

[Maple Math]

Чтобы продифференцировать функцию, достаточно воспользоваться командой diff.

> restart:

> f(x):=ln(sqrt(exp(3*x)/(1+exp(3*x))));

[Maple Math]

> simplify(diff(f(x),x));

[Maple Math]

Можно взять частные производные от функции многих аргументов:

> diff(f(x,y),x,y);

[Maple Math]

При помощи оператора формирования последовательности ($) можно брать производные высоких порядков.

> Diff(sin(x),x$3)=diff(sin(x),x$3);

[Maple Math]

Взять интеграл от какой-либо функции можно при помощи оператора int.

> restart:

Неопределенный интеграл:

> Int((3*x^2+8)/(x^3+4*x^2+4*x),x)=int((3*x^2+8)/(x^3+4*x^2+4*x),x);

[Maple Math]

Определенный интеграл:

> Int(sin(phi)^3*sqrt(cos(phi)),phi=0..Pi/2)=int(sin(phi)^3*sqrt(cos(phi)),phi=0..Pi/2);

[Maple Math]

Несобственный интеграл:

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

[Maple Math]

> Int(1/(x-1)^2,x=0..2)=int(1/(x-1)^2,x=0..2);;

[Maple Math]

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

> ww:=int( exp(-x^3), x = 0..1 );

[Maple Math]

> evalf(ww,5);

[Maple Math]

В Maple можно находить предел сходимости рядов.

> Sum(7^(3*n)/(2*n-5)!,n=3..infinity)=evalf(sum(7^(3*n)/(2*n-5)!,n=3..infinity));

[Maple Math]

Полезной может оказаться и функция product (произведение):

> product( a[k], k=0..n );

[Maple Math]

Достаточно просто производить различные операции над кусочно-аналитическими функциями. Их можно интегрировать, дифференцировать и даже использовать в дифференциальных уравнениях.

> p:=piecewise(x<0, -1, x>1, 2*x, x^2);

[Maple Math]

Построим график вышеописанной функции:

> plot(p,x=-1..2);

[Maple Plot]

Проинтегрируем кусочную функцию:

> int(p,x);

[Maple Math]

А теперь попробуем решить дифференциальное уравнение, в которое входит функция p(x).

> rez:=dsolve( {diff(y(x),x)+p*y(x),y(0)=-2}, y(x));

[Maple Math]

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