Анализ влияния вычислительной погрешности в явных методах Рунге — Кутты | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 6 апреля, печатный экземпляр отправим 10 апреля.

Опубликовать статью в журнале

Библиографическое описание:

Анализ влияния вычислительной погрешности в явных методах Рунге — Кутты / А. С. Пак, О. А. Кащеева, Н. А. Мелков [и др.]. — Текст : непосредственный // Молодой ученый. — 2020. — № 27 (317). — С. 18-23. — URL: https://moluch.ru/archive/317/72323/ (дата обращения: 28.03.2024).



Статья посвящена нахождению приемов и способов улучшения и оптимизации известных методов интегрирования систем обыкновенных дифференциальных уравнений (СОДУ). Задача уменьшения вычислительной погрешности при меньших затратах является наиболее актуальной для всех численных методов. В статье подробно рассматривается применение метода компенсированного суммирования для явного метода Рунге — Кутты четвертого порядка.

Ключевые слова: система обыкновенных дифференциальных уравнений, компенсированное суммирование, алгоритм Гилла — Мёллера, методы Рунге — Кутты.

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

Алгоритм Гилла — Мёллера

В книге Бутчера [1] представлен анализ влияния ошибки округления в явном методе Эйлера, а также приведен алгоритм Гилла — Мёллера (Гилл [2], Мёллер [4], [5]), который называют «компенсированным суммированием». В данном разделе будет проведен аналогичный численный эксперимент для преодоления последствий накопления ошибок округления в явном методе Рунге —Кутты 4-го порядка.

Пусть — общая погрешность, вычисленная на шаге , — соответствующая погрешность вычисления производной на этом же шаге, тогда

последовательности точных и приближённых значений связаны между собой следующим образом

где — ошибка округления, совершенная на этом шаге, а — методическая погрешность. Данная операция приводит к следующему разностному уравнению

,

Так как, детальный анализ ошибки округления в расчетах данной задачи представлен в работе Хенричи [3], то вместо того, чтобы пытаться провести анализ и , а также, поскольку шаги вычисляются последовательно, заметим, что можно преодолеть наихудшие последствия накопления ошибок округления. Это делается путем оценки значения на любом конкретном шаге, а затем добавление его к значению , прежде чем оно будет добавлено на следующем шаге.

Этот усовершенствованный метод, который может быть использован для многих ситуаций, связанных с суммированием большого количества малых величин, и называют алгоритмом Гилла — Мёллера или «компенсированным суммированием».

« Компенсированное суммирование » в явном методе Рунге — Кутты 4-го порядка

Общая схема явного метода Рунге — Кутты (ЯМРК) численного интегрирования СОДУ

выглядит следующим образом:

где функции

вычисляются по схеме

Здесь — точное и приближенное значение s-й компоненты в точке соответственно, — точное значение s-й компоненты в точке , - шаг метода.

Традиционным считается символически представлять данный метод посредством таблиц Бутчера. Приведем пример таблицы Бутчера для ЯМРК 4-го порядка.

0

Далее будет показано как применить «компенсированное суммирование» для уменьшения ошибки округления в ЯМРК четвертого порядка на примере системы дифференциальных уравнений

,

с начальным приближением

которое имеет аналитическое решение

Реализация данного метода была выполнена в системе научных вычислений MATLAB.

(ЯМРК4)

ЯМРК4 с компенсированным суммированием)

В данном примере была взята последовательность шагов

Результаты

Нанесем глобальные погрешности этих двух алгоритмов на один график в логарифмическом масштабе.

Видно, что явная форма дает результаты, которые сильнее ухудшаются при определенном шаге, в то время как компенсированная версия значительно улучшает результат.

Выводы

Как видно из проведенного исследования, метод «компенсированного суммирования» значительно улучшает ЯМРК четвертого порядка, а также его можно распространить и на другие численные методы интегрирования СОДУ.

Литература:

  1. Butcher J. C. «Numerical Methods for ordinary Differential Equations, Second Edition». The University of Auckland, New Zealand 2008, 463 p.
  2. Gill S. «A process for the step-by step integration of differential equations in an automatic computing machine». Proc. Cambridge Philos. Soc 1951.
  3. Henrici P. «Discrete Variable Methods in Ordinary Differential Equations». John Wiley & Sons Inc, New York 1962.
  4. Møller O. «Quasi double-precision in floating point addition». BIT 1965.
  5. Møller O. «Note on quasi double-precision». BIT 1965.
Основные термины (генерируются автоматически): явный метод, компенсированное суммирование, MATLAB, алгоритм, шаг.


Ключевые слова

система обыкновенных дифференциальных уравнений, компенсированное суммирование, алгоритм Гилла — Мёллера, методы Рунге — Кутты

Похожие статьи

Имитационное моделирование квантового алгоритма решения...

Целью статьи является ознакомление с квантовым алгоритмом решения систем линейных алгебраических уравнений (СЛАУ) и программой для его моделирования на ЭВМ с помощью программы MATLAB. В работе представлен код программы модели и результат её работы.

Моделирование адаптивного компенсатора радиопомех на основе...

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

Расчет собственных колебаний вант методом явного...

В настоящее время очень стремительно развиваются методы расчета на устойчивость, а также деформационные, динамические и аэродинамические расчёты, имеющие особо важное значение для вантовых и висячих мостов...

Решение многокритериальных задач линейного программирования...

Алгоритм основан на встроенной функции MatLab для решения задач линейного программирования — linprog.

Таким образом, в среде программирования MatLab (R2015b) был разработан алгоритм, позволяющий решать задачи многокритериального линейного...

Моделирование квантового алгоритма Гровера для поиска...

Целью статьи является ознакомление с разработанной имитационной моделью алгоритма Гровера в прикладной программе MATLAB, а также с результатами его работы, которые представлены в виде вычислений и графиков.

Моделирование алгоритма работы бесплатформенной...

В представленной работе проведено моделирование в среде MATLAB/Simulink, в результате которого получены параметры ориентации и навигации. Проведен сравнительный анализ с данными встроенного вычислителя БИНС.

Восстановление простых линейных и итерационных функций...

В данной статье рассматривается метод восстановления простых функций, сохраненных в виде p-файлов, средствами MATLAB. В качестве основного инструмента используется встроенный отладчик и функция dbstop.

Построение логических схем с использованием Matlab/Simulink...

Для автоматического управления различными технологическими процессами, рабочими механизмами и машинами используются логические системы управления, которые состоят из логических элементов.

Одномерная оптимизация методом Пауэлла и онлайн-реализация...

В работе изложен алгоритм одного из методов одномерной оптимизации, который называется квадратичная интерполяция или метод Пауэлла. Представлен и подробно описан код на языке php...

Моделирование систем с использованием блока чистого...

Рассмотрены особенности моделирования систем с использованием блока чистого запаздывания. Выявлены случаи некорректной работы блока, при времени запаздывания равном нулю. Приведены способы устранения некорректной работы блока. Приведены варианты...

Похожие статьи

Имитационное моделирование квантового алгоритма решения...

Целью статьи является ознакомление с квантовым алгоритмом решения систем линейных алгебраических уравнений (СЛАУ) и программой для его моделирования на ЭВМ с помощью программы MATLAB. В работе представлен код программы модели и результат её работы.

Моделирование адаптивного компенсатора радиопомех на основе...

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

Расчет собственных колебаний вант методом явного...

В настоящее время очень стремительно развиваются методы расчета на устойчивость, а также деформационные, динамические и аэродинамические расчёты, имеющие особо важное значение для вантовых и висячих мостов...

Решение многокритериальных задач линейного программирования...

Алгоритм основан на встроенной функции MatLab для решения задач линейного программирования — linprog.

Таким образом, в среде программирования MatLab (R2015b) был разработан алгоритм, позволяющий решать задачи многокритериального линейного...

Моделирование квантового алгоритма Гровера для поиска...

Целью статьи является ознакомление с разработанной имитационной моделью алгоритма Гровера в прикладной программе MATLAB, а также с результатами его работы, которые представлены в виде вычислений и графиков.

Моделирование алгоритма работы бесплатформенной...

В представленной работе проведено моделирование в среде MATLAB/Simulink, в результате которого получены параметры ориентации и навигации. Проведен сравнительный анализ с данными встроенного вычислителя БИНС.

Восстановление простых линейных и итерационных функций...

В данной статье рассматривается метод восстановления простых функций, сохраненных в виде p-файлов, средствами MATLAB. В качестве основного инструмента используется встроенный отладчик и функция dbstop.

Построение логических схем с использованием Matlab/Simulink...

Для автоматического управления различными технологическими процессами, рабочими механизмами и машинами используются логические системы управления, которые состоят из логических элементов.

Одномерная оптимизация методом Пауэлла и онлайн-реализация...

В работе изложен алгоритм одного из методов одномерной оптимизации, который называется квадратичная интерполяция или метод Пауэлла. Представлен и подробно описан код на языке php...

Моделирование систем с использованием блока чистого...

Рассмотрены особенности моделирования систем с использованием блока чистого запаздывания. Выявлены случаи некорректной работы блока, при времени запаздывания равном нулю. Приведены способы устранения некорректной работы блока. Приведены варианты...

Задать вопрос