Диссертация (1145311), страница 32
Текст из файла (страница 32)
4.8. Кривая F (x, y) = 0, построенная с помощью метода Эйлера, и аналитическая кривая.которой оптимальным будет один шаг. Сделав его, найдем максимально точноезначение решения в новой точке. Поскольку нас интересуют только координаты (x, y) точек кривой F (x, y) = 0 на плоскости, то учитывать значение t ненужно. С учетом того, что изначально матрица системы была поделена на 108 ,оптимальное число шагов метода Эйлера получается достаточно большим длятого, чтобы иметь возможность воспользоваться теоремами 69 и 70.Точки интегрирования были взяты приближенно как решения уравненияx-0.02-0.331.127y 0.4795402 -0.008404 -0.150444Таблица 4.4.
Начальные данные, использованные для построения кривой.234Рис. 4.9. Кривая F (x, y) = 0, полученная интегрированием методом Эйлера с большим количеством шагов, и аналитическая кривая.F (x, y) = 0, при этом они выбирались так, чтобы получить все части кривой.Также система (4.40) была проинтегрирована с использованием второго варианта алгоритма с большим количеством шагов (порядка 3000000 шагов) дляначальных данных (0, 0.5). Результат интегрирования представлен на рис. 4.9,где приведена и аналитическая кривая, выделенная более жирно. Первый вариант использования алгоритма в этом случае дает только часть кривой, расположенную слева (заканчивая точкой второго ее пересечения с осью абсцисс), ноэта дуга кривой в точности совпадает с аналитической кривой на этом участке.Программа расчета написана на C++ в точности float.2354.6.
Обсуждение полученных результатовДля численного решения систем обыкновенных дифференциальных уравнений существуют и более эффективные методы, чем метод Эйлера. Однакоявный метод Эйлера широко применяется в различных симуляциях, таких какклеточные модели. Имеются также и другие примеры использования методаЭйлера (см.
[85, 179, 182]), и во многих случаях вычисления производятся встандартной процессорной арифметике с плавающей точкой. Поэтому вопросточности метода Эйлера довольно важен. Однако до сих пор, насколько известно, не было сделано попыток исследовать полную погрешность метода Эйлера,впрочем, как и других численных методов.В диссертации предлагается простой метод нахождения оптимального шага метода Эйлера. Данный подход возник в связи с экспериментами по изучению таких процессов как мембранные и синаптические токи в живых клетках(dynamic clamp experiments).
Методы интегрирования синхронизирующих переменных в режиме реального времени должны быть быстрыми. Кроме того, онидолжны быть довольно точными. И именно это требуется в реальных экспериментах, рассмотренных в диссертации.Результаты, представленные в таблицах I и II, показывают, что предложенный метод работает быстрее и является более точным, чем многие стандартныеметоды интегрирования. Он также более эффективен, чем методы, которые были предложены ранее, например, в статье [117]. К сожалению, в этой статье нетоценки погрешности полученного решения.
Однако из графиков решения, построенного с помощью различных методов решения систем ОДУ, понятно, чтоэта погрешность достаточно велика. График аналитического решения совпадает лишь с кривой, построенной в системе MATLAB с помощью метода решениянежестких систем ode45. Остальные методы системы MATLAB для жесткихсистем уравнений (ode15s, ode23t, ode23tb, ode23s) и два метода, предложенные в статье [117] (ограниченный и неограниченный) дают решения, которые236отличается от аналитического решения. Более того, время вычислений для методов системы MATLAB и методов из статьи [117], больше. Метод Розенброкатакже работает медленнее.
Метод Эйлера с постоянным шагом является самымбыстрым, но он же и самый неточный. В примерах 1 и 2 решения, полученныепредложенным в диссертации методом, совпадает с наиболее точными решенями, полученными другими методами.Пример 3 показывает, что предложенный метод может быть использовандля интегрирования систем ОДУ с разрывными правыми частями. Однако, насколько его можно использовать для таких систем, пока непонятно. Данныйвопрос требует дальнейшего изучения.Получены некоторые важные результаты, касающиеся применения методаЭйлера при вычислениях в стандартной арифметике с плавающей точкой:1.
Получен оптимальный шаг метода Эйлера, который гарантирует, чторезультат вычислений дает наиболее точное решение. Если имеются некоторыеограничения на выбор шага интегрирования, то этот шаг должен быть выбранмаксимально близким к оптимальному, но не меньше его. Для оптимальногошага интегрирования ошибка дискретизации совпадает с ошибками округления.2.
Вычислительная точность для оптимального шага интегрирования достаточно велика даже для жестких систем, имеется возможность решать системы уравнений, состоящие из большого числа уравнений.3. Предложен простой метод нахождения оптимального шага интегрирования.В дальнейшем, возможно, имеет смысл рассмотреть другие подходы к интегрированию систем. В статье [62] показано, что квадратурная форма методаЭйлера по крайней мере в некоторых случаях дает более точный результат.Было бы полезно оценить полную погрешность данной модификации методаЭйлера.Также было бы полезно оценить полную погрешность (с учетом ошибококругления) и других численных методов.
Начало данной оценке положено, по-237лучен результат для самого простого метода численного интегрирования системОДУ — метода Эйлера.Вопрос о том, насколько имеет смысл использовать методы интегрирования более высоких порядков в режиме реального времени совместно с экспериментом, остается открытым. Важно, что такие методы требует гораздо большихвычислительных мощностей.238ЗаключениеВ диссертации предложен подход к анализу сложных систем, базирующийся на использовании алгебраических методов: теории исключения (для системнелинейных уравнений относительно двух и нескольких переменных), методаЭрмита отделения решений систем алгебраических уравнений, использующийтеорию ганкелевых квадратичных форм, алгебаической теории графов, а также методов теории дифференцируемых отображений и оценки вычислительнойпогрешности в арифметике с плавающей точкой.В диссертации получены следующие результаты:1. В обобщение критерия Рауса устойчивости полинома разработан алгоритм проверки нахождения всех корней семейства вещественных полиномов скоэффициентами, полиномиально зависящими от параметров, в произвольнойалгебраической области комплексной плоскости.2.
Построен алгоритм нахождения общих собственных чисел двух матрицс комплексными элементами, заключающийся в построении полинома, корнямикоторого являются искомые собственные числа.3. Предложен алгоритм нахождения максимального порядка клетки Жордана и собственных чисел, которым соответствуют клетки Жордана максимального порядка для матрицы с комплексными элементами.4. Создан новый алгоритм нахождения значений параметра, при которыхматрица с элементами, линейно зависящими от этого параметра, имеет кратныесобственные числа.5.
Предложен новый матричный алгоритм распознавания реберного графаи построения его корневого графа.6. Разработан эффективный алгоритм численного интегрирования системОДУ, позволяющий получить максимально точное решение задачи Коши варифметике с плавающей точкой.Предложенные алгоритмы позволяют упростить анализ свойств сложных239систем в зависимости от параметров, повысить достоверность точность выполняемых расчетов и сократить время вычислений. Простота и вычислительнаяэффективность предложенных алгоритмов позволяют в ряде случаев применять их для имитационного моделирования сложных систем в режиме реального времени.240Список литературы1.
Арнольд, В. И., Варченко, А. Н., Гусейн-Заде, С. М. Особенности дифференцируемых отображений. Том 1 / В. И. Арнольд. — М.: МЦНМО, 2009.— 672 с.2. Барбашин, Е.А. Функции Ляпунова / Е. А. Барбашин. — М.: Наука, 1970.— 240 с.3. Бахвалов, Н. С., Жидков, Н. П., Кобельков, Г. М.
Численные методы / Н.С. Бахвалов. — М.: Издательство «Бином. Лаборатория знаний», 2008. —640 с.4. Бохер, М. Введение в высшую алгебру / М. Бохер. — М.: УРСС, 2008. —292 с.5. Вольперт, А. И. Дифференциальные уравнения на графах / А. И. Вольперт // Матем. сб. — 1972. — Т.