В таблице 7.1. приведены результаты решения дифференциального уравнения



при начальных условиях y(1.0)=1.0. Вторая графа содержит точки полученного табулированием точного, аналитического, решения

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

Результаты решения дифференциального уравнения численными методами

                                                 Таблица 7.1.

  x   Точное решение   Метод Эйлера Усовершенствован­ный Эйлера Модифици- рованный Эйлера Метод Рунге- Кутта Ошибка метода Рунге-Кутта
1.0 1.0000 1.0000 1.0000 1.0000 1.0000 0.0000000
1.1 0.9961 0.9927 0.9960 0.9958 0.9961 0.0000010
1.2 0.9980 0.9919 0.9978 0.9977 0.9980 0.0000011
1.3 1.0049 0.9963 1.0046 1.0047 1.0049 0.0000012
1.4 1.0164 1.0054 1.0161 1.0166 1.0164 0.0000013
1.5 1.0325 1.0189 1.0322 1.0332 1.0325 0.0000013
1.6 1.0532 1.0369 1.0528 1.0545 1.0532 0.0000014
1.7 1.0784 1.0592 1.0778 1.0804 1.0783 0.0000015
1.8 1.1077 1.0857 1.1071 1.1106 1.1077 0.0000015
1.9 1.1406 1.1161 1.1399 1.1446 1.1406 0.0000016
2.0 1.1764 1.1496 1.1755 1.1816 1.1764 0.0000016
2.1 1.2138 1.1853 1.2127 1.2204 1.2138 0.0000017
2.2 1.2515 1.2220 1.2502 1.2595 1.2515 0.0000017
2.3 1.2877 1.2581 1.2862 1.2973 1.2877 0.0000018
2.4 1.3205 1.2921 1.3189 1.3318 1.3205 0.0000018
2.5 1.3482 1.3219 1.3465 1.3611 1.3482 0.0000019
2.6 1.3689 1.3459 1.3670 1.3831 1.3689 0.0000019
2.7 1.3810 1.3622 1.3790 1.3961 1.3810 0.0000019
2.8 1.3833 1.3695 1.3812 1.3989 1.3833 0.0000019
2.9 1.3751 1.3666 1.3730 1.3904 1.3751 0.0000018
3.0 1.3563 1.3532 1.3543 1.3706 1.3563 0.0000018

 

Из таблицы хорошо видно, что метод Рунге-Кутта четвертого порядка дает самую высокую точность.

Более высокая точность метода Рунге-Кутта часто позволяет увеличить шаг интегрирования h. Допустимая погрешность на шаге определяет его максимальную величину. Чтобы обеспечить высокую эффективность вычислительного процесса, величину h следует выбирать именно из соображений максимальной допустимой ошибки на шаге. Такой выбор часто осуществляется автоматически и включается как составная часть в алгоритм, построенный по методу Рунге-Кутта.

 

Метод Кутта-Мерсона

Мерсон предложил модификацию метода Рунге-Кутта четвертого порядка, позволяющую оценивать погрешность на каждом шаге и принимать решение об изменении величины шага. Схема Мерсона выглядит следующим образом:

(7.14)

 

где K1 = h3 f(xm, ym), h3=h/3,
  K2 = h3 f(xm+h3, ym+K1), 
  K3 = h f(xm+h3, ym+(K1+K2)/2),
  K4 = K1+ h3 f(xm+h/2, ym+0,375(K1+K3)),
  K5 = h3 f(xm+h, ym+1,5(K4 - K3)).

 

Эта схема требует на каждом шаге вычислять правую часть дифференциального уравнения в пяти точках, но она позволяет на каждом шаге определять погрешность решения R по формуле

R = 0,1(2K4 - 3K3 - K5). (7.15)

Для автоматического изменения шага интегрирования рекомендуется следующий критерий. Если абсолютное значение величины R, вычисленное по формуле (7.15), на (m+1)-м шаге окажется больше допустимой заранее заданной погрешности , т.е. , то шаг h уменьшается вдвое и вычисления по схеме (7.14) повторяются с точки (xm,ym). При выполнении условия 32  шаг h можно удвоить начиная с точки (xm+1,ym+1).

Следует обратить внимание, что, если по условиям задачи требуется сохранять в памяти ЭВМ все вычисленные точки до конца решения, то, по сравнению с другими методами, здесь необходимо организовывать массив и для абсцисс точек, т.к. шаг изменения по оси OX - переменный.

На рис. 7.11. в виде блок-схемы представлен алгоритм решения задачи Коши для ОДУ первого порядка методом Кутта-Мерсона.

 

Рис.7.11. Блок-схема метода Кутта-Мерсона


Дата добавления: 2018-02-15; просмотров: 275;