Maple 9.5/10 в математике, физике и образовании
Шрифт:
В Maple 9.5 имеется функция pdsolve для решения дифференциальных уравнений с частными производными. Она может использоваться в следующих формах записи:
Эта функция введена вместо устаревшей функции pdesolve. В функции pdsolve используются следующие параметры:
• PDE — одиночное дифференциальное уравнение с частными производными;
• PDE system — система дифференциальных
• conds — начальные или граничные условия;
• f — неопределенная функция или имя;
• funcs — (опция) множество или список с неопределенными функциями или именами;
• HINT — (опция) равенство в форме HINT=argument, где аргумент может быть символом '+', '*', любым алгебраическим выражением или строкой 'strip';
• INTEGRATE — (опция) задает автоматическое интегрирование для множества ODEs (если PDE решается при разделении переменных;
• build — опция, задающая попытку построения явного выражения для неопределенной функции, независимо от общности найденного решения;
• numeric — ключевое слова, задающее решение в численном виде;
• other options — другие опции.
7.8.2. Инструментальный пакет расширения PDEtool
Для решения дифференциальных уравнений с частными производными и его визуализации в Maple 9.5 служит специальный инструментальный пакет PDEtool:
Ввиду небольшого числа функций этого пакета приведем их определения:
build(sol) — конструирует улучшенную форму решения, полученного функцией pdsolve;
casesplit(sys, о1, o2, …) — преобразует форму дифференциального уравнения; charstrip(PDE, f) — находит характеристическую последовательность, дающую дифференциальное уравнение первого порядка;
dchange(tr,expr,o1,o2,…) — выполняет замену переменных в математических выражениях или функциях;
dcoeff(expr,y(x)) — возвращает коэффициенты полиномиала дифференциального уравнения;
declare(expr) и др. — задает функцию для компактного ее отображения;
difforder(a,x) — возвращает порядок дифференциала в алгебраическом выражении а;
dpolyform(sys,no_Fn,opts) — возвращает полиномиальную форму для заданной системы sys не полиномиальных дифференциальных уравнений;
dsubs(deriv1=a,…,expr) — выполняет дифференциальные подстановки в выражение expr;
mapde(PDE,into,f) — создает карту PDE в различных форматах into с опциональным заданием имени неизвестной функции f;
separability(PDE, F(x,y,…), '*') — определяет условия разделения для сумм или произведений PDE;
splitstrip(PDE, f) — разделяет характеристическую последовательность на несоединенные поднаборы;
splitsys(sys,funcs) — разделяет наборы уравнений (алгебраические и дифференциальные) на несоединенные поднаборы;
undeclare(f(x),…) и др. — отменяет задание функции для компактного ее отображения.
7.8.3. Примеры решения дифференциальных уравнений с частными производными
Примеры решения дифференциальных уравнений и систем с частными производными представлены ниже (файл pde):
Обратите внимание на то, что в последнем примере из справки решена система дифференциальных уравнений в частных производных.
7.8.4. Функция PDEplot пакета DEtools
Одна из важнейших функций пакета DEtools — DEtools[PDEplot] — служит для построения графиков решения систем с квазилинейными дифференциальными уравнениями первого порядка в частных производных. Эта функция используется в следующем виде:
Здесь помимо упоминавшихся ранее параметров используются следующие: pdiffeq — квазилинейные дифференциальные уравнения первого порядка (PDE), vars — независимая переменная и i_curve — начальные условия для параметрических кривых трехмерной поверхности. Помимо опций, указанных для функции DEplot, здесь могут использоваться следующие опции:
• animate = true, false — включение (true) или выключение (false) режима анимации графиков;
• basechar = true, false, ONLY — устанавливает показ начального условия на плоскости (х,у);
• basecolor = b_color — устанавливает цвет базовых характеристик;
• ic_assumptions — задание (в виде равенств или неравенств) ограничений на начальные условия для первых производных;
• initcolor = i_color — инициализация цвета кривой начальных условий;
• numchar = integer — залает число отрезков кривых, которое не должно быть меньше 4 (по умолчанию 20);