Автоматизация поиска экстремумов в пакете программ Priroda при помощи программы P-AutoExtremum: Поиск переходных состояний

УДК 544.18: 544.43: 519.688

А. Г. Шамов, Д. Л. Егоров, Г. М. Храпковский АВТОМАТИЗАЦИЯ ПОИСКА ЭКСТРЕМУМОВ В ПАКЕТЕ ПРОГРАММ PRIRODA ПРИ ПОМОЩИ ПРОГРАММЫ P-AUTOEXTREMUM: ПОИСК ПЕРЕХОДНЫХ СОСТОЯНИЙ

Ключевые слова: квантово-химический расчет, переходное состояние, Priroda.

В работе описываются особенности новой версии программы P-AutoExtremum, автоматизирующей итерационный алгоритм поиска экстремума при помощи программного пакета Priroda. Функциональность программы в новой версии существенно дополнена. Теперь в ней появилась возможность автоматизировать этап запуска спусков по координате реакции и оптимизации их результатов, что позволяет исключить участие пользователя при применении итерационного алгоритма для поиска переходных состояний. Параллельно с совершенствованием P-AutoExtremum для ОС Windows идет работа над ее адаптацией для ОС Linux, что приводит к возможности проводить расчеты более эффективно.

Keywords: quantum-chemical calculation, transition state, Priroda.

In the work describes the features of the new version of the P-AutoExtremum, automating the iterative algorithm for finding an extremum using the software package Priroda. The functionality of the program in the new version significantly expanded. Now it became possible to automate the startup step descents along the reaction coordinate and optimize their results, which eliminates user interaction with the application of an iterative algorithm for the search of transition states. In parallel with the improvement of P-AutoExtremum for Windows is working on its adaptation to the operating system Linux, which leads to the possibility to perform calculations more efficiently.

Теоретическое изучение механизмов сложных многостадийных химических реакций с применением современных квантово-химических методов связано с выполнением большого объема вычислений, и в настоящее время эта работа проводится преимущественно с использованием вычислительных кластеров различного размера [1-9]. Практика проведения подобных работ выявила необходимость автоматизации наиболее трудоемких стадий расчета, связанных с поиском переходных состояний (ПС) химических реакций.

В предыдущем сообщении [10] мы описали алгоритм поиска экстремумов (минимумов и переходных состояний) на поверхностях потенциальной энергии (ППЭ) с помощью квантово-химической программы Priroda [11]. Была показана его трудоемкость при ручной реализации, вызванная особенностями задания исходных данных и в упомянутой программе, и реализованных в ней алгоритмов, и актуальность автоматизации вычислительного процесса. Данная задача была решена нами с помощью программы P-AutoExtremum. Мы продолжаем работу по совершенствованию данной программы и увеличению ее функциональности. В данном сообщении мы рассматриваем сделанные нововведения, позволяющие повысить эффективность программы и практически исключить участие пользователя в процессе вычислений на всех его этапах, связанных как с поиском ПС, так и с доказательством его соответствия изучаемому процессу, которое обеспечивается спусками по координате реакции (IRC) из ПС к исходным реагентам и продуктам реакции.

В рассматриваемой версии программы появилась возможность отслеживания отсутствия явной динамики снижения G(max) (квадрат нормы градиента) на протяжении нескольких итераций на всех этапах цикла поиска экстремума, а не только после достижения сходимости процесса оптимизации и последующего повышения точности расчета. При этом пороговое процентное значение изменения G(max) и максимальное количество итераций, в течение которых допустимо отсутствие динамики снижения, для этапов итераци-

онного процесса до достижения сходимости оптимизации и после нее задаются раздельно. Отметим, что, поскольку возрастание значения G(max), особенно до момента достижения сходимости оптимизации, может быть обусловлено процессами, устраняющими лишние отрицательные частоты, мы решили скорректировать использованное в [10] понятие отсутствия явной динамики снижения G(max) и не считать возрастание G(max) фактором «зацикливания» итерационного процесса.

Еще одной особенностью новой версии программы является автоматическое формирование исходных файлов для спусков к реагентам и продуктам по координате реакции и запуск их в расчет с последующей оптимизацией полученных результатов с помощью описанного в [10] итерационного процесса поиска минимума на ППЭ. Проведение данной оптимизации необходимо ввиду того, что структура, полученная в результате спуска, вообще говоря, не соответствует минимуму потенциальной энергии, и ее принадлежности продукту (реагентам) реакции нуждается в уточнении.

Рассмотрим алгоритм действий программы на этом этапе, воспользовавшись схемой деятельности языка моделирования UML [12] на рис. 1.

В качестве действия «Поиск экстремума» на ней обозначен итерационный процесс, детально рассмотренный в [10]. В самом начале работы программы на вход этого процесса подается сформированный пользователем исходный in-файл с заданием для расчета.

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

следний полученный оШ-файл, копирует оттуда блок $Епе^, содержащий Гессиан, создает по одному ш-файлу для каждого направления спуска и записывает в каждый из них скопированный блок $Energy. В качестве параметров расчета указываются значения, выбранные на основе анализа результатов множества численных экспериментов, связанных с поиском путей реакции на ППЭ. Далее полученные ш-файлы отправляются на расчет в программу Ргл^а. Поскольку спуски производятся в двух направлениях, пользователь имеет возможность выбрать, осуществлять ли оба этих расчета параллельно или последовательно.

1

[Подготовить исходный in-фэйл)

I

ПОИСК ЭКСТРЕМУМА ^

-(Завершение paforbjj^-

рассчитывать спуски]

[Рассчитывать спуски] I

[Найти и скопировать блок $Епегду^

(создать ¡г-файлы для расчета спусков]

[Вставить блок $Епегду в ¡г-файльГ]

[Расчет спусков в Рг1гос1а |

[анализ ои^-файпов спусков]

_[Ракеты завершены неуспешно] \

[Аварийное завершение работы^-

[Расчеты за вершены [успешно]

[Найти и скопировать блок $гио1еси1е]

I

[Создать ¡г-файлы дня оптимизации результатов спускаГ) [Вставить блок {то1еси1е в ¡г-файлы]-

Рис. 1 - Диаграмма деятельности UML, отображающая порядок работы P-AutoExtremum в случае успешного завершения этапа поиска экстремума

Если расчеты спусков выполнены успешно, программа создает два ш-файла для оптимизации их результатов. Для этого используются блоки геометрических параметров $то1еси1е из соответствующих оШ-файлов, полученные последними при спуске по координате реакции. Далее полученные т-файлы подаются на вход итерационного процесса «Поиск экстремума», и для них решается задача поиска минимума. В зависимости от выбора пользователя, эти расчеты также могут происходить в параллельном или последовательном режиме.

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

Таким образом, программа P-AutoExtremum позволяет полностью автоматизировать весь итерационный процесс вычислений по поиску переходных состояний химических реакций в пакете Priroda без вмешательства пользователя.

Проверка работоспособности программы проводилась на основе численных экспериментов: с помощью нее проводилось изучение нескольких реакций, связанных с изучением механизма акватермо-лиза органических соединений, для которых рассмотренный здесь и в работе [10] итерационный алгоритм был применен ранее вручную. Результаты показали, что P-AutoExtremum надежно воспроизводит указанный алгоритм.

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

Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 15-0704840 а.

Литература

1. Д. Л. Егоров, Г.М. Храпковский, А.Г. Шамов, Вестник Казан. технол. ун-та, 13, 10, 18-21 (2010).

2. Г.М. Храпковский, Д.Л. Егоров, А.Г. Шамов, Вестник Казан. технол. ун-та, 16, 21, 20-23 (2013).

3. Г.М. Храпковский, Д.Л. Егоров, А.Г. Шамов, Вестник Казан. технол. ун-та, 16, 22, 13-16 (2013).

4. Д. Д. Шарипов, Д.Л. Егоров, Е.В. Николаева, А.Г. Шамов, Г.М. Храпковский, Вестник Казан. технол. ун-та 13, 9, 34-39 (2010).

5. G.M. Khrapkovskii, A.G. Shamov, R.V. Tsyshevsky, D.V. Chachkov, D.L. Egorov, I.V. Aristov, Computational and Theoretical Chemistry, 985, 80-89 (2012).

6. Д.Д. Шарипов, Д.Л. Егоров, Д.В. Чачков, А.Г. Шамов, Г.М. Храпковский, ЖОХ, 81, 11, 1822-1836 (2011).

7. G.M. Khrapkovskii, D.D. Sharipov, A.G. Shamov, D.L. Egorov, D.V. Chachkov, B. Nguyen Van, R.V. Tsyshevsky, Computational and Theoretical Chemistry, 1017, 7-13 (2013).

8. G.M. Khrapkovskii, D.D. Sharipov, A.G. Shamov, D.L. Egorov, D.V. Chachkov, R.V. Tsyshevsky, Computational and Theoretical Chemistry, 1011, 37-43 (2013).

9. R.V. Tsyshevsky, G.G. Garifzianova, D.V. Chachkov, A.G. Shamov, G.M. Khrapkovskii, Journal of Energetic Materials, 27, 4, 263-295 (2009).

10. А.Г. Шамов, Д. Л. Егоров, Г. М. Храпковский, Вестник Казан. технол. ун-та, 17, 18, 7-10 (2014).

11. Д.Н. Лайков. Развитие экономного подхода к расчету молекул методом функционала плотности, его применение

к решению сложных химических задач. Диссертация на соискание ст. к.ф.-м.н., МГУ, 2000.

12. Г. Буч, Д. Рамбо, И. Якобсон, Язык UML. Руководство пользователя. Москва, ДМК Пресс, 2006, 496 с.

© А. Г. Шамов - нач. отделения информатизации КНИТУ, shamov@kstu.ru; Д. Л. Егоров - к.ф.-м.н., н.с. НИОКХ КНИТУ, egorov-dl@rambler.ru; Г. М. Храпковский - д.х.н., проф. каф. катализа КНИТУ, khrapkovskii@kstu.ru.

© A. G. Shamov - head of department of informatization KNRTU, shamov@kstu.ru; D. L. Egorov - PhD in physics-mathematical sciences, researcher, research department of computational chemistry KNRTU, egorov-dl@rambler.ru; G. M. Khrapkovskii - dr.Sc. in chemistry, professor, department of catalysis KNRTU, khrapkovskii@kstu.ru.