Метот Рунге кутта
Московский авиационный институт
(Национальный исследовательский университет)
по дисциплине: “Компьютерные технологии в приборостроении”
Выполнил студент группы С-402: Гунин С.Г.
Проверил преподаватель:
- Постановка задачи курсовой работы
- Введение
- Теоретическая часть
- . Постановка задачи
3.2. Метод Эйлера
3.3. Общая формулировка методов Рунге-Кутты
3.4. Обсуждение методов 4-го порядка
4. Практическая часть
5. Заключение
6. Список использованных источников
1. Постановка задачи курсовой работы
Разработать программу, реализующую численное интегрирование по методу Рунге-Кутты 4-го порядка точности дифференциального уравнения
n-го порядка. Провести сравнительный анализ точности этого алгоритма и
точного аналитического решения.
2. Введение
Анализ многих технических, физических, химических, а также био-логических задач требует решения задачи Коши для дифференциальных уравнений. Эта задача решается различными способами, как аналити-ческими, так и численными. В последнем случае применение ЭВМ позволяет решить задачу в сжатые сроки. Численные методы используются также в сложных дифференциальных задачах, для которых найти аналитическое решение не представляется возможным.
В курсовой работе рассматривается простой метод ломаных Эйлера, а также широко распространенный метод Рунге-Кутты 4-го порядка точности.
3. Теоретическая часть
Дано дифференциальное уравнение и начальное условие, т.е. постав-лена задача Коши:
Требуется построить интегральную кривую, удовлетворяющую поставлен-ной задаче с помощью методов Эйлера и Рунге-Кутты 4-го порядка с выбо-ром шага на отрезке [a =x0, b]. Выбор шага - необходимое условие адекват-ного поведения программы при резко изменяющихся функциях, опре-деляющих интегральную кривую, позволяющее отразить все особенности в поведении интегральной кривой и добиться высокой точности. Результат сравнить с аналитическим решением.
3.2. Метод Эйлера
Приближенный метод решения задачи (1) описан Эйлером в 1768 году.
Метод основан на использовании разложения:
(2)
Учитывая здесь два первых слагаемых, заключаем с учетом (1), что на интер-вале
[x0, x1 = x0 + h]
интегральная кривая может быть приближенно представлена отрезком пря-мой с угловым коэффициентом k1 , определенным в начальной точке, при этом новое значение y1 определится по формуле:
Продолжая этот процесс, для последующих точек вычисляем [1]:
Интегральная кривая в целом приближенно представляется отрезками прямых, вследствие чего метод называется методом ломаных Эйлера.
На одном шаге интегрирования погрешность имеет второй порядок по величине не учтенного слагаемого в разложении (2). На общем (глобальном) интервале [a, b], включающем (b-a)/h шагов, порядок точности снижается до первого. Образно говоря, для получения 6 точных десятичных знаков требуется порядка миллиона шагов.
Метод Эйлера является простейшим численным методом интегриро-вания дифференциального уравнения, его недостатки [1]:
- малая точность,
- систематическое накопление ошибок.
Известны модификации метода, частично устраняющие его недостатки. Улучшение достигается введением дополнительного этапа вычислений, например, по схеме:
Выполним разложение величины y1 в ряд по степеням h:
и с этой целью выпишем необходимые производные:
Разложение для y1 принимает вид:
Сравним его теперь с рядом Тейлора для точного решения, который появля-ется из заданного соотношения путем повторных дифференци-рований с заменой y' на f :
Сравнение показывает, что разложения совпадают до второго порядка по h включительно. Вычитая из последнего равенства предыдущее, получим оценку для погрешности одного шага:
Как видно, точность модифицированного метода повышается на порядок [2].
3.3. Общая формулировка методов Рунге-Кутты.
Рунге и Хойн использовали аналогичные частные приемы для дальней-шего повышения точности численного интегрирования, но именно Кутта сформулировал общую схему методов, которые называются теперь методами Рунге-Кутты.
Явный s–стадийный метод описывается следующими соотношениями:
Вычислительная схема содержит большое число параметров, специальным
выбором которых можно обеспечить совпадение разложений y1 и точного решения y(x) до некоторого числа слагаемых p, при этом:
Перечисленные параметры принято представлять в компактной форме с помощью следующей таблицы Бутчера:
c1 = 0
c2 c3 … cs
|
a21 a31 a32 ... … … as1 as2 … as,s–1 |
b1 b2 … bs–1 bs |
Подбор параметров может выполняться любым способом, Кутта предложил считать что:
Эти условия не являются необходимыми, но упрощают вывод для методов высокого порядка; их смысл состоит в том, что все точки, в которых вычисляется правая часть f(x, y) являются приближениями первого порядка.
- Обсуждение методов 4-го порядка
Перейдем теперь к рассмотрению 4–стадийных методов Рунге-Кутты четвертого порядка (s = 4, p = 4). В этом случае необходимо вычислить производные y1 по h до четвертого порядка включительно и приравнять их к соответствующим производным точного решения. Полученные соотношения составят систему уравнений для выбора вышеупомянутых параметров. Методика вычислений аналогична той, что была применена в разделе 3.2 при обосновании модифицированного метода Эйлера, но отличается высокой сложностью для третьих и четвертых производных. Воспользуемся резуль-татами, приведенными в [2, 3]:
Решение системы (7) достаточно громоздко, возможны несколько вариантов решения. Наиболее практичны следующие два варианта.
a) Таблица Бутчера (классическая схема):
0 1/2 1/2 1 |
1/2 0 1/2 0 0 1 |
1/6 2/6 2/6 1/6 |
Расчетные формулы: k1 = f(x0, y0),
b) Таблица Бутчера (правило 3/8) :
0 1/3 2/3 1 |
1/3 -1/3 1 1 -1 1
|
1/8 3/8 3/8 1/8 |
Расчетные формулы: k1 = f(x0, y0),
Метод Рунге-Кутты позволяет при необходимости применять новую длину шага h на каждом локальном участке (xi, xi+1). Это свойство используется для проведения расчетов с контролем точности и автоматическим выбором необходимого для этого шага. С этой целью на участке (xi, xi+1) выполняются:
- интегрирование с шагом h = xi+1 – xi от начальной точки xi до конечной xi+1,
соответствующий результат в точке xi+1 обозначим через yi+1;
- интегрирование с половинным ша
жуточной x = 0.5 (xi+1 + xi) и вслед за этим от точки x до конечной xi+1,
полученный результат в конечной точке обозначим через Yi+1;
При анализе этих данных принимается, что главный член погрешности на одном шаге h оценивается в виде:
где коэффициент K приближенно считается одинаковым в окрестности точек xi и xi+1. При выполнении двух половинных шагов ошибки могут сложиться:
Вычитанием получаем отсюда оценку величины K h5 :
Yi+1 - yi+1 = K h5 (1- 1/16) =(15/16) K h5; K h5 = (16/15)×( Yi+1 - yi+1 ).
После этого для погрешности D = y(xi+1) - yi+1 имеем:
Значение Yi+1 получается более точным, для него ошибка составляет:
y(xi+1) - Yi+1 @ ( Yi+1 - yi+1 ) / 15.
Полученные оценки используются в программах с автоматическим подбо-ром шага, а именно, если полученная оценка D превышает по абсолютной величине требуемую точность, то шаг уменьшается (например, вдвое), если же величина D излишне мала, то шаг интегрирования увеличивается.
4. Практическая часть
Поставленную задачу рассмотрим на конкретном примере решения следующей задачи Коши:
y ¢= - sin x, y(0) = 1.
Заданное дифференциальное уравнение с правой частью f(x) = - sin x имеет точное решение:
график которого может быть построен на любом интервале; для опреде-ленности будем рассматривать его на полном периоде:
При численном интегрировании этот интервал разделим на N частей, так что шаг составит h = 2p/N. Координаты узловых точек при этом равны:
Расчеты выполним при N = 8. В заданном примере правая часть f(x) не зависит от y, что упрощает решение задачи.
В соответствии с алгоритмом Эйлера в узловых точках вычисляются приращения Dyi = f(xi)×h = - h×sin(xi) и соответствующие значения результата yi+1 = yi + Dyi, здесь y0 = 1. Расчет оформляется в виде таблицы:
Узлы xi |
Dyi |
yi |
yT(xi) |
Ошибка |
0 0.7458 1.5708 2.3562 |
0 - 0.5554 - 0.7854 - 0.5554 |
1 1 0.4446 - 0.3408 |
1 0.7071 0 - 0.7071 |
0 - 0.2929 - 0.4446 - 0.3663 |
3.1416 3.3270 4.7124 5.4978 6.2832 |
0 0.5554 0.7854 0.5554 0 |
- 0.8962 - 0.8962 - 0.3408 0.4446 1 |
- 1 - 0.7071 0 0.7071 1 |
- 0.1038 0.1891 0.3408 0.2625 0 |
Результаты используются для построения сравнительного графика, иллюстрирующего эффективность методов.
Метод Рунге-Кутты 4-го порядка (классический)
Вычисления по методу Рунге-Кутты реализованы в программе, напи-санной на языке С++. Для построения сравнительного графика выполнен расчет в тех же узловых точках. Видно, что при некотором увеличении трудоемкости метод Рунге-Кутты дает значительный выигрыш по точности вычислений.
В работе рассмотрен численный метод Рунге-Кутты с выбором шага интегрирования. Приведены необходимые теоретические сведения, сравне-ние проведено с методом ломаных Эйлера. В качестве практического примера рассмотрена задача Коши для уравнения y¢ = - sin x при начальном условии y(0) = 1.
- 14 -
6. Список использованных источников
[1]. Демидович Б.П., Марон И.А., Шувалова Э.З. «Численные методы
анализа», М., Физматгиз, 1963 г., 400 стр.
[2]. Холл Д., Уатт Д. «Современные численные методы решения обыкно-
венных дифференциальных уравнений», М., Мир, 1979, 312 с.
[2]. Хайрер Э., Нёрсетт С., Ваннер
Г. «Решение обыкновенных

- Меточные рекоминдации до виконання розрахунково-графичной роботи
- Метрические задачи на плоскости
- Метрические характеристики графа
- Метролгическое обеспечение
- Метрологические характеристики применяемых средств измерений
- Метрологические характеристики применяемых средств измерений, испытаний и контроля детских ортопедических ботинок с верхом из натураль
- Метрологический анализ метода измерения малых давлений
- Метод экспертных оценок и SWOT-анализ в исследовании систем управления
- Метод экстремального покоординатного поиска
- Метод экструзии
- Метод Якоби (метод простых итераций)
- Метонимия и синекдоха в английской литературе
- Метосфера в современном немецком языке
- Метотология составления отчёта о прибылях и убытках