Maple 9.5/10 в математике, физике и образовании
Шрифт:
Чтобы еще раз показать различие между функциями solve и fsolve, рассмотрим пример решения с их помощью одного и того же уравнения erf(x) = 1/2:
Функция solve в этом случае находит нетривиальное решение в комплексной форме через функцию RootOf, тогда как функция fsolve наводит обычное приближенное решение.
Мы уже отмечали, что функция solve дает решение уравнения ехр(-х) = х в форме специальной функции Ламберта. Нетрудно заметить,
4.8.12. Решение рекуррентных уравнений — rsolve
Функция solve имеет ряд родственных функций. Одну из таких функций — fsolve — мы рассмотрели выше. В справочной системе Maple можно найти ряд и других функций, например rsolve для решения рекуррентных уравнений, isolve для решения целочисленных уравнений, msolve для решения по модулю m и т.д. Здесь мы рассмотрим решение уравнений важного класса — рекуррентных. Напомним, что это такие уравнения, у которых заданный шаг решения находится по одному или нескольким предшествующим шагам.
Для решения рекуррентных уравнений используется функция rsolve:
Здесь eqns — одиночное уравнение или система уравнений, fens — функция, имя функции или множество имен функций, z — имя, генерирующее функциональную переменную.
Ниже представлены примеры применения функции rsolve (файл rsolve):
А теперь приведем результат вычисления функцией rsolve n-го числа Фибоначчи. Оно задается следующим выражением:
В нем задана рекуррентная формула для числа Фибоначчи — каждое новое число равно сумме двух предыдущих чисел, причем нулевое и первое числа равны 1. С помощью функции rsolve в Maple 9.5 можно получить поистине ошеломляющий результат:
Числа Фибоначчи — целые числа. Поэтому представленный результат выглядит как весьма сомнительный. Но на самом деле он точный и с его помощью можно получить числа Фибоначчи (убедитесь в этом сами). Любопытно отметить, что решение в Maple8 заметно отличается от приведенного выше для Maple 9.5. Но только по форме, а не по сути.
4.8.13. Решение уравнений в целочисленном виде — isolve
Иногда бывает нужен результат в форме только целых чисел. Для этого используется функция isolve(eqns, vars), дающая решение в виде целых чисел. Приведем примеры ее применения (файл isolve):
Здесь вывод представлен с помощью вспомогательных переменных _Z1.
4.8.14. Функция msolve
Функция msolve(eqns,vars,m) или msolve(eqns,m) обеспечивает решение вида Z mod m (то есть при подстановке решения левая часть при делении на m дает остаток, равный правой части уравнения). При отсутствии решения возвращается объект NULL (пустой список).
Ниже даны примеры использования функции msolve (файл msolve):
На этом мы завершаем рассмотрение функций системы Maple 9.5 для решения уравнений, неравенств и систем с ними.
4.9. Применение пакета расширения student
4.9.1. Функции пакета student
Пакет student — это, несомненно, один из пакетов, наиболее привлекательных для студентов и аспирантов. В нем собраны наиболее распространенные и нужные функции, которые студенты университетов и иных вузов обычно используют на практических занятиях, при подготовке курсовых и дипломных проектов. Пакет вызывается командой:
Ниже представлено назначение функций этого пакета, включая некоторые функции из его более ранних версий:
D — дифференциальный оператор;
Diff — инертная форма функции вычисления производной;
Doubleint — инертная форма функции вычисления двойного интеграла;
Int — инертная форма функции интегрирования int;
Limit — инертная форма функции вычисления предела limit;
Lineint — инертная форма функции вычисления линейного интеграла lineint;