- •Решение систем обыкновенных дифференциальных уравнений методами Рунге - Кутты
- •6.0914 – Компьютеризированные системы, автоматика и
- •Цель работы
- •Постановка задачи коши
- •Численное решение задачи коши
- •Методы рунге-кутты
- •Объект исследования
- •Порядок выполнения экспериментальных исследований
- •Алгоритм и структура программы интегрирования
- •Оформление и содержание расчётно-пояснительной записки
- •Постановка задачи Коши
- •Описание программных модулей
- •Экспериментальные исследования методов Рунге-Кутты
- •Защита курсовой работы
- •Библиографический список
- •Приложение а
- •Приложение б
- •Курсовая работа
- •Приложение в
Постановка задачи коши
Общей
формой записи обыкновенных дифференциальных
уравнений, называемой нормальной формой
Коши, является представление в виде
системы n
дифференциальных уравнений первого
порядка
x'i(t)=fi(x1(t), x2(t),…, xn(t), t), (1)
i=1,2,…,n ,
разрешённых относительно производных. К такому виду может быть приведено любое дифференциальное уравнение n- ого порядка, допускающее возможность разрешения относительно старшей производной. Способы и примеры приведения уравнений к форме Коши описаны в [4], [6], а методика приведения уравнения второго порядка – в разделе 4 настоящих указаний.
Задачей Коши интегрирования уравнения (1) называется задача определения функций xi(t), i=1,2,…,n на заданном отрезке изменения независимой переменной t (отрезке интегрирования)
t0 t tf , (2)
удовлетворяющих заданным начальным условиям
xi(t0)=xi0 , i=1,2,…,n (3)
и являющихся решениями системы (1). Во многих практических задачах требуется найти только одну из n функций, например x1(t). Но и в этом случае, поскольку первое уравнение системы (1) зависит от решений других уравнений системы, приходится решать совместно все n уравнений.
Для теоретических исследований и программирования более удобной формой описания задачи Коши является следующая векторная форма записи системы (1), (2), (3):
x'(t)=f(x(t),t), (4)
x(t0)=x0, t0 t tf (5)
Здесь и далее x(t), x(t0) и f(x(t),t) есть n-мерные векторы решений xi(t), начальных значений решений xi(t0) и правых частей fi соответственно уравнений системы (1), (2), (3).
Известно [1],[2],[3] , что в инженерной практике точное решение задачи Коши возможно лишь в редких случаях. Иначе приходится довольствоваться лишь приближённым решением задачи на основе одного из численных методов.
Численное решение задачи коши
При численном решении задачи Коши вместо поиска вектора решения x(t) уравнения (4) на отрезке интегрирования (5) ограничиваются определением значений вектора при N значениях независимой переменной t=t1,t2,…,tN=tf , называемых узлами интегрирования. Чаще всего шаг интегрирования h=tk –tk-1, k=1,2,… выбирается постоянным.
Значение решения уравнения (4) в узле можно представить в виде
x(tk)=x(tk–1)
+
. (6)
Однако формула (6) для вычислений непригодна, так как для вычисления интеграла недостаточно знания x(t) только в узлах интегрирования. При численном решении задачи Коши интеграл в (6) заменяется приближённой формулой. В этом случае формула (6) вместо точных значений x(tk) позволяет определить лишь приближённые значения xa(tk). Возникающая при этом в каждом узле ошибка
Ea(tk)=x(tk) –xa(tk) (7)
называется ошибкой алгоритма. Причём, если значения решения в предыдущих узлах известны точно, формула (7) определяет локальную ошибку алгоритма (или ошибку алгоритма на шаге). Известно [1], что величина локальной ошибки (7) для методов Рунге-Кутты пропорциональна величине hm+1, где m- порядок метода.
Поскольку при численном решении задачи Коши решения в предыдущих узлах определены приближённо, ошибка (7) не является локальной, но и не является просто суммой локальных ошибок в предыдущих узлах. В этом случае формула (7) определяет глобальную ошибку алгоритма. Её зависимость от локальных ошибок характеризует устойчивость вычислительного алгоритма [2],[4]. Если алгоритм неустойчив, даже небольшие локальные ошибки при численном решении задачи Коши приводят к быстрому росту глобальной ошибки. При устойчивом алгоритме величина глобальной ошибки пропорциональна величине hm [1]. При этом величина коэффициента пропорциональности зависит от вида уравнения (4) и длины отрезка интегрирования (5).
Обычно, при n>1, для характеристики точности численного метода применяется не величина алгоритмической ошибки, а её скалярная оценка вида
ea(tk)=Ea(tk). (8)
При численном решении задачи Коши приближённая формула (6) применяется многократно (N раз). Каждое применение формулы означает выполнение очередного шага интегрирования, т.е. определение искомого решения в текущем узле по значениям решения в предыдущих узлах. Обычно оценку точности вычислительного алгоритма на отрезке интегрирования (5) определяют как
ea
=
ea(tk). (9)
Устойчивость вычислительного алгоритма зависит от вида уравнения (4), численного метода и величины шага интегрирования. Для любого численного метода и вида уравнения (4) существует такое критическое значение величины шага, превышение которого приводит к потере устойчивости алгоритма.
При решении задачи Коши на ПК из-за приближённого представления чисел и приближённого выполнения операций возникают, помимо алгоритмиче-
ских, дополнительные ошибки. По этой причине формула (6) позволяет определить лишь приближённые значения
xв(tk)=xa(tk)+Eв(tk)
решения xa(tk) с дополнительной ошибкой вычислений Eв(tk). Возникающая при этом в каждом узле ошибка
Eп(tk)=x(tk)–xв(tk)=Eа(tk)+Eв(tk) (10)
называется полной ошибкой. Причём, если значения решения в предыдущих узлах известны точно, формула (10) определяет полную локальную ошибку, в противном случае – полную глобальную.
Если n >1, точность решения задачи Коши на ПК оценивается не величиной полной ошибки, а её скалярной оценкой
eп (tk)=Eп(tk). (11)
Ошибка вычислений пропорциональна единичной ошибке округления м и обратно пропорциональна величине шага h [1], [2]. Параметр м [2] является машинно-зависимым, связанным с разрядностью плавающей арифметики. Для современных ПК величина м достаточно мала (порядка 10–710–19). Поэтому в широком диапазоне значений шага точность численного решения задачи Коши на ПК (величина ошибки (10) при вычислении по формуле (6)) определяется, в основном, приближённостью вычислительного алгоритма (величиной ошибки Ea). И только в области достаточно малых значений шага начинает оказывать существенное влияние ошибка вычислений Eв.
