Хайрер ваннер решение обыкновенных дифференциальных уравнений

Решение обыкновенных дифференциальных уравнений, Нежесткие задачи, Хайрер Э., Нёрсетт С., Ваннер Г., 1990

Решение обыкновенных дифференциальных уравнений, Нежесткие задачи, Хайрер Э., Нёрсетт С., Ваннер Г., 1990.

Книга известных математиков (Швейцария, Норвегия), дающая картину современного состояния теории и практики численного решения обыкновенных дифференциальных уравнений. Изложены основные теоретические результаты, приведены наиболее употребительные численные методы, дано большое число примеров практических применений в физике и прикладных науках. Представлены тексты программ на Фортране.
Для математиков-прикладников и всех, кто в своей работе встречается с решением дифференциальных уравнений, для аспирантов и студентов вузов.

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

Глава начинается с изложения теории методов Рунге—Кутты, включая вывод (с помощью помеченных деревьев) условий, определяющих порядок аппроксимации, оценки погрешностей, доказательства сходимости, вопросы программной реализации, методы высших порядков. В разд. II.7 вводятся неявные методы Рунге— Кутты. Им будет уделено больше внимания во втором томе, посвященном жестким дифференциальным уравнениям. Следующие несколько разделов посвящены элегантной идее экстраполяции (Ричардсон, Ромберг и др.) и ее использованию для построения программ, интегрирующих с высоким порядком точности. Затем рассматривается алгебраическая теория композиции методов, на основании которой- в дальнейших главах будут изучены свойства порядка аппроксимации для многих общих классов методов. Глава заканчивается специальными методами для дифференциальных уравнений второго порядка у» = f (х, у) и для дифференциальных уравнений с запаздывающим аргументом.

Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу Решение обыкновенных дифференциальных уравнений, Нежесткие задачи, Хайрер Э., Нёрсетт С., Ваннер Г., 1990 — fileskachat.com, быстрое и бесплатное скачивание.

Скачать djvu
Ниже можно купить эту книгу по лучшей цене со скидкой с доставкой по всей России. Купить эту книгу

Решение обыкновенных дифференциальных уравнений, Жесткие и дифференциально — алгебраические задачи, Хайрер Э., Ваннер Г., 1999

Решение обыкновенных дифференциальных уравнений, Жесткие и дифференциально — алгебраические задачи, Хайрер Э., Ваннер Г., 1999.

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

В книге можно найти описание практически всех методов, используемых при расчётах переходных процессов в электроэнергетике. Но с одной оговоркой: не стала предметом пристального обсуждения специфика методов решения очень больших систем уравнений (тысячи и десятки тысяч).

От редактора перевода.
Из предисловия к первому изданию .
Предисловие ко второму изданию .
Предисловие к русскому изданию .
Глава IV. Жесткие задачи — одношаговые методы
IV.1. Примеры жестких уравнений
Системы, описывающие химические реакции .
Электрические схемы .
Диффузия
«Жесткий» стержень.
Высокочастотные колебания .
Упражнения
IV.2. Анализ устойчивости для явных методов Рунге—Кутты.
Анализ устойчивости для метода Эйлера
Явные методы Рунге—Кутты .
Экстраполяционные методы
Анализ примеров из IV. 1 .
Автоматическое обнаружение жесткости .
Устойчивость управления длиной шага .
ПИ-управление длиной шага.,
Стабилизированные явные методы Рунге—Кутты
Упражнения ,
IV.3. Функция устойчивости неявных методов Рунге—Кутты
Функция устойчивости
А -устойчивость.
L -устойчивость и Л (а)-устойчивость .
Численные результаты
Функции устойчивости порядка
Аппроксимации Паде для показательной функции .
Упражнения .
IV.4. Порядковые звезды
Введение.
Порядок и устойчивость для рациональных аппроксимаций
Устойчивость аппроксимаций Паде.
Сравнение областей устойчивости .
Рациональные аппроксимации с вещественными полюсами
«Сэндвич» с вещественными полюсами .
Аппроксимации с кратным вещественным полюсом
Упражнения .
IV.5. Конструирование неявных методов Рунге—Кутты.
Гауссовы методы .
Методы Радо !А и Радо НА
Методы Лобатто IIIA, IIIB и ШС
W -преобразование .
Конструирование неявных методов Рунге—Кутты .
Функция устойчивости .
Положительные функции
Упражнения
IV.6. Диагонально неявные методы Рунге—Кутты
Условия порядка .
Жестко точные методы ОДНРК .
Функция устойчивости .
Аппроксимации с кратным вещественным полюсом
ис Л(оо)=0
Выбор метода.
Упражнения
IV.7. Методы типа Роэенброха
Вывод метода.
Условия порядка .
Функция устойчивости .
Конструирование методов 4-го порядка
Методы высших порядков
Реализация методов типа Розенброка
«Горб»
Методы с неточной матрицей Якоби (VK-методы)
Упражнения
IV.8. Реализация неявных методов Рунге—Кутты.
Иная запись нелинейной системы
Упрощенные итерации Ньютона
Линейная система
Выбор длины шага
Неявные дифференциальные уравнения .
Программа ОДНРК .
Методы ОНРК
Упражнения
IV.9. Экстраполяционные методы.
Экстраполяция симметричных методов .
Сглаживание
Линейно неявное правило средней точки.
Неявный и линейно неявный метод Эйлера.
Реализация
Упражнения .
IV.10. Численные эксперименты
Использованные программы.
Двенадцать задач-тестов
Обсуждение результатов
Разделение и проекционные методы.
Упражнения .
IV.11. Контрактивность для линейных задач
Евклидовы нормы (теорема 4>он Неймана)
Функция роста погрешности для линейных задач .
Малые нелинейные возмущения.
Контрактивность в нормах
Исследование порогового коэффициента ,
Абсолютно монотонные функции
Упражнения .
IV.12. В устойчивость и контрактивность .
Одностороннее условие Липшица
В -устойчивость и алгебраическая устойчивость
Некоторые алгебраически устойчивые НРК методы .
А N -устойчивость
Приводимые методы Рунге—Кутты
Теорема об эквивалентности для S-неприводимых методов .
Функция роста погрешности.
Вычисление Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу Решение обыкновенных дифференциальных уравнений, Жесткие и дифференциально — алгебраические задачи, Хайрер Э., Ваннер Г., 1999 — fileskachat.com, быстрое и бесплатное скачивание.

Скачать djvu
Ниже можно купить эту книгу по лучшей цене со скидкой с доставкой по всей России. Купить эту книгу

Привлекательные аттракторы, тропические циклоны, смертельные эпидемии: мир динамических систем

Древняя история

Давным-давно, очень много лет назад в букинистическом магазине я купил книгу П.Грогоно «Программирование на языке Паскаль». У меня математическое образование, а для обучения программированию (которое не было основным предметом) у нас использовался язык ALGOL-68, поэтому Паскаль, будучи алголоподобным языком, был для меня относительно простым и понятным. Практически использовать эту книжку мне довелось на одном из первых мест работы, когда понадобилось создать систему аппроксимации одномерных кривых по Методу Наименьших Квадратов (МНК). Среди прочих нужна была возможность представления аппроксимирующих кривых в виде линейной комбинации произвольных базисных функций. Одним из примеров в книге Грогоно была программа, реализующая простой калькулятор, на вход которого подавалась строка, содержавшая выражение из чисел, знаков операций и скобок, а на выходе было числовое значение этого выражения:

На основе этой программы я написал интерпретатор выражений (формул), который позволял использовать в выражении простые переменные, типа X или Y, а также элементарные функции вроде SIN(X). Задав значения переменных и имея синтаксически правильную формулу в виде строки, можно было вычислить числовое значение этой формулы. Сама система позволяла задать набор базисных функций типа или , построить по нему МНК-аппроксимацию, а затем вывести результаты (точки исходной кривой и аппроксимацию) в виде графиков. Все это было написано на Паскале для компьютеров ДВК.

Следующим событием была покупка книги «Решение обыкновенных дифференциальных уравнений: нежесткие задачи», авторы: Хайрер Э., Нёрсетт С., Ваннер Г., посвященной численным методам решения систем Обыкновенных Дифференциальных Уравнений (ОДУ). Среди прочего в книге приводились программы на языке FORTRAN, реализующие различные методы интегрирования систем ОДУ. Итак, к тому моменту у меня был работающий интерпретатор формул, готовые отлаженные программы для интегрирования ОДУ и некоторые навыки программирования графики. После беглого прочтения книги мне пришла в голову мысль: а нельзя ли все это объединить и написать программу, которая позволит быстро задать уравнения системы и начальные условия, а потом получить наглядное решение в виде графиков? Такие системы тогда уже существовали (мне был известен PHASER), но было интересно попробовать, как это получится у меня. Интерпретатор формул для решения такой задачи не годился, поскольку при численном интегрировании системы ОДУ требуется очень много вычислений правой части, а интерпретатор для каждого вычисления должен проделать небыстрый синтаксический разбор («парсинг») выражения. Пришлось превратить интерпретатор в компилятор формул, он преобразовывал формулу во внутреннее представление, которое затем могло использоваться множество раз при вычислениях. Для построения графиков, а также любых зависимостей от решения (вроде фазовой траектории) использовались интерполирующие сплайны. Все это писалось уже на Турбо Паскале для PC AT 286 (программу для интегрирования систем ОДУ из книги Хайрера и других я перевел на Паскаль с FORTRANA’a) и не сразу, но заработало.

Изменения, дополнения, усовершенствования

Занимаясь на своей основной работе совсем другими задачами, я время от времени возвращался к этой программе, и она дожила до нынешних дней, превратившись в Windows-приложение для исследования динамических систем с непрерывным временем, которые можно описать системой ОДУ. Когда-то я назвал его DEREK, в этом имени мне чудилось нечто от как бы производной (derivative) и от уравнения (equation). Среди прочего пришлось усовершенствовать компилятор формул, добавив к нему возможность аналитического дифференцирования выражений (для вычисления якобиана системы, он используется при численном интегрировании жестких систем, а также для вычисления показателей Ляпунова). Еще удалось добавить возможность просмотра трехмерных фазовых траекторий при помощи их вращения, приближения и удаления. Понадобилось также включить реализацию отдельного численного метода для решения жестких систем ОДУ (взята из книги Хайрера и соавторов о жестких системах).

Особое внимание я старался уделять обработке ошибок, чтобы при различных случаях переполнения и деления на 0, которые вполне могут встретиться при попытках решения совершенно произвольных систем, программа не прекращала выполнения и не выдавала непонятных сообщений (вроде «Runtime error 203 at address 04BF»), чтобы сообщения были краткими, но понятными, и чтобы после ошибки можно было бы продолжать работу с программой.

Динамические системы повсюду

С помощью динамических систем можно построить модели самых разнообразных явлений, происходящих в природе и в человеческом обществе. Если для какого-либо процесса можно указать зависимость между скоростью изменения характеризующих его величин и самими этими величинами — значит, можно записать систему обыкновенных дифференциальных уравнений, решение (интегрирование) которой позволит понять и предсказать развитие этого процесса.

где независимая переменная, — зависимые переменные, — параметры (константы) системы, — производная от

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

Окно базы данных динамических систем

Одновременно с усовершенствованием программы я собирал, так сказать, коллекцию интересных динамических систем. К настоящему моменту DEREK содержит большое количество (думаю, что большее, чем какая бы то ни было аналогичная программа) примеров реальных динамических систем из механики, физики, химии, биологии и прочих областей человеческого знания (есть и модель для эпидемии COVID-19). Многие примеры снабжены ссылками на ресурсы в Интернет, которые включают в себя подробные описания систем, историю их исследования и прочее.
Большинство из систем, включенных в базу данных DEREK’а, являются нелинейными, значительное их количество демонстрирует хаотическое поведение, многие при определенных условиях обладают странными аттракторами. Аттрактор — это притягивающее множество динамической системы, к которому система приближается с течением времени. Аттракторы могут быть простыми (например, если система постепенно приходит в состояние покоя, её аттрактор — это просто точка пространства всех возможных состояний системы), а могут быть устроены весьма сложно и странно. Изображения некоторых аттракторов могут по-настоящему завораживать.

Современное состояние

Что же система умеет сейчас? DEREK позволяет:

задать описание системы в виде совокупности дифференциальных уравнений (не более 25-ти), начальных условий, а также параметров, входящих в уравнения (не более 30-ти)

найти ошибки в описании системы, точно указав место и суть ошибки

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

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

исследовать трехмерное изображение фазовой траектории. DEREK умеет вращать трехмерную фазовую траекторию, а также приближать и удалять её.

Редактирование описания динамической системы

DEREK также включает в себя некоторые специальные методы для анализа динамических систем:

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

построение «сечений Пуанкаре» — множества точек пересечения траектории системы с заданной плоскостью. Сечения Пуанкаре позволяют лучше понять характер движения

вычисление «показателей Ляпунова» — наборов чисел, характеризующих поведение динамической системы при бесконечной эволюции и не зависящих от начальных условий. DEREK умеет также строить график зависимости показателей Ляпунова от параметра системы. Для нелинейных систем не менее чем третьего порядка наличие положительного показателя Ляпунова при условии отрицательности суммы всех показателей означает, что система ведёт себя хаотически

Показатели Ляпунова для различных динамических систем, зависимость от параметра

Есть у DEREK’а и в каком-то смысле побочные возможности, которые, тем не менее, полезны при работе с динамическими системами:

построение графиков кривых, заданных параметрически, двумерных и трехмерных

построение графиков двумерных точечных кривых, заданных набором точек

реконструкция систем ОДУ — построение системы дифференциальных уравнений, решением которой является одна или нескольких заданных зависимостей каких-либо величин от времени («временной ряд»)

решение краевых задач (только для систем второго порядка)

Необычная черта DEREK’а — его способность обращаться с набором известных ему динамических систем как с базой данных — позволяет осуществлять поиск систем по заданной совокупности сложных критериев. При этом можно получать ответы на запросы, подобные следующим: «выбрать системы не менее чем третьего порядка и притом неавтономные» или «выбрать системы, которые модифицировались после 1 марта 2015 г., правые части которых — полиномы не более чем второго порядка от переменных системы» или даже: «выбрать системы, описываемые уравнением Штурма-Лиувилля».

Кому это может быть нужно?

Систем такого типа существует немало (PHASER, Dynamics Solver Хуана Агиррегабириа, XPP Барда Эрментраута). По сравнению с ними DEREK по-настоящему прост и нагляден. Если представить себе исследователей, которые не являются физиками, математиками или программистами, но которым нужно решать системы ОДУ (например, сейчас это могут быть химики или биологи), не особенно вдаваясь в подробности численных методов — DEREK может пригодиться. MATLAB решит подобную задачу хорошо и качественно, возможностей у него намного больше, но с помощью DEREK’а результат будет получен быстрее и будет более наглядным. Скорее всего, это не инструмент для ученых, но вот для студентов и даже школьников его использование может иметь смысл. Теория хаоса, странные аттракторы, теория колебаний, применение динамических систем в биологии, химии или метеорологии — DEREK подойдет для практических занятий по таким учебным курсам.

DEREK — некоммерческий проект, большинство его функций работает в демонстрационной версии.

Его недостатки — прежде всего достаточно архаичная и достаточно медленная графика, особенно это заметно при просмотре трехмерных фазовых траекторий. Также — жестко зафиксированные имена переменных: независимая переменная — это всегда X, зависимые переменные — всегда Y1, Y2 … Y25, константы (параметры) системы — всегда C1, C2 … и т.д.

Последняя версия DEREK’а написана на Free Pascal и Lazarus. Для построения обычных и анимированных изображений динамических систем помимо DEREK’а я использую также XnView, Wink, GifMaker.

Примеры

Модель Эно-Эйлеса, квазипериодическое движение

При данном значении параметра система демонстрирует квазипериодическое поведение (на это указывают точки сечения Пуанкаре, располагающиеся на двух замкнутых кривых)

Модель Эно-Эйлеса, хаотическое движение

Это значение параметра системы соответствует хаотическому поведению (точки сечения Пуанкаре заполняют некоторую область на плоскости)

Другие анимированные изображения

Описание модели взято из статьи: Etienne Cheynet, Generalized SEIR Epidemic Model (fitting and computation). В статье анализируется эпидемия коронавируса COVID-19 в различных регионах планеты. На рисунке показана анимация с параметрами, примерно соответствующими Италии. Модель представляет собой систему из шести дифференциальных уравнений.

Модель тропического циклона

Траектория подвергнута вращению, чтобы ​можно было её рассмотреть получше

Фазовые траектории и положения равновесия

На анимации представлены траектории двух динамических систем, положения равновесия которых образуют пространственные кривые, лежащие в одной плоскости (парабола в одном случае и окружность в другом). Системы описаны в статьях:
Jiri Petrzela and Tomas Gotthans, New Chaotic Dynamical System with a Conic-Shaped Equilibrium Located on the Plane Structure
Jiri Petrzela, Tomas Gotthans, Milan Guzan, Current-Mode Network Structures Dedicated for Simulation of Dynamical Systems with Plane Continuum of Equilibrium

Изображения, созданные с помощью DEREK’а, принимали участие ( и не просто принимали участие, а иногда и побеждали) в конкурсах научной фотографии, проводимых фондом Wikimedia в Украине (в разделе «Нефотографические изображения»). Вот изображение, победившее в 2015 году.

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

Ссылки

PHASER — универсальный симулятор для изучения динамических систем

Dynamics Solver — мощный инструмент изучения нелинейных динамических систем (автор-Хуан Агиррегабириа)

XPP — средство для исследования динамических систем (автор-Бард Эрментраут)

XnView — программа для просмотра и обработки изображений

Wink — приложение для создания презентаций и Flash-роликов

GifMaker — средство для создания GIF-анимаций онлайн


источники:

http://nashol.me/2013071972519/reshenie-obiknovennih-differencialnih-uravnenii-jestkie-i-differencialno-algebraicheskie-zadachi-hairer-e-vanner-g-1999.html

http://habr.com/ru/post/546540/