Динамические системы > Примеры  > Модель химической кинетики 

Модель химической кинетики

Среди динамических систем имеется класс так называемых жестких (stiff) систем ОДУ, для которых стандартные методы (Рунге-Кутты и т.п.) практически неприменимы, поскольку их решение требует исключительно малого значения шага численного метода.  Исторически, интерес к жестким системам возник в середине XX века при изучении уравнений химической кинетики с одновременным присутствием очень медленно и очень быстро протекающих химических реакций. Тогда неожиданно оказалось, что, как считалось, исключительно надежные методы  стали давать сбой при расчете этих задач. Про жесткие ОДУ см. разд. ОДУ > Задачи Коши >  жесткие ОДУ.

Рассмотрим классическую модель каталитического химического взаимодействия трех веществ (Робертсон, 1966). Пусть в реакции участвуют три  вещества. Вещество "0" медленно превращается в "1": "0"-->"1" (со скоростью 0.1), вещество "1" при каталитическом воздействии самого себя превращается очень быстро в вещество "2": "1"+"1"-->"2"+"1" (103). И, наконец подобным образом (но со средней скоростью) реагируют вещества "2" и "1": "1"+"2"-->"0"+"2" (102). Система ОДУ, описывающая динамику концентрации реагентов,  приведена ниже.


Бросается в глаза сильно различающийся порядок коэффициентов при разных слагаемых. Именно степень этого различия чаще всего и определяет жесткость системы ОДУ. 

Для приведенного примера стандартным методом Рунге-Кутты все-таки удается найти решение. Однако, для этого требуется очень большое число шагов, M=20000, что делает расчеты очень медленными. Расчеты по специальным алгоритмам показывают, что для получения того же результата (см. рис. 1)  достаточно в тысячу раз меньшего количества шагов численного алгоритма, чем для стандартного метода Рунге-Кутты! Примерно во столько же раз требуется меньше компьютерного времени на проведение расчетов. Стоит ли говорить, что, если Вы имеете дело с жесткими (в той или иной степени) системами, применение этих алгоритмов просто необходимо.


Рис. 1. Решение системы ОДУ химической кинетики методом Розенброка

Важно заметить, что до сих пор мы имели дело с примером не очень жесткой системы. Попробуйте вместо скоростей упомянутых химических реакций, 0.1, 103 и 102 взять другие числа, например 0.05, 104 и 107 соответственно. Заметим, что такое соотношение скоростей часто встречается в прикладных задачах химической кинетики и определяет куда более жесткую систему ОДУ. Ее уже никак не удается решить стандартными методами, поскольку число шагов численного метода нужно брать просто гигантским. А между тем, алгоритмы для жестких ОДУ справляются с этой задачей с легкостью (рис. 2), причем практически при тех же значениях шага, что были взяты в предыдущем примере.



Рис. 2. Решение более жесткой системы ОДУ химической кинетики методом Розенброка


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


Замечание
Это еще раз доказывает, что одна и та же система ОДУ с различными коэффициентами может быть жесткой в разной степени. В частности, приведенный выше пример генератора Ван дер Поля с параметром 5000 - это уже пример жесткой задачи.