Научная статья на тему 'Алгоритмічне та програмне забезпечення для дослідження неізотермічного вологоперенесення у середовищах із фрактальною структурою'

Алгоритмічне та програмне забезпечення для дослідження неізотермічного вологоперенесення у середовищах із фрактальною структурою Текст научной статьи по специальности «Математика»

CC BY
191
33
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
паралельні обчислення / потоки / диференціальні рівняння дробового порядку / вологоперенесення / параллельные вычисления / потоки / дифференциальные уравнения дробного порядка / влагоперенос

Аннотация научной статьи по математике, автор научной работы — Я. І. Соколовський, В. І. Яркун, М. В. Левкович

Сформовано вимоги і вибрано інтегрований підхід до створення алгоритмічного забезпечення чисельного моделювання неізотермічного вологоперенесення у середовищах із фрактальною структурою, який охоплює розроблення паралельного алгоритму розв'язання систем диференціальних рівнянь у частинних похідних. Запропоновано синхронізацію взаємодії потоків для паралельних обмінів між часовими шарами. Розроблено програмне забезпечення та створено інтерфейс користувача для візуалізацїі результатів дослідження.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Я. І. Соколовський, В. І. Яркун, М. В. Левкович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

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

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

Текст научной работы на тему «Алгоритмічне та програмне забезпечення для дослідження неізотермічного вологоперенесення у середовищах із фрактальною структурою»

4. ШФОРМАЩЙШ ТЕХНОЛОГИ ГАЛУЗ!

УДК 004.[272.2+942]

АЛГОРИТМ1ЧНЕ ТА ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ ДЛЯ

ДОСЛ1ДЖЕННЯ НЕ1ЗОТЕРМ1ЧНОГО ВОЛОГОПЕРЕНЕСЕННЯ У СЕРЕДОВИЩАХ 13 ФРАКТАЛЬНОЮ СТРУКТУРОЮ Я.1. Соколовський1, В.1. Яркун2, М.В. Левкович3

Сформовано вимоги i вибрано iнтегрований шдхщ до створення алгоритмiчного за-безпечення чисельного моделювання неiзотермiчного вологоперенесення у середови-щах iз фрактальною структурою, який охоплюе розроблення паралельного алгоритму розв'язання систем диференддальних рiвнянь у частинних похщних. Запропоновано синхронiзацiю взаемодп потоюв для паралельних обмiнiв мiж часовими шарами. Роз-роблено програмне забезпечення та створено iнтерфейс користувача для вiзуалiзацil ре-зультатiв дослщження.

Ключовi слова: паралельнi обчислення, потоки, диференщальш ршняння дробового порядку, вологоперенесення.

Вступ. Важливим е дослiдження одновимiрних та двовишрних математич-них моделей теплообмiнних процеав, для опису яких використовували дифе-ренцiальнi рiвняння у частинних похiдних iз дробовим порядком за часом та просторовими координатами. Пошук ефективного рiшення щодо розроблення програмних засобiв для реалiзацií таких математичних моделей зумовлюе впро-вадження паралельних обчислень. Паралельне програмування дае змогу вико-ристовувати для обчислень не один процесор, а кшька доступних процесорiв для того, щоб пришвидшити процес обчислення. Отже, використання паралель-них обчислень дае змогу розглядати складнiшi математичнi моделi дослвдження неiзотермiчного волого-перенесення у середовищах iз фрактальною структурою.

Аналiз сучасного стану дослщжень. Сучаснi дослiдження багатьох при-родних процесiв у всiх галузях науки - фiзицi, бiофiзицi, мехашщ, економiцi, медицинi, гiрничiй справi - дедалi частiше зводиться до обчислення складних задач та створення программного та алгоритмiчного забезпечення, реалiзацiя якого потребуе значних обчислювальних ресурсiв. Опис алгоршшчного забезпечення процесiв, що описуються системами диференцiальних ргвнянь у частинних похвдних дробового порядку висвилено у працях [1, 2, 5, 9], а з вико-ристанням розпаралелювання процесу - у [5, 7, 8].

Останшм часом багато дослщжень проводять з використанням кластер-них систем. У працi [7] розглянуто швидкий алгоритм вирiшення систем рiвнянь аг-регацiйно-фрагментацiоноí кiнетики, запропоновано паралельну реалiзацiю алгоритму, що Грунтуеться на використаннi паралельних алгоритмов побудови ма-лорангових матричних апроксимацш, паралельних алгоритмiв множення мало-рангових матриць на вектор. Варто звернути увагу, що незначна кшьккть задач

1 проф. Я.1. Соколовський, д-р техн. наук - НЛТУ Украши, м. Львгв;

2 асист. В.1. Яркун - НЛТУ Украши, м. Львгв;

3 асшр. М.В. Левкович - НЛТУ Украши, м. Льв1в

реалiзуeться багатопотоковим розпарелеленням. У працi [8] розглянуто багато-потокову реалiзацiю мовою Java чотирьохточкового блокового однокрокового методу штегрування звичайних диференцiйних рiвнянь, де запропоновано алгоритм реалiзацií методу за допомогою чотирьох потокiв. Як мехашзм обмiну да-ними мiж потоками використано блокувальш черги класу LinkedBlockingQueue. Наведено приклади задач для ощнювання правильностi i точностi методу. Новi паралельнi алгоритми дають змогу пришвидшити розрахунок у десятки разш i перейти до дослiдження складних систем, для дослвдження яких потрiбно роз-глядати системи iз значною кшькктю диференцiальних рiвнянь [7-8]. У ба-гатьох дослiдженнях обговорюють умови, за яких багатопотокова реалiзацiя цього методу стае ефективною.

Постановка задачi та И реамзац1я. Математична модель процесу теплота вологоперенесення у середовищах iз фрактальною структурою описуеться системою диференщальних рiвнянь у частинних похвдних iз дробовим порядком за часом t та просторовими координатами x1 та x2

daT (t, Xb X2) _ dfT (t, Xj, X2)

cp t _1 dXf

dfT (t, XI, X2) dOJ (t, XI, X2)

dxb

- + ep0r-

daU(t,Xj,X2) _ dfU(t,Xj,X2) dfU(t,Xj,X2) SdfT(t,Xj,X2) S -— a-b--+ a2-b--+ Q\o-b--+ a^d'

dta dXf

з початковими умовами:

dXb

dXf

dta

dfT (t, Xj, X2 )

dXf

Tt—0 _ T0 ( XI, X2) , Jt—0 _ J0 ( Xl, X2) та граничними умовами третього роду:

+Р0 (j-e)f (J^-JP1 )_a, (T\xt__ir tc,),

l dT

dXg

dT

uS-

dXg

+ a,

dgJ

dXg

dXg

_f(Jp, - JLi_I,),

+ P0 (1-e)f* (j|xi_0 - U p )_a* (t!xi_0 - t*i),

_f* (UPi -Uh_0),

,dT

'aXr

+a

dgj

(i) (2)

(3)

(4)

(5)

(6)

(7)

(8)

де: (t,Xi,X2)e D,D _ [0,t]x[0,li]x[0,I2]; T,U - шукаш функцií, де T - температура, U - вологовмкт; c - питома теплоемшсть; p - густина; p0 - базисна густина; e - коефiцiент фазового переходу; r - питома теплота пароутворення; l(i_ 1,2) - коефiцiенти теплопроввдностц a, (i_ 1,2) - коефщенти вологопро-вiдностi; S - термоградiентний коефiцiент; tc1,t*, (i_ 1,2) - значения температу-ри середовища; U p ,,U *pi (i_ 1,2) - значення вiдносноí вологостi зовшшнього се-редовища; a,a* (i _ 1,2) - коефiцiенти теплообмiну; f,f* (i _ 1,2) - коефiцiенти

X _0

a

X _0

X _0

вологообмшу; 1, (г = 1,2) - геометричш розмiри; а - дробовий порядок похвд-но1 за часом (0<а< 1); р,у - дробовi показники похiдноí за просторовими координатами (1 < Р < 2), (0 < у< 1).

Чисельний метод розв'язання задачi. В обласп Б введемо просторово-часову отку:

&АтЛЛ = {(?к, Х1(»), Щш)) : Х1(И) = (П -1) ¡1, Х2(т) = = (ш-1) /2,тк = кАт, п = 1,..., N / =——; ш = 1,..., М;

\ ) 2 1 N -1

12 г

/2 = —к = 0,1,...,К; Ат = —}. 2 М -1 К

Використавши формулу Рiмана-Лiувiлля [2]

ЭУ (т)

Эта

1

тк

Г(1 -а)

г (тк)

тк+1

1Ш_

-хйХ

(тк+1 -тк) т (тк+ -X)

рiзницеву апроксимацда дробово!' похiдноí а (0<а< 1) на вiдрiзку [тк,тк+1] можна записати так:

Эта

Ат = тк+1 -тк,

(9)

Г( 2 -а)АТ де Г (а) - гамма-функцк.

Для визначення дробово!' пох1дно1 Р (1 <Р<2) за координатами х1, х2 скористаемось формулою Грюнвальда-Летшкова [3]

1 [т]

ЭРГ (т) = ± ^ (-1)у ЭхР = П>/Р р(-1 г(у+1)Г(Р-у+1)

Г(Р+1)

Г (х - у+1),

де: / = хм - хгп; [хг] - цiла частина хг; г = 1,2.

Тодi рiзницева апроксимацiя дробово!' пох1дно1 Р за координатами х i х2 матиме такий вигляд:

1 ш

/ у=0

ЭхР

х1(п)

1 п ^ и

у?0 Чуип-у'+1, ЭР

' , Р 2 Чуиш-у+1 ,

(10)

х2(ш)

2 у=0

де Ц0 =

1,^ = (-1)у Р(Р-1)...(Р-у +1)

Враховуючи (9), (10), отримаемо неявну рiзницеву схему для чисельно!' ре-алiзацií системи диференщальних рiвнянь (1), (2):

ср

Тк +1 - аТк

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1 п,ш М! п

т п,ш ^ п,ш = 1 п тк +1 + 1 ^ грк +1 + ип,ш п,ш

Г( 2 -а)АТ = ¡Р ^1п-у+1ш + ¡Р ^ ^1пш-у+1 + £р° г( 2 -а)АТ

Лк+\ -аПк п,ш п,

(11)

Т тк+1 _ ^уТ тк „ п п ш п Я п п Я ш

ип,ш иип,ш = пПк+1 + а!^ пТГк+1 + а^^Г пТк+1 + 2 п тк+1 (1?)

Г(2-а)Ата = /1Р^0Чуип-у+1ш + Цр0ЧРп,ш-у+1 /Р р0ду1п-у+1ш + ¡1 р0Чу1п,ш-у+1' ( )

(

\

+

ик+1 -аик

Эа

и

Явна рiзницева схема буде така:

Тк +1 _ атк 1 п 1 т ик +1 _аттк

2цт п,т — ^ V Тк -и ^ V л Тк л. сп .. и пт ии п,т (1 3)

СРГ(2_а)Ат« _ И?¿0Ч]1п_]+Хт ^¿0„^+1 + ер Г(2_а)Аг« ' ( )

ипт_аи'кт _ •ппПк т„ик + а^ппТк + а—т„Тк (14)

Г( 2 _а)Ат"~ И? ¿¿>И? п,т_]+1^~ И? ¿^ Ч]1п_]+_т^ И? ¿¿^ j n,m_j+1 Л1^ Початковi умови:

Тп,т _ То ( Л1(п), х2(т)) , и°т _ и0 ( х1(п), х2(т)) ■ (15)

Стнченно^зницевий аналог граничних умов мае вигляд:

Тк+1 _ 1ТТк+1

1ТГ(2_Т_г +Ро (1 _£)? _ )_а Т+1 _С)'

а.ткк+1 _Т+11 + икк+1 _и_1 _п(и ик+1) +а г(2_Г)кг (и*_ик),

тк+1 _ п/Тк+1

2 +Р0 (1 (ик+1 _ и )_а (т1к+1 _ С),

(16)

хТ2к+1 _уТ1к+1 и к+1 _/и1к+1 ттк+п

-Ч1— + а,—^-■— _ Д (и р1 _ и к+1),

' Г(2_у)к! ' Г(2_у)ИГ р' 1 >'

де 1 _ 1,2 (якщо 1 _ 1, то к _ N та якщо 1 _ 2, то к _ М )■

Використаемо метод предиктор-коректор [13] для знаходження чисельних розв'язкiв отримано! системи рiзницевих рiвнянь■ У ролi предиктора використаемо неявну рiзницеву схему (11), (12), а у ролi коректора - явну рiзницеву схему (13), (14).

На першому пiвкроцi iнтервалу запишемо неявну рiзницеву схему, у якш врахуемо тшьки похiдну дробового порядку Д за координатою х1:

к+/4_атк я. п к +1/ ик+

п,т п,т _ 'Ч ^ грк + /4 ^ п,т ^^ п,т

ср ±п,т_^±п,т „т /4 I еРг п,т_ п,т (17)

ср / А /\а_ иД ^ „j1n_j+1,m + ер0г а , (17)

Г( 2 _а)(АУ2) И1 j_о Г( 2 _а)(АУ2)

к+к

ип,т 4 _аип,т а1 п ттк + 44 , а1^ п тк + У4 /1 ОЧ -ГА"п^ _ -ТД I „Рп_/+41,т + I ЪТп_/+4,т ■ (1 8)

Г( 2 _а)(А^2) И1 j'_0

И1 j_0

Р1вняння (17) для зручносп перепишемо у виглядг

ит4 _ _Al„оTnk+4_4 + А1„1 \кптУ4 _ Л±ъТкп+У\т + а{икт _^ Тк,т 1, (19) ' I Рог ) j_2 V Р )

_ЯГ( 2 _а)(АУ2 )а ерогИ?

Грaничнi умови (16) вiдносно координати х1, що вiдповiдають рiвнянню (17), запишемо у такому виглядг

ик+14 -

и Ы,ш -

ик+>4 -

и1,т -

а1 В

-;-;--В

Ро (1 -е)Ь

Тк+>4 + В/Тк+>4 + и > - «1

1Ы,ш + В1Г1Ы-1,ш + и р1

Ро (1 -е)Д

а

Ро (1 -е)Ь

пк + И к+ у4_,тт„ Фа

*+в!/ к;/4 - вТУ4+и-

Ро (1 -е)Ь

(20) (21)

де: В -

1

В* —

1

Ро,(1 -е)ДГ(2-/)к/ Ро(1 -е)Д*Г(2-/)к/ ' Запишемо в матричному виглядi рiвняння (19)-(21):

ик+14 - ЛТпк+^ + аик-асРТк +

еРог

(22)

де: ик+14 -

ик+14 ик+14 ик+ик+14

Тк+X -

1 п —

Тк+14 Тк+У4 Тк+^4 Тк+^4

1,т

ик - [о,икт,-..,ик-1,т,о]Т , Тк - [о,Т2кт,.Т-1,т,о]Т

-

и Р1 -

ацл

,о,...,о,ир1 —

Ро(1 -е)Д' ""' ' р Ро(1 -е)Д_ Компоненты ауу, г,у -1, N, матриц Л визначаються за виразами:

о, у > г + 2;

а1

- В1, г - у - N

Ро (1 -е)Ь1 1 о, г - N,1 < у < N - 2; -В*, г -1, у - 2;

— -Лч\,г - У * 1 * N В/, г - Nу - N-1; еРог (

а* ■ ■ , л

+ В1/,г - у - 1; -Лщ^у+^тше.

Ро (1 -е) Д*

Аналопчно запишемо у матричному вигляда рiвняння (18) та граничнi умо-ви (16), що вiдповiдають йому:

к+1/ к +1/ 1 / \ / \ -

ВТп /4 + сип /4 + ^2 + аик - о, С-(су), В-(Ьу), г, у -1, N,

(23)

о, у > г + 2;

о, г - N,1 < у < N - 2; (Zlq-1),г - у * 1 * N; (а/- Д*Г(2-/)/,г - у -1; -(а +ДГ(2-/)к/),г - у - N; -а1,г -1, у - 2; а/, г - N, у - N -1; Z1qi-у+1,1нше.

Ьу -

о, у > г + 2; о, г - N,1 < у < N - 2; Zq1d, г - у * 1 * N а1<5/,г - у - 1;г - Nу - N -1; -а18, г - у - N г -1, у - 2; ZqI■-у+^^нше.

а1Г(2-а)(А^2)« Г , , -г

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Zl --кЬ /2/ , ^2 - [Ь*Г(2 -/)к/ир1,о,...,о, ДГ(2-/)к/ир1 ]

г

\

г

\

Т

т

1

а* -

с-

Пiдставляeмо (22) у (23) i отримаемо систему piBHHHb, яку розв'язуемо ввд-носно функцц T

(B + CA)Tk+14 -acPCTnk + (aC + a)Ukn + Y +Y 2 = 0. W

Знайшовши

i3

(24)

множину

(24)

розв'язюв

k + V k+ 1/ k +1/ k +1/ W4TTj\..,TN_(m,TNm4,(k = 0,1,..., K -1), шукаемо i3 (22) множину розв'язюв -

Ukm У\и 2m/4,..,UkN+-i,UkN+m4,(k = 0,1,..., K -1).

На другому швкрощ штервалу Af запишемо неявну рiзницеву схему, у якш врахуемо тiльки похвдну дробового порядку ß за просторовою координатою x2:

k +1/ k+1/ k +1/ k+1/ Tk V2 -aT /4 l m k +1/ Uk 2 — aj + 4

1 n,m WJn,m /l2 v"1 rrk +2 ^ n,m n,m

сР-г—= -ß ь qjTn,m-j+1 + rr-

h2 >=(

Г( 2 -a)(At2) h2j

0

Г( 2-a)(At2)

Ulm/2 - aUk„+/A = m J k+y2 + ad m Tk+12

'=,ß L qjU n,m-j+1 + , ß L qß n,m-j+1 . "2 j=0 "2 j=0

Г( 2-a)(Dy2)" h2j

(25)

(26)

Аналогiчно як i на першому пiвкроцi, на другому швкрощ отримаемо дш системи. Внаслвдок ix розв'язання отримаемо множину розв'язку ввдносно фун-

кци T - Tnk1+^,Tn+^,...,TnM1lTnM2,(k = 0,1,...,K-1), та множину розв'язку вщнос-

но фуHкЦií U - Un,+12, U^212, ■

л + V. , л +1

Un,M/-21,Un,M/ 2,(k = 0,1,..., K-1).

Для знаходження розв'язюв на усьому iнтервалi At використаемо корек-тор, який реалiзовуеться на явнш рiзницевiй сxемi:

ср

Tk +1 - aTk 1 n , +1/ l m ,+1/ Uk +1 - aTjk

1 n,m n,m х-1 т /2 , /v2 V"1 n-,k + /9 . ^ n,m n,m

—-— =~Tß Ъ qjTn-ß,m +~Tß l qjTnJ-j+1 + w-t^-^

Г( 2 -a)Ata h1ß j=0

hßß j=0

Г( 2-a)Ata

(27)

икШ -дЦ^ш _ " . к+у2 + 02 1 ттк+у2 + тк+у2 + а^1 тк+у2 (28)

Г(2-а)Ата _ кр ЦЦп-з+1,т + ^Цз1п-з+1,т + ^з1п,т-}+\-\28)

Отже, iз (28) знаходимо множину розв'язку -{иЩ к _ 0, К -1; п _ 1, М; т _ 1,М}, а iз (27) отримаемо множину розв'язку -

{: к _ 0,К -1; п _ 1М; т _ 1,М} .

Алгоритмiчнi та програмш особливостi. Пiд час написания паралельно! програми потрiбно вирiшувати, скiльки потоюв i якого типу потрiбно викорис-товувати, i як вони повинш взаемоддяти. Цi рiшения залежать як ввд конкретного програмного, так i вiд апаратного забезпечення. У будь-якому випадку, важ-ливою е правильна синхрошзащя взаемодii потокiв [6].

Наведемо формальний опис паралельного алгоритму, базованого на описа-нш чисельнiй схемi (11 )-(28). Нехай е р обчислювальних модул1в (процесорiв, ядер або поток1в) однаковою продуктивное!!. У такому разi потрiбно розбити

розрахункову область на р однакових пiдобластей. Зокрема, кожен обчислювач (потiк) буде виконувати операцií в межах доступно!' йому щдобласп. Оскшьки алгоритм задачi побудований на базi схеми предиктор-коректор, то постае потреба двiчi - на першому та другому швкроках Ат/ 2 виконувати обчислення за неявною схемою за рiзними просторовими координатами i коректувати 'х явною.

Варто зазначити, що на вщмшу вiд класичних рiвнянь тепло- i вологопере-несення, у рiвияннях з частинними похiдними iз дробовим порядком за часом г та просторовими координатами х та у потрiбно зберiгати значения невiдомих на всх тимчасових шарах. Кожен обчислювач на кожному часовому шарi повинен мати допомiжнi змiннi для зберкання значень, переданих з попереднього часового шару. Для першого часового шару використаемо значення початкових умов. Алгоритм задачi можна описати за допомогою таких пунктiв [5]:

1. Виходячи iз початкових умов i параметрiв розбиття сiтки, вс потоки па-ралельно розраховують коефщенти для першого пiвкроку Аг / 2.

2. Для обчислення на наступному часовому крощ виконуемо таш настанови:

a) обчислюються новi граничнi коефiцieнти враховуючи значення з попереднього шару;

b) виконуемо обчислення на першому швкрощ Аг / 2;

c) кожний полк використовуе внутршнш ггерацшний процес;

d) потоки, що вщповщають за розрахунок сусiднiх шдобластей, обмiнюються двома прикордонними значеннями. При цьому враховуються значення з попереднього тимчасового шару, а на наступних гтерацшних кроках - значення з попередньо'1 п^ращ!';

e) кожен потш паралельно розв'язуе свою систему методом прогонки;

1) завершуються обчислення на першому швкрощ Аг / 2;

§) якщо номер П'еращ''' менше р, повтор з кроку Ь), шакше перехiд на новий ча-совий шар i повтор з кроку 2.

3. Виходячи iз початкових умов i параметрiв розбиття сiтки, вс потоки паралельно розраховують коефщкнти для другого пiвкроку Аг / 2 i незмiннi скла-довi прогоночних коефiцiентiв.

4. Виконуемо пункти 2(а) - 2^) для другого твкроку.

5. Для завершення розв'язку на усьому iнтервалi виконуемо коректування результатiв за допомогою спiввiдношення коректор.

На рис. 1 подано схему реалiзацií описаного алгоритму. Враховано розпо-дшення обчислень на потоках. Кшьккть потокiв визначаеться залежно вiд роз-мiру сiтки розбиття областi, яку будемо дослвджувати. На базi запропонованого алгоритму створено програмне забезпечення чисельного моделювання неiзотер-мiчного вологоперенесення у середовищах iз фрактальною структурою, яке по-дае результат в табличному i графiчному виглядi.

Проектування програмно! системи. Реалiзацiя запропонованого алгоритму з використанням ООП полягае у розробленш класiв i вiдношень мiж ними. Створено класи, що реалiзують: характеристики деревини (геометричнi, тепло-мехашчш); розбиття областi на елементи; керування обчисленнями (послвдов-ними, паралельними, розв'язування СЛАР та ш.); представлення результапв, ш-терфейс користувача. Важливi особливосп проектованого програмного забезпечення вщображено на рис. 2 у графiчнiй нотацп ИЫЬ.

Рис. 1. Схема алгоритму програмного забезпечення для чисельного моделювання

Рис. 2. UML дiаграма клаЫв i вiдношeння мiж ними

Для реалiзащí запропонованого алгоритму було спроектовано спещальний клас ManagerAlgoritm. Цей клас мютить методи ConsistentAlgoritm для посль довного виконання обчислень, ParallelAlgoritms для паралельного виконання обчислень, методи, якi дають змогу пiдраховувати час виконання, а також конструктори для створення об'екпв цього класу. Клас Model призначений для керування процесом запуску моделювання, вiдповiдно у ньому мiститься метод Start. Запроектоваш методи ExtractResult, ShowResult, MakeChart поеднаннi у класi ShowResult та здшснюють представлення результатiв з виведенням у файл, табличному та графiчному виглядi. Miж класами Layer та Node реаизова-но вщношення агрегацп, що е слабким зв'язком, тобто в цьому випадку об'екти Layer та Node будуть рiвноправними. Кратнiсть цього зв'язку 1 до багатьох, а це свщчить про те, що один шар буде мютити багато вузлiв. У конструктор Layer передаеться посилання на вже юнуючий об'ект Node, що збтьшуе гнучкiсть програми. Водночас, клас Node мае вщношення асоцiацií з класами PointsTU та ValueTU - це вщношення, за якого об'екти класу одного типу пов'язаш з об'ектами iншого типу. На UML дiаграмi класiв асоцiацiю позначено у виглядi звичайно1 стрiлки. У цьому випадку запроектовано зв'язок один до одного - одному вузлу буде вщповщати одна точка та один набiр характеристик. Ще одним класом програми е клас Forml, який призначений для дiалогу з користувачем та мютить елементи форми та деяк методи.

На рис. 3 подано штерфейс користувача програми, а саме форму для запов-нення вхiдних параметрiв. Щоб здiйснити моделювання, спочатку потрiбно внести потрiбнi вхщт параметри, такi як: фiзичнi характеристики дослщжува-ного взiрця, температуру, волопсть взiрця та зовнiшнього середовища, кть-кiсть вузлiв, час моделювання та ш.

Рис. 3. Дiалогове вЫно програми

Задавши ва вхiднi параметри, можна приступити до процесу моделювання. Зважаючи на те, що реаизацш алгоритму е трудомютким процесом i врахову-ючи розмiрнiсть сiтки розбиття та час моделювання, потрiбно очiкувати на три-

вале моделювання. На час моделювання також впливають i технiчнi характеристики апаратного забезпечення, на якому буде виконуватися програма. Данi результату моделювання в табличному представлен можна спостер^ати на рис. 4.

' модель i 151

вхвдн параметри | матриця розподл/ | графк. розподшу

3d во 30 во 30 80 30

67.4 67,4 67.4 67,4 67.4 67,4 67.4

56.56 56,56 56.56 56,56 56.56 56,56 56.56

49.01 49,01 49.01 49,01 49.01 49,01 49.01

45.38 45,83 45.38 45,83 45.38 45,83 45.88

47.3 47,8 47.3 47,3 47.8 47,8 47.8

54.93 54,93 54.93 54,93 54.93 54,93 54.93

66.3 66,8 66.3 66,3 66.3 66,3 66.8

32.34 82,34 32.34 82,34 32.34 82,34 32.34

99.91 99,91 99.91 99,91 99.91 99,91 99.91

Рис. 4. Табличне представлення результатiв моделювання

На 0CH0Bi табличних даних результатiв моделювання реаизовано методи представлення вологи та температури у графiчному виглядi.

Висновки. У нотацiях об,eктно-орieнтованого пiдходу та паралельного програмування запропоновано алгоритм для чисельного моделювання неiзотер-мiчного вологоперенесення у середовищах i3 фрактальною структурою.

Розроблене багатопотокове паралельне програмне забезпечення може бути ефективним для розв'язку прикладних задач на багатопроцесорних системах i процесорах, що використовують технологш гiперпоточностi.

Створенi класи у реаизованш програмнiй системi забезпечують не тшьки масштабування, а й легке розширення паралельно' реалiзацií, що дасть змогу реалiзовувати схожi складнiшi моделi.

Лггература

1. Соколовський Я.1. Числовий метод дослiдження теплообмшу на тдсташ похвдних дробового порядку / Я.1. Соколовський, М.В. Москвiтiнa // Техтчш BicTi : зб. наук. праць. - 2015. -Вип. 1(41), 2(42). - С. 12-15.

2. Учайкин ВВ. Метод дробных производных / ВВ. Учайкин. - Ульяновск : Изд-во "Артишок", 2008. - 512 с.

3. Podlubny I. Fractional Differential Equations / I. Podlubny. 198 of Mathematics in Science and Engineering, Academic Press, San Diego, Calif, USA, 1999. - 340 s.

4. Васильев В В. Дробное исчисление и апроксимационные методы в моделировании динамических систем : науч. изд. / В.В. Васильев, Л.А. Симак. - К. : Изд-во НАН Украины, 2008. -256 с.

5. Sokolovskyy Y. Mathematical modeling of heat and moisture transfer and reological behavior in materials with fractal structure using the parallelization of predictor-corrector numerical method / Y. Sokolovskyy, V. Shymanskyi, M. Levkovych, V. Yarkun // 2016 IEEE First International Conference on Data Stream Mining & Processing (DSMP), Lviv, 2016. - Pp. 108-111.

6. Грегори Р. Эндрюс Основы многопоточного, параллельного и распределенного программирования / Р. Грегори. - М. : Изд. дом "Вильямс". 2003. - 512 с.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

7. Матвеев С А. Параллельная реализация быстрого метода решения уравнений агрегаци-онно-фрагментационной кинетики типа уравнений Смолуховского / С А. Матвеев // Вычислительная математика и программирование. - 2015. - Т. 16. - Вып. 3. - С. 360-368.

8. Кудерметов Р.К. Многопоточная реализация четырехточечного блочного одношагового метода решения дифференциальных уравнений / Р.К. Кудерметов // Электротехнические и компьютерные системы : сб. науч. тр. - 2015. - № 17. - С. 110-116.

9. Соколовський Я.1. Чисельний метод дослщження неiзотермiчного вологоперенесення у середовищах з фрактальною структурою / Я.1. Соколовський, М.В. Левкович // Вюник Нащ-онального ушверситету "Льв1вська полггехнжа". - Сер.: Комп'ютернi системи проектування. Те-орiя i практика. - Львш : Вид-во НУ "Львшська полiтехнiка". - 2016. - № 844. - С. 124-132.

Надтшла доредакцп 7.10.2016р.

Соколовский Я.И., Яркун В.И., Левкович М.В. Алгоритмическое и программное обеспечение для исследования неизотермического влагопереноса в средах с фрактальной структурой

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

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

Sokolovskyy Ya.I., Yarkun V.I., Levkovych M. V. Algorithms And Software for the Research of Unisothermal Moisture Transfer in the Environment with Fractal Structure

The requirements are specified and the integrated approach to creating numerical simulation algorithm software for unisothermal moisture transfer in environments with fractal structure is selected, which includes the development of parallel algorithm for solving systems of differential equations in partial derivatives. Synchronization streams for parallel interaction exchanges between temporal layers are proposed. Software is developed and user interface to visualize the results of the research is created.

Keywords: parallel computing, flow, differential equations of fractional order, moisture transfer.

УДК 539.3

КОНЦЕНТРАЦ1Я НАПРУЖЕНЬ Б1ЛЯ ЕЛШСО'ЛДАЛЬНОГО ВКЛЮЧЕННЯ У Т1Л1 ВНАСЛ1ДОК ПОПЕРЕДНЬОГО ПЛАСТИЧНОГО ДЕФОРМУВАННЯ М.М. Стадник1,1.Я. Горбачевський2

Дослщжено напруження, що зберк'аються у неоднородному пружному тш з елшсо-!дальним та сферо!дальним нежорсткими чужорщними включениями шсля зняття зов-шшшх сил, що призвели до попереднього пластичного деформування, у мюцях 1'х найб^шо! концентраций Задачу розв'язано наближено з урахуванням тонкост вклю-чення. За тестову взято задачу для пружного стального тша з нiкелевим та мiдним сфе-ро!дальним включеннями, коли попередньо композитовi надали 8 % залишково! деформаций Показано, що величина залишкових напружень е iстотною, i може позначитися на майбутнш експлуатаци такого композита.

Ключовi слова: включення, концентраця напружень, залишковi деформаци.

1 проф. М.М. Стадник, д-р техн. наук - НЛТУ Украши, м. Львгв;

2 доц. 1.Я. Горбачевський, канд. техн. наук - НЛТУ Украши, м. Льв1в

i Надоели баннеры? Вы всегда можете отключить рекламу.