
- •Глава 2. Основные понятия и конструкции системы
- •2.1. Алфавит и синтаксис Maple-языка
- •2.2. Последовательности выражений
- •2.3. Операторы оценивания выражений
- •2.4. Извлечение операндов выражений
- •2.5. Наборы и операции с наборами
- •2.6. Списки и операции со списками
- •2.7. Типы объектов и выражений
- •2.8. Преобразование типов выражений
- •2.9. Имена переменных
- •2.10. Типы переменных
- •2.11. Оператор присваивания
- •2.12. Отмена операции присваивания
- •2.13. Ограничение значений переменных
- •2.14. Операторы
- •2.15. Математические функции
- •2.16. Операции с формулами и выражениями
- •2.17. Операции с полиномами
- •2.18. Массивы, векторы и матрицы
- •2.19. Строковые переменные
- •Упражнения
- •Глава 3. Операции и функции математического анализа
- •3.1. Вычисление сумм и рядов
- •3.2. Вычисление произведений членов некоторой последовательности
- •3.3. Вычисление производных
- •3.4. Вычисление пределов
- •3.5. Интегрирование выражений
- •3.6. Разложение функций в ряды
- •3.7. Нахождение экстремумов, максимумов и минимумов функций
- •3.8. Анализ функций на непрерывность
- •Упражнения
- •Глава 4. Решение уравнений и неравенств
- •4.1. Основные понятия и конструкции
- •4.2. Решение одиночных уравнений
- •4.3. Решение систем алгебраических уравнений
- •4.4. Присваивание значений полученных решений
- •4.5. Поиск корней полиномов
- •4.6. Решение тригонометрических уравнений
- •4.7. Решение неравенств
- •4.8. Решение функциональных уравнений
- •4.9. Решение рекуррентных уравнений
- •4.10. Численное решение уравнений и систем
- •4.11. Решение дифференциальных уравнений
- •Упражнения
3.4. Вычисление пределов
Для вычисления пределов используются функции
limit(f,x=a) или limit(f,x=a,dir)
Limit(f,x=a) или Limit(f,x=a,dir) .
Здесь f – алгебраическое выражение, предел которого вычисляется;
x – имя переменной, входящей в алгебраическое выражение, по которой вычисляется предел;
a - алгебраическое выражение, являющееся предельным значением переменной x, в частности, таким значением может быть infinity или -infinity (бесконечность или минус бесконечность);
dir – необязательный параметр, задающий дополнительные условия вычисления предела (left – предел слева, right – предел справа, real, complex – предел на вещественном или комплексном множестве значений).
Если параметр dir не указан, то вычисляется двустoронний вещественный предел за исключением случая, когда предельное значение переменной ограничения infinity или –infinity. В этих случаях вычисляется соответственно левый и правый пределы (стремление к + слева и к - справа).
Если система не может найти замкнутую форму для записи предела, то возвращается обращение к функции.
Оператор вычисления предела, начинающийся с большой буквы - инертная форма, которая просто возвращает не вычисленный предел. Может использоваться для подготовки отчетов.
Примеры:
> limit(sin(x)/x, x=0);
1
> limit((1-cos(x))/x^2,x=0);
1/2
> Limit(exp(x), x=-infinity);
> value(%);
0
> limit(1/x,x=0);
undefined
> limit(1/x,x=0,right);
3.5. Интегрирование выражений
Функция вида
int(f, x) или Int(f, x)
вычисляет первообразную функции f без учета постоянной интегрирования, а вида
int(f, x=a..b, opt) или Int(f, x=a..b, opt)
определенный интеграл. Здесь:
f - подынтегральная функция, алгебраическое выражение или процедура;
x – имя переменной интегрирования;
a, b – границы интегрирования;
opt – дополнительные параметры интегрирования.
Если система не может найти замкнутую форму записи результата (не может проинтегрировать), то возвращается обращение к функции. Форма Int - инертная версия функции int, которая просто возвращает не вычисленное значение интеграла и, аналогично другим подобным формам, может использоваться для подготовки отчетов.
Подынтегральная функция может быть разрывной. По умолчанию функция int проверяет подынтегральную функцию на разрывы и вычисляет интеграл как сумму независимых определенных интегралов по участкам непрерывности.
Обратите внимание, что, в отличие от функций дифференцирования, в одной функции интегрирования может стоять только одна переменная интегрирования. Для повторного интегрирования используется конструкция вида
int(int(f, x),х) .
Примеры:
> int( sin(x), x );
-cos(x)
> int( exp(-x^2)*ln(x), x );
> Int((1+sin(x))/(1+cos(x))*exp(x),x);
> value(%);
exp(x) tan(1/2 x)
Для численного интегрирования или для принудительного вычисления интеграла, аналитическое выражение которого не может быть получено, может использоваться функция эволюции вида
evalf(int(f, x=a..b)) или evalf(Int(f, x=a..b)) или evalf(Int(f, x=a..b, digits, flag)) .
Здесь параметры f, x, a, b имеют указанный выше смысл;
digits – необязательный параметр, задающий желаемое количество значащих цифр мантиссы результата, по умолчанию количество цифр определяется значением переменной среды Digits. Система будет пытаться достигнуть относительной погрешности eps = 0.5 * 10 ^ (1-digits);
flag – необязательный параметр, задающий способ численного интегрирования, по умолчанию используется численный метод квадратур. Подробнее о значении этого параметра можно посмотреть, набрав команду ?int[numerical].
Для интегрирования функций с особенностями следует использовать параметр dir, который управляет обработкой разрывов. Он может принимать одно из значений 'continuous' или 'CauchyPrincipalValue'. В первом случае система не ищет разрывы функции, а во втором рассматриваются пределы слева и справа для каждой внутренней особенности.
Примеры:
> int( sin(x), x=0..Pi );
2
> evalf(int( exp(-x^2)*ln(x), x=0..infinity ));
-.8700577270
> int(1/x^3, x=-1..2, 'CauchyPrincipalValue');
3/8
> int( 1/(x+a)^2, x=0..2, 'continuous' );
> Int(cosh(x),x=0..ln(2));
> value(%);
3/4
> evalf(%);
.7500000000
> Int(Int(x-3*y,x=y^2-4..6),y=-4..5);
>evalf(value(%));
68.85000000