Королев Владимир Дмитриевич
доцент,
к. физ.-мат. наук, НФаУ,
кафедра фармакоинформатики,
Украина г. Харьков.
Аннотация: Создана программа, моделирующая химическую реакцию в пакете Scilab
Ключевые слова: математика, программирование, моделирование, химическая реакция.
Содержание научной работы.
Задача исследования и моделирования химических реакций актуальна, так как позволяет ускорить процесс создания новых препаратов, способствует предотвращению превращений компонентов лекарственных препаратов, которые приводят к нарушению или потере их потребительских качеств. Изучение процессов и применение полученных результатов в медицине дают возможность бороться с заболеваниями и старением организма.
Для обработки полученных результатов нужен математический аппарат. И здесь, на первое место выходят математические пакеты, способные решать системы дифференциальных уравнений. Это пакеты типа MathCad, MatLab, Scilab и другие.
В работе рассмотрено моделирование химических реакций в пакете Scilab (версия 5). Рассмотрены различные виды реакций: простая изотермическая обратимая реакция, сложная параллельная и последовательная изотермическая реакции, обратимые изотермические реакции второго рода и неизотермическая реакция. Составлены математические модели различных видов химических реакций начиная с простых реакций типа и заканчивая реакциями, в которых участвуют шесть реагентов для изотермических и неизотермических реакций, которые представляют собой системы дифференциальных уравнений первого порядка. В простейших случаях, подобно этим
получаются довольно простые системы уравнений, усложняющихся по мере увеличения количества веществ-реагентов и включения зависимости скорости реакции от температуры.
Для решения дифференциальных уравнений применялся свободно распространяемый математический пакет Scilab. Задача моделирования сводится к составлению и анализу системы дифференциальных уравнений относительно концентрации веществ-реагентов и продуктов реакции при различных начальных условиях, которые содержат начальные концентрации реагентов (CA(0), CB(0) и т.д.), коэффициенты в реакциях по различным каналам (к1, k2 и т.д.), количество молекул, температуру и некоторые постоянные. Изменяя эти условия, мы имеем возможность наблюдать развитие реакции во времени, то есть исследовать химическую реакцию. Приведу примеры программного кода в Scilab 5.5.2 для некоторых реакций. Первый пример программного кода для изотермической реакции, в которой принимают участие пять веществ-реагентов, во второй, также изотермической –шесть.
Проведено моделирование серии химических реакций, выполнено решение систем дифференциальных уравнений, к которым сводятся эти реакции, представлены численные результаты и проведено их сравнение с результатами, полученными в коммерческих пакетах (таких как MathCad и MatLab). Построены графики зависимости концентрации веществ и температуры (в случае неизотермической реакции) от времени для каждой из реакций. Приведу некоторые результаты.
Сравнив результаты, полученные в других пакетах, можно сделать вывод, что пакет Scilab не уступает по возможностям решения систем дифференциальных уравнений коммерческим пакетам (MathCad, MatLab и др.) и может с успехом применяться при моделировании химических процессов.