Смекни!
smekni.com

Графика в системе Maple V (стр. 8 из 12)


Рис. 13.51. Пример построения двух фазовых портретов на фоне векторного поля.

13.8.3. Функция DEplot3d из пакета DEtools

В ряде случаев решение систем дифференциальных уравнений удобно представлять в виде пространственных кривых — например, линий равного уровня или просто в виде кривых в пространстве. Для этого служит функция DEplot3d.

DEplot3d(deqns, vars, trange, initset, о) DEplot3d(deqns, vars, trange, yrange, xrange, initset, o)

Назначение параметров и опций этой функции аналогично указанному для функции DEplot.

Рис. 13.52 поясняет применение функции DEplot3d для решения системы из двух дифференциальных уравнений с выводом фазового портрета колебаний в виде параметрически заданной зависимости x(t), y(t). В данном случае фазовый портрет строится на плоскости по типу построения графиков линий равной высоты.

Другой пример (рис. 13.53) показывает решение системы из двух дифференциальных уравнений с построением объемного фазового портрета. В этом случае используется координатная система ЗD-гpaфики и графические построения соответствуют параметрическим зависимостям x(t), y(t) и z(t). Вид фазового портрета напоминает разворачивающуюся в пространстве объемную спираль. Функциональная окраска ее делает график эффектным, что, увы, теряется при черно-белом воспроизведении графика.


Рис. 13.52. Пример решения системы из двух дифференциальных уравнении с помощью функции DEplot3d.


Рис. 13.53. Пример решения системы из двух дифференциальных уравнении с построением трехмерного фазового портрета.

Возможности функции DEplot позволяют решать системы дифференциальных уравнении с числом последних и больше двух — рис. 13.54, например. Однако в этом случае число решений, представляемых графически, выходит за пределы, допустимые ЗИ-графикои. При этом от пользователя зависит, какие из зависимо-

стен опускаются при построении, а какие строятся. Так, на рис. 13.54 в пространстве построены две кривые решения.


Рис. 13.54. Решение системы из четырех дифференциальных уравнении.

Нередко таким образом можно вывести на построение и иные зависимости. Однако их число обычно приходится ограничивать из-за потери наглядности графика при большом числе линий.

13.8.4. Функция PDEplot пакета DEtools

Еще одна функция пакета DEtools — DEtools[PDEplot] служит для построения графиков решения систем с квазилинейными дифференциальными уравнениями первого порядка в частных производных:

Р(х,у,и) * D[l](u)(x,y) + Q(x,y,u) * D[2](u)(x,y) = R(x,y u),

так что

P их + Q uy = R,

где P, Q и R зависят только от х, у и и(х,у), при этом dx/dt = P, dy/dt = Q, du/dt = R.

Эта функция используется в следующем виде:

PDEplot(pdiffeq, var, Lcurve, srange, о) PDEplot(pdiffeq, var, i_cLirve, srange, xrange, yrange, urange, o)

Здесь, помимо отмеченных ранее параметров, pdiffeq — квазилинейные дифференциальные уравнения первого порядка (PDE), vars — независимая переменная и Lcurve — начальные условия для параметрических кривых ЗО-поверхности. Помимо опций, указанных для функции DEplot, здесь могут использоваться следующие опции:

basechar = TRUE,FALSE,ONLY — устанавливает показ базовых характеристик кривых;

basecolour, basecolor = b_colour — устанавливает цвет базовых характеристик;

initcolour, initcolor = Lcolour — инициализация цветов;

numchar = integer — задает число отрезков кривых, которое не

должно быть меньше 4 (по умолчанию 20);

numsteps = [integerl,integer2] — задает число шагов интегрирования

(по умолчанию [10,10]).

Рис. 13.55 показывает применение функции PDEplot. Этот пример, взятый из справочной системы Maple V R4, показывает, насколько необычным может быть решение даже простой системы дифференциальных уравнений в частных производных.


Рис. 13.55. Пример применения функции PDEplot.

В данном случае решение представлено трехмерной фигурой весьма нерегулярного вида.

Другой пример использования функции PDEplot показан на рис. 13.56. Он иллюстрирует комбинированное построение графиков решения разного типа с применением функциональной закраски, реализуемой по заданной формуле с помощью опции initcolor.

Еще раз отметим, что, к сожалению, рисунки в данной книге не дают представления о цвете. Поэтому наглядность решений, видимых на экране дисплея, существенно выше.

13.8.5. Графическая функция dfieldplot

Графическая функция dfieldplot служит для построения векторного поля (поля направления) по результатам решения дифференциальных уравнений. Фактически эта функция как бы входит в функцию DEplot и при необходимости вызывается последней. Но она может использоваться и самостоятельно, что показывает

рис. 13.57, на котором показан пример решения следующей системы дифференциальных уравнений: x'(t)=x(t)*(l-y(t)), y'(t)=0.3*y(t)*(x(t)-l).


Рис. 13.56. Построение комбинированного графика с помощью функции PDEplot.


Рис. 13.57. Построение фазового портрета в виде графика векторного поля.

Обратите внимание на использование опций в этом примере, в частности на вывод надписи на рисунок на русском языке. В целом список параметров функции phaseportrait аналогичен таковому для функции DEplot (отсутствует лишь задание начальных условий).

13.8.6. Графическая функция phaseportrait

Графическая функция phaseportrait служит для построения фазовых портретов по результатам решения одного дифференциального уравнения или системы дифференциальных уравнений deqns. Она задается в виде:

phaseportrait(deqns, vars,trange,inits,o)

При задании уравнений достаточно указать их правые части. На рис. 13.58 представлен пример применения функции phaseportrait для решения системы из трех дифференциальных уравнений первого порядка.


Рис. 13.58. Построение фазового портрета с помощью функции phaseportrait.

В этом примере система дифференциальных уравнений задана с применением оператора дифференцирования D. Функциональная окраска линии фазового портрета достигается использованием опции linecolor, в правой части которой задана формула для цвета.

Еще более интересный пример решения дифференциального уравнения представлен на рис. 13.59. Здесь построены фазовые портреты для асимптотических решений.

В целом надо отметить, что возможности визуализации решений дифференциальных уравнений с помощью системы Maple V весьма велики и приведенные выше примеры лишь частично иллюстрируют сказанное. В справочной системе можно найти ряд других весьма эффектных решений систем дифференциальных уравнений с визуализацией последних.

13.9. Иллюстративная графика пакета student

Пакет student имеет три графические функции для иллюстрации интегрирования методом прямоугольников:

leftbox(f(x), x=a..b, о) или leftbox(f(x), x=a..b, n, 'shading'=<color>, o) rightbox(f(x), x=a..b, о) или rightbox(f(x), x=a..b, n, o) middlebox(f(x), x=a..b, о) или middlebox(f(x), x=a..b, n, o),

Здесь: f(x) — функция переменной х, х — переменная интегрирования, а — левая граница области интегрирования, b — правая граница области интегрирования, n — число показанных прямоугольников, color — цвет прямоугольников, о — опции (см. plot,options).


Рис. 13.59. Построение асимптотического решения на фоне графика векторного поля.

В этих функциях прямоугольники строятся соответственно слева, справа и посередине относительно узловых точек функции f(x), график которой также строится. Кроме того, имеется функция для построения касательной к заданной точке х=а для линии, представляющей f(x):

showtangent (f(x), х = а).

Рис. 13.60 показывает все эти возможности пакета student. Четыре вида графиков здесь построены в отдельных окнах.

Возможности графики пакета student ограничены. Но они дают как раз те возможности, которые отсутствуют в основных средствах графики.

13.10. Графика статистического пакета stat

Статистический пакет stat имеет свою 'небольшую библиотечку для построения графиков. Она вызывается в следующем виде:

stats[statplots, function](args) или statplots[function](args)

Вид графика задается описанием function: boxplot, histogram, notchedbox, quantile, quantile2, scatterld, scatter2d и symmetry. Эти функции обеспечивают построение

типовых графиков, иллюстрирующих статистические расчеты. В качестве примера на рис. 13.61 показано задание множества случайных точек и их построение на плоскости в ограниченном прямоугольником пространстве.


Рис. 13.60. Примеры иллюстративной графики пакета student,


Рис. 13.61. Создание случайных точек и построение их на плоскости.

По равномерности распределения точек можно судить о качестве программного генератора случайных чисел, встроенного в Maple V.

Другой пример применения графических средств пакета stat показан на рис. 13.62. Здесь, помимо изображений, заданных точками в виде маленьких ромбов (тип diamond), представлено изображение специальных объектов, по виду напоминающих радиодетали.


Рис. 13.62. Построения с помощью пакета stats.

Довольно часто используются графики гистограмм. Для их построения пакет stat имеет функцию histogram:

statsfstatplots, histogramj(data) statplots[histogram](data) statsfstatplots, histogram[scale](data) statplots[histogram[scale](data)