Определение жесткой системы ОДУ

17

Рассмотрим IVP для системы ODE , . Чаще всего эта проблема считается жесткой, когда матрица Якоби имеет как собственные значения с очень большой отрицательной вещественной частью, так и собственные значения с очень маленькой отрицательной вещественной частью (я рассматриваю только стабильную кейс).y ( x 0 ) = y 0 fy=f(x,y)y(x0)=y0еY(Икс0,Y0)

С другой стороны, в случае только одного уравнения, например уравнения Протеро-Робинсона , оно называется жестким, когда .λ - 1Y'знак равноλY+грамм'+λграммλ«-1

Итак, есть два вопроса:

  1. Почему небольшие собственные значения включены в определение жесткости для систем ODE? Я считаю, что для жесткости системы вполне достаточно присутствия только очень больших отрицательных реальных частей, потому что это заставляет нас использовать небольшие временные шаги для явных методов.

  2. Да, я знаю, что наиболее распространенные жесткие проблемы (например, возникающие из параболических PDE) имеют как большие, так и малые собственные значения. Итак, второй вопрос: есть ли хороший естественный пример большой жесткой системы без очень малых собственных значений (или, альтернативно, с мягким отношением )?λМаксимум/λмин


Хорошо, давайте изменим вопрос. Рассмотрим две двумерные линейные системы ODE: сначала с собственными значениями {-1000000, -0.00000001}, а затем с {-1000000, -999999}. Что касается меня, они оба жесткие. Но если мы рассмотрим определение коэффициента жесткости, вторая система не является. Главный вопрос: почему коэффициент жесткости считается вообще?

И вторая часть вопроса по-прежнему важна, давайте перефразируем ее: я ищу «естественную» систему большого ОДУ с большими отрицательными собственными значениями и умеренным коэффициентом жесткости (не превышающим, скажем, 100).

faleichik
источник
2
Добро пожаловать на scicomp.se. Ответы на ваши вопросы полностью найдены в
Дэвид Кетчесон
Я думаю, что между комментарием @DavidKetcheson и несколькими источниками, которые я цитировал, вы увидите, что коэффициент жесткости является лишь ориентировочным. Это не идеально; вот почему это не в определении. Это характерно для многих, но не для всех жестких систем. А что касается второй части, я думаю, вам будет сложно ее найти, если она не имеет специальной структуры или не возникает в приложении. Я привел вам пример такого приложения, в котором коэффициент жесткости не всегда велик, и я призываю вас взглянуть на книгу Хайрера и Ваннера.
Джефф Оксберри
1
@ Дэвид: я не могу согласиться с вами. Возьмем для примера одномерную задачу y '= - 50 (y-cos x). «Собственное значение» составляет -50. Невозможно решить эту проблему с явным Эйлером с размерами шагов больше, чем 2/50. Если мы заменим -50 на -50000, ограничение по временному шагу станет 2/50000. Какие «единицы» мы можем выбрать здесь, чтобы преодолеть этот барьер?
фалейчик
2
@faleichik Часть вашего примера фиксирует временную шкалу «медленного коллектора» (которая, вероятно, является интересующей вас временной шкалой, хотя вполне возможно, что вас заинтересуют гораздо более короткие временные шкалы). Я не верю, что можно определить жесткость без выбора шкалы времени наблюдения (возможно, неявно, указав свойства, которые вы хотите сохранить в течение более длительного времени). Коэффициент жесткости только количественно определяет различие между шкалой времени между самой быстрой и самой медленной шкалами времени автономной системы. созИкс
Джед Браун
1
В этой статье есть новый, лучший ответ на этот вопрос .
Дэвид Кетчон

Ответы:

10

Жесткость предполагает некоторое разделение чешуек. В общем, если вас интересует фаза самого быстрого режима в системе, то вам нужно разрешить ее, и система не будет жесткой. Но часто вас интересует долгосрочная динамика «медленного коллектора», а не точная скорость, с которой решение из медленного коллектора приближается к нему.

Химические реакции и реагирующие потоки являются общими примерами жестких систем. Генератор Ван-дер-Поля является распространенной проблемой для интеграторов ODE, которые имеют настраиваемый параметр жесткости.

Океан - еще один пример, который, возможно, полезно визуализировать. Цунами (поверхностные гравитационные волны) распространяются со скоростью самолета и создают сложную волновую структуру, но рассеиваются в течение длительных периодов времени и в основном несущественны для долгосрочной динамики океана. Вихри, или, с другой стороны, движутся примерно в 100 раз медленнее при довольно высоких пешеходных скоростях, но вызывают смешение и перенос температуры, солености и биогеохимических индикаторов, которые имеют значение. Но та же физика, которая распространяет поверхностную гравитационную волну, также поддерживает вихрь (квазиравновесную структуру), поэтому скорость вихря, путь при Кориолисе и скорость рассеяния зависят от скорости гравитационной волны. Это дает возможность для схемы интегрирования по времени, разработанной для жестких систем, перешагнуть через шкалу времени гравитационной волны и разрешить только соответствующие динамические шкалы времени. ВидетьMousseau, Knoll и Reisner (2002) за обсуждение этой проблемы со сравнением расщепляющих и полностью неявных схем интегрирования по времени.

По теме: Когда следует использовать неявные методы в интеграции гиперболических PDE?

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

Джед браун
источник
10

Часть 1

Малые собственные значения не включены в определение жесткости для систем ОДУ (проблема начальных значений). Я не знаю удовлетворительного определения жесткости, но лучшие определения, с которыми я столкнулся:

Если численный метод с конечной областью абсолютной устойчивости, применяемый к системе с любыми начальными условиями, вынужден использовать в некотором интервале интегрирования слишком малую длину шага по отношению к гладкости точного решения в этом интервале тогда система называется жесткой в ​​этом интервале. (Lambert, JD (1992), Численные методы для обыкновенных дифференциальных систем , Нью-Йорк: Wiley.)

[0,б]

Жесткие уравнения - это уравнения, в которых определенные неявные методы, в частности BDF, работают лучше, обычно чрезвычайно лучше, чем явные. (CF Curtiss & JO Hirschfelder (1952): Интеграция жестких уравнений. PNAS, том 38, стр. 235-243)

Далее в статье Википедии о жестких уравнениях Ламберту приписываются следующие «утверждения»:

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

  2. Жесткость возникает, когда требования к стабильности, а не к точности, ограничивают длину шага. [Обратите внимание, что это «наблюдение» по существу является определением Ашера и Петцольда.]

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

У каждого из этих наблюдений есть контрпримеры (хотя по общему признанию я не мог произвести одно из головы).

Часть 2

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

Книга Хайрера и Ваннера также дает несколько других примеров в своем первом разделе (Часть IV, раздел 1), которые иллюстрируют многие другие примеры жестких уравнений. (Ваннер Г., Хайрер Э. Решение обыкновенных дифференциальных уравнений II: жесткие и дифференциально-алгебраические задачи (2002), Springer.)

Наконец, стоит отметить наблюдение CW Gear:

Несмотря на то, что является общим говорить о «жестких дифференциальных уравнениях,» уравнение сами по себе не является жестким, конкретной задачей Коши для этого уравнения может быть жесткими, в некоторых регионах, но размеры этих областей зависят от начальных значений и Погрешность (CW Gear (1982): Автоматическое обнаружение и обработка колебательных и / или жестких обыкновенных дифференциальных уравнений. В кн .: Численное интегрирование дифференциальных уравнений, Конспект лекций по математике, том 968, с. 190-206.)

Джефф Оксберри
источник
Дорогой Джефф, спасибо за терпение :-) Я хотел, чтобы мой вопрос был простым, но в конце концов он оказался неопытным. На самом деле я знаю все эти определения, но.
фалейчик
1. Небольшие собственные значения косвенно действуют в определении отношения жесткости: оно велико, когда демонинатор мал. 2. Для одномерного линейного случая коэффициент жесткости всегда один, даже для жестких уравнений. 3. Есть ли у вас рекомендации по проблеме химической кинетики, которую вы предложили? И 4. Я постараюсь уточнить вопрос в комментариях.
фалейчик
2
Вы можете найти химические механизмы в формате CHEMKIN здесь . Проблемы достаточно велики, поэтому необходимы входные файлы, а уравнения устанавливаются автоматически с использованием пакета химии. Я предлагаю использовать входные файлы вместе с пакетом химии Cantera и пакетом решений SUNDIALS для ODE / DAE , которые оба имеют открытый исходный код. Затем вы можете решить такие проблемы в C ++ или MATLAB.
Джефф Оксберри
Я лично принимаю предложение Кертисса-Хиршфельдера как мое рабочее определение жесткости; если явный РК или Адамс отнимают слишком много времени, чтобы решить вашу проблему, то это, вероятно, жестко.
JM
2

На самом деле Джед Браун прояснил вопрос для меня. То, что я делаю сейчас, просто помещает его слова в контекст.

  1. Обе двухмерные линейные системы ОДУ сверху жесткие (то есть трудно решаемые явными методами) на относительно больших временных интервалах (например, [0,1]).

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

  3. С другой стороны, интеграция систем с малым коэффициентом жесткости на больших интервалах не представляет интереса: в этом случае установившееся состояние достигается очень быстро, и мы можем просто экстраполировать его.

Спасибо всем за это обсуждение!

faleichik
источник
1

Абсолютная величина собственных значений (в линейной, автономной задаче) сама по себе не имеет никакого значения; это артефакт юнитов, в которых вы решили выразить проблему.

Цепочка комментариев выходит из-под контроля, поэтому я делаю это как ответ. Я не собираюсь отвечать на полный вопрос; как я уже сказал, см. википедию или другие ответы здесь. Я просто отвечаю на бит, который говорит

Рассмотрим две двумерные линейные системы ODE: сначала с собственными значениями {-1000000, -0.00000001}, а затем с {-1000000, -999999}. Что касается меня, они оба жесткие. Но если мы рассмотрим определение коэффициента жесткости, вторая система не является. Главный вопрос: почему коэффициент жесткости считается вообще?

Хорошо, давайте рассмотрим пример второго случая:

Y1'(T)знак равно-1000000Y1(T)
Y2'(T)знак равно-999999Y2(T)

T*знак равно1000000T

Y1'(T*)знак равно-Y1(T*)
Y2'(T*)знак равно-0.999999Y2(T*)

Примечание 1: Я выбрал диагональную систему, чтобы сделать ее совершенно очевидной, но если вы попробуете ее с другой системой с этими собственными значениями, вы увидите тот же эффект, поскольку умножение матрицы на константу умножает ее собственные значения на ту же самую константу.

|λ|»1

Дэвид Кетчесон
источник
Дэвид, ты не учел интервал интеграции. Пусть это будет [0,1] в первом случае. При условии явных ограничений стабильности Эйлера, максимально допустимый шаг составляет 2/1000000. Поэтому нам нужно сделать как минимум 500 000 шагов. Когда вы масштабируете время, максимальный размер шага увеличивается до 2, но весь интервал интеграции становится 1 000 000, и мы снова достигаем минимум 500 000 шагов.
фалейчик
@faleichik Да, теперь у тебя это есть. Жесткость имеет отношение не к абсолютной величине собственных значений, а к их размеру относительно вашей временной шкалы интереса, как отметил Джед выше.
Дэвид Кетчесон