Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Визуализация численных методов. Решение обыкновенных дифференциальных уравнений..doc
Скачиваний:
67
Добавлен:
01.05.2014
Размер:
312.83 Кб
Скачать

2. 7. Решение поставленной задачи методами Эйлера и Рунге-Кутта 4-ого порядка.

2. 7. 1. Метод Эйлера.

1. Строим оси координат;

2. Отмечаем A(1; 2) – первую точку интегральной кривой;

3. Ищем угол наклона касательной к графику в точке A:

4. Строим касательную l0 в точке А под углом α0;

5. Находим х1 по формуле: xi = х0 + ih, где h – шаг интегрирования

x1 = 1 + 1 · 0,1 = 1,1;

6. Проводим прямую x = x1 = 1,1 до пересечения с прямой l0, отмечаем точку B(x1; y1);

7. Ищем y точки B:

Из прямоугольного треугольника ABC ,

Δy = y1 – y0,

Δx = x1 – x0 = h,

f(x0; y0) = (y1 – y0)/h =>

y1 = y0 + h · (f(x0; y0)) = 0 + 0,1 · f(1;0) = 0 + 0,1 · 3 = 0,3

Следовательно, точка B имеет координаты (1,1; 0,3).

0,33

0.22

0,11

0

1,1

1

Рисунок 8. Решение задачи методом Эйлера.

2. 7. 2. Метод Рунге-Кутта 4-го порядка

1. Строим оси координат;

2. Отмечаем А(1; π/2) – первую точку интегральной кривой;

3. Ищем угол наклона касательной к графику в точке A:

tg α =y0/x0+Sin(y0/x0)

tg α = f(x0,y0)=π /2+Sin(π/2)=2.571

α=arctg(2.571)=1.2

α0= α *180/ π =68.745

4. Строим касательную l0 в точке А под углом α0;

5. Находим х1 по формуле: xi = х0 + ih, где h – шаг интегрирования

x1 = 1 + 1 · 0,1 = 1,1;

6. Отмечаем середину отрезка x0x1: x0 + h/2, проводим прямую из этой точки до прямой l0, отмечаем точку B(xB; yB);

7. Ищем координаты В:

xB = x0+h/4=1+ 0.012=1.012

yB = y0+h/4*f(x0,y0)=1,571+0.012*2.571=1.603

Следовательно, точка B имеет координаты (1,012; 1,603);

8. Ищем угол наклона касательной к графику в точке B:

tg α1 = f(x0 +h/4;y0+h/4*f(x0,y0))=1.603/1.012+Sin(1.603/1.012)=2.583

α1=arctg(2.583)=1.201

α1= α1 *180/ π =68.838

9. Строим касательную l1 в точке B под углом α1;

10. Проводим прямую x = x1 до пересечения с прямой l1, отмечаем точку C(x1; y1);

11. Ищем y точки C:

xC= x0+h/2=1+0.025=1.025

yC=y0+h/2*f(x0 +h/4;y0+h/4*f(x0,y0))=1.636

Следовательно, точка C имеет координаты (1,025; 1,636).

12. Через полученую точку C прведем прямую под углом α2, где:

tg α2 =f(x0+h/2;y0+h/2*f(x0 +h/4,y0+h/4*f(x0,y0))=1.636/1.025+Sin(1.636/1.025)=

=2.595

α2=arctg(2.595)=1.203

α2= α2 *180/ π=68.928

13. На полученой прямой отложим точку D, с координатами:

xD= x0+3/4h=1.308

yC=y0+3/4h*f(x0+h/2;y0+h/2*f(x0 +h/4,y0+h/4*f(x0,y0))=1.668

Следовательно, точка D имеет координаты (1,308; 1,668).

14. Через точку D проведем прямую под углом α3, тангенс которого:

tg α3 =f(x0+3/4h;y0+3/4h*f(x0+h/2;y0+h/2*f(x0 +h/4,y0+h/4*f(x0,y0)))=1.668/1.308+

+Sin(1.668/1.308)=2.607

α3=arctg(2.607)=1.205

α3= α3 *180/ π=69.016

15. Найдем коорнаты точки E, лежащей на прямой проходящей под углом α3:

xB=x0+h=1+0.05=1.05

yB=y0+h*f(x0+3/4h;y0+3/4h*f(x0+h/2;y0+h/2*f(x0 +h/4,y0+h/4*f(x0,y0)))=1.701

Следовательно, точка E имеет координаты (1,05; 1,701).

y

ε1

C α1

A α B ε

h/2

0xi Xi+1 x

h

Рисунок 9. Решение задачи методом Рунге-Кутта.