imagesmetod-runge-kutta-4-porjadka-dlja-chajnikov-thumb.jpg

Классический метод Рунге-Кутты

Лучше всего это делать в виде дифференциальных уравнений (ДУ) или системы дифференциальных уравнений. Рассмотрим некоторые численные методы решения задачи Коши (начальной задачи) обыкновенных дифференциальных уравнений первого порядка.

Наиболее часто используется и реализована в различных математических пакетах (Maple, MathCAD, Maxima) стандартная схема четвёртого порядка. Иногда при выполнении расчётов с повышенной точностью применяются схемы пятого и шестого порядков.

Методы седьмого порядка должны иметь по меньшей мере девять стадий, в схему восьмого порядка входит 11 стадий. Аналогичная задача существует для схем десятого и более высоких порядков. Явный метод характерен тем, что матрица коэффициентов для него имеет нижний треугольный вид, в отличие от неявного метода, где матрица имеет произвольный вид. Это также видно по таблице Бутчера.

Это увеличивает вычислительные затраты, однако при достаточно малом эту систему можно представить в виде сжимающего отображения и решать методом простой итерации. Вторая формула — это простая итерация решения системы уравнений относительно , записанной в форме сжимающего отображения. Для повышения точности итерацию-коррекцию можно сделать несколько раз, подставляя . Модифицированный метод Эйлера «с пересчетом» имеет второй порядок точности.

Функция называется функцией устойчивости Из формулы видно, что является отношением двух полиномов степени , если метод имеет стадий. В частности , метод называется A-стабильным если все с находятся в области абсолютной стабильности. В среде MATLAB реализована его одна из разновидностей — метод Дорманда-Принса.

Рассмотрим дифференциальное уравнение первого порядка, для которого требуется найти частное решение, соответствующее начальному условию . Что это значит? И здесь на помощь приходят методы приближенных вычислений, которые позволяют с высокой (а зачастую с высочайшей) точностью «сымитировать» функцию на некотором промежутке.

Решение задач по ТОЭ, ОТЦ, Высшей математике, Физике, Программированию…

И не только узнаем, но и непосредственно реализуем =) Начнём с исторически первого и самого простого метода. Найти частное решение дифференциального уравнения , соответствующее начальному условию , методом Эйлера на отрезке с шагом . Построить таблицу и график приближённого решения.

Рассмотрим тот же самый пример: дифференциальное уравнение , частное решение, удовлетворяющее условию , промежуток и его разбиение на 10 частей ( – длина каждой части).

Идея методов Эйлера и Рунге-Кутты состоит в том, чтобы заменить фрагмент графика ломаной линией, и сейчас мы узнаем, как эта идея реализуется на практике

Давайте лучше проведём аналитическое сравнение точности трёх методов, ибо когда известно точное решение , то грех не сравнить. Погрешность «обычного» метода Эйлера не превосходит шага разбиения. Усовершенствованный метод Эйлера гарантирует точность: (смотрим на 2 нуля после запятой в средней колонке погрешностей).

Ответ прямо-таки философский: качеством и/или количеством =) В частности, существует и другие, более точные модификации метода Рунге-Кутты. Безусловным достоинством рассмотренных методов, является тот факт, что они применимы к уравнениям с очень сложной правой частью.

Так как MATLAB ориентирован на работу с матрицами, решение по методу Рунге-Кутты очень легко выполняется для целого ряда x как, например, в приведенном примере программы

Существует великое множество приближённых методов нахождения решений ДУ и их систем, в которых применяются, в том числе, принципиально другие подходы. Причем таких условий должно быть ровно n. Для уравнений первого порядка – одно, для второго — 2 и т.д. 0), и значение функции и всех ее производных вплоть до порядка (n-1) в этой точке. Эта точка (х0) называется начальной. Таким образом получается метод Гюна или метод Эйлера с пересчетом.

Простейшим неявным методом Рунге—Кутты является модифицированный метод Эйлера «с пересчетом». Исторически первым и наиболее простым способом численного решения задачи Коши для ОДУ первого порядка является метод Эйлера. Поэтому метод Эйлера практически не используется в вычислительной практике. При больших h метод Эйлера весьма неточен. Преимуществом неявных методов Рунге-Кутты в сравнении с явными является их большая устойчивость, что особенно важно при решении жестких уравнений.

Еще интересное: