АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Аналитическое решение дифференциальных уравнений

Читайте также:
  1. VIII. Дополнения из самого раннего детства. Разрешение
  2. А теперь мое решение проблемы
  3. А ты? Кому ты доверяешь и что надо, чтобы ты доверял? Кому не доверяешь и почему? На каких критериях основано твое собственное решение о доверии и недоверии? Перечисли их.
  4. А) Решение задачи Коши для ОДУ
  5. автентическое разрешение плагальное разрешение
  6. Аналитическое выравнивание временных рядов
  7. Аналитическое и численное интегрирование
  8. Аналитическое и численное интегрирование.
  9. Аналитическое трансформирование снимков.
  10. АРБИТРАЖНОЕ РЕШЕНИЕ
  11. Архитектурно-конструктивное решение здания.

Общее решение дифференциальных уравнений.

Для нахождения аналитических решений дифференциальных уравнений в Maple применяется команда dsolve(eq,var,options), где eq – дифференциальное уравнение, var – неизвестные функции, options – параметры.

Параметры могут указывать метод решения задачи, например, по умолчанию ищется аналитическое решение: type=exact. При составлении дифференциальных уравнений для обозначения производной применяется команда diff, например, дифференциальное уравнение y'' + y = x записывается в виде: diff(y(x),x$2)+y(x)=x.

Общее решение дифференциального уравнения зависит от произвольных постоянных, число которых равно порядку дифференциального уравнения. В Maple такие постоянные, как правило, обозначаются как _ С1, _ С2, и т.д.

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

Команда dsolve выдает решение дифференциального уравнения в невычисляемом формате. Для того, чтобы с решением можно было бы работать далее (например, построить график решения) следует отделить правую часть полученного решения командой rhs(%).

Пример:

Найти общее решение дифференциального уравнения y '+ y cos x =sin x cos x.

> restart;

> de:=diff(y(x),x)+y(x)*cos(x)=sin(x)*cos(x);

> dsolve(de,y(x));

y(x) = sin(x) − 1 + e (− sin(x)) _ C 1

Итак, решение искомого уравнения есть функция y(x) = sin(x) − 1 + e (− sin(x)) _ C 1.

Замечание: при записи решения дифференциального уравнения в Maple в строке вывода произвольная постоянная обозначена как _ С1.

 

Фундаментальная (базисная) система решений.

Команда dsolve представляет возможность найти фундаментальную систему решений (базисные функции) дифференциального уравнения. Для этого в параметрах команды dsolve следует указать output=basis.

 

Решение задачи Коши или краевой задачи.

Команда dsolve может найти решение задачи Коши или краевой задачи, если помимо дифференциального уравнения задать начальные или краевые условия для неизвестной функции. Для обозначения производных в начальных или краевых условиях используется дифференциальный оператор D, например, условие y''(0)=2 следует записать в виде (D @@2)(y)(0) = 2, или условие y '(1)=0: D (y)(1) = 0. Напомним, что производная n -го порядка

записывается в виде (D @@ n)(y).

Пример:

Найти решение задачи Коши: y (4)+ y ''=2cos x, y (0)=−2, y '(0)=1, y ''(0)=0, y '''(0)=0.

> de:=diff(y(x),x$4)+diff(y(x),x$2)=2*cos(x);

> cond:=y(0)=-2, D(y)(0)=1, (D@@2)(y)(0)=0, (D@@3)(y)(0)=0;

cond:= y(0)=−2, D(y)(0)=1, (D(2))(y)(0)=0, (D(3))(y)(0)=0

> dsolve({de,cond},y(x));

y(x)=−2cos(x)− x sin(x)+ х

Замечание: для построения графика решения предварительно следует отделить правую часть полученного выражения.

> y1:=rhs(%)

> plot(y1,x=-10..20,thickness=2);

 

Системы дифференциальных уравнений.

Команда dsolve может найти решение системы дифференциальных уравнений (или задачи Коши), если в ней указать:

dsolve({sys},{x(t),y(t),…}), где sys − система дифференциальных уравнений, x(t),y(t),… − набор неизвестных функций.

 

Приближенное решение дифференциальных уравнений с

помощью степенных рядов.

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

Чтобы найти приближенное решение дифференциального уравнения в виде степенного ряда, в команде dsolve следует после переменных указать параметр type=series (или просто series).

Для того, чтобы указать порядок разложения n, т.е. порядок степени, до которой производить разложение, следует перед командой dsolve вставить определение порядка с помощью команды Order:=n.

Если ищется общее решение дифференциального уравнения в виде разложения в степенной ряд, то коэффициенты при степенях х найденного разложения будут содержать неизвестные значения функции в нуле y(0) и ее производных D(y)(0), (D@@2)(y)(0) и т.д. Полученное в строке вывода выражение будет иметь вид, похожий на разложение искомого решения в ряд Маклорена, но с другими коэффициентами при степенях х. Для выделения частного решения следует задать начальные условия y(0)=у1, D(y)(0)=у2, (D@@2)(y)(0)=у3 и т.д., причем количество этих начальных условий должно совпадать с порядком соответствующего дифференциального уравнения.

Разложение в степенной ряд имеет тип series, поэтому для дальнейшей работы с этим рядом его следует преобразовать в полином с помощью команды convert(%,polynom), а затем выделить правую часть полученного выражения командой rhs(%)

Пример:

Найти решение задачи Коши:: y ′ = y + xey, y (0) = 0 в виде степенного ряда с точностью до 5-го порядка.

> restart; Order:=5:

> dsolve({diff(y(x),x)=y(x)+x*exp(y(x)), y(0)=0}, y(x), type=series);

В полученном решении слагаемое O(x 5) означает, что точность разложения была до 5-го порядка.

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.)