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

Численное решение дифференциальных уравнений. Численное решение дифференциальных уравнений с

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

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

помощью команды dsolve. Построение графиков решений

дифференциальных уравнений с помощью команды

odeplot.

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

Тогда команда решения дифференциального уравнения будет иметь вид dsolve(eq, vars, type=numeric, options), где eq – уравнения, vars – список неизвестных функций, options – параметры, позволяющие указать метод численного интегрирования дифференциального уравнения. В Maple реализованы такие методы:

· method=rkf45 − метод Рунге-Кутта-Фельберга 4-5-ого порядка (установлен по умолчанию);

· method=dverk78 – метод Рунге-Кутта 7-8 порядка;

· mtthod=classical – классический метод Рунге-Кутта 3-его порядка;

· method=gear и method=mgear – одношаговый и многошаговый методы Гира.

График численного решения дифференциального уравнения можно построить с помощью команды odeplot(dd, [x,y(x)], x=x1..x2), где в качестве функции используется команда dd:=dsolve({eq,cond}, y(x), numeric) численного решения, после нее в квадратных скобках указывают переменную и неизвестную функцию [x,y(x)], и интервал x=x1..x2 для построения графика.

Пример:

Найти численное и приближенное решение в виде степенного ряда до 6-ого порядка задачи Коши:: y ''− x sin(y) = sin 2 x, y (0) = 0, y '(0) = 1.

Сначала найдем численное решение задачи Коши и построим его график.

> restart; Ordev=6:

> eq:=diff(y(x),x$2)-x*sin(y(x))=sin(2*x):

> cond:=y(0)=0, D(y)(0)=1:

> de:=dsolve({eq,cond},y(x),numeric);

de:= proc (rkf45_x)... end

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

значение решения при каком-то фиксированном значении переменной х (заодно будет выведено значение производной решения в этой точке), например, при х =0.5, то следует набрать:

> de(0.5);

> with(plots):

> odeplot(de,[x,y(x)],-10..10,thickness=2);

Теперь найдем приближенное решение задачи Коши в виде степенного ряда и построим графики численного решения и полученного степенного ряда в интервале их наилучшего совпадения.

> dsolve({eq, cond}, y(x), series)

> convert(%, polynom):p:=rhs(%):

> p1:=odeplot(de,[x,y(x)],-2..3, thickness=2,color=black):

> p2:=plot(p,x=-2..3,thickness=2,linestyle=3,color=blue):

> display(p1,p2);

Наилучшее приближение решения степенным рядом достигается примерно на интервале −1< x <1

 

Пакет графического представления решений

дифференциальных уравнений Detools.

Для численного решения задачи Коши, построения графиков решения и фазовых портретов в Maple имеется специальный пакет DEtools.

Команда DEplot из пакета DEtools строит численными методами графики решения или фазовые портреты. Эта команда аналогична команде odeplot, но более функциональна. Она, в отличие от odeplot, сама производит численное решение дифференциального уравнения. Основные параметры DEplot похожи на параметры odeplot: DEplot(de, vars, range, x=х1..х2, y=у1..у2, cond, ptions), где de − дифференциальное уравнение или система дифференциальных уравнений; vars – список неизвестных функций; range – диапазон измерения независимой переменной; cond – начальные условия; x=х1..х2 и y=у1..у2 – диапазоны изменения функций; options – дополнительные параметры.

Наиболее часто используемые параметры:

· linecolor =цвет линии;

· scene=[x,y] − определяет, какие зависимости выводить на график;

· terations =число итераций, необходимое для повышения точности вычислений (по умолчанию это число равно 1);

· stepsize =число, равное расстоянию между точками на графике, по умолчанию оно равно (x2x1)/20, этот параметр необходим для вывода более гладкой кривой решения;

· obsrange = true / false − прерывать или нет вычисления, если график решения выходит за установленный для рисования интервал.

Для решения дифференциального уравнения n -ого порядка начальные условия можно задавать в более компактной форме: [x0, y0, y ' 0, y '' 0,…], где x0 − точка, в которой задаются начальные условия, y0 − значение искомой функции в точке x0, y ' 0, y '' 0,… − значения производных первой, второй и т.д. до (n −1)-ого порядка.

 

Построение фазовых портретов систем дифференциальных

уравнений.

Для дифференциального уравнения порядка выше первого команда DEplot рисует только кривые решений дифференциальных уравнений, а для систем дифференциальных уравнений первого порядка могут быть нарисованы и фазовые портреты. С помощью команды DEplot можно построить фазовый портрет в плоскости (x, y), для системы двух дифференциальных уравнений: , если в параметрах данной команды указать scene=[x,y].

Если система дифференциальных уравнений является автономной, то на фазовом портрете будет построено поле направлений в виде стрелок. Размер стрелок регулируется параметром arrows = SMALL, MEDIUM, LARGE, LINE или NONE.

Для того, чтобы нарисовать весь фазовый портрет, необходимо для каждой фазовой траектории указывать начальные условия: например, для системы двух дифференциальных уравнений первого порядка несколько начальных условий в команде DEplots указываются после задания диапазона изменения независимой переменной t: [[x(0)=x1, y(0)=y1], [x(0)=x2, y(0)=y2],…, [x(0)=xn, y(0)=yn]]. Начальные условия можно задавать в более компактной форме: [t0, x0, y0], где t0 − точка, в которой задаются начальные

условия, x0 и y0 − значения искомых функций в точке t0. Фазовый протрет системы двух дифференциальных уравнений первого порядка можно также построить с помощью команды phaseportrait(sys, [x,y],x1..x2,[[cond]]), где sys − система двух дифференциальных уравнений первого порядка, [x,y] − имена искомых функций, x1..x2 − интервал, на котором следует построить фазовый портрет, а в фигурных скобках указываются начальные условия. Эта команда находится в пакете DEtools, поэтому данный пакет должен быть предварительно загружен.

Пример:

Построить фазовый портрет системы дифференциальных уравнений:

для нескольких наборов начальных условий: х (0)=1, у (0)=0.2; х (0)=0, у (0)=1; х (0)=1, у (0)=0.4; х (0)=1, у (0)=0.75; х (0)=0, у (0)=1.5; х (0)=−0.1, у (0)=0.7.

> restart; with(DЕtools):

> DEplot({diff(x(t),t)=y, diff(y(t),t)=x-x^3},[x(t),y(t)], t=0..20, [[0,1,0.2], [0,0,1],

[0,1,0.4], [0,1,0.75], [0,0,1.5], [0,-0.1,0.7]], stepsize=0.1, arrows=none,

linecolor=black);

 


Индивидуальные задания:

 

1. Найти общее решение дифференциального уравнения: .

2. Найти фундаментальную систему решений дифференциального уравнения: .

3. Найти решение задачи Коши: .

4. Найти решение системы дифференциальных уравнений: при начальных условиях

5. Найти решение нелинейного уравнения при начальных условиях в виде разложения в степенной ряд до 6-го порядка.

6. Построить график численного решения задачи Коши .

7. Решить численно задачу Коши: . Найти приближенное решение этого уравнения в виде разложения в степенной ряд. Построить на одном рисунке графики полученных решений.

8. Построить график численного решения задачи Коши, на интервале [−1.5; 3], используя команду DEplot.

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

10. Нарисовать график решения дифференциального уравнения: в интервале [−4,5].

11. Найти численное и приближенное решение в виде степенного ряда до 6-ого порядка задачи Коши:

12. Найти решение системы дифференциальных уравнений:

13. Найти решение краевой задачи: . Построить график решения.

14. Найти фундаментальную систему решений дифференциального уравнения:

 


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.015 сек.)