Системы дифференциальных уравнений
Часто удобнее иметь дело с системой ДУ, чем с ДУ второго, третьего и более высоких порядков. Многие численные методы требуют, чтобы ДУ записывались в виде системы ДУ первого порядка. Вот простой пример. Если ввести ускорение dv/dt, скорость dx/dt, то уравнение гармонического осциллятора можно переписать как систему ДУ первого порядка:
Команда Maple dsolve работает с системами вроде этой, запрашивая набор {в фигурных скобках} уравнений и начальных условий, набор функций, для которых надо получить решение и, возможно, дополнительные аргументы, вроде:
- restart:
- Eq1:=diff(v(t),t)=-omega^2*x(t);Eq2:=diff(x(t),t)=v(t);
- dsolve({Eq1,Eq2,x(0)=1,v(0)=0},{x(t),v(t)});
Заметьте, что это действительно приятная форма получения ответа, потому что одновременно получаем и координату, и скорость. Еще хорошо, что не нужно помнить систему D – обозначений для начальных условий производной. Чтобы нарисовать x(t) и v(t), сначала надо задать значение , а затем снова решить:
- omega:=1;XV:=dsolve({Eq1,Eq2,x(0)=1,v(0)=0},{x(t),v(t)});
затем с помощью команды assign снова сделать графики:
- assign(XV);
- plot([x(t),v(t)],t=0..20);