Automated parallelization of a program for modeling intraparticle diffusion and adsorption in heterogeneous nanoporous media

Heterogeneous media consisting of thin layers of particles of forked porous structure with different physical-chemical properties are widely used in science-intensive technologies and priority sectors of industry, medicine, ecology, etc. Such layers are distributed systems of pores consisting of two...

Повний опис

Збережено в:
Бібліографічні деталі
Дата:2023
Автори: Doroshenko, A.Yu., Petryk, M. R., Mykhalyk, D. M., Ivanenko, P. A., Yatsenko, O.A.
Формат: Стаття
Мова:Ukrainian
Опубліковано: Інститут програмних систем НАН України 2023
Теми:
Онлайн доступ:https://pp.isofts.kiev.ua/index.php/ojs1/article/view/507
Теги: Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
Назва журналу:Problems in programming
Завантажити файл: Pdf

Репозитарії

Problems in programming
id pp_isofts_kiev_ua-article-507
record_format ojs
resource_txt_mv ppisoftskievua/20/859de628d4bca3c2d3d9b978dd976620.pdf
spelling pp_isofts_kiev_ua-article-5072023-06-24T12:08:36Z Automated parallelization of a program for modeling intraparticle diffusion and adsorption in heterogeneous nanoporous media Автоматизоване розпаралелювання програми моделювання внутрішньочастинкової дифузії й абсорбції в неоднорідних нанопористих середовищах Doroshenko, A.Yu. Petryk, M. R. Mykhalyk, D. M. Ivanenko, P. A. Yatsenko, O.A. mathematic model; mass transfer; heterogeneous and nanoporous media; automated program design; software auto-tuning, parallel computing UDC 004.4’24, 519.6 математична модель; масопереніс; неоднорідні й нанопористі середовища; автоматизоване проєктування програм; автотюнінг програм; паралельні обчислення УДК 004.4’24, 519.6 Heterogeneous media consisting of thin layers of particles of forked porous structure with different physical-chemical properties are widely used in science-intensive technologies and priority sectors of industry, medicine, ecology, etc. Such layers are distributed systems of pores consisting of two main spaces: micro- and nanopores of particles and macropores and cavities between particles. Mass transfer in the system of heterogeneous media causes two types of mass transfer: diffusion in macropores, owing to interparticle space, and diffusion in the system of micro- and nanopores inside particles of the heterogeneous medium. Intraparticle space has a higher level of adsorptive capacity, and at the same time, has a lower velocity of diffusion intrusion in comparison with interparticle space. In modeling concentra- tion and gradient fields for various diffusible components, an important scientific problem is the identification of kinetic parameters of a transfer, predetermining mass transfer velocity on macro- and micro levels, and also equilibrium conditions. The results of designing and parallelization of a program implementing a Crank-Nicolson scheme using algebra-algorithmic specifications represented in a natural- linguistic form are given. The tools for automated design, synthesis and auto-tuning of programs were applied that provided the translation of algebra-algorithmic schemes into source code in a target programming language and its tuning for execution environment to increase the program performance. Numerical distributions of values of diffusion coefficients for intraparticle transfer along coordinate of medium thickness for various time snapshots were obtained. Based on the results of the identification, the models were checked for adequacy and numerical modeling and analysis of concentration and gradient fields of mass transfer were carried out. The experiment results of auto- tuning the software implementation demonstrated high multiprocessor speedup on test data input.Prombles in programming 2022; 3-4: 59-68 Виконане проєктування й розпаралелювання програми реалізації схеми Кранка-Ніколсона, призначеної для отримання чисельно- го розв’язання моделі розподіленої системи масопереносу. Проектування здійснюється із використанням алгебро-алгоритмічних специфікацій, поданих у природно-лінгвістичній формі. Застосовані інструментальні засоби автоматизованого проєктування, синтезу та автотюнінгу програм, що забезпечують переклад алгебро-алгоритмічних схем у вихідний код мовою програмування та його налаштування на середовище виконання для підвищення швидкодії програми. Отримані чисельні розподіли значень коефіцієнтів дифузії для внутрішньочастинкового переносу вздовж координати товщини середовища для різних часових зрізів. За результатами ідентифікації виконана перевірка моделей на адекватність, виконані чисельне моделювання та аналіз концен- траційних і градієнтних полів масопереносу. Результати експерименту з автоматизованого налаштування паралельної програми реалізації методу Кранка-Ніколсона продемонстрували високе мультипроцесорне прискорення на тестових вхідних даних.Prombles in programming 2022; 3-4: 59-68 Інститут програмних систем НАН України 2023-01-23 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/507 10.15407/pp2022.03-04.059 PROBLEMS IN PROGRAMMING; No 3-4 (2022); 59-68 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 3-4 (2022); 59-68 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 3-4 (2022); 59-68 1727-4907 10.15407/pp2022.03-04 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/507/558 Copyright (c) 2023 PROBLEMS IN PROGRAMMING
institution Problems in programming
baseUrl_str https://pp.isofts.kiev.ua/index.php/ojs1/oai
datestamp_date 2023-06-24T12:08:36Z
collection OJS
language Ukrainian
topic mathematic model; mass transfer; heterogeneous and nanoporous media; automated program design; software auto-tuning
parallel computing
UDC 004.4’24
519.6
spellingShingle mathematic model; mass transfer; heterogeneous and nanoporous media; automated program design; software auto-tuning
parallel computing
UDC 004.4’24
519.6
Doroshenko, A.Yu.
Petryk, M. R.
Mykhalyk, D. M.
Ivanenko, P. A.
Yatsenko, O.A.
Automated parallelization of a program for modeling intraparticle diffusion and adsorption in heterogeneous nanoporous media
topic_facet mathematic model; mass transfer; heterogeneous and nanoporous media; automated program design; software auto-tuning
parallel computing
UDC 004.4’24
519.6
математична модель
масопереніс
неоднорідні й нанопористі середовища
автоматизоване проєктування програм
автотюнінг програм
паралельні обчислення
УДК 004.4’24
519.6
format Article
author Doroshenko, A.Yu.
Petryk, M. R.
Mykhalyk, D. M.
Ivanenko, P. A.
Yatsenko, O.A.
author_facet Doroshenko, A.Yu.
Petryk, M. R.
Mykhalyk, D. M.
Ivanenko, P. A.
Yatsenko, O.A.
author_sort Doroshenko, A.Yu.
title Automated parallelization of a program for modeling intraparticle diffusion and adsorption in heterogeneous nanoporous media
title_short Automated parallelization of a program for modeling intraparticle diffusion and adsorption in heterogeneous nanoporous media
title_full Automated parallelization of a program for modeling intraparticle diffusion and adsorption in heterogeneous nanoporous media
title_fullStr Automated parallelization of a program for modeling intraparticle diffusion and adsorption in heterogeneous nanoporous media
title_full_unstemmed Automated parallelization of a program for modeling intraparticle diffusion and adsorption in heterogeneous nanoporous media
title_sort automated parallelization of a program for modeling intraparticle diffusion and adsorption in heterogeneous nanoporous media
title_alt Автоматизоване розпаралелювання програми моделювання внутрішньочастинкової дифузії й абсорбції в неоднорідних нанопористих середовищах
description Heterogeneous media consisting of thin layers of particles of forked porous structure with different physical-chemical properties are widely used in science-intensive technologies and priority sectors of industry, medicine, ecology, etc. Such layers are distributed systems of pores consisting of two main spaces: micro- and nanopores of particles and macropores and cavities between particles. Mass transfer in the system of heterogeneous media causes two types of mass transfer: diffusion in macropores, owing to interparticle space, and diffusion in the system of micro- and nanopores inside particles of the heterogeneous medium. Intraparticle space has a higher level of adsorptive capacity, and at the same time, has a lower velocity of diffusion intrusion in comparison with interparticle space. In modeling concentra- tion and gradient fields for various diffusible components, an important scientific problem is the identification of kinetic parameters of a transfer, predetermining mass transfer velocity on macro- and micro levels, and also equilibrium conditions. The results of designing and parallelization of a program implementing a Crank-Nicolson scheme using algebra-algorithmic specifications represented in a natural- linguistic form are given. The tools for automated design, synthesis and auto-tuning of programs were applied that provided the translation of algebra-algorithmic schemes into source code in a target programming language and its tuning for execution environment to increase the program performance. Numerical distributions of values of diffusion coefficients for intraparticle transfer along coordinate of medium thickness for various time snapshots were obtained. Based on the results of the identification, the models were checked for adequacy and numerical modeling and analysis of concentration and gradient fields of mass transfer were carried out. The experiment results of auto- tuning the software implementation demonstrated high multiprocessor speedup on test data input.Prombles in programming 2022; 3-4: 59-68
publisher Інститут програмних систем НАН України
publishDate 2023
url https://pp.isofts.kiev.ua/index.php/ojs1/article/view/507
work_keys_str_mv AT doroshenkoayu automatedparallelizationofaprogramformodelingintraparticlediffusionandadsorptioninheterogeneousnanoporousmedia
AT petrykmr automatedparallelizationofaprogramformodelingintraparticlediffusionandadsorptioninheterogeneousnanoporousmedia
AT mykhalykdm automatedparallelizationofaprogramformodelingintraparticlediffusionandadsorptioninheterogeneousnanoporousmedia
AT ivanenkopa automatedparallelizationofaprogramformodelingintraparticlediffusionandadsorptioninheterogeneousnanoporousmedia
AT yatsenkooa automatedparallelizationofaprogramformodelingintraparticlediffusionandadsorptioninheterogeneousnanoporousmedia
AT doroshenkoayu avtomatizovanerozparalelûvannâprogramimodelûvannâvnutríšnʹočastinkovoídifuzííjabsorbcíívneodnorídnihnanoporistihseredoviŝah
AT petrykmr avtomatizovanerozparalelûvannâprogramimodelûvannâvnutríšnʹočastinkovoídifuzííjabsorbcíívneodnorídnihnanoporistihseredoviŝah
AT mykhalykdm avtomatizovanerozparalelûvannâprogramimodelûvannâvnutríšnʹočastinkovoídifuzííjabsorbcíívneodnorídnihnanoporistihseredoviŝah
AT ivanenkopa avtomatizovanerozparalelûvannâprogramimodelûvannâvnutríšnʹočastinkovoídifuzííjabsorbcíívneodnorídnihnanoporistihseredoviŝah
AT yatsenkooa avtomatizovanerozparalelûvannâprogramimodelûvannâvnutríšnʹočastinkovoídifuzííjabsorbcíívneodnorídnihnanoporistihseredoviŝah
first_indexed 2024-09-12T19:29:37Z
last_indexed 2024-09-12T19:29:37Z
_version_ 1815407470529478656
fulltext 59 Паралельне програмування розподілених систем і мереж УДК 004.4’24, 519.6 https://doi.org/10.15407/pp2022.03-04.059 АВТОМАТИЗОВАНЕ РОЗПАРАЛЕЛЮВАННЯ ПРОГРАМИ МОДЕЛЮВАННЯ ВНУТРІШНЬОЧАСТИНКОВОЇ ДИФУЗІЇ ТА АБСОРБЦІЇ В НЕОДНОРІДНИХ НАНОПОРИСТИХ СЕРЕДОВИЩАХ Анатолій Дорошенко, Михайло Петрик, Дмитро Михалик, Павло Іваненко, Олена Яценко Виконане проєктування й розпаралелювання програми реалізації схеми Кранка-Ніколсона, призначеної для отримання чисельно- го розв’язання моделі розподіленої системи масопереносу. Проектування здійснюється із використанням алгебро-алгоритмічних специфікацій, поданих у природно-лінгвістичній формі. Застосовані інструментальні засоби автоматизованого проєктування, синтезу та автотюнінгу програм, що забезпечують переклад алгебро-алгоритмічних схем у вихідний код мовою програмування та його налаштування на середовище виконання для підвищення швидкодії програми. Отримані чисельні розподіли значень коефіцієнтів дифузії для внутрішньочастинкового переносу вздовж координати товщини середовища для різних часових зрізів. За результатами ідентифікації виконана перевірка моделей на адекватність, виконані чисельне моделювання та аналіз концен- траційних і градієнтних полів масопереносу. Результати експерименту з автоматизованого налаштування паралельної програми реалізації методу Кранка-Ніколсона продемонстрували високе мультипроцесорне прискорення на тестових вхідних даних. Ключові слова: математична модель, масопереніс, неоднорідні й нанопористі середовища, автоматизоване проєктування програм, автотюнінг програм, паралельні обчислення. Heterogeneous media consisting of thin layers of particles of forked porous structure with different physical-chemical properties are widely used in science-intensive technologies and priority sectors of industry, medicine, ecology, etc. Such layers are distributed systems of pores consisting of two main spaces: micro- and nanopores of particles and macropores and cavities between particles. Mass transfer in the system of heterogeneous media causes two types of mass transfer: diffusion in macropores, owing to interparticle space, and diffusion in the system of micro- and nanopores inside particles of the heterogeneous medium. Intraparticle space has a higher level of adsorptive capacity, and at the same time, has a lower velocity of diffusion intrusion in comparison with interparticle space. In modeling concentra- tion and gradient fields for various diffusible components, an important scientific problem is the identification of kinetic parameters of a transfer, predetermining mass transfer velocity on macro- and micro levels, and also equilibrium conditions. The results of designing and parallelization of a program implementing a Crank-Nicolson scheme using algebra-algorithmic specifications represented in a natural- linguistic form are given. The tools for automated design, synthesis and auto-tuning of programs were applied that provided the translation of algebra-algorithmic schemes into source code in a target programming language and its tuning for execution environment to increase the program performance. Numerical distributions of values of diffusion coefficients for intraparticle transfer along coordinate of medium thickness for various time snapshots were obtained. Based on the results of the identification, the models were checked for adequacy and numerical modeling and analysis of concentration and gradient fields of mass transfer were carried out. The experiment results of auto- tuning the software implementation demonstrated high multiprocessor speedup on test data input. Keywords: mathematic model, mass transfer, heterogeneous and nanoporous media, automated program design, software auto-tuning, parallel computing. Вступ Управління науковим експериментом і аналізом стану складних багатокомпонентних систем масо- переносу в неоднорідних нанопористих середовищах сьогодні тісно пов’язане з новими розробками у сфері системного аналізу й математичного моделювання систем. Неоднорідні нанопористі середовища, що склада- ються з тонких шарів частинок розгалуженої пористої структури з різними фізико-хімічними властивостями мають широке застосування в наукоємних технологіях і пріоритетних галузях індустрії, медицини, екології та ін. Такі шари є розподіленими багаторівневими системами пор, що складаються з двох головних просто- рів: мікро- і нанопор частинок та макропор і порожнин між частинками. Внутрішньочастинковий простір (intraparticle space) має вищий ступінь адсорбційного поглинання і водночас нижчу швидкість дифузійного проникнення у порівнянні з міжчастинковим простором (interparticle space) [1–3]. При моделюванні кон- центраційних і градієнтних полів для різних дифундованих компонентів важливою науковою проблемою є ідентифікація кінетичних параметрів переносу, що визначають швидкість масопереносу на макро- й мікро- рівнях, а також рівноважні умови. В [4] розглянута схема Кранка-Ніколсона для отримання чисельного розв’язання моделі роз- поділеної системи масопереносу та ідентифікації в прямій та спряженій постановці для ідентифікації розподілення коефіцієнтів дифузії на основі теорії оптимального управління станом багатокомпонент- них систем. Реалізована градієнт-процедура ідентифікації параметрів внутрішньої кінетики переносу й отримані розподілення значень коефіцієнтів дифузії для внутрішньочастинкового й міжчастинкового переносу. В даній статті для розробки паралельної програми реалізації схеми Кранка-Ніколсона для © А.Ю. Дорошенко, М.Р. Петрик, Д.М. Михалик, П.А. Іваненко, О.А. Яценко, 2022 ISSN 1727-4907. Проблеми програмування. 2022. № 3-4. Спеціальний випуск 60 Паралельне програмування розподілених систем і мереж виконання на багатоядерному процесорі використовуються системи алгоритмічних алгебр Глушкова (САА) [5] та інструментальні засоби проєктування, синтезу й автоматичного самоналаштовування (авто- тюнінгу) програм [6–8]. САА призначені для формалізованого проєктування програм, що представлені у вигляді високорівневих схем. Автотюнінг забезпечує оптимізацію програм, — їх налаштування на конкретне обчислювальне середовище шляхом автоматизованого пошуку оптимальної програми з мно- жини можливих варіантів, кожен з яких виконується на заданій паралельній архітектурі з вимірюванням продуктивності (часу виконання). Засоби автотюнінгу використовують переписувальні правила [9] для трансформації програм. 2. Постановка задачі дворівневого переносу в неоднородній системі нанопористих частинок Масопереніс у системі неоднорідних середовищ, що складаються з дрібних частинок нанопористої структури, викликає два види масопереносу: дифузію в макропорах завдяки простору між частинками, й дифузію в системі мікро- й нанопор всередині частинок неоднорідного середовища. Для визначення внеску кожного з видів дифузії в систему загального масопереносу необхідно брати до уваги значення параметрів, що визначають адсорбційні рівноваги та ін. В даній роботі розглядається неоднорідне нанопористе середови- ще, яке складається з великої кількості (n + 1) тонких шарів, нанопористих сферичних частинок, що розташо- вані перпендикулярно до напрямку вхідного потоку й пов’язаних між собою системою умов n-інтерфейсних взаємодій. Це є визначаючим для неоднорідних тонких нанопористих зразків, особливо у випадку дифузії газу перед станом адсорбційної рівноваги із врахуванням системи багатоінтерфейсних взаємодій. Масопе- реніс відбувається через проникну поверхню ложа в двох напрямках: в осьовому — в просторі макропор (z — напрямок вздовж висоти ложа, перпендикулярне до поверхні шарів) і радіальному — у просторі мікро- й нанопор. Еволюція системи у напрямку до рівноваги здійснюється градієнтами концентрацій в макропорах і в мікро- й нанопорах частинок (від поверхні до центру). Математична модель такого переносу із врахуванням вищевказаних фізичних факторів описується у ви- гляді змішаної крайової задачі [1]: побудувати обмежене в області Паралельне програмування розподілених систем і мереж [Введите текст] варіантів, кожен з яких виконується на заданій паралельній архітектурі з вимірюванням продуктивності (часу виконання). Засоби автотюнінгу використовують переписувальні правила [9] для трансформації програм. 2. Постановка задачі дворівневого переносу в неоднородній системі нанопористих частинок Масопереніс у системі неоднорідних середовищ, що складаються з дрібних частинок нанопористої структури, викликає два види масопереносу: дифузію в макропорах завдяки простору між частинками, й дифузію в системі мікро- й нанопор всередині частинок неоднорідного середовища. Для визначення внеску кожного з видів дифузії в систему загального масопереносу необхідно брати до уваги значення параметрів, що визначають адсорбційні рівноваги та ін. В даній роботі розглядається неоднорідне нанопористе середовище, яке складається з великої кількості ( 1)n+ тонких шарів, нанопористих сферичних частинок, що розташовані перпендикулярно до напрямку вхідного потоку й пов’язаних між собою системою умов n-інтерфейсних взаємодій. Це є визначаючим для неоднорідних тонких нанопористих зразків, особливо у випадку дифузії газу перед станом адсорбційної рівноваги із врахуванням системи багатоінтерфейсних взаємодій. Масопереніс відбувається через проникну поверхню ложа в двох напрямках: в осьовому — в просторі макропор ( z — напрямок вздовж висоти ложа, перпендикулярне до поверхні шарів) і радіальному — у просторі мікро- й нанопор. Еволюція системи у напрямку до рівноваги здійснюється градієнтами концентрацій в макропорах і в мікро- й нанопорах частинок (від поверхні до центру). Математична модель такого переносу із врахуванням вищевказаних фізичних факторів описується у вигляді змішаної крайової задачі [1]: побудувати обмежене в області ( ) ( ) 1 1 0 1 1 0, 0, , , ; 0; n n k k n k D t r R z l l l l l + − + =   =    =       розв’язання системи рівнянь в часткових похідних, що записана в матричному вигляді: 1 2 1 1 2 1 inter1 1 inter2 2 1 1inter 1 intra 2 intra 1 intra ... 0 ... ... ...... ... ... ... 0 ... ... 0 ... ... ... ... ... 0 ... n n n n n Dc c Dc c t z z c cD D D D    + + + + +                  = −                         −        1 2 1 ... n r R q q r q + =                , (1) 1 2 1 intra 1 1 intra 2 22 2 intra 1 1 ... 0 ... 1 ... ... ... ...... ... 0 ... nn n D q qD q q r t t rr Dq q++ +                      =                         (2) з початковими умовами: ( ) 0, 0k tc t z = = , ( ) 0, 0,k tq t z = = (3) граничними умовами: ( ) 11 , , nnc t z l c ++ = = ( )1 , 0 0c t z z  = =  , (4) ( ) 0, , 0k rq t r z r =  =  , ( ) ( ), , ,k k kr Rq t r z K c t z= = . (5) і системою умов n-інтерфейсних взаємодій за координатою z : розв’язання системи рівнянь в часткових похідних, що записана в матричному вигляді: Паралельне програмування розподілених систем і мереж [Введите текст] варіантів, кожен з яких виконується на заданій паралельній архітектурі з вимірюванням продуктивності (часу виконання). Засоби автотюнінгу використовують переписувальні правила [9] для трансформації програм. 2. Постановка задачі дворівневого переносу в неоднородній системі нанопористих частинок Масопереніс у системі неоднорідних середовищ, що складаються з дрібних частинок нанопористої структури, викликає два види масопереносу: дифузію в макропорах завдяки простору між частинками, й дифузію в системі мікро- й нанопор всередині частинок неоднорідного середовища. Для визначення внеску кожного з видів дифузії в систему загального масопереносу необхідно брати до уваги значення параметрів, що визначають адсорбційні рівноваги та ін. В даній роботі розглядається неоднорідне нанопористе середовище, яке складається з великої кількості ( 1)n+ тонких шарів, нанопористих сферичних частинок, що розташовані перпендикулярно до напрямку вхідного потоку й пов’язаних між собою системою умов n-інтерфейсних взаємодій. Це є визначаючим для неоднорідних тонких нанопористих зразків, особливо у випадку дифузії газу перед станом адсорбційної рівноваги із врахуванням системи багатоінтерфейсних взаємодій. Масопереніс відбувається через проникну поверхню ложа в двох напрямках: в осьовому — в просторі макропор ( z — напрямок вздовж висоти ложа, перпендикулярне до поверхні шарів) і радіальному — у просторі мікро- й нанопор. Еволюція системи у напрямку до рівноваги здійснюється градієнтами концентрацій в макропорах і в мікро- й нанопорах частинок (від поверхні до центру). Математична модель такого переносу із врахуванням вищевказаних фізичних факторів описується у вигляді змішаної крайової задачі [1]: побудувати обмежене в області ( ) ( ) 1 1 0 1 1 0, 0, , , ; 0; n n k k n k D t r R z l l l l l + − + =   =    =       розв’язання системи рівнянь в часткових похідних, що записана в матричному вигляді: 1 2 1 1 2 1 inter1 1 inter2 2 1 1inter 1 intra 2 intra 1 intra ... 0 ... ... ...... ... ... ... 0 ... ... 0 ... ... ... ... ... 0 ... n n n n n Dc c Dc c t z z c cD D D D    + + + + +                  = −                         −        1 2 1 ... n r R q q r q + =                , (1) 1 2 1 intra 1 1 intra 2 22 2 intra 1 1 ... 0 ... 1 ... ... ... ...... ... 0 ... nn n D q qD q q r t t rr Dq q++ +                      =                         (2) з початковими умовами: ( ) 0, 0k tc t z = = , ( ) 0, 0,k tq t z = = (3) граничними умовами: ( ) 11 , , nnc t z l c ++ = = ( )1 , 0 0c t z z  = =  , (4) ( ) 0, , 0k rq t r z r =  =  , ( ) ( ), , ,k k kr Rq t r z K c t z= = . (5) і системою умов n-інтерфейсних взаємодій за координатою z : (1) Паралельне програмування розподілених систем і мереж [Введите текст] варіантів, кожен з яких виконується на заданій паралельній архітектурі з вимірюванням продуктивності (часу виконання). Засоби автотюнінгу використовують переписувальні правила [9] для трансформації програм. 2. Постановка задачі дворівневого переносу в неоднородній системі нанопористих частинок Масопереніс у системі неоднорідних середовищ, що складаються з дрібних частинок нанопористої структури, викликає два види масопереносу: дифузію в макропорах завдяки простору між частинками, й дифузію в системі мікро- й нанопор всередині частинок неоднорідного середовища. Для визначення внеску кожного з видів дифузії в систему загального масопереносу необхідно брати до уваги значення параметрів, що визначають адсорбційні рівноваги та ін. В даній роботі розглядається неоднорідне нанопористе середовище, яке складається з великої кількості ( 1)n+ тонких шарів, нанопористих сферичних частинок, що розташовані перпендикулярно до напрямку вхідного потоку й пов’язаних між собою системою умов n-інтерфейсних взаємодій. Це є визначаючим для неоднорідних тонких нанопористих зразків, особливо у випадку дифузії газу перед станом адсорбційної рівноваги із врахуванням системи багатоінтерфейсних взаємодій. Масопереніс відбувається через проникну поверхню ложа в двох напрямках: в осьовому — в просторі макропор ( z — напрямок вздовж висоти ложа, перпендикулярне до поверхні шарів) і радіальному — у просторі мікро- й нанопор. Еволюція системи у напрямку до рівноваги здійснюється градієнтами концентрацій в макропорах і в мікро- й нанопорах частинок (від поверхні до центру). Математична модель такого переносу із врахуванням вищевказаних фізичних факторів описується у вигляді змішаної крайової задачі [1]: побудувати обмежене в області ( ) ( ) 1 1 0 1 1 0, 0, , , ; 0; n n k k n k D t r R z l l l l l + − + =   =    =       розв’язання системи рівнянь в часткових похідних, що записана в матричному вигляді: 1 2 1 1 2 1 inter1 1 inter2 2 1 1inter 1 intra 2 intra 1 intra ... 0 ... ... ...... ... ... ... 0 ... ... 0 ... ... ... ... ... 0 ... n n n n n Dc c Dc c t z z c cD D D D    + + + + +                  = −                         −        1 2 1 ... n r R q q r q + =                , (1) 1 2 1 intra 1 1 intra 2 22 2 intra 1 1 ... 0 ... 1 ... ... ... ...... ... 0 ... nn n D q qD q q r t t rr Dq q++ +                      =                         (2) з початковими умовами: ( ) 0, 0k tc t z = = , ( ) 0, 0,k tq t z = = (3) граничними умовами: ( ) 11 , , nnc t z l c ++ = = ( )1 , 0 0c t z z  = =  , (4) ( ) 0, , 0k rq t r z r =  =  , ( ) ( ), , ,k k kr Rq t r z K c t z= = . (5) і системою умов n-інтерфейсних взаємодій за координатою z : (2) з початковими умовами: Паралельне програмування розподілених систем і мереж [Введите текст] варіантів, кожен з яких виконується на заданій паралельній архітектурі з вимірюванням продуктивності (часу виконання). Засоби автотюнінгу використовують переписувальні правила [9] для трансформації програм. 2. Постановка задачі дворівневого переносу в неоднородній системі нанопористих частинок Масопереніс у системі неоднорідних середовищ, що складаються з дрібних частинок нанопористої структури, викликає два види масопереносу: дифузію в макропорах завдяки простору між частинками, й дифузію в системі мікро- й нанопор всередині частинок неоднорідного середовища. Для визначення внеску кожного з видів дифузії в систему загального масопереносу необхідно брати до уваги значення параметрів, що визначають адсорбційні рівноваги та ін. В даній роботі розглядається неоднорідне нанопористе середовище, яке складається з великої кількості ( 1)n+ тонких шарів, нанопористих сферичних частинок, що розташовані перпендикулярно до напрямку вхідного потоку й пов’язаних між собою системою умов n-інтерфейсних взаємодій. Це є визначаючим для неоднорідних тонких нанопористих зразків, особливо у випадку дифузії газу перед станом адсорбційної рівноваги із врахуванням системи багатоінтерфейсних взаємодій. Масопереніс відбувається через проникну поверхню ложа в двох напрямках: в осьовому — в просторі макропор ( z — напрямок вздовж висоти ложа, перпендикулярне до поверхні шарів) і радіальному — у просторі мікро- й нанопор. Еволюція системи у напрямку до рівноваги здійснюється градієнтами концентрацій в макропорах і в мікро- й нанопорах частинок (від поверхні до центру). Математична модель такого переносу із врахуванням вищевказаних фізичних факторів описується у вигляді змішаної крайової задачі [1]: побудувати обмежене в області ( ) ( ) 1 1 0 1 1 0, 0, , , ; 0; n n k k n k D t r R z l l l l l + − + =   =    =       розв’язання системи рівнянь в часткових похідних, що записана в матричному вигляді: 1 2 1 1 2 1 inter1 1 inter2 2 1 1inter 1 intra 2 intra 1 intra ... 0 ... ... ...... ... ... ... 0 ... ... 0 ... ... ... ... ... 0 ... n n n n n Dc c Dc c t z z c cD D D D    + + + + +                  = −                         −        1 2 1 ... n r R q q r q + =                , (1) 1 2 1 intra 1 1 intra 2 22 2 intra 1 1 ... 0 ... 1 ... ... ... ...... ... 0 ... nn n D q qD q q r t t rr Dq q++ +                      =                         (2) з початковими умовами: ( ) 0, 0k tc t z = = , ( ) 0, 0,k tq t z = = (3) граничними умовами: ( ) 11 , , nnc t z l c ++ = = ( )1 , 0 0c t z z  = =  , (4) ( ) 0, , 0k rq t r z r =  =  , ( ) ( ), , ,k k kr Rq t r z K c t z= = . (5) і системою умов n-інтерфейсних взаємодій за координатою z : (3) граничними умовами: Паралельне програмування розподілених систем і мереж [Введите текст] варіантів, кожен з яких виконується на заданій паралельній архітектурі з вимірюванням продуктивності (часу виконання). Засоби автотюнінгу використовують переписувальні правила [9] для трансформації програм. 2. Постановка задачі дворівневого переносу в неоднородній системі нанопористих частинок Масопереніс у системі неоднорідних середовищ, що складаються з дрібних частинок нанопористої структури, викликає два види масопереносу: дифузію в макропорах завдяки простору між частинками, й дифузію в системі мікро- й нанопор всередині частинок неоднорідного середовища. Для визначення внеску кожного з видів дифузії в систему загального масопереносу необхідно брати до уваги значення параметрів, що визначають адсорбційні рівноваги та ін. В даній роботі розглядається неоднорідне нанопористе середовище, яке складається з великої кількості ( 1)n+ тонких шарів, нанопористих сферичних частинок, що розташовані перпендикулярно до напрямку вхідного потоку й пов’язаних між собою системою умов n-інтерфейсних взаємодій. Це є визначаючим для неоднорідних тонких нанопористих зразків, особливо у випадку дифузії газу перед станом адсорбційної рівноваги із врахуванням системи багатоінтерфейсних взаємодій. Масопереніс відбувається через проникну поверхню ложа в двох напрямках: в осьовому — в просторі макропор ( z — напрямок вздовж висоти ложа, перпендикулярне до поверхні шарів) і радіальному — у просторі мікро- й нанопор. Еволюція системи у напрямку до рівноваги здійснюється градієнтами концентрацій в макропорах і в мікро- й нанопорах частинок (від поверхні до центру). Математична модель такого переносу із врахуванням вищевказаних фізичних факторів описується у вигляді змішаної крайової задачі [1]: побудувати обмежене в області ( ) ( ) 1 1 0 1 1 0, 0, , , ; 0; n n k k n k D t r R z l l l l l + − + =   =    =       розв’язання системи рівнянь в часткових похідних, що записана в матричному вигляді: 1 2 1 1 2 1 inter1 1 inter2 2 1 1inter 1 intra 2 intra 1 intra ... 0 ... ... ...... ... ... ... 0 ... ... 0 ... ... ... ... ... 0 ... n n n n n Dc c Dc c t z z c cD D D D    + + + + +                  = −                         −        1 2 1 ... n r R q q r q + =                , (1) 1 2 1 intra 1 1 intra 2 22 2 intra 1 1 ... 0 ... 1 ... ... ... ...... ... 0 ... nn n D q qD q q r t t rr Dq q++ +                      =                         (2) з початковими умовами: ( ) 0, 0k tc t z = = , ( ) 0, 0,k tq t z = = (3) граничними умовами: ( ) 11 , , nnc t z l c ++ = = ( )1 , 0 0c t z z  = =  , (4) ( ) 0, , 0k rq t r z r =  =  , ( ) ( ), , ,k k kr Rq t r z K c t z= = . (5) і системою умов n-інтерфейсних взаємодій за координатою z : (4) Паралельне програмування розподілених систем і мереж [Введите текст] варіантів, кожен з яких виконується на заданій паралельній архітектурі з вимірюванням продуктивності (часу виконання). Засоби автотюнінгу використовують переписувальні правила [9] для трансформації програм. 2. Постановка задачі дворівневого переносу в неоднородній системі нанопористих частинок Масопереніс у системі неоднорідних середовищ, що складаються з дрібних частинок нанопористої структури, викликає два види масопереносу: дифузію в макропорах завдяки простору між частинками, й дифузію в системі мікро- й нанопор всередині частинок неоднорідного середовища. Для визначення внеску кожного з видів дифузії в систему загального масопереносу необхідно брати до уваги значення параметрів, що визначають адсорбційні рівноваги та ін. В даній роботі розглядається неоднорідне нанопористе середовище, яке складається з великої кількості ( 1)n+ тонких шарів, нанопористих сферичних частинок, що розташовані перпендикулярно до напрямку вхідного потоку й пов’язаних між собою системою умов n-інтерфейсних взаємодій. Це є визначаючим для неоднорідних тонких нанопористих зразків, особливо у випадку дифузії газу перед станом адсорбційної рівноваги із врахуванням системи багатоінтерфейсних взаємодій. Масопереніс відбувається через проникну поверхню ложа в двох напрямках: в осьовому — в просторі макропор ( z — напрямок вздовж висоти ложа, перпендикулярне до поверхні шарів) і радіальному — у просторі мікро- й нанопор. Еволюція системи у напрямку до рівноваги здійснюється градієнтами концентрацій в макропорах і в мікро- й нанопорах частинок (від поверхні до центру). Математична модель такого переносу із врахуванням вищевказаних фізичних факторів описується у вигляді змішаної крайової задачі [1]: побудувати обмежене в області ( ) ( ) 1 1 0 1 1 0, 0, , , ; 0; n n k k n k D t r R z l l l l l + − + =   =    =       розв’язання системи рівнянь в часткових похідних, що записана в матричному вигляді: 1 2 1 1 2 1 inter1 1 inter2 2 1 1inter 1 intra 2 intra 1 intra ... 0 ... ... ...... ... ... ... 0 ... ... 0 ... ... ... ... ... 0 ... n n n n n Dc c Dc c t z z c cD D D D    + + + + +                  = −                         −        1 2 1 ... n r R q q r q + =                , (1) 1 2 1 intra 1 1 intra 2 22 2 intra 1 1 ... 0 ... 1 ... ... ... ...... ... 0 ... nn n D q qD q q r t t rr Dq q++ +                      =                         (2) з початковими умовами: ( ) 0, 0k tc t z = = , ( ) 0, 0,k tq t z = = (3) граничними умовами: ( ) 11 , , nnc t z l c ++ = = ( )1 , 0 0c t z z  = =  , (4) ( ) 0, , 0k rq t r z r =  =  , ( ) ( ), , ,k k kr Rq t r z K c t z= = . (5) і системою умов n-інтерфейсних взаємодій за координатою z : (5) і системою умов n-інтерфейсних взаємодій за координатою z: 61 Паралельне програмування розподілених систем і мережПаралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод (6) Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений пра- вими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або криста- літів Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутріш- ньочастинкового простору. Зв’язок між концентраціями Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод в міжчастинковому просторі і концентраціями Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визна- чає умови адсорбційної рівноваги на поверхнях сферичних частинок, Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка-Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньо- частинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопере- носу Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод ґрунтується на використанні матриці стану системи Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочас- тинковому просторі [10]. Матриця визначається за формулою Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод де Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод — матриця даних експериментальних досліджень для і-го поверхневого та k-го часо- вого шарів (Рис. 1) [11]. Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод часові та просторові змінні t і z визначають конкретні стани системи ком- петитивного переносу для неоднорідного (за напрямком z) каталітичного середовища нанопористих части- нок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод для кожного з Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод шарів. Для ідентифікації цього розподілу (вектора) Паралельне програмування розподілених систем і мереж [Введите текст]  1( , ) ( , ) 0 k k k z lc t z c t z+ = − = , ( ) ( )1, , 0 k k k k z l c t z v c t z z z + =   − =    , (6) де k k k q K c   = , ( ) ( )2 0 1, , , R k kq t z q t x z rdr R =  , ( )int int 3 1 k k er k erR    − =  , 1, 1k n= + . Система диференціальних рівнянь (1) описує переніс у міжчастинковому просторі, обмежений правими частинами системи, що враховують вплив мікропереносу на зовнішніх поверхнях частинок або кристалітів ( )r R= для кожного k-го шару ложа. Система рівнянь (2) описує перенос в мікро- й нанопорах внутрішньочастинкового простору. Зв’язок між концентраціями kc в міжчастинковому просторі і концентраціями kq у внутрішньочастинковому просторі визначається системою правих крайових умов (5), що також визначає умови адсорбційної рівноваги на поверхнях сферичних частинок, 1k k kl l l+ = − — товщина k-го шару, R — радіус частинки. Розв’язок задачі будується із використанням різницевої схеми Кранка- Ніколсона [4]. 3. Алгоритм реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкової дифузії системи компетитивного переносу Процедура реалізації градієнтного методу ідентифікації коефіцієнтів внутрішньочастинкового масопереносу ( intram D , 1, 1m n= + ) ґрунтується на використанні матриці стану системи ( )θ intraM mm k it ,z ,D , яка відповідає сумарній накопиченій масі дифундованого компонента в порах частинок в міжчастинковому та внутрішньочастинковому просторі [10]. Матриця визначається за формулою ( ) ( ) ( ) 2 intra intra 0 ( ), 1, 1 1, , , , , , m m m R m m m L m n M t z U t z D q t r z D rdr R  = +   = +      , де 1, 1exp exp 1, km m n k N M M = + =  =   — матриця даних експериментальних досліджень для і-го поверхневого та k-го часового шарів (Рис. 1) [11]. Рис. 1. Експериментальні дані досліджень компетитивного масопереносу в неоднорідному нанопористому каталітичному середовищі [11] У матриці ( )θ intra, , mm k iM t z D часові та просторові змінні t і z визначають конкретні стани системи компетитивного переносу для неоднорідного (за напрямком z ) каталітичного середовища нанопористих частинок, для якого здійснюється ідентифікація кінетичних параметрів-коефіцієнтів внутрішньочастинкової дифузії intra , 1, 1 m D m n= + для кожного з 1n + шарів. Для ідентифікації цього розподілу (вектора) intram D використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод використовується один із градієнтних методів, математичне обґрунтування застосування яких до задач параметричної ідентифікації мультикомпонентних 62 Паралельне програмування розподілених систем і мереж розподілених систем представлено в [12, 13]. Виходячи зі специфіки задачі, найбільш придатним є метод мінімальних похибок, відповідно до якого, для визначення Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη -го наближення коефіцієнта дифузії у вну- трішньочастинковому просторі Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη , застосуємо таку градієнт-процедуру ідентифікації, визначену у ма- тричному вигляді: Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη де Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη — значення коефіцієнта для кожного θ-го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη , Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη , де Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη і Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη — множини предикатів і операторів, визначених на інформаційній множині; Паралельне програмування розподілених систем і мереж [Введите текст] мінімальних похибок, відповідно до якого, для визначення ( θ 1+ )-го наближення коефіцієнта дифузії у внутрішньочастинковому просторі intram D , застосуємо таку градієнт-процедуру ідентифікації, визначену у матричному вигляді: intra intra1 +1 θ 1 θ θ θ θ intra intra η ,..., , 1, 1, m m n D D J D D m n+  = −  = +    де θη — значення коефіцієнта для кожного θ -го кроку ітерації. Загальна схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії intram D , 1, 1,m n= + показана на Рис. 2. Чисельне моделювання та ідентифікація кінетичних параметрів системи розглянуті в розділі 4. Рис. 2. Блок схема алгоритму ідентифікації коефіцієнтів внутрішньочастинкової дифузії 4. Автоматизоване проєктування та налаштування паралельної програми реалізації схеми Кранка-Ніколсона Для проєктування програми реалізації методу Кранка-Ніколсона застосовано системи алгоритмічних алгебр [5], що призначені для високорівневого конструювання алгоритмів, поданих у вигляді схем. САА є двоосновною алгеброю = <{ , }; >GAGA Pr Op  , де Pr і Op — множини предикатів і операторів, визначених на інформаційній множині; GA — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується природно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує подання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Алгоритми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів + – Перевірка умови закінчення ітераційного процесу 10 intra 1m n m D + =     0 = ( )θ θ intra pmF J D=  θ+1 θ θ θ intra intra η mD D F= −  ( )θ θ intraη Qmin D= 2θ 1 θ intra intraerr D D+= − 1εerr  1 = + θ intram D Початкове наближення коефіцієнта Знаходження наступного наближення intraD Номер ітерації Обчислення умови завершення ітераційного процесу θ θ θ, , m m mM U q Обчислення значень , , m m mM U q за схемою Кранка-Ніколсон Обчислення градієнта від функціоналу нев’язки Знаходження значення коефіцієнта θη — сигнатура операцій, що складається з логічних (диз’юнкції, кон’юнкції, заперечення) та операторних конструкцій, що будуть розглянуті далі. В даній роботі використовується при- – + 63 Паралельне програмування розподілених систем і мереж родно-лінгвістична форма запису операцій. САА покладено в основу мови САА/1 [5], яка використовує по- дання алгоритмів, близьке до природної мови й може бути перекладена в цільову мову програмування. Ал- горитми, подані в САА/1, називаються САА-схемами. Ідентифікатори предикатів записуються в одинарних лапках, операторів — у подвійних. Предикати та оператори в САА/1 можуть бути базисними або складеними. Базисні елементи є елементарними атомарними абстракціями в САА-схемах. Складені оператори будуються з базисних на основі таких операцій: послідовне виконання операторів: Паралельне програмування розподілених систем і мереж [Введите текст] записуються в одинарних лапках, операторів — у подвійних. Предикати та оператори в САА/1 можуть бути базисними або складеними. Базисні елементи є елементарними атомарними абстракціями в САА-схемах. Складені оператори будуються з базисних на основі таких операцій: • послідовне виконання операторів: “ 1”; “ 2”;operator operator • розгалуження: IF ‘ ’ THEN “ 1” ELSE “ 2” END IF;condition operator operator • цикл for: FOR ( FROM TO ) “ ” END OF LOOP;counter start fin operator • асинхронне виконання p операторів (потоків): PARALLEL( 1,..., )( “ ” );j p operator j= • контрольна точка: CP ‘ ’condition , що пов’язана з умовою синхронізації, яка має значення “хибність” до тих пір, поки обчислювальний процес не досягнув цієї точки в схемі, і значення “істина” з моменту досягнення точки; • синхронізатор: WAIT ‘ ’condition , який затримує обчислення доти, поки значення умови синхронізації не стане істинним. Розроблений інтегрований інструментарій проєктування та синтезу програм [5, 8] забезпечує автоматизоване конструювання схем алгоритмів та генерацію відповідного коду у цільових мовах програмування (C, C++, Java). Алгоритми проектуються із використанням списку САА конструкцій та дерева. Користувач обирає конструкції зі списку та додає їх у дерево конструювання алгоритму. На кожному кроці процесу проєктування, система дозволяє користувачу обирати лише ті конструкції, внесення яких до схеми не порушує її синтаксичну правильність. Дерево алгоритму далі використовується для автоматичної генерації тексту САА схеми та коду мовою програмування. Відображення кожної САА конструкції в текст мовою програмування вказано як шаблон в базі даних інтегрованого інструментарію. Розглянемо процес розпаралелювання однієї з підпрограм реалізації схеми Кранка-Ніколсона. Послідовну САА-схему цієї підпрограми, спроектовану із використанням інтегрованого інструментарію, наведено нижче. Схема є циклом за змінною [1,..., ]k N , у якому функції iterate_c(k) та iterate_q(k) обчислюють k-й шар для величин концентрації kc та kq в міжчастинковому та внутрішньочастинковому просторі відповідно. SCHEME CRANK-NICOLSON SEQUENTIAL ==== “iterations” ==== FOR (k FROM 1 TO N) “iterate_c(k)”; “iterate_q(k)” END OF LOOP END OF SCHEME Розпаралелювання схеми полягає в розбитті сегменту [1... ]N на NumThreads секцій, що обробляються одночасно. САА-схема розпаралеленого алгоритму є такою: SCHEME CRANK-NICOLSON PARALLEL ==== “iterations” ==== PARALLEL(j = 1,..., NumThreads) ( “IterateThread(j)” ); WAIT ‘Processing in all (NumThreads) threads is finished’; “IterateThread(j)” ==== “chunk := N / NumThreads”; “start := (j – 1) * chunk + 1”; “end := (j – 1) * chunk + chunk”; IF (j = NumThreads) THEN “end := N” END IF; FOR (k FROM start TO end) “iterate_c(k)”; “iterate_q(k)” END OF LOOP; розгалуження: Паралельне програмування розподілених систем і мереж [Введите текст] записуються в одинарних лапках, операторів — у подвійних. Предикати та оператори в САА/1 можуть бути базисними або складеними. Базисні елементи є елементарними атомарними абстракціями в САА-схемах. Складені оператори будуються з базисних на основі таких операцій: • послідовне виконання операторів: “ 1”; “ 2”;operator operator • розгалуження: IF ‘ ’ THEN “ 1” ELSE “ 2” END IF;condition operator operator • цикл for: FOR ( FROM TO ) “ ” END OF LOOP;counter start fin operator • асинхронне виконання p операторів (потоків): PARALLEL( 1,..., )( “ ” );j p operator j= • контрольна точка: CP ‘ ’condition , що пов’язана з умовою синхронізації, яка має значення “хибність” до тих пір, поки обчислювальний процес не досягнув цієї точки в схемі, і значення “істина” з моменту досягнення точки; • синхронізатор: WAIT ‘ ’condition , який затримує обчислення доти, поки значення умови синхронізації не стане істинним. Розроблений інтегрований інструментарій проєктування та синтезу програм [5, 8] забезпечує автоматизоване конструювання схем алгоритмів та генерацію відповідного коду у цільових мовах програмування (C, C++, Java). Алгоритми проектуються із використанням списку САА конструкцій та дерева. Користувач обирає конструкції зі списку та додає їх у дерево конструювання алгоритму. На кожному кроці процесу проєктування, система дозволяє користувачу обирати лише ті конструкції, внесення яких до схеми не порушує її синтаксичну правильність. Дерево алгоритму далі використовується для автоматичної генерації тексту САА схеми та коду мовою програмування. Відображення кожної САА конструкції в текст мовою програмування вказано як шаблон в базі даних інтегрованого інструментарію. Розглянемо процес розпаралелювання однієї з підпрограм реалізації схеми Кранка-Ніколсона. Послідовну САА-схему цієї підпрограми, спроектовану із використанням інтегрованого інструментарію, наведено нижче. Схема є циклом за змінною [1,..., ]k N , у якому функції iterate_c(k) та iterate_q(k) обчислюють k-й шар для величин концентрації kc та kq в міжчастинковому та внутрішньочастинковому просторі відповідно. SCHEME CRANK-NICOLSON SEQUENTIAL ==== “iterations” ==== FOR (k FROM 1 TO N) “iterate_c(k)”; “iterate_q(k)” END OF LOOP END OF SCHEME Розпаралелювання схеми полягає в розбитті сегменту [1... ]N на NumThreads секцій, що обробляються одночасно. САА-схема розпаралеленого алгоритму є такою: SCHEME CRANK-NICOLSON PARALLEL ==== “iterations” ==== PARALLEL(j = 1,..., NumThreads) ( “IterateThread(j)” ); WAIT ‘Processing in all (NumThreads) threads is finished’; “IterateThread(j)” ==== “chunk := N / NumThreads”; “start := (j – 1) * chunk + 1”; “end := (j – 1) * chunk + chunk”; IF (j = NumThreads) THEN “end := N” END IF; FOR (k FROM start TO end) “iterate_c(k)”; “iterate_q(k)” END OF LOOP; цикл for: Паралельне програмування розподілених систем і мереж [Введите текст] записуються в одинарних лапках, операторів — у подвійних. Предикати та оператори в САА/1 можуть бути базисними або складеними. Базисні елементи є елементарними атомарними абстракціями в САА-схемах. Складені оператори будуються з базисних на основі таких операцій: • послідовне виконання операторів: “ 1”; “ 2”;operator operator • розгалуження: IF ‘ ’ THEN “ 1” ELSE “ 2” END IF;condition operator operator • цикл for: FOR ( FROM TO ) “ ” END OF LOOP;counter start fin operator • асинхронне виконання p операторів (потоків): PARALLEL( 1,..., )( “ ” );j p operator j= • контрольна точка: CP ‘ ’condition , що пов’язана з умовою синхронізації, яка має значення “хибність” до тих пір, поки обчислювальний процес не досягнув цієї точки в схемі, і значення “істина” з моменту досягнення точки; • синхронізатор: WAIT ‘ ’condition , який затримує обчислення доти, поки значення умови синхронізації не стане істинним. Розроблений інтегрований інструментарій проєктування та синтезу програм [5, 8] забезпечує автоматизоване конструювання схем алгоритмів та генерацію відповідного коду у цільових мовах програмування (C, C++, Java). Алгоритми проектуються із використанням списку САА конструкцій та дерева. Користувач обирає конструкції зі списку та додає їх у дерево конструювання алгоритму. На кожному кроці процесу проєктування, система дозволяє користувачу обирати лише ті конструкції, внесення яких до схеми не порушує її синтаксичну правильність. Дерево алгоритму далі використовується для автоматичної генерації тексту САА схеми та коду мовою програмування. Відображення кожної САА конструкції в текст мовою програмування вказано як шаблон в базі даних інтегрованого інструментарію. Розглянемо процес розпаралелювання однієї з підпрограм реалізації схеми Кранка-Ніколсона. Послідовну САА-схему цієї підпрограми, спроектовану із використанням інтегрованого інструментарію, наведено нижче. Схема є циклом за змінною [1,..., ]k N , у якому функції iterate_c(k) та iterate_q(k) обчислюють k-й шар для величин концентрації kc та kq в міжчастинковому та внутрішньочастинковому просторі відповідно. SCHEME CRANK-NICOLSON SEQUENTIAL ==== “iterations” ==== FOR (k FROM 1 TO N) “iterate_c(k)”; “iterate_q(k)” END OF LOOP END OF SCHEME Розпаралелювання схеми полягає в розбитті сегменту [1... ]N на NumThreads секцій, що обробляються одночасно. САА-схема розпаралеленого алгоритму є такою: SCHEME CRANK-NICOLSON PARALLEL ==== “iterations” ==== PARALLEL(j = 1,..., NumThreads) ( “IterateThread(j)” ); WAIT ‘Processing in all (NumThreads) threads is finished’; “IterateThread(j)” ==== “chunk := N / NumThreads”; “start := (j – 1) * chunk + 1”; “end := (j – 1) * chunk + chunk”; IF (j = NumThreads) THEN “end := N” END IF; FOR (k FROM start TO end) “iterate_c(k)”; “iterate_q(k)” END OF LOOP; асинхронне виконання p операторів (потоків): Паралельне програмування розподілених систем і мереж [Введите текст] записуються в одинарних лапках, операторів — у подвійних. Предикати та оператори в САА/1 можуть бути базисними або складеними. Базисні елементи є елементарними атомарними абстракціями в САА-схемах. Складені оператори будуються з базисних на основі таких операцій: • послідовне виконання операторів: “ 1”; “ 2”;operator operator • розгалуження: IF ‘ ’ THEN “ 1” ELSE “ 2” END IF;condition operator operator • цикл for: FOR ( FROM TO ) “ ” END OF LOOP;counter start fin operator • асинхронне виконання p операторів (потоків): PARALLEL( 1,..., )( “ ” );j p operator j= • контрольна точка: CP ‘ ’condition , що пов’язана з умовою синхронізації, яка має значення “хибність” до тих пір, поки обчислювальний процес не досягнув цієї точки в схемі, і значення “істина” з моменту досягнення точки; • синхронізатор: WAIT ‘ ’condition , який затримує обчислення доти, поки значення умови синхронізації не стане істинним. Розроблений інтегрований інструментарій проєктування та синтезу програм [5, 8] забезпечує автоматизоване конструювання схем алгоритмів та генерацію відповідного коду у цільових мовах програмування (C, C++, Java). Алгоритми проектуються із використанням списку САА конструкцій та дерева. Користувач обирає конструкції зі списку та додає їх у дерево конструювання алгоритму. На кожному кроці процесу проєктування, система дозволяє користувачу обирати лише ті конструкції, внесення яких до схеми не порушує її синтаксичну правильність. Дерево алгоритму далі використовується для автоматичної генерації тексту САА схеми та коду мовою програмування. Відображення кожної САА конструкції в текст мовою програмування вказано як шаблон в базі даних інтегрованого інструментарію. Розглянемо процес розпаралелювання однієї з підпрограм реалізації схеми Кранка-Ніколсона. Послідовну САА-схему цієї підпрограми, спроектовану із використанням інтегрованого інструментарію, наведено нижче. Схема є циклом за змінною [1,..., ]k N , у якому функції iterate_c(k) та iterate_q(k) обчислюють k-й шар для величин концентрації kc та kq в міжчастинковому та внутрішньочастинковому просторі відповідно. SCHEME CRANK-NICOLSON SEQUENTIAL ==== “iterations” ==== FOR (k FROM 1 TO N) “iterate_c(k)”; “iterate_q(k)” END OF LOOP END OF SCHEME Розпаралелювання схеми полягає в розбитті сегменту [1... ]N на NumThreads секцій, що обробляються одночасно. САА-схема розпаралеленого алгоритму є такою: SCHEME CRANK-NICOLSON PARALLEL ==== “iterations” ==== PARALLEL(j = 1,..., NumThreads) ( “IterateThread(j)” ); WAIT ‘Processing in all (NumThreads) threads is finished’; “IterateThread(j)” ==== “chunk := N / NumThreads”; “start := (j – 1) * chunk + 1”; “end := (j – 1) * chunk + chunk”; IF (j = NumThreads) THEN “end := N” END IF; FOR (k FROM start TO end) “iterate_c(k)”; “iterate_q(k)” END OF LOOP; контрольна точка: Паралельне програмування розподілених систем і мереж [Введите текст] записуються в одинарних лапках, операторів — у подвійних. Предикати та оператори в САА/1 можуть бути базисними або складеними. Базисні елементи є елементарними атомарними абстракціями в САА-схемах. Складені оператори будуються з базисних на основі таких операцій: • послідовне виконання операторів: “ 1”; “ 2”;operator operator • розгалуження: IF ‘ ’ THEN “ 1” ELSE “ 2” END IF;condition operator operator • цикл for: FOR ( FROM TO ) “ ” END OF LOOP;counter start fin operator • асинхронне виконання p операторів (потоків): PARALLEL( 1,..., )( “ ” );j p operator j= • контрольна точка: CP ‘ ’condition , що пов’язана з умовою синхронізації, яка має значення “хибність” до тих пір, поки обчислювальний процес не досягнув цієї точки в схемі, і значення “істина” з моменту досягнення точки; • синхронізатор: WAIT ‘ ’condition , який затримує обчислення доти, поки значення умови синхронізації не стане істинним. Розроблений інтегрований інструментарій проєктування та синтезу програм [5, 8] забезпечує автоматизоване конструювання схем алгоритмів та генерацію відповідного коду у цільових мовах програмування (C, C++, Java). Алгоритми проектуються із використанням списку САА конструкцій та дерева. Користувач обирає конструкції зі списку та додає їх у дерево конструювання алгоритму. На кожному кроці процесу проєктування, система дозволяє користувачу обирати лише ті конструкції, внесення яких до схеми не порушує її синтаксичну правильність. Дерево алгоритму далі використовується для автоматичної генерації тексту САА схеми та коду мовою програмування. Відображення кожної САА конструкції в текст мовою програмування вказано як шаблон в базі даних інтегрованого інструментарію. Розглянемо процес розпаралелювання однієї з підпрограм реалізації схеми Кранка-Ніколсона. Послідовну САА-схему цієї підпрограми, спроектовану із використанням інтегрованого інструментарію, наведено нижче. Схема є циклом за змінною [1,..., ]k N , у якому функції iterate_c(k) та iterate_q(k) обчислюють k-й шар для величин концентрації kc та kq в міжчастинковому та внутрішньочастинковому просторі відповідно. SCHEME CRANK-NICOLSON SEQUENTIAL ==== “iterations” ==== FOR (k FROM 1 TO N) “iterate_c(k)”; “iterate_q(k)” END OF LOOP END OF SCHEME Розпаралелювання схеми полягає в розбитті сегменту [1... ]N на NumThreads секцій, що обробляються одночасно. САА-схема розпаралеленого алгоритму є такою: SCHEME CRANK-NICOLSON PARALLEL ==== “iterations” ==== PARALLEL(j = 1,..., NumThreads) ( “IterateThread(j)” ); WAIT ‘Processing in all (NumThreads) threads is finished’; “IterateThread(j)” ==== “chunk := N / NumThreads”; “start := (j – 1) * chunk + 1”; “end := (j – 1) * chunk + chunk”; IF (j = NumThreads) THEN “end := N” END IF; FOR (k FROM start TO end) “iterate_c(k)”; “iterate_q(k)” END OF LOOP; , що пов’язана з умовою синхронізації, яка має значення “хибність” до тих пір, поки обчислювальний процес не досягнув цієї точки в схемі, і значення “істина” з моменту досягнення точки; синхронізатор: Паралельне програмування розподілених систем і мереж [Введите текст] записуються в одинарних лапках, операторів — у подвійних. Предикати та оператори в САА/1 можуть бути базисними або складеними. Базисні елементи є елементарними атомарними абстракціями в САА-схемах. Складені оператори будуються з базисних на основі таких операцій: • послідовне виконання операторів: “ 1”; “ 2”;operator operator • розгалуження: IF ‘ ’ THEN “ 1” ELSE “ 2” END IF;condition operator operator • цикл for: FOR ( FROM TO ) “ ” END OF LOOP;counter start fin operator • асинхронне виконання p операторів (потоків): PARALLEL( 1,..., )( “ ” );j p operator j= • контрольна точка: CP ‘ ’condition , що пов’язана з умовою синхронізації, яка має значення “хибність” до тих пір, поки обчислювальний процес не досягнув цієї точки в схемі, і значення “істина” з моменту досягнення точки; • синхронізатор: WAIT ‘ ’condition , який затримує обчислення доти, поки значення умови синхронізації не стане істинним. Розроблений інтегрований інструментарій проєктування та синтезу програм [5, 8] забезпечує автоматизоване конструювання схем алгоритмів та генерацію відповідного коду у цільових мовах програмування (C, C++, Java). Алгоритми проектуються із використанням списку САА конструкцій та дерева. Користувач обирає конструкції зі списку та додає їх у дерево конструювання алгоритму. На кожному кроці процесу проєктування, система дозволяє користувачу обирати лише ті конструкції, внесення яких до схеми не порушує її синтаксичну правильність. Дерево алгоритму далі використовується для автоматичної генерації тексту САА схеми та коду мовою програмування. Відображення кожної САА конструкції в текст мовою програмування вказано як шаблон в базі даних інтегрованого інструментарію. Розглянемо процес розпаралелювання однієї з підпрограм реалізації схеми Кранка-Ніколсона. Послідовну САА-схему цієї підпрограми, спроектовану із використанням інтегрованого інструментарію, наведено нижче. Схема є циклом за змінною [1,..., ]k N , у якому функції iterate_c(k) та iterate_q(k) обчислюють k-й шар для величин концентрації kc та kq в міжчастинковому та внутрішньочастинковому просторі відповідно. SCHEME CRANK-NICOLSON SEQUENTIAL ==== “iterations” ==== FOR (k FROM 1 TO N) “iterate_c(k)”; “iterate_q(k)” END OF LOOP END OF SCHEME Розпаралелювання схеми полягає в розбитті сегменту [1... ]N на NumThreads секцій, що обробляються одночасно. САА-схема розпаралеленого алгоритму є такою: SCHEME CRANK-NICOLSON PARALLEL ==== “iterations” ==== PARALLEL(j = 1,..., NumThreads) ( “IterateThread(j)” ); WAIT ‘Processing in all (NumThreads) threads is finished’; “IterateThread(j)” ==== “chunk := N / NumThreads”; “start := (j – 1) * chunk + 1”; “end := (j – 1) * chunk + chunk”; IF (j = NumThreads) THEN “end := N” END IF; FOR (k FROM start TO end) “iterate_c(k)”; “iterate_q(k)” END OF LOOP; , який затримує обчислення доти, поки значення умови синхронізації не стане істинним. Розроблений інтегрований інструментарій проєктування та синтезу програм [5, 8] забезпечує авто- матизоване конструювання схем алгоритмів та генерацію відповідного коду у цільових мовах програмування (C, C++, Java). Алгоритми проектуються із використанням списку САА конструкцій та дерева. Користувач обирає конструкції зі списку та додає їх у дерево конструювання алгоритму. На кожному кроці процесу про- єктування, система дозволяє користувачу обирати лише ті конструкції, внесення яких до схеми не порушує її синтаксичну правильність. Дерево алгоритму далі використовується для автоматичної генерації тексту САА схеми та коду мовою програмування. Відображення кожної САА конструкції в текст мовою програмування вказано як шаблон в базі даних інтегрованого інструментарію. Розглянемо процес розпаралелювання однієї з підпрограм реалізації схеми Кранка-Ніколсона. Послідов- ну САА-схему цієї підпрограми, спроектовану із використанням інтегрованого інструментарію, наведено нижче. Схема є циклом за змінною Паралельне програмування розподілених систем і мереж [Введите текст] записуються в одинарних лапках, операторів — у подвійних. Предикати та оператори в САА/1 можуть бути базисними або складеними. Базисні елементи є елементарними атомарними абстракціями в САА-схемах. Складені оператори будуються з базисних на основі таких операцій: • послідовне виконання операторів: “ 1”; “ 2”;operator operator • розгалуження: IF ‘ ’ THEN “ 1” ELSE “ 2” END IF;condition operator operator • цикл for: FOR ( FROM TO ) “ ” END OF LOOP;counter start fin operator • асинхронне виконання p операторів (потоків): PARALLEL( 1,..., )( “ ” );j p operator j= • контрольна точка: CP ‘ ’condition , що пов’язана з умовою синхронізації, яка має значення “хибність” до тих пір, поки обчислювальний процес не досягнув цієї точки в схемі, і значення “істина” з моменту досягнення точки; • синхронізатор: WAIT ‘ ’condition , який затримує обчислення доти, поки значення умови синхронізації не стане істинним. Розроблений інтегрований інструментарій проєктування та синтезу програм [5, 8] забезпечує автоматизоване конструювання схем алгоритмів та генерацію відповідного коду у цільових мовах програмування (C, C++, Java). Алгоритми проектуються із використанням списку САА конструкцій та дерева. Користувач обирає конструкції зі списку та додає їх у дерево конструювання алгоритму. На кожному кроці процесу проєктування, система дозволяє користувачу обирати лише ті конструкції, внесення яких до схеми не порушує її синтаксичну правильність. Дерево алгоритму далі використовується для автоматичної генерації тексту САА схеми та коду мовою програмування. Відображення кожної САА конструкції в текст мовою програмування вказано як шаблон в базі даних інтегрованого інструментарію. Розглянемо процес розпаралелювання однієї з підпрограм реалізації схеми Кранка-Ніколсона. Послідовну САА-схему цієї підпрограми, спроектовану із використанням інтегрованого інструментарію, наведено нижче. Схема є циклом за змінною [1,..., ]k N , у якому функції iterate_c(k) та iterate_q(k) обчислюють k-й шар для величин концентрації kc та kq в міжчастинковому та внутрішньочастинковому просторі відповідно. SCHEME CRANK-NICOLSON SEQUENTIAL ==== “iterations” ==== FOR (k FROM 1 TO N) “iterate_c(k)”; “iterate_q(k)” END OF LOOP END OF SCHEME Розпаралелювання схеми полягає в розбитті сегменту [1... ]N на NumThreads секцій, що обробляються одночасно. САА-схема розпаралеленого алгоритму є такою: SCHEME CRANK-NICOLSON PARALLEL ==== “iterations” ==== PARALLEL(j = 1,..., NumThreads) ( “IterateThread(j)” ); WAIT ‘Processing in all (NumThreads) threads is finished’; “IterateThread(j)” ==== “chunk := N / NumThreads”; “start := (j – 1) * chunk + 1”; “end := (j – 1) * chunk + chunk”; IF (j = NumThreads) THEN “end := N” END IF; FOR (k FROM start TO end) “iterate_c(k)”; “iterate_q(k)” END OF LOOP; , у якому функції iterate_c(k) та iterate_q(k) обчислюють k-й шар для вели- чин концентрації ck та qk в міжчастинковому та внутрішньочастинковому просторі відповідно. SCHEME CRANK-NICOLSON SEQUENTIAL ==== “iterations” ==== FOR (k FROM 1 TO N) “iterate_c(k)”; “iterate_q(k)” END OF LOOP END OF SCHEME Розпаралелювання схеми полягає в розбитті сегменту [1...N] на NumThreads секцій, що обробляються одночасно. САА-схема розпаралеленого алгоритму є такою: SCHEME CRANK-NICOLSON PARALLEL ==== “iterations” ==== PARALLEL(j = 1,..., NumThreads) ( “IterateThread(j)” ); WAIT ‘Processing in all (NumThreads) threads is finished’; “IterateThread(j)” ==== “chunk := N / NumThreads”; “start := (j – 1) * chunk + 1”; “end := (j – 1) * chunk + chunk”; IF (j = NumThreads) THEN “end := N” END IF; FOR (k FROM start TO end) “iterate_c(k)”; “iterate_q(k)” END OF LOOP; CP ‘Processing in thread (j) is finished’; END OF SCHEME 64 Паралельне програмування розподілених систем і мереж На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил сис- теми TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спе- ціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробле- ної системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для авто- матизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів-прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встанов- лює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні [1...8] з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралель- ної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура пара- метричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експе- риментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів Паралельне програмування розподілених систем і мереж [Введите текст] CP ‘Processing in thread (j) is finished’; END OF SCHEME На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил системи TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спеціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробленої системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для автоматизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів- прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встановлює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні  1 8 з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралельної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура параметричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експериментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів intram D , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних 1, exp 1,ki i M k N M = =      є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отримані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бензолу для моментів часу 0.02 год = і 0.39 год. = Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії intram D , 1, 1m n= + для внутрішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псевдо-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні 12 143 10 4 10− −   м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процедура ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі intram D для часових зрізів 0.04 год, = 0.50 год = і для 3.83 год. = Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопористому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних Паралельне програмування розподілених систем і мереж [Введите текст] CP ‘Processing in thread (j) is finished’; END OF SCHEME На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил системи TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спеціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробленої системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для автоматизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів- прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встановлює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні  1 8 з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралельної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура параметричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експериментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів intram D , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних 1, exp 1,ki i M k N M = =      є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отримані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бензолу для моментів часу 0.02 год = і 0.39 год. = Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії intram D , 1, 1m n= + для внутрішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псевдо-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні 12 143 10 4 10− −   м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процедура ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі intram D для часових зрізів 0.04 год, = 0.50 год = і для 3.83 год. = Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопористому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отри- мані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бен- золу для моментів часу Паралельне програмування розподілених систем і мереж [Введите текст] CP ‘Processing in thread (j) is finished’; END OF SCHEME На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил системи TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спеціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробленої системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для автоматизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів- прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встановлює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні  1 8 з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралельної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура параметричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експериментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів intram D , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних 1, exp 1,ki i M k N M = =      є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отримані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бензолу для моментів часу 0.02 год = і 0.39 год. = Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії intram D , 1, 1m n= + для внутрішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псевдо-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні 12 143 10 4 10− −   м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процедура ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі intram D для часових зрізів 0.04 год, = 0.50 год = і для 3.83 год. = Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопористому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних і Паралельне програмування розподілених систем і мереж [Введите текст] CP ‘Processing in thread (j) is finished’; END OF SCHEME На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил системи TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спеціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробленої системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для автоматизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів- прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встановлює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні  1 8 з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралельної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура параметричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експериментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів intram D , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних 1, exp 1,ki i M k N M = =      є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отримані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бензолу для моментів часу 0.02 год = і 0.39 год. = Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії intram D , 1, 1m n= + для внутрішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псевдо-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні 12 143 10 4 10− −   м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процедура ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі intram D для часових зрізів 0.04 год, = 0.50 год = і для 3.83 год. = Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопористому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії Паралельне програмування розподілених систем і мереж [Введите текст] CP ‘Processing in thread (j) is finished’; END OF SCHEME На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил системи TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спеціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробленої системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для автоматизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів- прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встановлює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні  1 8 з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралельної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура параметричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експериментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів intram D , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних 1, exp 1,ki i M k N M = =      є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отримані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бензолу для моментів часу 0.02 год = і 0.39 год. = Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії intram D , 1, 1m n= + для внутрішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псевдо-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні 12 143 10 4 10− −   м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процедура ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі intram D для часових зрізів 0.04 год, = 0.50 год = і для 3.83 год. = Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопористому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних для вну- трішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псев- до-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні Паралельне програмування розподілених систем і мереж [Введите текст] CP ‘Processing in thread (j) is finished’; END OF SCHEME На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил системи TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спеціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробленої системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для автоматизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів- прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встановлює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні  1 8 з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралельної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура параметричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експериментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів intram D , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних 1, exp 1,ki i M k N M = =      є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отримані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бензолу для моментів часу 0.02 год = і 0.39 год. = Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії intram D , 1, 1m n= + для внутрішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псевдо-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні 12 143 10 4 10− −   м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процедура ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі intram D для часових зрізів 0.04 год, = 0.50 год = і для 3.83 год. = Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопористому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процеду- ра ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі Паралельне програмування розподілених систем і мереж [Введите текст] CP ‘Processing in thread (j) is finished’; END OF SCHEME На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил системи TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спеціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробленої системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для автоматизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів- прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встановлює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні  1 8 з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралельної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура параметричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експериментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів intram D , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних 1, exp 1,ki i M k N M = =      є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отримані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бензолу для моментів часу 0.02 год = і 0.39 год. = Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії intram D , 1, 1m n= + для внутрішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псевдо-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні 12 143 10 4 10− −   м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процедура ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі intram D для часових зрізів 0.04 год, = 0.50 год = і для 3.83 год. = Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопористому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних для часових зрізів Паралельне програмування розподілених систем і мереж [Введите текст] CP ‘Processing in thread (j) is finished’; END OF SCHEME На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил системи TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спеціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробленої системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для автоматизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів- прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встановлює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні  1 8 з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралельної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура параметричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експериментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів intram D , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних 1, exp 1,ki i M k N M = =      є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отримані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бензолу для моментів часу 0.02 год = і 0.39 год. = Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії intram D , 1, 1m n= + для внутрішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псевдо-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні 12 143 10 4 10− −   м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процедура ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі intram D для часових зрізів 0.04 год, = 0.50 год = і для 3.83 год. = Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопористому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних Паралельне програмування розподілених систем і мереж [Введите текст] CP ‘Processing in thread (j) is finished’; END OF SCHEME На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил системи TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спеціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробленої системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для автоматизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів- прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встановлює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні  1 8 з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралельної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура параметричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експериментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів intram D , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних 1, exp 1,ki i M k N M = =      є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отримані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бензолу для моментів часу 0.02 год = і 0.39 год. = Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії intram D , 1, 1m n= + для внутрішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псевдо-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні 12 143 10 4 10− −   м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процедура ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі intram D для часових зрізів 0.04 год, = 0.50 год = і для 3.83 год. = Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопористому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних і для Паралельне програмування розподілених систем і мереж [Введите текст] CP ‘Processing in thread (j) is finished’; END OF SCHEME На основі сконструйованої схеми інтегрований інструментарій виконав автоматизовану генерацію коду мовою Java. Застосування формальних методів в інтегрованому інструментарії та переписувальних правил системи TermWare [8, 9] дає можливість автоматизації ручної праці програмістів та виконання більш складного розпаралелювання алгоритмів. TermWare надає мову для опису переписувальних правил, що оперують спеціальними структурами даних — термами, а також засоби обробки й інтерпретації правил для трансформації термів. Продуктивність програм, щпроєктуються, може бути поліпшена за рахунок використання розробленої системи автоматичного налаштовування програм TuningGenie [6, 7]. TuningGenie призначена для автоматизованої генерації застосунків-автотюнерів з вихідного коду. Ідея автотюнера полягає в емпіричному оцінюванні кількох версій вхідної програми та вибору найкращої — з меншеним часом виконання й вищою точністю результатів. Система працює з текстом програми, використовуючи експертні знання розробника, який додає певні метадані (імена параметрів та діапазони значень) у вихідний код у вигляді спеціальних коментарів- прагм. Використовуючи такі експертні знання, кількість варіантів програми для оцінювання зменшується, що підвищує швидкодію автотюнера. Нижче наведено приклад однієї з прагм TuningGenie, що називається tunableParam. Ця прагма встановлює можливі значення для змінної NumThreads, у якій зберігається кількість паралельних гілок, у діапазоні  1 8 з кроком 1: // tunableParam name=NumThreads start=1 stop=8 step=1 int NumThreads = 1; Прагма tunableParam застосовується для алгоритмів, що використовують розпаралелювання за даними: вона дозволяє знайти оптимальну декомпозицію обчислень, оцінюючи розмір блоку, який виконується на одному процесорі. Вона також може застосовуватися, коли необхідно оцінити оптимальну кількість обмежених ресурсів, наприклад, розмір кешу. 5. Результати експериментів У даному розділі розглядаються результати чисельного моделювання системи й ідентифікації кінетичних параметрів неоднорідної нанопористої системи масопереносу, а також автоматичного налаштовування паралельної програми реалізації схеми Кранка-Ніколсона на цільове середовище виконання. 4.1. Чисельне моделювання та ідентифікація кінетичних параметрів системи. Процедура параметричної ідентифікації кінетичних параметрів систем полягає у визначенні значень коефіцієнтів дифузії у внутрішньочастинковому просторі, для чого застосовується градієнтний метод. Використовуючи як експериментальні дані результати дослідження монодифузії газів (бензол и гексан) (Рис. 1), проведена процедура ідентифікації значень коефіцієнтів intram D , що визначають хід процесу дифузії в частинці. В даному випадку елементами матриці експериментальних даних 1, exp 1,ki i M k N M = =      є значення розподілу сумарної поглинутої маси вздовж координати z для різних моментів часу протікання процесу дифузії. Результати ідентифікації, проведеної відповідно до розглянутої методики й з використанням зазначених експериментальних даних, подані на Рис. 3, 4. Як і результати експериментальних досліджень (Рис. 1), вони отримані для різних часових зрізів для випадків процесу незалежної дифузії бензолу й гексану. На Рис. 3, а і Рис. 4, а наведені графічні розподіли значень ідентифікованих коефіцієнтів дифузії вздовж координати z при дифузії бензолу для моментів часу 0.02 год = і 0.39 год. = Із наведених графічних результатів процесу ідентифікації коефіцієнтів дифузії intram D , 1, 1m n= + для внутрішньочастинкового простору, можна виділити загальні характерні закономірності, що полягають в деякому псевдо-експоненціальному спаданні значень коефіцієнтів дифузії в діапазоні 12 143 10 4 10− −   м/cек2 (з врахуванням похибок обчислення). Подібна картина спостерігається і для процесу дифузії гексану, для якого проведена процедура ідентифікації коефіцієнтів дифузії у внутрішньочастинковому просторі intram D для часових зрізів 0.04 год, = 0.50 год = і для 3.83 год. = Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопористому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних Результати проведеної ідентифікації подані на Рис. 4, а. Отримані результати ідентифікованих розподілів коефіцієнтів дифузії у внутрішньочастинковому просторі вздовж координати z (основний напрямок неоднорідності системи), дозволяють достатньо точно моделювати концентраційні поля й інтегральні розподіли маси в неоднорідному каталітичному нанопорис- тому шарі. На Рис. 3, б і Рис. 4, б подані концентраційні профілі, що демонструють порівняльний аналіз модельних кривих (2), побудованих в результаті чисельного розв’язку задачі (1)–(6) з використанням схеми Кранка-Ніколсона і результатів ідентифікованих коефіцієнтів всередині дифузії частинок з апроксимаціями експериментальних кривих розподілів поглинутої маси в нанопористому шарі, використаними для процеду- ри ідентифікації. Як видно з поданих концентраційних розподілів (Рис. 3, б і Рис. 4, б), значення модельних і експеримен- тальних профілів для всіх отриманих графіків інтегральної маси Паралельне програмування розподілених систем і мереж [Введите текст] кривих (2), побудованих в результаті чисельного розв’язку задачі (1)–(6) з використанням схеми Кранка- Ніколсона і результатів ідентифікованих коефіцієнтів всередині дифузії частинок з апроксимаціями експериментальних кривих розподілів поглинутої маси в нанопористому шарі, використаними для процедури ідентифікації. для 0.02 = для 0.39 = а) б) Рис. 3. Результати ідентифікації коефіцієнтів дифузії для моментів часу 0.02 = і 0.39 = для дифузії бензолу: а) розподіл коефіцієнтів дифузії intram D у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих Як видно з поданих концентраційних розподілів (Рис. 3, б і Рис. 4, б), значення модельних і експериментальних профілів для всіх отриманих графіків інтегральної маси ( ),M t z достатньою мірою узгоджуються між собою завдяки отриманим якісним розв’язкам оберненої задачі, тобто розподілам коефіцієнтів дифузії intram D . Приблизно за 80 % довжини модельні криві забезпечують повний збіг із експериментальними значеннями. Такий підхід забезпечує достатньо високий ступінь адекватності математичних моделей і методик ідентифікації параметрів досліджуваних неоднорідних розподілених систем багатокомпонентного переносу. 4.2. Автоматичне налаштування паралельної програми реалізації схеми Кранка-Ніколсона. Система TuningGenie була застосована для випробування різних комбінацій опцій компілятора JVM, пов’язаних зі швидкодією (-XX:-UseBiasedLocking/-XX:BiasedLockingStartupDelay), при різних значеннях кількості потоків для знаходження оптимальної конфігурації для програми реалізації схеми Кранка-Ніколсона при виконанні на багатоядерному процесорі. Зміна опцій компілятора не показала суттєвого впливу на продуктивність обчислень, тому наведені далі результати належать в основному до змін параметра NumThreads. Характеристики тестового середовища виконання були такими: • чотирьохядерний процесор Intel Core i7-6820HQ з частотою 2,7 ГГц; кеш L1: 32k/32k x4, кеш L2/L3: 256k x4, 8 МБ; • оперативна пам’ять 16 ГБ, 2133 МГц LPDDR3; • OpenJDK build 11.0.2+9; • MacOS v11.6. достатньою мірою узгоджуються між собою завдяки отриманим якісним розв’язкам оберненої задачі, тобто розподілам коефіцієнтів дифузії Паралельне програмування розподілених систем і мереж [Введите текст] кривих (2), побудованих в результаті чисельного розв’язку задачі (1)–(6) з використанням схеми Кранка- Ніколсона і результатів ідентифікованих коефіцієнтів всередині дифузії частинок з апроксимаціями експериментальних кривих розподілів поглинутої маси в нанопористому шарі, використаними для процедури ідентифікації. для 0.02 = для 0.39 = а) б) Рис. 3. Результати ідентифікації коефіцієнтів дифузії для моментів часу 0.02 = і 0.39 = для дифузії бензолу: а) розподіл коефіцієнтів дифузії intram D у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих Як видно з поданих концентраційних розподілів (Рис. 3, б і Рис. 4, б), значення модельних і експериментальних профілів для всіх отриманих графіків інтегральної маси ( ),M t z достатньою мірою узгоджуються між собою завдяки отриманим якісним розв’язкам оберненої задачі, тобто розподілам коефіцієнтів дифузії intram D . Приблизно за 80 % довжини модельні криві забезпечують повний збіг із експериментальними значеннями. Такий підхід забезпечує достатньо високий ступінь адекватності математичних моделей і методик ідентифікації параметрів досліджуваних неоднорідних розподілених систем багатокомпонентного переносу. 4.2. Автоматичне налаштування паралельної програми реалізації схеми Кранка-Ніколсона. Система TuningGenie була застосована для випробування різних комбінацій опцій компілятора JVM, пов’язаних зі швидкодією (-XX:-UseBiasedLocking/-XX:BiasedLockingStartupDelay), при різних значеннях кількості потоків для знаходження оптимальної конфігурації для програми реалізації схеми Кранка-Ніколсона при виконанні на багатоядерному процесорі. Зміна опцій компілятора не показала суттєвого впливу на продуктивність обчислень, тому наведені далі результати належать в основному до змін параметра NumThreads. Характеристики тестового середовища виконання були такими: • чотирьохядерний процесор Intel Core i7-6820HQ з частотою 2,7 ГГц; кеш L1: 32k/32k x4, кеш L2/L3: 256k x4, 8 МБ; • оперативна пам’ять 16 ГБ, 2133 МГц LPDDR3; • OpenJDK build 11.0.2+9; • MacOS v11.6. . Приблизно за 80 % довжини модельні криві забезпечують повний збіг із експериментальними значеннями. Такий підхід забезпечує достатньо високий ступінь адекватності математичних моделей і методик ідентифікації параме- трів досліджуваних неоднорідних розподілених систем багатокомпонентного переносу. 65 Паралельне програмування розподілених систем і мереж Паралельне програмування розподілених систем і мереж [Введите текст] кривих (2), побудованих в результаті чисельного розв’язку задачі (1)–(6) з використанням схеми Кранка- Ніколсона і результатів ідентифікованих коефіцієнтів всередині дифузії частинок з апроксимаціями експериментальних кривих розподілів поглинутої маси в нанопористому шарі, використаними для процедури ідентифікації. для 0.02 = для 0.39 = а) б) Рис. 3. Результати ідентифікації коефіцієнтів дифузії для моментів часу 0.02 = і 0.39 = для дифузії бензолу: а) розподіл коефіцієнтів дифузії intram D у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих Як видно з поданих концентраційних розподілів (Рис. 3, б і Рис. 4, б), значення модельних і експериментальних профілів для всіх отриманих графіків інтегральної маси ( ),M t z достатньою мірою узгоджуються між собою завдяки отриманим якісним розв’язкам оберненої задачі, тобто розподілам коефіцієнтів дифузії intram D . Приблизно за 80 % довжини модельні криві забезпечують повний збіг із експериментальними значеннями. Такий підхід забезпечує достатньо високий ступінь адекватності математичних моделей і методик ідентифікації параметрів досліджуваних неоднорідних розподілених систем багатокомпонентного переносу. 4.2. Автоматичне налаштування паралельної програми реалізації схеми Кранка-Ніколсона. Система TuningGenie була застосована для випробування різних комбінацій опцій компілятора JVM, пов’язаних зі швидкодією (-XX:-UseBiasedLocking/-XX:BiasedLockingStartupDelay), при різних значеннях кількості потоків для знаходження оптимальної конфігурації для програми реалізації схеми Кранка-Ніколсона при виконанні на багатоядерному процесорі. Зміна опцій компілятора не показала суттєвого впливу на продуктивність обчислень, тому наведені далі результати належать в основному до змін параметра NumThreads. Характеристики тестового середовища виконання були такими: • чотирьохядерний процесор Intel Core i7-6820HQ з частотою 2,7 ГГц; кеш L1: 32k/32k x4, кеш L2/L3: 256k x4, 8 МБ; • оперативна пам’ять 16 ГБ, 2133 МГц LPDDR3; • OpenJDK build 11.0.2+9; • MacOS v11.6. Рис. 3. Результати ідентифікації коефіцієнтів дифузії для моментів часу Паралельне програмування розподілених систем і мереж [Введите текст] кривих (2), побудованих в результаті чисельного розв’язку задачі (1)–(6) з використанням схеми Кранка- Ніколсона і результатів ідентифікованих коефіцієнтів всередині дифузії частинок з апроксимаціями експериментальних кривих розподілів поглинутої маси в нанопористому шарі, використаними для процедури ідентифікації. для 0.02 = для 0.39 = а) б) Рис. 3. Результати ідентифікації коефіцієнтів дифузії для моментів часу 0.02 = і 0.39 = для дифузії бензолу: а) розподіл коефіцієнтів дифузії intram D у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих Як видно з поданих концентраційних розподілів (Рис. 3, б і Рис. 4, б), значення модельних і експериментальних профілів для всіх отриманих графіків інтегральної маси ( ),M t z достатньою мірою узгоджуються між собою завдяки отриманим якісним розв’язкам оберненої задачі, тобто розподілам коефіцієнтів дифузії intram D . Приблизно за 80 % довжини модельні криві забезпечують повний збіг із експериментальними значеннями. Такий підхід забезпечує достатньо високий ступінь адекватності математичних моделей і методик ідентифікації параметрів досліджуваних неоднорідних розподілених систем багатокомпонентного переносу. 4.2. Автоматичне налаштування паралельної програми реалізації схеми Кранка-Ніколсона. Система TuningGenie була застосована для випробування різних комбінацій опцій компілятора JVM, пов’язаних зі швидкодією (-XX:-UseBiasedLocking/-XX:BiasedLockingStartupDelay), при різних значеннях кількості потоків для знаходження оптимальної конфігурації для програми реалізації схеми Кранка-Ніколсона при виконанні на багатоядерному процесорі. Зміна опцій компілятора не показала суттєвого впливу на продуктивність обчислень, тому наведені далі результати належать в основному до змін параметра NumThreads. Характеристики тестового середовища виконання були такими: • чотирьохядерний процесор Intel Core i7-6820HQ з частотою 2,7 ГГц; кеш L1: 32k/32k x4, кеш L2/L3: 256k x4, 8 МБ; • оперативна пам’ять 16 ГБ, 2133 МГц LPDDR3; • OpenJDK build 11.0.2+9; • MacOS v11.6. і Паралельне програмування розподілених систем і мереж [Введите текст] кривих (2), побудованих в результаті чисельного розв’язку задачі (1)–(6) з використанням схеми Кранка- Ніколсона і результатів ідентифікованих коефіцієнтів всередині дифузії частинок з апроксимаціями експериментальних кривих розподілів поглинутої маси в нанопористому шарі, використаними для процедури ідентифікації. для 0.02 = для 0.39 = а) б) Рис. 3. Результати ідентифікації коефіцієнтів дифузії для моментів часу 0.02 = і 0.39 = для дифузії бензолу: а) розподіл коефіцієнтів дифузії intram D у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих Як видно з поданих концентраційних розподілів (Рис. 3, б і Рис. 4, б), значення модельних і експериментальних профілів для всіх отриманих графіків інтегральної маси ( ),M t z достатньою мірою узгоджуються між собою завдяки отриманим якісним розв’язкам оберненої задачі, тобто розподілам коефіцієнтів дифузії intram D . Приблизно за 80 % довжини модельні криві забезпечують повний збіг із експериментальними значеннями. Такий підхід забезпечує достатньо високий ступінь адекватності математичних моделей і методик ідентифікації параметрів досліджуваних неоднорідних розподілених систем багатокомпонентного переносу. 4.2. Автоматичне налаштування паралельної програми реалізації схеми Кранка-Ніколсона. Система TuningGenie була застосована для випробування різних комбінацій опцій компілятора JVM, пов’язаних зі швидкодією (-XX:-UseBiasedLocking/-XX:BiasedLockingStartupDelay), при різних значеннях кількості потоків для знаходження оптимальної конфігурації для програми реалізації схеми Кранка-Ніколсона при виконанні на багатоядерному процесорі. Зміна опцій компілятора не показала суттєвого впливу на продуктивність обчислень, тому наведені далі результати належать в основному до змін параметра NumThreads. Характеристики тестового середовища виконання були такими: • чотирьохядерний процесор Intel Core i7-6820HQ з частотою 2,7 ГГц; кеш L1: 32k/32k x4, кеш L2/L3: 256k x4, 8 МБ; • оперативна пам’ять 16 ГБ, 2133 МГц LPDDR3; • OpenJDK build 11.0.2+9; • MacOS v11.6. для дифузії бензолу: а) розподіл коефіцієнтів дифузії Паралельне програмування розподілених систем і мереж [Введите текст] кривих (2), побудованих в результаті чисельного розв’язку задачі (1)–(6) з використанням схеми Кранка- Ніколсона і результатів ідентифікованих коефіцієнтів всередині дифузії частинок з апроксимаціями експериментальних кривих розподілів поглинутої маси в нанопористому шарі, використаними для процедури ідентифікації. для 0.02 = для 0.39 = а) б) Рис. 3. Результати ідентифікації коефіцієнтів дифузії для моментів часу 0.02 = і 0.39 = для дифузії бензолу: а) розподіл коефіцієнтів дифузії intram D у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих Як видно з поданих концентраційних розподілів (Рис. 3, б і Рис. 4, б), значення модельних і експериментальних профілів для всіх отриманих графіків інтегральної маси ( ),M t z достатньою мірою узгоджуються між собою завдяки отриманим якісним розв’язкам оберненої задачі, тобто розподілам коефіцієнтів дифузії intram D . Приблизно за 80 % довжини модельні криві забезпечують повний збіг із експериментальними значеннями. Такий підхід забезпечує достатньо високий ступінь адекватності математичних моделей і методик ідентифікації параметрів досліджуваних неоднорідних розподілених систем багатокомпонентного переносу. 4.2. Автоматичне налаштування паралельної програми реалізації схеми Кранка-Ніколсона. Система TuningGenie була застосована для випробування різних комбінацій опцій компілятора JVM, пов’язаних зі швидкодією (-XX:-UseBiasedLocking/-XX:BiasedLockingStartupDelay), при різних значеннях кількості потоків для знаходження оптимальної конфігурації для програми реалізації схеми Кранка-Ніколсона при виконанні на багатоядерному процесорі. Зміна опцій компілятора не показала суттєвого впливу на продуктивність обчислень, тому наведені далі результати належать в основному до змін параметра NumThreads. Характеристики тестового середовища виконання були такими: • чотирьохядерний процесор Intel Core i7-6820HQ з частотою 2,7 ГГц; кеш L1: 32k/32k x4, кеш L2/L3: 256k x4, 8 МБ; • оперативна пам’ять 16 ГБ, 2133 МГц LPDDR3; • OpenJDK build 11.0.2+9; • MacOS v11.6. у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих Паралельне програмування розподілених систем і мереж [Введите текст] Інтуїція підказує, що оптимальна кількість потоків маєа бути 8, оскільки процесор — чотирьохядерний з підтримкою технології hyper-threading. Ця конфігурація позначена трикутником на діаграмі (Рис. 5), і продемонструвала прийнятне мультипроцесорне прискорення 5.16 на тестових вхідних даних. для 0.04 = для 0.50 = для 3.83 = а) б) Рис. 4. Результати ідентифікації коефіцієнтів дифузії для моментів часу 0.04 = , 0.50 = і 3.83 = для дифузії гексану: а) розподіл коефіцієнтів дифузії intram D у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих Рис. 4. Результати ідентифікації коефіцієнтів дифузії для моментів часу Паралельне програмування розподілених систем і мереж [Введите текст] Інтуїція підказує, що оптимальна кількість потоків маєа бути 8, оскільки процесор — чотирьохядерний з підтримкою технології hyper-threading. Ця конфігурація позначена трикутником на діаграмі (Рис. 5), і продемонструвала прийнятне мультипроцесорне прискорення 5.16 на тестових вхідних даних. для 0.04 = для 0.50 = для 3.83 = а) б) Рис. 4. Результати ідентифікації коефіцієнтів дифузії для моментів часу 0.04 = , 0.50 = і 3.83 = для дифузії гексану: а) розподіл коефіцієнтів дифузії intram D у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих і Паралельне програмування розподілених систем і мереж [Введите текст] Інтуїція підказує, що оптимальна кількість потоків маєа бути 8, оскільки процесор — чотирьохядерний з підтримкою технології hyper-threading. Ця конфігурація позначена трикутником на діаграмі (Рис. 5), і продемонструвала прийнятне мультипроцесорне прискорення 5.16 на тестових вхідних даних. для 0.04 = для 0.50 = для 3.83 = а) б) Рис. 4. Результати ідентифікації коефіцієнтів дифузії для моментів часу 0.04 = , 0.50 = і 3.83 = для дифузії гексану: а) розподіл коефіцієнтів дифузії intram D у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих для дифузії гексану: а) розподіл коефіцієнтів дифузії Паралельне програмування розподілених систем і мереж [Введите текст] Інтуїція підказує, що оптимальна кількість потоків маєа бути 8, оскільки процесор — чотирьохядерний з підтримкою технології hyper-threading. Ця конфігурація позначена трикутником на діаграмі (Рис. 5), і продемонструвала прийнятне мультипроцесорне прискорення 5.16 на тестових вхідних даних. для 0.04 = для 0.50 = для 3.83 = а) б) Рис. 4. Результати ідентифікації коефіцієнтів дифузії для моментів часу 0.04 = , 0.50 = і 3.83 = для дифузії гексану: а) розподіл коефіцієнтів дифузії intram D у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих у внутрішньочастинковому просторі; б) порівняння модельної (2) та експериментальної (1) кривих 66 Паралельне програмування розподілених систем і мереж 4.2. Автоматичне налаштування паралельної програми реалізації схеми Кранка-Ніколсона. Сис- тема TuningGenie була застосована для випробування різних комбінацій опцій компілятора JVM, пов’язаних зі швидкодією (-XX:-UseBiasedLocking/-XX:BiasedLockingStartupDelay), при різних значеннях кількості по- токів для знаходження оптимальної конфігурації для програми реалізації схеми Кранка-Ніколсона при ви- конанні на багатоядерному процесорі. Зміна опцій компілятора не показала суттєвого впливу на продуктив- ність обчислень, тому наведені далі результати належать в основному до змін параметра NumThreads. Характеристики тестового середовища виконання були такими: • чотирьохядерний процесор Intel Core i7-6820HQ з частотою 2,7 ГГц; кеш L1: 32k/32k x4, кеш L2/L3: 256k x4, 8 МБ; • оперативна пам’ять 16 ГБ, 2133 МГц LPDDR3; • OpenJDK build 11.0.2+9; • MacOS v11.6. Інтуїція підказує, що оптимальна кількість потоків маєа бути 8, оскільки процесор — чотирьохядерний з підтримкою технології hyper-threading. Ця конфігурація позначена трикутником на діаграмі (Рис. 5), і продемон- струвала прийнятне мультипроцесорне прискорення 5.16 на тестових вхідних даних. Паралельне програмування розподілених систем і мереж [Введите текст] Рис. 5. Залежність часу виконання від кількості потоків для програми реалізації схеми Кранка-Ніколсона Однак подальше підвищення кількості потоків дозволило отримати додаткове покращення швидкодії приблизно на 140 %. Найшвидша конфігурація програми з 62 потоками (позначена точкою на діаграмі) досягнула досить хорошого мультипроцесорного прискорення 6.5. Це пояснюється підвищеною ефективністю використання кешів процесора. Дрібнозерниста декомпозиція з більшою імовірністю розміщується в кеші L1– L3 і зберігає час на звертання до “повільної” оперативної пам’яті. Цей ефект збалансований додатковими часовими витратами на конкуренцію потоків. Однак, загальний ефект виявився позитивним. 6. Висновки Виконане автоматизоване проєктування й розпаралелювання програми реалізації схеми Кранка- Ніколсона із використанням алгебро-алгоритмічних специфікацій, поданих у природно-лінгвістичній формі. Застосовано раніше розроблені інструментальні засоби автоматизованого проєктування, синтезу та автотюнінгу програм, що забезпечують трансформацію алгебро-алгоритмічних схем у вихідний код мовою програмування та його автоматизоване налаштування на середовище виконання для підвищення швидкодії програми. Отримані чисельні розподіли значень коефіцієнтів дифузії для внутрішньочастинкового переносу вздовж координати товщини середовища для різних часових зрізів. За результатами ідентифікації виконана перевірка моделей на адекватність, виконані чисельне моделювання та аналіз концентраційних і градієнтних полів масопереносу. Результати експерименту з автоматизованого налаштування паралельної програми реалізації методу Кранка- Ніколсона продемонстрували високе мультипроцесорне прискорення на тестових вхідних даних. 7. Література 1. Kärger J., Ruthven D.M. Diffusion and adsorption in porous solids. Handbook of porous solids / ed. by: F. Schüth, K.S.W. Sing, J. Weitkamp. Wenheim: Wiley-VCH, 2002. P. 2089–2173. 2. Chen N.Y., Degnan T.F., Smith M.C. Molecular transport and reaction in zeolites: design and application of shape selective catalysis. New York: Wiley, 1994. 188 p. 3. Ruthven D. Principles of adsorption and adsorption processes. New York: Wiley, 1984. 464 p. 4. Петрик М.Р., Михайлик Д.М., Гоянюк І.В. Високопродуктивні методи ідентифікації кінетичних параметрів нанопористих кіберсистем адсорбції зі зворотніми зв’язками. Вісник Національного університету водного господарства та природокористування. Вип. 4(92). 2020. С. 91–104. URL: http://ep3.nuwm.edu.ua/22117 (дата звернення: 12.08.2022). 5. Algebra-algorithmic models and methods of parallel programming / Andon P.I. et al. Kyiv: Akademperiodyka, 2018. 192 p. 6. A mixed method of parallel software auto-tuning using statistical modeling and machine learning / Doroshenko A. et al. Communications in Computer and Information Science. Information and Communication Technologies in Education, Research, and Industrial Applications. 2019. Vol. 1007. P. 102–123. 7. Ivanenko P., Doroshenko A., Zhereb K. TuningGenie: auto-tuning framework based on rewriting rules. Communications in Computer and Information Science. Information and Communication Technologies in Education, Research, and Industrial Applications. 2014. Vol. 469. P. 139–158. 8. Doroshenko A., Zhereb K., Yatsenko O. Developing and optimizing parallel programs with algebra-algorithmic and term rewriting tools. Communications in Computer and Information Science. Information and Communication Technologies in Education, Research, and Industrial Applications. 2013. Vol. 412. P. 70–92. 9. Doroshenko A., Shevchenko R. A rewriting framework for rule-based programming dynamic applications. Fundamenta Informaticae. 2006. Vol. 72, No. 1–3. P. 95–108. URL: https://www.researchgate.net/publication/250731334 (дата звернення: 12.08.2022). 10. Kärger J., Grinberg F., Heitjans P. Diffusion fundamentals. Leipzig: Leipzig: Leipziger Universitätsverlag, 2005. 615 p. 11. Petryk M.R., Fraissard J. Mathematical modeling of nonlinear competitive two-component diffusion in medium of nanoporous particles. Journal of Automation and Information Sciences. 2009. Vol. 41, No. 3. P. 37–55. 12. Сергиенко И.В., Дейнека В.С. Системный анализ многокомпонентных распределенных систем. Киев: Наукова думка, 2009. 638 с. Рис. 5. Залежність часу виконання від кількості потоків для програми реалізації схеми Кранка-Ніколсона Однак подальше підвищення кількості потоків дозволило отримати додаткове покращення швид- кодії приблизно на 140 %. Найшвидша конфігурація програми з 62 потоками (позначена точкою на діаграмі) досягнула досить хорошого мультипроцесорного прискорення 6.5. Це пояснюється підвище- ною ефективністю використання кешів процесора. Дрібнозерниста декомпозиція з більшою імовірністю розміщується в кеші L1–L3 і зберігає час на звертання до “повільної” оперативної пам’яті. Цей ефект збалансований додатковими часовими витратами на конкуренцію потоків. Однак, загальний ефект ви- явився позитивним. Висновки Виконане автоматизоване проєктування й розпаралелювання програми реалізації схеми Кранка- Ніколсона із використанням алгебро-алгоритмічних специфікацій, поданих у природно-лінгвістичній формі. Застосовано раніше розроблені інструментальні засоби автоматизованого проєктування, синтезу та автотюнінгу програм, що забезпечують трансформацію алгебро-алгоритмічних схем у вихідний код мовою програмування та його автоматизоване налаштування на середовище виконання для підвищення швидкодії програми. Отримані чисельні розподіли значень коефіцієнтів дифузії для внутрішньочастин- кового переносу вздовж координати товщини середовища для різних часових зрізів. За результатами ідентифікації виконана перевірка моделей на адекватність, виконані чисельне моделювання та аналіз концентраційних і градієнтних полів масопереносу. Результати експерименту з автоматизованого нала- штування паралельної програми реалізації методу Кранка-Ніколсона продемонстрували високе мульти- процесорне прискорення на тестових вхідних даних. 67 Паралельне програмування розподілених систем і мереж Література 1. Kärger J., Ruthven D.M. Diffusion and adsorption in porous solids. Handbook of porous solids / ed. by: F. Schüth, K.S.W. Sing, J. Weit- kamp. Wenheim: Wiley-VCH, 2002. P. 2089–2173. 2. Chen N.Y., Degnan T.F., Smith M.C. Molecular transport and reaction in zeolites: design and application of shape selective catalysis. New York: Wiley, 1994. 188 p. 3. Ruthven D. Principles of adsorption and adsorption processes. New York: Wiley, 1984. 464 p. 4. Петрик М.Р., Михайлик Д.М., Гоянюк І.В. Високопродуктивні методи ідентифікації кінетичних параметрів нанопористих кіберсистем адсорбції зі зворотніми зв’язками. Вісник Національного університету водного господарства та природокористування. Вип. 4(92). 2020. С. 91–104. URL: http://ep3.nuwm.edu.ua/22117 (дата звернення: 12.08.2022). 5. Algebra-algorithmic models and methods of parallel programming / Andon P.I. et al. Kyiv: Akademperiodyka, 2018. 192 p. 6. A mixed method of parallel software auto-tuning using statistical modeling and machine learning / Doroshenko A. et al. Communications in Computer and Information Science. Information and Communication Technologies in Education, Research, and Industrial Applica- tions. 2019. Vol. 1007. P. 102–123. 7. Ivanenko P., Doroshenko A., Zhereb K. TuningGenie: auto-tuning framework based on rewriting rules. Communications in Computer and Information Science. Information and Communication Technologies in Education, Research, and Industrial Applications. 2014. Vol. 469. P. 139–158. 8. Doroshenko A., Zhereb K., Yatsenko O. Developing and optimizing parallel programs with algebra-algorithmic and term rewriting tools. Communications in Computer and Information Science. Information and Communication Technologies in Education, Research, and Industrial Applications. 2013. Vol. 412. P. 70–92. 9. Doroshenko A., Shevchenko R. A rewriting framework for rule-based programming dynamic applications. Fundamenta Informaticae. 2006. Vol. 72, No. 1–3. P. 95–108. URL: https://www.researchgate.net/publication/250731334 (дата звернення: 12.08.2022). 10. Kärger J., Grinberg F., Heitjans P. Diffusion fundamentals. Leipzig: Leipzig: Leipziger Universitätsverlag, 2005. 615 p. 11. Petryk M.R., Fraissard J. Mathematical modeling of nonlinear competitive two-component diffusion in medium of nanoporous particles. Journal of Automation and Information Sciences. 2009. Vol. 41, No. 3. P. 37–55. 12. Сергиенко И.В., Дейнека В.С. Системный анализ многокомпонентных распределенных систем. Киев: Наукова думка, 2009. 638 с. 13. Petryk M.R., Fraissard J., Mykhalyk D.M. Modeling and analysis of concentration fields of nonlinear competitive two-component diffu- sion in medium of nanoporous particles. Journal of Automation and Information Sciences. 2009. Vol. 41, No. 8. P. 13–23. References 1. KÄRGER, J. & RUTHVEN, D. M. (2002) Diffusion and adsorption in porous solids. In: Schüth, F., Sing, K. S. W. & Weitkamp, J. (eds). Handbook of Porous Solids. Wenheim: Wiley-VCH. p. 2089-2173. 2. CHEN, N. Y., DEGNAN, T. F. & SMITH, M. C. (1994) Molecular Transport and Reaction in Zeolites: Design and Application of Shape Selective Catalysis. New York: Wiley. 3. RUTHVEN, D. (1984) Principles of Adsorption and Adsorption Processes. New York: Wiley. 4. PETRYK, M. R., MYKHALYK, D. M. & HOIANIUK, I. V. (2020) High-performance methods of identification of kinetic parameter for monodiffusion adsorption mass transfer. Bulletin of National University of Water and Environmental Engineering. [Online] 4 (92). p. 91-104. (in Ukrainian). Available from: http://ep3.nuwm.edu.ua/22117 [Accessed 12/08/2022] 5. ANDON, P. I. et al. (2018) Algebra-Algorithmic Models and Methods of Parallel Programming. Kyiv: Akademperiodyka. 6. DOROSHENKO, A. et al. (2019) A mixed method of parallel software auto-tuning using statistical modeling and machine learning. Communications in Computer and Information Science. Information and Communication Technologies in Education, Research, and Industrial Applications. 1007. p. 102-123. 7. IVANENKO, P., DOROSHENKO, A. & ZHEREB, K. (2014) TuningGenie: auto-tuning framework based on rewriting rules. Commu- nications in Computer and Information Science. Information and Communication Technologies in Education, Research, and Industrial Applications. 469. p. 139-158. 8. DOROSHENKO, A., ZHEREB, K. & YATSENKO O. (2013) Developing and optimizing parallel programs with algebra-algorithmic and term rewriting tools. Communications in Computer and Information Science. Information and Communication Technologies in Educa- tion, Research, and Industrial Applications. 412. p. 70-92. 9. DOROSHENKO, A. & SHEVCHENKO, R. (2006) A rewriting framework for rule-based programming dynamic applications. Fun- damenta Informaticae. [Online] 72 (1-3). p. 95-108. Available from: https://www.researchgate.net/publication/250731334 [Accessed 12/08/2022] 10. KÄRGER, J., GRINBERG, F. & HEITJANS, P. (2005) Diffusion Fundamentals. Leipzig: Leipziger Universitätsverlag. 11. PETRYK, M. R. & FRAISSARD, J. (2009) Mathematical modeling of nonlinear competitive two-component diffusion in medium of nanoporous particles. Journal of Automation and Information Sciences. 41 (3). p. 37-55. 12. SERGIENKO, I. V. & DEINEKA, V. S. (2009) System analysis of multicomponent distributed systems. Kyiv: Naukova dumka. (in Rus- sian). 13. PETRYK, M. R., FRAISSARD, J. & MYKHALYK D. M. (2009) Modeling and analysis of concentration fields of nonlinear competitive two-component diffusion in medium of nanoporous particles. Journal of Automation and Information Sciences. 41 (8). p. 13-23. Одержано 02.08.2022 Про авторів: Дорошенко Анатолій Юхимович, доктор фізико-математичних наук, професор, завідувач відділу. Кількість публікацій в українських виданнях – понад 180. Кількість зарубіжних публікацій – понад 60. Індекс Хірша – 6. http://orcid.org/0000-0002-8435-1451, 68 Паралельне програмування розподілених систем і мереж Петрик Михайло Романович, доктор фізико-математичних наук, професор. Кількість публікацій в українських виданнях – понад 100. Кількість зарубіжних публікацій – понад 50. Індекс Хірша – 6. https://orcid.org/0000-0001-6612-7213, Михалик Дмитро Михайлович, кандидат технічних наук, доцент. Кількість публікацій в українських виданнях – понад 50. Кількість зарубіжних публікацій – понад 20. https://orcid.org/0000-0001-9032-695X, Іваненко Павло Андрійович, кандидат фізико-математичних наук, науковий співробітник. Кількість публікацій в українських виданнях – 29. Кількість зарубіжних публікацій – 3. https://orcid.org/0000-0001-5437-9763, Яценко Олена Анатоліївна, кандидат фізико-математичних наук, старший науковий співробітник. Кількість публікацій в українських виданнях – 49. Кількість наукових публікацій в іноземних виданнях – 19. http://orcid.org/0000-0002-4700-6704. Місце роботи авторів: Інститут програмних систем НАН України, 03187, м. Київ, проспект Академіка Глушкова, 40. Тел.: (38)(044) 526-35-59. E-mail: doroshenkoanatoliy2@gmail.com, paiv@ukr.net, oayat@ukr.net. Тернопільський національний технічний університет ім. І. Пулюя, кафедра програмної інженерії, 46001, м. Тернопіль, вул. Руська, 56, корпус № 1. Тел.: (0352) 51-97-14. E-mail: mykhaylo_petryk@tntu.edu.ua, d.mykhalyk@gmail.com. Прізвища та ім’я авторів і назва доповіді українською мовою: Дорошенко А. Ю., Петрик М. Р., Михалик Д. М., Іваненко П. А., Яценко О. А. Автоматизоване розпаралелювання програми моделювання внутрішньочастинкової дифузії й абсорбції в неоднорідних нанопористих середовищах Прізвища та ім’я авторів і назва доповіді англійською мовою: Doroshenko A. Yu., Petryk M. R., Mykhalyk D. M., Ivanenko P. A.h, Yatsenko O.A. Automated parallelization of a program for modeling intraparticle diffusion and adsorption in heterogeneous nanoporous media Контакт для редактора: Яценко Олена Анатоліївна, старший науковий співробітник Інституту програмних систем НАН України, e-mail: oayat@ukr.net, тел.: +38 (066) 803-07-31