Курс лекций по основам алгоритмизации и программирования задач машиностроения. Кравченко Д.В. - 107 стр.

UptoLike

Составители: 

Рубрика: 

105
Таким
образом
,
метод
Рунге
-
Кутта
требует
на
каждом
шаге
четырехкрат
-
ного
вычисления
правой
части
уравнения
f(
х
,
у
).
При
этом
метод
Эйлера
это
метод
Рунге
-
Кутта
первого
порядка
.
Метод
Рунге
-
Кутта
(62)
требует
большего
объема
вычислений
,
однако
это
окупается
повышенной
точностью
,
что
дает
возможность
проводить
счет
с
большим
шагом
,
т
.
е
.
для
получения
результатов
с
одинаковой
точностью
в
ме
-
тоде
Эйлера
потребуется
значительно
меньший
шаг
,
чем
в
методе
Рунге
-
Кутта
.
Кроме
этого
с
уменьшением
шага
h
локальная
погрешность
метода
Эйлера
снизится
,
однако
при
этом
возрастет
число
узлов
,
что
плохо
повлияет
на
точ
-
ность
результатов
.
Поэтому
метод
Эйлера
применяется
сравнительно
редко
при
небольшом
числе
расчетных
точек
.
Наиболее
употребительным
одношаговым
методом
является
метод
Рунге
-
Кутта
.
Итак
,
особенность
одношаговых
методов
состоит
в
том
,
что
для
получения
решения
в
каждом
новом
расчетном
узле
достаточно
иметь
значение
сеточной
функции
лишь
в
предыдущем
узле
.
Это
позволяет
начать
счет
при
ί
= 0
по
из
-
вестным
начальным
значениям
.
Кроме
того
,
указанная
особенность
допускает
изменение
шага
в
любой
точке
в
процессе
счета
,
что
позволяет
строить
алго
-
ритмы
с
автоматическим
выбором
шага
.
В
многошаговых методах
разностная
схема
строится
на
том
,
что
для
вы
-
числения
значения
у
используются
результаты
не
одного
,
а
k-
предыдущих
ша
-
гов
,
т
.
е
.
значения
у
ί-k+1
,
у
ί-k+2
., …,
у
ί
.
Запишем
исходное
уравнение
(55)
в
виде
dY(
х
) = f(x, Y)dx. (63)
Проинтегрируем
обе
части
этого
уравнения
по
х
на
отрезке
[
х
ί
,
х
ί+1
].
Интеграл
от
левой
части
вычисляется
легко
:
i1ii
x
x
1i
yy)Y(x)Y(xdY(x)
1i
i
=
++
+
. (64)
Для
вычисления
интеграла
от
правой
части
уравнения
(63)
строится
снача
-
ла
интегральный
многочлен
Р
k-1
(
х
)
степени
(k-1)
для
аппроксимации
функции
f(
х
, Y)
на
отрезке
[
х
ί
,
х
ί+1
]
по
значениям
f(
х
ί-k+1
,
у
ί-k+1
), f(
х
ί-k+2
,
у
ί-k+2
), , f(
х
ί
,
у
ί
).
После
этого
можно
записать
:
(x)dxPY)dxf(x,
1i
i
1i
i
x
x
1k
x
x
++
. (65)
Приравнивая
(64)
и
(65)
можно
получить
формулу
для
определения
неизвестно
-
го
значения
функции
у
ί+1
в
узле
х
ί+1