Основные средства решения дифференциальных уравнений
Основная функция dsolve
Важное место в математических расчетах занимает решение дифференциальных уравнений. К нему, в частности, обычно относится анализ поведения различных систем во времени (анализ динамики), а также вычисление различных полей (тяготения, электрических зарядов и т. д.). Трудно переоценить роль дифференциальных уравнений в моделировании физических и технических объектов и систем, Maple 7 позволяет решать одиночные дифференциальные уравнения и системы дифференциальных уравнений как аналитически, так и в численном виде.
Разработчиками системы объявлено о существенном расширении средств решения дифференциальных уравнений и о повышении их надежности в смысле нахождения решений для большинства классов дифференциальных уравнений. Поэтому данный урок целиком посвящен решению уравнений данного класса. Для решения системы простых дифференциальных уравнений (задача Коши) используется функция dsolve в разных формах записи:
dsolve(ODE) dsolve(ODE, y(x), extra_args) dsolve((ODE, ICs}, y(x), extra_args) dsolve({sysODE, ICs}, {funcs}, extra_args)
Здесь ODE – одно обыкновенное дифференциальное уравнение или система из дифференциальных уравнений первого порядка с указанием начальных условий, у(х) – функция одной переменной, Ics – выражение, задающее начальные условия, {sysODE} – множество дифференциальных уравнений, {funcs} – множество неопределенных функций, extra_argument – опция, задающая тип решения. Параметр extra_argument задает класс решаемых уравнений.
Отметим основные значения этого параметра:
- exact – аналитическое решение (принято по умолчанию);
- explicit – решение в явном виде;
- system – решение системы дифференциальных уравнений;
- ICs – решение системы дифференциальных уравнений с заданными начальными условиями;
- formal series – решение в форме степенного многочлена;
- integral transform – решение на основе интегральных преобразований Лапласа, Фурье и др.;
- series – решение в виде ряда с порядком, указываемым значением переменной Order;
- numeric – решение в численном виде.
Для решения задачи Коши в параметры dsolve надо включать начальные условия, а при решении краевых задач – краевые условия. Если Maple способна найти решение при числе начальных или краевых условий меньшего порядка системы, то в решении будут появляться неопределенные константы вида _С1, _С2 и т. д. Они же могут быть при аналитическом решении системы, когда начальные условия не заданы. Если решение найдено в неявном виде, то в нем появится параметр _Т.
По умолчанию функция dsolve автоматически выбирает наиболее подходящий метод решения дифференциальных уравнений. Однако в параметрах функции dsolve в квадратных скобках можно указать предпочтительный метод решения дифференциальных уравнений.
Допустимы следующие методы:
quadrature | linear | Bernoulli | separable |
inverse linear | homogeneous | Chini | lin_sym |
exact | Abel | pot_sym |
Информацию о каждом методе можно получить, используя команду Tdsolve, method и указав в ней конкретный метод. Например, команда Tdsolve, linear вызовет появление страницы справочной системы с подробным описанием линейного метода решения дифференциальных уравнений.
Производные при записи дифференциальных уравнений могут задаваться функцией diff или оператором D. Выражение sysODE должно иметь структуру множества и содержать помимо самой системы уравнений их начальные условия.