Смекни!
smekni.com

Метод Рунге-Кутты четвертого порядка с автоматическим выбором шага интегрирования решения задачи Коши (стр. 1 из 7)

Реферат

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

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

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

Работа содержит 36 листов, включая 8 графиков, 4 иллюстрации и 12 таблиц.

Содержание

Введение

1. Теоретическая часть

1.1 Постановка задачи

1.2 Метод Эйлера

1.3 Общая формулировка методов Рунге-Кутты

1.4 Обсуждение методов порядка 4

1.5 «Оптимальные» формулы

1.6 Условия порядков для методов Рунге-Кутты

1.7 Оценка погрешности и сходимость методов Рунге-Кутты

1.7.1 Строгие оценки погрешности

1.7.2 Главный член погрешности

1.7.3 Оценка глобальной погрешности

1.8 Оптимальный выбор шага

2. Практическая часть

2.1 Описание программы «Ilya RK-4 версия 1.43»

Заключение

Список использованных источников

Приложение А. Графики функций

Приложение Б. Пример таблицы значений функции y(x)

Приложение В. Листинг программы «Ilya RK-4 версия 1.43»

Введение

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

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

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

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

Программная реализация методов Рунге-Кутты четвертого порядка с автоматическим выбором шага представлена в виде программы, написанной на языке высокого уровня Borland C++ 3.1. Программу можно запускать в среде MS-DOS или Windows® 95/98/Me/2k/XP. В качестве выхода программа пишет таблицу значений в файл на диск и рисует график на экране ЭВМ.

Для проверки результатов работы созданной программы одни и те же дифференциальные уравнения решались в математическом пакете Waterloo Maple 9.01 и при помощи созданного приложения (версия 1.43), проводился анализ таблиц значений и графиков решений.

1. Теоретическая часть

1.1 Постановка задачи

Дано дифференциальное уравнение и начальное условие, то есть поставлена задача Коши:

(2.1.1)

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

. Задачу можно решить аналитически, найдя решение дифференциального уравнения и подставив в него начальное условие, тем самым, отыскав требуемую интегральную кривую. Но для нас интерес представляет решение данной задачи с применением численного метода, а конкретнее – метода Рунге-Кутты 4-го порядка с автоматическим выбором шага, то есть численное решение. Автоматический выбор шага – необходимое условие адекватного поведения программы при резко изменяющихся функциях, задающих интегральную кривую, позволяющее отразить все моменты в поведении интегральной кривой и добиться высокой точности.

1.2 Метод Эйлера

Метод Эйлера для решения начальной задачи (2.1.1) был описан Эйлером в 1768 году. Этот метод весьма прост. Его глобальная погрешность имеет вид

, где
– постоянная, зависящая от задачи, и
– максимальная длина шага. Если желательно, скажем, получить 6 точных десятичных знаков, то требуется, следовательно, порядка миллиона шагов, что не слишком удовлетворительно. С другой стороны, еще со времен Ньютона известно, что можно найти гораздо более точные методы, если
не зависит от
, то есть если мы имеем задачу (2.1.1), решаемую квадратурой

. (2.2.1)

В качестве примера можно рассмотреть первую квадратурную формулу Гаусса, также называемую «правилом средней точки»:

(2.2.2)

где

и
– граничные точки подинтервалов, на которые разбит интервал интегрирования. Известно, что оценка глобальной погрешности этой формулы
имеет вид
. Таким образом, если желаемая точность составляет 6 десятичных знаков, ее обычно можно получить приблизительно за 1000 шагов, то есть этот метод в тысячу раз быстрее. Поэтому Рунге поставил следующий вопрос: нельзя ли распространить этот метод на исходную задачу Коши? Первый шаг длины
должен иметь вид

. (2.2.3)

Но какое значение взять для

? За неимение лучшего естественно использовать один малый шаг метода Эйлера длины
. Тогда из предыдущей формулы получим:

(2.2.4)

Решающим обстоятельством здесь является умножение

в третьем выражении на
, в результате чего влияние погрешности становится менее существенным. Точнее, вычислим для
разложение Тейлора по степеням
:

(2.2.5)

Его можно сравнить с рядом Тейлора для точного решения, который получается из того, что

путем повторного дифференцирования с заменой
на
каждый раз, когда оно появляется:

(2.2.6)

Вычитая из последнего равенства предыдущее, получим для погрешности первого шага выражение

(2.2.7)

Таким образом, если все частные производные

второго порядка ограничены, то

.

Чтобы получить приближенное значение решения исходной задачи в конечной точке

, будем применять формулы (2.2.4) последовательно к интервалам
. Приведенные выше формулы являются усовершенствованным методом Эйлера. Для вычислений с высокой точностью, однако, следует пользоваться другими методами, одним из которых как раз является метод Рунге-Кутты.

1.3 Общая формулировка методов Рунге-Кутты