13.8. Графическое представление решений дифференциальных уравнений
13.8.1. Применение функции odeplot пакета plots
Для обычного графического представления результатов решения дифференциальных уравнений может использоваться функция odeplot из описанного выше пакета plots. Эта функция используется в следующем виде:
odeplot(s,vars,r,o),
где s — запись (в выходной форме) дифференциального уравнения или системы дифференциальных уравнений, полученных при их численном решении функцией dsolve, vars — переменные, r — параметр, задающий пределы решения (например, а..Ь) и о — не обязательные дополнительные опции.
На рис. 13.47 представлен пример решения одного дифференциального уравнения с выводом решения у(х) с помощью функции odeplot.
Рис. 13.47. Пример решения одного дифференциального уравнения.
В этом примере решается дифференциальное уравнение y'(x)=cos(x"2*y(x))
при у(0)=2 и х, меняющемся от -5 до 5. Левая часть уравнения записана с помощью функции вычисления производной diff. Результатом построения является график решения у(х).
На другом примере (рис. 13.48) представлено решение системы из двух нелинейных дифференциальных уравнении. Здесь с помощью функции odeplot строятся графики двух функций — у(х) и z(x).
Рис. 13.48. Пример решения системы из двух дифференциальных уравнении
В этом примере решается система:
y'(x)=z(x) z'(x)=3*sin(y(x))
при начальных условиях у(0)=0, z(0)=l и х, меняющемся от -4 до 4 при числе точек решения, равном 25.
Иногда решение системы из двух дифференциальных уравнений (или одного дифференциального уравнения второго порядка) представляется в виде фазового портрета — при этом по осям графика откладываются значения у(х) и z(x) при изменении х в определенных пределах. Рис. 13.49 представляет построение фазового портрета для системы, представленной выше.
Обычное решение, как правило, более наглядно, чем фазовый портрет решения. Однако для специалистов (например, в теории колебаний) фазовый портрет порою дает больше информации, чем обычное решение. Он более трудоемок при построениях, поэтому возможность Maple V быстро строить фазовые портреты трудно переоценить.
13.8.2. Функция DEplot из пакета DEtools
Специально для решения и визуализации решений дифференциальных уравнений и систем с дифференциальными уравнениями служит инструментальный пакет DEtools. В него входит ряд функций для построения наиболее сложных и изысканных графиков решения дифференциальных уравнений. Основной из этих функций является функция DEplot. '
Рис. 13.49. Представление решения системы дифференциальных уравнений в виде фазового портрета.
Функция DEplot может записываться в нескольких формах:
DEplot(deqns, vars, trange, eqns) DEplot(deqns, vars, trange, inits, eqns) DEplot(deqns, vars, trange, yrange, xrange, eqns) DEplot(deqns, vars, trange, inits, xrange, yrange, eqns)
Здесь: deqns — лист (множество) с системой дифференциальных уравнении первого порядка или одиночное уравнение любого порядка, vars — зависимая переменная (лист) либо множество зависимых переменных, trange — область изменения независимой переменной t, inits — начальные условия для решения, yrange — область изменения для первой зависимой переменной, xrange — область изменения для второй зависимой переменной, eqns — опция, записываемая в виде keyword=value. Замена имен переменных другими в данном случае не допустима.
Эта функция обеспечивает численное решение дифференциальных уравнений или их систем при одной независимой переменной t и строит графики решения. Для автономных систем эти графики строятся в виде векторного поля направлений, а для неавтономных систем только в виде кривых решения. По умолчанию реализуется метод Рунге-Кутта 4-го порядка, что соответствует опции method=classi-cal[rk4]. Возможна спецификация и других методов (см. главу 10). В каталоге EXAMPLE системы Maple V R4 можно найти файл deplot.mws с многочисленными примерами применения функции DEplot.
С функцией DEplot могут использоваться следующие опции о:
arrows = type — тип стрелки векторного поля ('SMALL',
'MEDIUM', 'LARGE', 'LINE' или 'NONE');
colour, color = arrowcolour — цвет стрелок (задается 7 способами);
dirgrid = [integer,integer] — число линий сетки (о умолчанию 20(20);
iterations = integer — количество итераций, представленное целым
числом;
linecolour, linecolor = line_info— цвет линии (задается 5 способами);
method='rk4' — задает метод решени 'euler', 'backeuler',
'impeuler' и 'rk4';
obsrange = TRUE,FALSE — задает (при TRUE) прерывание вычислений,
если кривая решения выходит из области обзора;
scene = [name,name] — задает имена зависимых переменных, для
которых строится график;
stepsize = h — шаг решения, по умолчанию равный
abs((b-a))/20, и представленный вещественным
значением.
На рис. 13.50 показано решение системы дифференциальных уравнений
х- (t)=x(t)*(l-y(t)) у' (t)=0,3*y(t)*(x(t)-l),
описывающих модель Лотка-Вольтерра при заданных в документе изменениях t, x(t) и y(t). Решение представлено в виде векторного поля, стрелки которого становятся касательными к кривым решения. Обратите внимание на функциональную закраску стрелок векторного поля.
Рис. 13.50. Решение системы дифференциальных уравнении Лотка-Вольтерра с выводом в виде графика векторного поля.
Еще интересней вариант графиков, представленный на рис. 13.51. Здесь помимо векторного поля построены фазовые портреты решения с использованием функциональной закраски их линий. Фазовые портреты построены для двух наборов начальных условий: х(0)= у(0)=1.2 и х(0)=1 и у(0)=0.7.
Следует отметить, что функция DEplot может обращаться к другим функциям пакета DEtools для обеспечения специальных графических возможностей, таких как построение векторного поля или фазового портрета решения.
Рис. 13.51. Пример построения двух фазовых портретов на фоне векторного поля.
... для работы с графикой. Также на этом же рисунке отображено контекстное меню, появляющееся при щелчке правой кнопкой мыши, когда указатель расположен в области графического вывода. При выделении двумерной графики на рабочем листе меню Insert, Spreadsheet и Options, находящиеся в строке основного меню, заменяются новыми Style, Legend. Axes, Projection, Animation и Export, которые позволяют изменить ...
... Windows будем подразумевать операционные системы Windows 95 и Windows NT, имеющие практически идентичный интерфейс пользователя. С точки зрения работы в них системы MathCAD 7. 0 разницы между этими операционными системами нет. 1. 2. Инсталляция и запуск системы Системы MathCAD 7. 0 PRO поставляются на CD-ROM (возможна поставка минимальных версий и на 3, 5-дюймовых дискетах). При этом полная ...
... размечают в логарифмическом масштабе, где изменение частоты в 10 раз называется декадой, амплитуду откладывают в децибелах и фазу q в градусах. 1.4 Анализ устойчивости непрерывных и дискретных систем Системы стабилизации должны обеспечивать устойчивость и заданную точность регулирования отклонений углов и координат центра масс ЛА от программных значений. При этом могут налагаться ограничения ...
... (5.16) Непосредственное использование оценок погрешности (5.4), (5.8) и (5.12) неудобно, так как при этом требуется вычисление производных функции f(x). В вычислительной практике используются другие оценки. Вычтем из равенства (5.15) равенство (5.16): Ih/2 – Ih » Chk(2k – 1). (5.17) Учитывая приближенное равенство (5.16), получим следующее приближенное ...
0 комментариев