- •Метод Рунге-Кутта
- •Глава 1.
- •1.1.Суть метода Рунге-Кутта
- •Тангенс угла наклона прямой l и прямой l равен
- •В то время как для модификационного метода Эйлера
- •1.2.Назначение и область применения.
- •Глава 2.
- •2.1 Постановка задачи и разработка алгоритма решения задачи.
- •Основная блок схема
- •2.2. Выбор состава технических и программных средств.
- •2.3 Вызов и загрузка программы.
- •2.4. Тестирование программы
- •Заключение
- •Список литературы
- •Приложение: форма окна
- •Листинг программы:
Уфимский государственный авиационный технический университет
Кафедра вычислительной математики и кибернетики
Курсовая работа
Метод Рунге-Кутта
Студенты ФИРТ
Группа ПО
Преподаватель
Гадилова Ф.Г.
Уфа 2007 г.
Содержание
ВВЕДЕНИЕ……………………………………………………………………………..…3
ГЛАВА 1. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ
СУТЬ МЕТОДА РУНГЕ-КУТТА…………………………………………5
1.2. НАЗНАЧЕНИЕ И ОБЛАСТЬ ПРИМЕНЕНИЯ…………………………10
ГЛАВА2. ПРАКТИЧЕСКАЯ ЧАСТЬ
2.1.ПОСТАНОВКА ЗАДАЧИ И РАЗРАБОТКА АЛГОРИТМА РЕШЕНИЯ ЗАДАЧИ…………………………………………………………………..……….11
2.2.ВЫБОР СОСТАВА ТЕХНИЧЕСКИХ И ПРОГРАММНЫХ СРЕДСТВ…………………………………………………………………...……...16
2.3. ВЫЗОВ И ЗАГРУЗКА ПРОГРАММЫ…………………….………….…...17
2.4.ТЕСТИРОВАНИЕ ПРОГРАММЫ……………………………………...…18
ЗАКЛЮЧЕНИЕ………………………………………………………………...…………19
ЛИТЕРАТУРА………………………………………………………………….…………20
ПРИЛОЖЕНИЯ:
ПРИЛОЖЕНИЕ№1 (ЛИСТИНГ ПРОГРАММЫ)
Введение
Целью курсовой работы является: написать программу для нахождения приближенного решения обыкновенного дифференциального уравнения y’=f(x,y),y(a)=y0 методом Рунге-Кутта пятого порядка на отрезке [a,b] с заданным постоянным шагомh.
Для достижения данной цели необходимо выполнить следующие задачи:
Рассмотреть суть метода Рунге-Кутта.
Назначение и область применения.
Протестировать программу.
Данная задача относится к численным методам. Необходимо найти решение обыкновенного дифференциального уравнения с постоянным шагом h.
Для решения задачи будет использоваться язык программирования TurboPascal7.0, так как этот язык позволяет работать с математическими формулами, проводить различного рода математические операции и действия.TurboPascalфирмыBorlandявляется расширением стандарта языка и содержит интегрированную среду, данного ускоряющую и облегчающую процесс разработки программ. В языке программированияTurboPascal7.0 используется типизированный адресный оператор, открытые массивы и строки, что предоставляет пользователю дополнительные возможности при решении математических задач. В математических задачах часто требуется реализовать численные методы, экспериментально исследовать условие и скорость сходимости методов. В условии задачи, как правило, дается основная идея каждого метода (Эйлера, Рунге-Кутта и т.д.).
Вычисление функции и ее производной, используемой в задаче, рекомендуется оформлять в виде подпрограмм, так, чтобы можно было представлять любую функцию, не меняя самой программы. Погрешность, начальное условие и параметр алгоритма задаются вводом. Там, где это возможно, рекомендуется тестировать алгоритм на примерах, для которых известно или может быть найдено аналитически точное решение.
Глава 1.
1.1.Суть метода Рунге-Кутта
Метод Рунге-Кутта включает в себя несколько других таких как: метод Эйлера и метод Эйлера – Коши.
Методы Рунге-Кутта обладают следующими свойствами:
1. Эти методы являются одноступенчатыми: чтобы найти уm+1нужна
информация о предыдущей точке xmym
2 Они согласуются с рядом Тейлора вплоть до членов порядка hpгде степень р различна для различных методов и называется порядковым номером или порядком метода
3Они не требуют вычисления производных от f (xy) а требуют вычисления самой функции
Рассмотрим сначала геометрическое построение и выведем некоторые формулы на основе геометрических аналогийПосле этого мы подтвердим полученные результаты аналитически(Аналитический метод, применяется которого дает решение дифференциального уравнения в виде аналитического выражения; Графический метод, дающий приближенное решение в виде графика; Численный метод, когда искомая функция получается в виде таблицы.)
Предположим нам известна точка xmym на искомой кривой Тогда мы можем провести прямую линию с тангенсом угла наклона уm=f(xmym) которая пройдет через точку xmym Это построение показано на рис1 где кривая представляет собой точное но конечно неизвестное решение уравнения а прямая линия L1 построена так как это только что описано
Тогда следующей точкой решения можно считать тугде прямая L1пересечет ординату, проведенную через точку x=xm+1=xm+h
Уравнение прямой L1выглядит так: y=ym+ym(x-xm) так как y=f(xmym) и кроме тогоxm+1=xm+h тогда уравнение примет вид
ym+1=ym+h*f(xmym) 1.1.
Ошибка при x=xm+1показана в виде отрезка еОчевиднонайденное таким образом приближенное значение согласуется с разложением в ряд Тейлора вплоть до членов порядка hтак что ошибка ограничения равна et=Кh2
Заметимчто хотя точка на рис.1 была показана на кривойв действительности ymявляется приближенным значением и не лежит точно на кривой
Формула 11 описывает метод Эйлера один из самых старых и широко известных методов численного интегрирования дифференциальных уравнений Отметим что метод Эйлера является одним из методов Рунге-Кутта первого порядка
Рассмотрим исправленный метод Эйлера и модификационный метод Эйлера. В исправленном методе Эйлера мы находим средний тангенс угла наклона касательной для двух точек: xmymи xm+hym+hymПоследняя точка есть та самаякоторая в методе Эйлера обозначалась xm+1ym+1Геометрический процесс нахождения точки xm+1ym+1можно проследить по рис2. С помощью метода Эйлера находится точка xm+hym+hymлежащая на прямой L1В этой точке снова вычисляется тангенсдает прямуюLНаконецчерез точку xmymмы проводим прямую LпараллельнуюLТочкав которой прямая L пересечется с ординатойвосстановленной из x=xm+1=xm+hи будет искомой точкой xm+1ym+1