Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MAPLE.doc
Скачиваний:
221
Добавлен:
24.03.2015
Размер:
1.52 Mб
Скачать

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

Отвлекшись от физики, приведем несколько примеров на составление и решение дифференциальных уравнений первого порядка в аналитическом виде (файл dea):

> dsolve(diff(y(х),х)-а*х=0, y(х));

> dsolve(diff(y(х),х)-y(х)=ехр(-х), y(х));

> dsolve(diff(y(х),х)-y(х)=sin(х)*х, y(х));

> infolevel[dsolve] := 3:

> dsolve(diff(y(x),x)-y(x)=sin(x)*x, y(x));

Methods for first order ODEs:

Trying classification methods —

trying a quadrature

trying 1st order linear

<- 1st order linear successful

Обратив внимание на вывод в последнем примере. Он дан при уровне вывода n=3

Следующие примеры иллюстрируют возможность решения одного и того же дифференциального уравнения ode_L разными методами:

> restart: ode_L := sin(x)*diff(y(x),x)-cos(x)*y(x)=0;

> dsolve(ode_L, [linear], useInt);

> value(%);

y(x) = _C1 sin(x)

> dsolve(od_L, [separable], useInt);

> value(%);

ln(sin(x)) - ln(у(x)) + _C1 = 0

> mu := intfactor(ode_L);

> dsolve(mu*ode_L, [exact], useInt);

y(x) = -_C1 sin(x)

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

Функция pdsolve

В Maple 9.5 имеется функция pdsolve для решения дифференциальных уравнений с частными производными. Она может использоваться в следующих формах записи:

pdsolve(PDE, f, HINT, INTEGRATE, build)

pdsolve(PDE_system, funcs, HINT, other_options)

pdsolve(PDE_system, conds, numeric, other_options)

pdsolve(PDE_system, conds, type=numeric, other_options)

Эта функция введена вместо устаревшей функции pdesolve. В функции pdsolve используются следующие параметры:

• PDE — одиночное дифференциальное уравнение с частными производными;

• PDE system — система дифференциальных уравнений с частными производными;

• conds — начальные или граничные условия;

• f — неопределенная функция или имя;

• funcs — (опция) множество или список с неопределенными функциями или именами;

• HINT — (опция) равенство в форме HINT=argument, где аргумент может быть символом '+', '*', любым алгебраическим выражением или строкой 'strip';

• INTEGRATE — (опция) задает автоматическое интегрирование для множества ODEs (если PDE решается при разделении переменных;

• build — опция, задающая попытку построения явного выражения для неопределенной функции, независимо от общности найденного решения;

• numeric — ключевое слова, задающее решение в численном виде;

• other options — другие опции.

25. Двумерная графика в системе maple 15. Команда plot(). Функция plot для построения двумерных графиков

Для построения двумерных графиков служит функция plot. Она задается в виде

plot(f, h, v)

plot(f, h, v, o)

где f — визуализируемая функция (или функции), h — переменная с указанием области ее изменения, v — необязательная переменная с указанием области изменения, о — параметр или набор параметров, задающих стиль построения графика (толщину и цвет кривых, тип кривых, метки на них и т.д.).

Самыми простыми формами задания этой функции являются следующие:

• plot(f,xmin..xmax) — построение графика функции f, заданной только своим именем в интервале изменения х от xmin до xmax;

• plot(f(x),x=xmin..xmax) — построение графика функции f(x) в интервале изменения х от xmin до xmax.

Выше приводилось множество примеров применения этой функции. Для нее возможны следующие дополнительные параметры:

• adaptive — включение адаптивного алгоритма построения графиков (детали см. ниже);

• axes — вывод различных типов координат (axes=NORMAL — обычные оси, выводятся по умолчанию, axes=BOXES — график заключается в рамку с осями-шкалами, axes=FRAME — оси в виде перекрещенных линий, axes=NONE — оси не выводятся);

• axesfont — задание шрифтов для подписи делений на координатных осях (см. также параметр font);

• color — задает цвет кривых (см. далее);

• coords — задание типа координатной системы (см. далее);

• discont — задает построение непрерывного графика (значения true или false);

• filled — при filled=true задает окраску цветом, заданным параметром color, для области, ограниченной построенной линией и горизонтальной координатной осью х;

• font — задание шрифта в виде [семейство, стиль, размер];

• labels — задание надписей по координатным осям в виде [X,Y], где Х и Y -надписи по осям х и у графика;

• labeldirections — задает направление надписей по осям [X,Y], где X и Y может иметь строковые значения HORISONTAL (горизонтально) и VERTICAL (вертикально);

• labelfont — задает тип шрифта метод (см. font);

• legend — задает вывод легенды (обозначения кривых);

• linestyle — задание стиля линий (1 — сплошная, 2 — точками, 3 — пунктиром и 4 — штрих-пунктиром);

• numpoints — задает минимальное количество точек на графике (по умолчанию numpoints=49);

• resolutions — задает горизонтальное разрешение устройства вывода (по умолчанию resolutions=200, параметр используется при отключенном адаптивном методе построения графиков);

• sample — задает список параметров для предварительного представления кривых;

• scaling — задает масштаб графика: CONSTRAINED (сжатый) или UNCONSTRAINED (несжатый — по умолчанию);

• size — задает размер шрифта в пунктах;

• style — задает стиль построения графика (POINT — точечный, LINE — линиями);

• symbol — задает вид символа для точек графика (возможны значения BOX — прямоугольник, CROSS — крест, CIRCLE -- окружность, POINT — точка, DIAMOND — ромб);

• symbolsize — установка размеров символов для точек графика (в пунктах, по умолчанию 10);

• title — задает построение заголовка графика (title="string", где string — строка),

• titlefont — определяет шрифт для заголовка (см. font);

• thickness — определяет толщину линий графиков (0, 1, 2, 3, значение по умолчанию — 0);

• view=[A, В] — определяет максимальные и минимальные координаты, в пределах которых график будет отображаться на экране, А=[xmin..xmax], B=[ymin..ymax] (по умолчанию отображается вся кривая);

• xtickmarks — задает минимальное число отметок по оси х;

• ytickmarks — задает минимальное число отметок по оси у.

Параметр adaptive задает работу специального адаптивного алгоритма для построения графиков наилучшего вида. При этом Maple автоматически учитывает кривизну изменения графика и увеличивает число отрезков прямых в тех частях графиков, где их ход заметно отличается от интерполирующей прямой. При задании adaptive=false адаптивный алгоритм построения графиков отключается, а при adaptive=true включается (значение по умолчанию).

С помощью параметра у = ymin..ymax можно задать масштаб графика по вертикали.

Это иллюстрирует рис. 8.1, который заодно показывает применение дополнительных параметров функции plot при построении двумерных графиков.

Рис. 8.1. Построение графиков функции с явным указанием масштаба

Изредка встречаются графики функций f(x), которые надо построить при изменении значения x от нуля до бесконечности или даже от минус бесконечности до плюс бесконечности. Бесконечность в таких случаях задается как особая константа infinity. В этом случае переменной x, устремляющейся в бесконечность, откладывается значение arctan(x). Рисунок 8.1 (второй пример) иллюстрирует сказанное.

В версии Maple 9.5 параметр coords задает 15 типов координатных систем для двумерных графиков. По умолчанию используется прямоугольная (декартова) система координат (coords=cartesian). При использовании других координатных систем координаты точек для них (u, v) преобразуются в координаты (х, y) как (u,v)→(x,y). Формулы преобразования координат можно найти в справке.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]