Научный журнал
Современные наукоемкие технологии
ISSN 1812-7320
"Перечень" ВАК
ИФ РИНЦ = 0,916

РАЗРАБОТКА АЛГОРИТМА ПОИСКА СТЕХИОМЕТРИЧЕСКИХ КОЭФФИЦИЕНТОВ ХИМИЧЕСКИХ УРАВНЕНИЙ

Николюкин М.С. 1
1 ФГБОУ ВО «Тамбовский государственный технический университет»
Подходы к автоматизации химического производства с каждым годом все больше набирают популярность. Появляются и активно развиваются различные сервисы и системы в сфере образования, которые помогают студентам и преподавателям учебных заведений лучше понять химические процессы. При проектировании собственных подобных систем важно разработать эффективный алгоритм решения определенной задачи, который был бы одновременно и быстрым и использовал минимум памяти. Такая проблема может возникнуть, например, при реализации модуля балансировки химического уравнения. Настоящая работа посвящена разработке алгоритма поиска стехиометрических коэффициентов химических уравнений. Проведен анализ математических методов поиска, предложенных другими учеными, а также выявлены их недостатки. Описан алгоритм, предложенный автором статьи, который основывается на представлении химического уравнения в виде системы линейных алгебраических уравнений и ее последующего решения методом Гаусса – Жордана. Алгоритм протестирован на мономолекулярных, бимолекулярных и тримолекулярных реакциях. Для представленной математической модели построена блок-схема алгоритма. Доказана эффективность использования алгоритма по сравнению с существующими разработками-аналогами, при проектировании сервисов и сложных систем для автоматизации химических задач в сфере образования или на производстве.
алгоритм
химическая реакция
система линейных уравнений
матрица
автоматизация
1. Егоров В.В. Общая химия. СПб.: Лань, 2018. 192 c.
2. Hiremath S.S. Balancing Chemical Equations by Using Mathematical Model. International Journal of Mathematical Research & Science. 2013. Vol. 11. no. 4. P. 129–132.
3. Lawrence R.T. An Innovative Approach to Balancing Chemical-Reaction Equations: A Simplified Matrix-Inversion Technique for Determining the Matrix Null Space. The Chemical Educator. 2010. P. 304–308.
4. Тарасик В.П. Математическое моделирование технических систем. Минск: Новое знание, 2013. 584 c.
5. Юдович В.И. Математические модели естественных наук. СПб.: Лань, 2011. 336 c.

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

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

Химические уравнения играют особую роль как в теоретической, так и в промышленной химии. Каждое химическое уравнение описывает некоторую химическую реакцию. Вещества, первоначально участвующие в реакции, называются реагентами, а вновь образовавшиеся – продуктами.

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

В экспертных системах или сервисах, которые направлены на автоматизацию решения различных химических задач, на смену эвристике приходят математические методы поиска стехиометрических коэффициентов.

Один из математических методов, описанный профессором Хирематом Сурешем из Индийского технологического института Брахмадевадра Мане, предполагает представление химического уравнения в виде системы линейных уравнений и последующего ее решения методом Гаусса [2]. Однако алгоритм, предложенный профессором, не является эффективным для решения задачи на компьютере, так как дальнейший вывод конечного результата усложняет алгоритм.

Метод, основанный на поиске ядра матрицы, который предложил Лоуренс Торн из Сандийских национальных лабораторий, не подходит для реализации на компьютере из-за его сложности [3].

Таким образом, появляется необходимость поиска более эффективного алгоритма для решения задачи. Использование метода Гаусса – Жордана в конечном счете может заменить большинство операций преобразований всего лишь нахождением наименьшего общего кратного знаменателей вектора решений системы.

Цель работы: разработка эффективного алгоритма поиска стехиометрических коэффициентов химического уравнения. Для несбалансированной химической реакции требуется найти стехиометрические коэффициенты, используя метод Гаусса – Жордана.

Алгоритм решения задачи

Пусть дана некоторая несбалансированная химическая реакция:

nikol01.wmf (1)

где х1 – х4 – искомые стехиометрические коэффициенты; А, В, С – участвующие в реакции вещества; у1 – у8 – количество атомов каждого вещества в молекулах, участвующих в реакции.

В соответствии с количеством участвующих элементов в реакции, составляются линейные уравнения

nikol02.wmf

nikol03.wmf (2)

nikol04.wmf

nikol05.wmf

На основе составленных линейных уравнений формируется система

nikol06.wmf (3)

Далее система записывается в виде матрицы и решается методом Гаусса – Жордана. Этот метод предназначен не только для решения систем линейных уравнений, но и для нахождения обратной матрицы [4]. Первый этап метода – прямой ход, он аналогичен методу Гаусса. Второй этап – обратный ход, он заключается в обнулении всех элементов матрицы коэффициентов системы линейных уравнений, выше ведущих элементов [5].

Решением системы будет являться вектор решений, где последний элемент – произвольное действительное число, которому присваивается единица. Каждый элемент вектора решений системы приводится к обыкновенным дробям. Для всех знаменателей дроби ищется наименьшее общее кратное, значение которого затем умножается на каждый элемент вектора. Таким образом полученные значения и будут являться искомыми стехиометрическими коэффициентами химического уравнения.

Предложенный алгоритм можно применить для всех простых химических реакций (мономолекулярные, бимолекулярные, тримолекулярные). Рассмотрим пример для несбалансированной мономолекулярной реакции:

nikol07.wmf (4)

Представим химическую реакцию в математической форме:

nikol08.wmf (5)

В соответствии с веществами, которые участвуют в реакции, составим два линейных уравнения:

nikol09.wmf

nikol10.wmf (6)

На их основе составим систему линейных уравнений:

nikol11.wmf (7)

Запишем систему в виде матрицы и решим ее методом Гаусса – Жордана:

nikol12.wmf (8)

В данном случае будет всего два решения – nikol13.wmf, x2 – произвольное действительное число, которому присваивается единица, а при переводе в обыкновенную дробь nikol15.wmf. Применив алгоритм НОК для всех знаменателей, получим число, на которое умножим решения системы. В данном случае это число равно двойке. x1 = 1, x2 = 2. Подставив полученные коэффициенты в уравнение, получим сбалансированную реакцию

nikol16.wmf (9)

Рассмотрим пример для несбалансированной бимолекулярной реакции

nikol17.wmf (10)

Представим химическую реакцию в математической форме:

nikol18.wmf (11)

В соответствии с веществами, которые участвуют в реакции, составим три линейных уравнения

nikol19.wmf

nikol20.wmf (12)

nikol21.wmf

На их основе составим систему линейных уравнений:

nikol22.wmf (13)

Запишем систему в виде матрицы и решим ее методом Гаусса – Жордана:

nikol23.wmf (14)

Данная система имеет четыре решения – nikol24.wmf, nikol25.wmf, nikol26.wmf, x4 – произвольное действительное число, которому присваивается единица, а при переводе в обыкновенную дробь nikol28.wmf. Применив алгоритм НОК для всех знаменателей получим число, на которое умножим решения системы. В данном случае это число равно шести. x1 = 2, x2 = 7, x3 = 4, x4 = 6. Подставив полученные коэффициенты в уравнение, получим сбалансированную реакцию:

nikol29.wmf. (15)

Рассмотрим пример для несбалансированной тримолекулярной реакции:

nikol30.wmf (16)

Представим химическую реакцию в математической форме:

nikol31.wmf (17)

В соответствии с веществами, которые участвуют в реакции, составим пять линейных уравнений:

nikol32.wmf

nikol33.wmf

nikol34.wmf (18)

nikol35.wmf

nikol36.wmf

На их основе составим систему линейных уравнений

nikol37.wmf (19)

Запишем систему в виде матрицы и решим ее методом Гаусса – Жордана:

nikol38.wmf (20)

Данная система имеет пять решений – x1, x3, nikol39.wmf, x2 = 3, x5 – произвольное действительное число, которому присваивается единица, а при переводе в обыкновенную дробь nikol40.wmf. Применив алгоритм НОК для всех знаменателей, получим число, на которое умножим решения системы. В данном случае это число равно трем. x1, x3, x4 = 4, x2 = 9, x5 = 3. Подставив полученные коэффициенты в уравнение, получим сбалансированную реакцию:

nikol41.wmf (21)

Алгоритм в общем виде, изображенный в виде блок-схемы, представлен на рис. 1.

nikol1.tif

Рис. 1. Блок-схема алгоритма

nikol2.tif

Рис. 2. Сравнение времени выполнения алгоритмов

Анализ результатов

Разработанный алгоритм поиска стехиометрических коэффициентов химического уравнения на основе метода Гаусса – Жордана улучшает метод, предложенный профессором Хирематом Сурешем, и применим для всех простых химических реакций. Реализация алгоритма на компьютере позволит достичь результатов за меньшее количество времени, чем при решении данной задачи методом Гаусса. Сравнение времени выполнения алгоритмов представлено на рис. 2.

Алгоритм протестирован на мономолекулярных, бимолекулярных и тримолекулярных реакциях и может быть использован при разработке сервисов и сложных систем для автоматизации химических задач в сфере образования или на производстве.


Библиографическая ссылка

Николюкин М.С. РАЗРАБОТКА АЛГОРИТМА ПОИСКА СТЕХИОМЕТРИЧЕСКИХ КОЭФФИЦИЕНТОВ ХИМИЧЕСКИХ УРАВНЕНИЙ // Современные наукоемкие технологии. – 2019. – № 1. – С. 99-103;
URL: http://www.top-technologies.ru/ru/article/view?id=37386 (дата обращения: 06.06.2020).

Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1.074