Разработка кинетических моделей с использованием параллельных вычислений на многоядерных системах

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ

Вестн. Ом. ун-та. 2012. № 2. С. 172-174.

УДК 519.876.5

И.В. Ахметов, И.М. Губайдуллин

РАЗРАБОТКА КИНЕТИЧЕСКИХ МОДЕЛЕЙ С ИСПОЛЬЗОВАНИЕМ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ НА МНОГОЯДЕРНЫХ СИСТЕМАХ

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

Решены следующие задачи:

- разработка и анализ математической модели;

- определение численных значений кинетических параметров, описывающих экспериментальные данные;

- распараллеливание обратной задачи.

В результате вычислительного эксперимента найдены кинетические параметры. На основе стандарта ОрепМР разработан пакет прикладных программ для решения обратных задач химической кинетики.

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

Введение

Обратные задачи химической кинетики относятся к таким физикохимическим задачам, которые предполагают значительный объем вычислений [1]. Сегодня уже предложены решения данной проблемы с использованием различных методов распараллеливания: кластерные системы и видеокарты [2; 3]. В то же время доступ к суперкомпьютерам в наше время ограничен. С другой стороны, возрастает распространенность вычислительных машин с многоядерными процессорами, что увеличивает их применение в научных исследованиях. Использование многоядерных систем в физико-химических расчетах является на сегодня весьма актуальной задачей.

Целью настоящей работы является разработка методологии построения кинетических моделей с использованием параллельных вычислений на многоядерных системах. В качестве объекта исследования выбрана реакция получения метилового эфира 5-ацетил-2-пирролкарбоновой кислоты. При решении поставленной проблемы возникают следующие задачи: построение и анализ математической модели; определение численных значений кинетических параметров, описывающих экспериментальные данные; распараллеливание обратной задачи химической кинетики.

1. Математическое описание

На основе анализа экспериментальных данных предложен следующий механизм протекания реакции образования метилового эфира 5-ацетил-2-пирролкарбоновой кислоты [4]:

1. С1 + С 2 — С 3 + С 4

2. С3 + С5 — С6 + С4

3. С6 + С5 — С 7 + С4

4. С 7 + С5 — С8 + С4

5. С 8 —С 9 + С10 где С - концентрации компонентов,

Сз = С?Ив ИОС1з, С4 = НС1, Сз = СН4О,

Ш1=К1Х1Х2 W2=K2XX5 W3=K3X}Xб W4=K4X5X7 W5=K5X8,

кмоль/м3: Сі = Се ИуИО, Сз = ССІ4, Се = СИяСЬМОз, С? = СяИігСШОз,

Сз = СіоИі5МО4, Ся = СИяЫОз, С10 = скорости /ой реакции.

© И. В. Ахметов, И.М. Губайдуллин

СяИеО, К'і - кинетическая константа

Разработка кинетических моделей с использованием параллельных вычислений..

173

Кинетические уравнения схемы превращений (1) проанализированы в рамках закона действующих масс. Корректным описанием лабораторного реактора является модель идеального смешения, уравнения материального баланса которой представляются системой (2)-(3):

ёЫ 15 10

1 5 10

t = Fn ' Fn = V • s- =L

Ш V о j=1 i=1

, F=V L yjj

Vo j=1

dX

F - XFn

dt N

начальными

(3) t = 0 :

о ] =

условиями при Х{ = Х°°, N = 1, где N = С / С0 - относительное изменение числа молей реакционной смеси; С и Со - мольная плотность и ее начальное значение, моль/л; Х1 = С1 / С - концентрации компонентов (мольные доли); оо = / С0 - приведенные скорости реакций, ч-1; - скорость /ой стадии,

моль/(л-ч).

Правые части системы (2)-(3) имеют

вид:

F = -щ1; F2 = -щ; Fз = щ -щ2;

F4 = w1 + w2 + w3 + w4;

F5 = w2 - w3 - w4;

F6 = w2- w3; f7 = w3- w4;

F8 = w4 - w5;

F9 = щ5; *1о = щ5; ^1 = FN = щ5.

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

Расчет кинетических параметров реакции получения метилового эфира 5-ацетил-2-пирролкарбоновой кислоты - длительный процесс. Для ускорения решения обратной задачи была разработана программа на языке Фортран с многопоточным кодом ОрепМР [5].

ОрепМР (ОрепМиШ-Ргосевв!^) - открытый стандарт для распараллеливания программ. Описывает совокупность директив компилятора, библиотечных процедур и переменных окружения, которые предназначены для программирования многопоточных приложений на многопроцессорных системах с общей памятью.

При решении обратной кинетической задачи генерируется набор из п исходных констант скоростей стадий. Существует 2п вариантов изменения набора данных в сторону увеличения или уменьшения на заданный шаг. В табл. 1 приведены все возможные варианты изменения набора констант при п = 5.

Для всех комбинаций набора решается прямая кинетическая задача. Решение прямых задач распараллеливается на все доступные ядра [6] (рис. 1).

Таблица Ї Варианты изменения набора констант при n = б

№ Kj

Ki K2 K3 K4 K5

Ї + + + + +

2 + + + + -

3 + + + - +

4 + + + - -

б + + - + +

б + + - + -

1 + + - - +

В + + - - -

9 + - + + +

Ї0 + - + + -

ЇЇ + - + - +

Ї2 + - + - -

Ї3 + - - + +

Ї4 + - - + -

Їб + - - - +

Їб + - - - -

Її - + + + +

ЇВ - + + + -

Ї9 - + + - +

20 - + + - -

2Ї - + - + +

22 - + - + -

23 - + - - +

24 - + - - -

25 - - + + +

2б - - + + -

21 - - + - +

2В - - + - -

29 - - - + +

30 - - - + -

3Ї - - - - +

32 - - - - -

инициализация

Ш

For (1..Reverse) kl, k2, k3, k4, k5

while(min(F)) parallel

количество ядер

32/n 32/n

задач    задач

Min

Вывод

i

Вывод Рис. 1. Алгоритм распараллеливания

Набор с наиболее удовлетворяющими решениями выбирается как исходный набор констант скоростей стадий. Для нового набора констант выполняют такие же операции, что и для предыдущего. Процесс поиска оптимальных кинетических парамет-

174

И. В. Ахметов, И. М. Губайдуллин

ров останавливают при достижении заданной точности.

В качестве критерия отклонения расчетных и экспериментальных данных выбран следующий функционал: К = \Храсч-Хопыт \ .

3. Результаты вычислительного эксперимента

При распараллеливании решения обратной кинетической задачи на 2 ядра расчеты выполняются быстрее на 35-40 %, на 4 ядра - на 50-55 %. Достигаемое ускорение времени выполнения расчетов представлено на рис. 2.

Рис. 2. Выполнение расчетов на многоядерных системах

Сравнение расчетных и экспериментальных данных показано в табл. 2. Разработанная модель адекватно описывает экспериментальные наблюдения: расхождение расчетных и экспериментальных изменений концентраций во времени не превышает 7 %.

Таблица 2

Сравнение расчетных и экспериментальных данных

Время, ч Xi X9

Опыт | Расчет Опыт Расчет

105 °С

4 100 1В,9В 0 21,02

4,5 10 10,0 30,0 30,0

б б9,б б0,б4 40,4 39,4б

б 43 43,0 б1,0 б1,0

110 °С

3 92,9 В2,11 1,1 11,29

4 3В б2,1В б2 31, В2

б 29 29,0 11 11,0

11б °С

3 б2,б б2,б 31,4 31,4

4 2б,2 2б,2 13,В 13,В

б 0 3,09 100 9б,91

Система обыкновенных нелинейных дифференциальных уравнений (2)-(3) решалась с помощью модифицированного метода Кутта-Мерсона [7] пятого порядка точности. Численные значения найденных констант и энергий активации приведены в

табл. 3. Константы Ки (ч-1) являются некоторыми приведенными величинами, которые имеют размерность обратного времени и связаны с истинными константами к (л-молъ~1-ч~1) соотношениями: К = к • Со

(I = 1-4), Кз = кз.

Таблица 3 Найденные кинетические параметры

Ki, ч-i 10б оС 110 оС 11б оС Еі, ккал/моль

ki 0,049 0,0бВ 0,111 23,В

k2 0,0043 0,004б 0,00б 3,б1

кз 0,041 0,044 0,04В 4,41

k4 0,0001 0,0009 0,001 9,бВ

k5 б,31 б,Вб 1,01б 3,01

Выводы:

1. Разработан метод построения кинетических моделей с использованием параллельных вычислений на многоядерных системах.

2. Построена кинетическая модель реакции получения метилового эфира 5-ацетил-2-пирролкарбоновой кислоты.

3. Осуществлено распараллеливание обратной кинетической задачи, при использовании 4 ядер достигнуто 2-кратное ускорение.

ЛИТЕРАТУРА

[1] Слинько М. Г. Основы и принципы математического моделирования каталитических процессов / Ин-т катализа им. Борескова СО РАН. Новосибирск, 2004. 488 с.

[2] Линд Ю. Б., Губайдуллин И. М., Мулюков Р. А. Методология параллельных вычислений для решения задач химической кинетики и буровой технологии // Системы управления и информационные технологии. 2009. № 2/36. С. 44-49.

[3] Юнусов А. А., Губайдуллин И. М., Файзул-лин М. Р. Анализ алгоритмов решения задач химической кинетики с использованием GPGPU // Журнал СВМО. 2010. Т. 12. № 3. С. 146-151.

[4] Хуснутдинов Р. И., Байгузина А. Р., Мукми-нов Р. Р., Ахметов И. В., Губайдуллин И. М., Спивак С. И., Джемилев У. М. Новый метод синтеза эфиров 2-пирролкарбоновой и 2,5-пирролдикаробоновой кислот реакцией пирро-лов с CCI4 и алифатическими спиртами под действием Fe-содержащих катализаторов // Журнал органической химии. 2010. Т. 46. Вып. 7. С. 1054-1060.

[5] URL: http://ru.wikipedia.org/wiki/OpenMP.

[6] Антонов А. С. Параллельное программирование с использованием технологии OpenMP : учебное пособие. М. : Изд-во МГУ, 2009. 77 с.

[7] Augustin S.C. // Simulation. 1974. V. 22. № 3. P. 90-92.