Исследование оду численными методами Исследовать задачу Коши на отрезке мето­дом Рунге-Кутта с постоянным шагом h



бет1/2
Дата20.05.2023
өлшемі0,52 Mb.
#95564
түріИсследование
  1   2
Байланысты:
МЗиКМ Лаб8 (2)


Лабораторная работа 8. Исследование ОДУ численными методами

  1. Исследовать задачу Коши на отрезке мето­дом Рунге-Кутта с постоянным шагом h.

  2. Оценить погрешность полученного решения, применяя правило Рунге.

  3. Используя значения решения в начальных узлах продолжить исследование задачи методом Адамса.

  4. Решить задачу в среде MathCad.

  5. Сравнить результаты в удалённой точке, полученные в пп. 1, 3 и 4.

Варианты работы

1

19

2

20

3

21

4

22

5

23

6

24

7

25

8

26

9

27

10

28

11

29

12

30

13

31

14

34

15

35

16

36

17

37

18

38

  1. Формулы метода Рунге-Кутта 4-го порядка точности:

yi+1 =yi + (K0+ 2K1 +2K2 +K3) / 6 ,


K0 = h∙f(xi , yi );


K1 = h∙f(xi +½h , yi + ½ K0);
K2 = h∙f(xi +½h , yi + ½ K1);
K3 = h∙f(xi + h , yi + K2);
i = 0; 1; 2……номер точки.
Погрешность на расчетном шаге имеет порядок h5.
1а. Пример оформления таблицы для расчета методом Рунге-Кутта
(обозначения: dlt yi ≡Δyi; «точное» - если известно аналитическое выражение для решения ОДУ, то значение можно рассчитать)



По данным выделенных столбцов таблицы следует построить график y(x).

2. Метод Адамса


Метод Адамса имеет следующие особенности:

  1. метод применяется для равномерной, сетки, т.е

xi = xi-1 +h =x0 +i h, i=1,2,…;
b) для нахождения приближенного решения в точке xi+1 требуется знание приближенного решения в (k+1) предыдущих точках, т.е. в точках xi, xi-1,…,xi-k .
Точки x0,…,xk образуют начальный отрезок. Решение на начальном отрезке может быть найдено каким-нибудь другим ме­тодом, например, методом Рунге-Кутта.
Пусть известно решение в точках x0, x1,..,xn. Проинтегрируем исходное уравнение y'= f(x,у) на отрезке [xn, xn+1]

Построим для подинтегральной функции f(x,y(x)) интерполяционный много- член Рk (x) . Если интерполяционный многочлен Рk (x) построен по значениям функции f(x,у) в узлах xn, xn-1, xn-2,…,xn-k, то получим экстраполяционную формулу Адамса. Если интерполяционный многочлен построен по значениям f(x,у) в узлах xn+1, xn, …, xn-k+1 , то получим интерполяционную формулу Адамса.
Так как значение интерполяционного полинома вычисляем на отрезке [xn, xn+1] , то в качестве интерполяционной формулы выберем формулу Ньютона для интерполирования назад

Если в формулу (7.4) вместо f(x,у) подставить Рn(x) , точные значения y(xi) заменить на приближенные, то получим экстраполяционную формулу Адамса. Ниже записаны формулы Адамса имеющие погрешность четвертого порадка. Экстраполяционная формула Адамса

Интерполяционная формула Адамса

Обратим внимание на то, что интерполяционная формула Адамса представляет собой уравнение относительно yn+1. Один из методов решения этого уравнения - метод последовательных приближений:

Практическая оценка погрешности приближенного решения может быть получена с помощью правила Рунге.

3. Правило Рунге оценки погрешности приближенного решения


Пусть приближенный метод имеет порядок погрешности m. Это означает, что главный член погрешности можно записать в виде K(x) hm.
На практике в качестве погрешности приближенного решения берут главный член погрешности
Обозначим приближенное решение в точке xi, найденное с шагом h через yih , а через yi2h – приближенное решение, найденное с шагом 2h.
Справедливы приближенные равенства



Приравнивая правые части (7.6), найдем K(xi)





Отсюда - правила Рунге:



4. Для решения обыкновенных дифференциальных уравнений и систем в Mathcad предназначены следующие функции:


odesolve ( [vector] , t, b, [n] ) возвращает функцию (скалярную для уравнения и вектор-функцию для системы уравнений), являющуюся реше­нием дифференциального уравнения, vector - необязательный параметр (применяется только при решении систем), содержащий имена функций, t - имя независимой переменной, b - конечная точка интервала инте­грирования, n - количество шагов, на которые разбивается интервал ин­тегрирования дифференциального уравнения или системы; эта функция завершает решающий блок Given;
Между служебным словом Given и функцией, odesoive надо ввести уравнения и начальные условия. Для ввода производных в уравнениях можно использовать символ кавычки (комбинация клавиш Ctrl+F7) или кнопку производных (Shift+/), | (Ctrl+Shift+/) панели Calculus. При вводе производ­ных в начальных условиях следует пользоваться только комбинацией клавиш Ctrl+F7. При вводе уравнений после имени функции в скобках обязательно должен быть указан аргумент. Знак равенства вставляется комбинацией клавиш Ctrl+= или оператором = с панели инструментов Boolean (Логический).


Достарыңызбен бөлісу:
  1   2




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет