Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PZ_Interp_Appr_Koshi Осинська.doc
Скачиваний:
28
Добавлен:
07.02.2016
Размер:
785.92 Кб
Скачать

5.3.4 Рішення задачі Коші в MatLab

У MATLAB є ряд функцій для вирішення задачі Коші. Одна з них - ode45 - використовує метод Рунге-Кутта четвертого-п'ятого порядку точності з автоматичним вибором розміру кроку. Звернення до ode45 виконується таким чином (синтаксис приведений для версії 3.Х) : [T,Y] = ode45(ODEFUN,TSPAN,Y0)

Вхідні параметри процедури ode45 :

- ODEFUN - ім'я функції (у вигляді строкової змінної), задаючої праву частину системи диференціальних рівнянь. Рівняння мають бути записані в нормальній формі u' = ODEFUN(T, Y), де u' - обчислюваний вектор-стовпець похідних;

- TSPAN = [T0 TFINAL] - вектор, задаючий інтервал зміни незалежної змінної. T0 - початкова точка, TFINAL - останнє значення аргументу, при якому завершується розрахунок;

- Y0 - вектор початкових значень залежних змінних.

Вихідні параметри ode45 :

- T - вектор, що містить відліки аргументу в точках рішення;

- Y - масив, що містить вичислені значення u і u' в точках, відповідних відлікам незалежної змінної в T.

Вимоги до точності і інші параметри чисельного рішення задаються в MATLAB за умовчанням. Змінити ці налаштування дозволяє додатковий аргумент OPTIONS (см help ODESET).

Окрім розглянутої функції ode45 MATLAB містить ряд інших функцій для вирішення завдання Коші – см. ode23, ode113, ode15s, ode23s, ode23t, ode23tb.

5.4 Індивідуальні завдання до лабораторної роботи

1. Розглянути задачу, що полягає в пошуку рішення звичайного диференційного рівняння для x від x0 до xk з кроком ∆x за початкової умови y(x0)=y0 (задачу Коші). З'ясуйте можливість аналітичного рішення задачі.

2. Написати функції для вирішення задачі Коші методами Ейлера та Рунге-Кутта .

3. Згідно з індивідуальним завданням знайти рішення задачі Коші з фіксованим кроком ∆х (значення ∆х візьміть рівним п'ятій долі інтервалу інтеграції), використовуючи вказані методи. Побудувати графіки отриманих рішень.

4. Порівняти точність методів.

5. Будь-яким з вищезгаданих методів знайдіть рішення із заданою точністю в системі подвійного прорахунку і зіставте з рішенням, отриманим в п. 3. Побудуйте графік похибок.

6. Виконаєте рішення задачі в середовищі MatLab стандартними засобами (наприклад, функцією odе45); намалюйте графік знайденого рішення.

Таблиця 5.1 - Варіанти індивідуальних завдань

Варіант

Рівняння

Інтервал

1

y'=-2x(y+1)

y(0)=1

[0,1]

2

y'=-x/y

y(0)=1

[0,1]

3

y'=0.5*(y-1)/x

y(1)=2

[1,2]

4

y'=2y/x

y(1)=1/2

[1,2]

5

y'=2y/(3(x-1))

y(2)=1

[2,3]

6

y'=-(y+1)/x

y(1)=1

[1,2]

7

y'=-2(y+1)/x,

y(1)=0

[1,2]

8

y'=-y+1,

y(0)=-1

[0,1]

9

y'=1/(x-2)

y(3)=1

[3,4]

10

y'=-2(x-1)y

y(1)=2

[1,2]

11

y'=-(x-1)/y

y(0)=1

[0,1]

12

y'=0.5y/(x-1)

y(2)=0.5

[2,3]

13

y'=-y(y+1)

y(0)=1

[0,1]

Продовження таблиці 5.1

14

y'=y^2,

y(0)=-1

[0,1]

15

y'=0.5 / x

y(1)=1

[1,2]

16

y'=y/(2x)

y(1)=1

[1,2]

17

y'=y

y(0)=1/4

[0,1]

18

y'=3/2x

y(0)=-1

[0,1]

19

y'=y^2/x^2,

y(1)=0.5

[1,2]

20

y'=-y^2/(2x)

y(1)=1

[1,2]

21

y'=2y/(x-1)^2, y(0)=1

[0,1]

22

y'=-3y/(x+1),

y(0)=2

[0,1]

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