![]() |
mech_optimiz
4.4.1
microkinetic mechanism investigation tool
|
На данной странице описаны подходы, внедренные в mech_optimiz
Термодинамическая непротиворечивость кинетических параметров в mech_optimiz обеспечивается одним из двух способов:
Алгоритм 1 мы будем называть dGalg, поскольку он опирается на согласование стандартной энергии Гиббса реакций.
Алгоритм 2 мы будем называть dHdSalg, поскольку он опирается на непротиворечивость стандартных энтропии реакции и изменения энтальпии в ходе реакции.
Суть методов (1) и (2) заключается в следующем. Сначала ищутся коэффициенты полиномов, описывающих термодинамические свойства (стандартные энтропию и изменение энтальпии) поверхностных интермедиатов, которые дают наилучшие (применяется метод наименьших квадратов) - по совпадению с вычисленными с помощью кинетических параметров - зависимости стандартной энергии Гиббса реакции (или, одновременно, стандартных энтропии реакции и изменения энтальпии в случае метода (2)).
Итак, с одной стороны вычисляется изменение термодинамического свойства в ходе реакции через характеристики частиц-участников, с другой стороны, это изменение вычисляется через связь с кинетическими параметрами (в случае (1) - через связь константы равновесия и энергии Гиббса реакции, в случае (2) дополнительное привлекается соотношение теории переходного состояния о взаимосвязи стандартной энтальпии реакции и энергий активации прямой и обратной стадии). При этом выполняется поиск оптимальных коэффициенты полиномов для описания свойств неизвестных веществ.
Выбор алгоритма (dGAlg / dHdSalg) производится пользователем с помощью третьего параметра третьей строки файла настроек процедуры термодинамического согласования (по умолчанию - mech-tc.txt). Подробнее - см. стр. [Использование mech_optimiz](usage), раздел "Синтаксис файла с параметрами алгоритма обеспечения термодинамической непротиворечивости".
Когда же оптимальные коэффициенты найдены, оставшееся рассогласование минимизируется путем изменения кинетических параметров обратных стадий (разделение на прямые и обратные стадии для обратимых реакций происходит произвольно или в соответствии с анализом чувствительности/идентифицируемости - выбираются наименее важные стадии). То есть уже кинетика "подгоняется" под термодинамику, определенную на первой стадии алгоритма. Подробнее о применяемых в этом случаях алгоритмах - см. ниже.
Результаты применения алгоритма термодинамической непротиворечивости (невязки по каждой реакции) записываются непосредственно в файл с кинетическим механизмом.
Процедура термодинамического согласования (мы обозначаем ее здесь и в других местах английскими буквами "TC") повторяется несколько раз, до тех пор, пока не будет выполнено заданное число итераций согласования, или очередная итерация не улучшит общую оценку непротиворечивости (суммарное рассогласование не снизится). По умолчанию производится 3 итерации согласования. Число итераций может быть задано в файле настроек термодинамической непротиворечивости (строка 2, параметр 3, опциональный).
Значения рассогласования по стандартному изменению энергии Гиббса (алгоритм dGAlg), или, в случае алгоритма dHdSAlg, (стандартному изменению энтальпии + температура * стандартной энтропии реакции) по всем реакциям суммируются и образуют оценку термодинамической непротиворечивости.
Файлы с оцененной величиной термодинамической рассогласованности на каждой итерации (после вычисления коэффициентов термодинамических полиномов) получают имя "имя_файла_кинетического_механизма_данной_хромосомы.inp-номер-итерации-tc". Эти файлы содержат насколько возможно термодинамически согласованные наборы параметров (inp-формат).
После модификации кинетических параметров обратных стадий имя генерируемого файла "имя_файла_кинетического_механизма_данной_хромосомы.inp-номер-итерации". После окончания нескольких итераций, исходный файл "имя_файла_кинетического_механизма_данной_хромосомы.inp" заменяется наилучшим согласованным вариантом механизма "имя_файла_кинетического_механизма_данной_хромосомы.inp-номер-лучшей-итерации-tc".
При поиске кинетических параметров обратных стадий можно брать в качестве критерия минимальное рассогласование по типу (1) (сумма квадратов рассогласований по изменению энергии Гиббса) или (2) (сумма квадратов рассогласований по изменению энтальпии + температура * сумма квадратов рассогласований по энтропии реакции).
При использовании любого алгоритма (dGAlg / dHdSalg) при подборе коэффициентов термодинамических полиномов, пользователь получает возможность подбора кинетических параметров обратных стадий не только через минимизацию соответствующего типу алгоритма рассогласования, но и двумя другими способами, а также их комбинацией.
В файле mech-tc.txt за выбор типа алгоритма отвечают 4 и 5 параметр (опциональные) в третьей строке. Подробнее см. стр. [Использование mech_optimiz](usage), раздел "Синтаксис файла
с параметрами алгоритма обеспечения термодинамической непротиворечивости".
Алгоритмы поиска кинетических параметров обратных стадий.
Существует два основных алгоритма модификации кинетических параметров обратных стадий: dHdS и dG. Первый алгоритм логичнее применять, когда коэффициенты полиномов NASA \(a_{li}\) для веществ с неизвестными \(\delta H(T)\), \(\delta S(T)\) находились путем минимизация рассогласования между \(\delta H(T)\) и \(\delta S(T)\) для каждой стадии, полученных через кинетические параметры и через свойства индивидуальных частиц, записанные в формате полиномов NASA с 7 коэффициентами. Второй - когда минимизировалось только общее рассогласование по изменению энергии Гиббса. Тем не менее, мы предоставляем пользователю возможность выбора алгоритма, поскольку их работа на одной задаче приводит к близким по уровню рассогласования результатам, но скорость их может отличаться.
Алгоритм dHdS использует точные формулы, полученные с помощью метода наименьших квадратов, для поиска параметров A, E. Таким образом, он однозначно является самым быстрым алгоритмом поиском параметров обратных стадий. Однако текущая имплементация не позволяет выполнять поиск параметра \(\beta\): он
Алгоритм dG использует метод Ньютона, который выполняет итерационный поиск, и, соответственно, время решения у алгоритма больше, чем у первого. Метод Ньютона здесь применяется для решения система нелинейных уравнений относительно неизвестных кинетических параметров. Метод иногда расходится (несмотря на то, что его текущая реализация предусматривает несколько повторов с выбором начального приближения и изменением величины шага), и тогда нужно применять более мощный метод.
В качестве замены методу Ньютона применяется бинарный генетический алгоритм со сжимающимися границами, способный найти решение с высокой точностью. Сжатие границ означает сужение диапазона поиска и повышение разрешающей способности.
Причина использования бинарного ГА - принцип переиспользования кода - один и тот же ГА используется как для подбора кинетических параметров, так и для поиска параметров обратных стадий при термодинамическом согласовании параметров. Заметим, что для этого запускается вложенная подпрограмма основного модуля оптимизации, которому на вход, как обычно подается файл с настройками (каждый раз) и save-файл (со второго этапа, то есть, первого "сжатия границ"). В файле настроек вместо типа задачи RKP указывается THERMCONAE. Эти файлы программа создает сама в автоматическом режиме.
Необходимо заметить, что генетический алгоритм высокого разрешения (локальный поиск) требует большего количества итераций/вычислений, и скорость работы по сравнению с методом Ньютона ниже в сотни раз. Скорость работы программы на современном четырехъядерном компьютере (Intel Core i7) составляет примерно 400 итераций ГА поиска кинетических параметров в час для поиска 30 кинетических параметров, 350 итераций в час - при использовании алгоритма TC dHdSalg + dHdS. При использовании вместо dHdS алгоритма dG только с методом Ньютона скорость падает до 200 итераций в час, а при использовании dG-ГА - до 50-70 итераций в час. \Следует заметить и то, что метод ГА гарантированно находит оптимальное решение подбора кинетических параметров (в том числе - параметра \(\beta\)) обратных стадий, при этом строго соблюдая границы поиска.
О выборе алгоритма - см. Синтаксис файла с параметрами алгоритма обеспечения термодинамической непротиворечивости (синтаксис третьей строки файла).