Научная статья на тему 'Численное исследование рассеяния электромагнитной волны неоднородным телом и неплоским идеально проводящим экраном'

Численное исследование рассеяния электромагнитной волны неоднородным телом и неплоским идеально проводящим экраном Текст научной статьи по специальности «Математика»

CC BY
21
4
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
дифракция электромагнитной волны / неоднородное объемное тело / неплоский экран / система интегро-дифференциальных уравнений / базисные функции / метод Галеркина / параллельный алгоритм / electromagnetic wave diffraction / inhomogeneous solid / curvilinear screen / system of integro-differential equations / basis functions / Galerkin method / parallel algorithm

Аннотация научной статьи по математике, автор научной работы — Олег Сергеевич Скворцов, Алексей Александрович Цупак

Актуальность и цели. Цель работы – разработка, программная реализация и апробация проекционного метода и параллельного алгоритма для решения задачи дифракции электромагнитной волны на системе тел и экранов. Материалы и методы. Метод Галеркина реализован для векторного интегро-дифференциального уравнения задачи дифракции; определены базисные вектор-функции на объемном теле и параметризованном неплоском экране; реализован параллельный алгоритм решения задачи с использованием библиотеки MSMPI. Результаты. Проведено сравнение решений модельной задачи с ранее опубликованными результатами; проведено исследование внутренней сходимости метода Галеркина; исследовано влияние идеально проводящего экрана на решение в области неоднородности. Выводы. Предложенный способ аппроксимации решений на неплоском экране является эффективным методом, существенно расширяющим класс задач дифракции, решающихся методом интегральных уравнений. Проведенные тесты подтвердили высокую эффективность параллельного алгоритма.

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

Похожие темы научных работ по математике , автор научной работы — Олег Сергеевич Скворцов, Алексей Александрович Цупак

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

Numerical study of electromagnetic wave scattering from a non-homogeneous solid and curvilinear perfectly conducting screen

Background. The purpose of the work is development, software implementation and testing of a projection method and a parallel algorithm for solving the problem of electromagnetic wave diffraction on a system of solids and screens. Material and methods. Galerkin method is implemented for the vector integro-differential equation of the diffraction problem; basis vector functions on a three-dimensional body and a parameterized nonplanar screen are determined; parallel algorithm for solving the problem is implemented using the MSMPI library. Results. approximate solutions of the model problem are compared with the previously published results; the inner convergence of the Galerkin method is investigated; dependence of the solution in the area of inhomogeneity on a perfectly conducting screen is investigated. Conclusions. The proposed method of approximation on a curvilinear screen is an effective method that significantly expands the class of diffraction problems solved by integral equations method; numerical tests confirmed high efficiency of the parallel algorithm.

Текст научной работы на тему «Численное исследование рассеяния электромагнитной волны неоднородным телом и неплоским идеально проводящим экраном»

УДК 517.968.78, 519.642.2 doi: 10.21685/2072-3040-2023-3-4

Численное исследование рассеяния электромагнитной волны неоднородным телом и неплоским идеально проводящим экраном

О. С. Скворцов1, А. А. Цупак2

1,2Пензенский государственный университет, Пенза, Россия 1 ghj.ghh.13@mail.ru, 2altsupak@yandex.ru

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

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

Для цитирования: Скворцов О. С., Цупак А. А. Численное исследование рассеяния электромагнитной волны неоднородным телом и неплоским идеально проводящим экраном // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. 2023. № 3. С. 46-65. doi: 10.21685/2072-3040-2023-3-4

Numerical study of electromagnetic wave scattering from a non-homogeneous solid and curvilinear perfectly conducting screen

O.S. Skvortsov1, A.A. Tsupak2

1,2Penza State University, Penza, Russia 1 ghj.ghh.13@mail.ru, 2altsupak@yandex.ru

Abstract. Background. The purpose of the work is development, software implementation and testing of a projection method and a parallel algorithm for solving the problem of electromagnetic wave diffraction on a system of solids and screens. Material and methods. Ga-lerkin method is implemented for the vector integro-differential equation of the diffraction problem; basis vector functions on a three-dimensional body and a parameterized non-planar screen are determined; parallel algorithm for solving the problem is implemented using the MSMPI library. Results. approximate solutions of the model problem are compared with the previously published results; the inner convergence of the Galerkin method is investigated; dependence of the solution in the area of inhomogeneity on a perfectly conducting screen is investigated. Conclusions. The proposed method of approximation on a curvilinear screen is an effective method that significantly expands the class of diffraction prob-

© Скворцов О. С., Цупак А. А., 2023. Контент доступен по лицензии Creative Commons Attribution 4.0 License / This work is licensed under a Creative Commons Attribution 4.0 License.

lems solved by integral equations method; numerical tests confirmed high efficiency of the parallel algorithm.

Keywords: electromagnetic wave diffraction, inhomogeneous solid, curvilinear screen, system of integro-differential equations, basis functions, Galerkin method, parallel algorithm For citation: Skvortsov O.S., Tsupak A.A. Numerical study of electromagnetic wave scattering from a non-homogeneous solid and curvilinear perfectly conducting screen. Izvestiya vysshikh uchebnykh zavedeniy. Povolzhskiy region. Fiziko-matematicheskie nauki = University proceedings. Volga region. Physical and mathematical sciences. 2023;(3):46-65. (In Russ.). doi: 10.21685/2072-3040-2023-3-4

Введение

В работе описан численный метод и параллельный алгоритм решения векторной задачи рассеяния монохроматической электромагнитной волны препятствием, состоящим из объемного неоднородного тела и непересекающегося с ним неплоского идеально проводящего экрана.

Эта задача является хорошо исследованной теоретически [1-4]. Ее численному решению в случае плоских (или кусочно-плоских) экранов посвящено достаточно большое число работ [5-8]. Однако до настоящего времени не был рассмотрен случай, когда экран представляет собой гладкую криволинейную поверхность. Основной трудностью здесь является определение базисных вектор-функций. Нетривиальны определение и вычисление матричных элементов в методе Галеркина, отвечающих случаю, когда базисные и/или тестовые функции определены на неплоском экране.

Высокая трудоемкость метода Галеркина, необходимость вычисления большого числа многомерных интегралов требуют разработки параллельного алгоритма для решения задач дифракции с приемлемой точностью. Еще одна трудность связана с возможной неравномерностью нагрузки процессов на этапе заполнения матрицы системы алгебраических уравнений (СЛАУ): это обусловлено определением элементов матрицы через интегралы разной кратности (четырех-, пяти- или шестикратные). В работе описан метод равномерного распределения нагрузки процессов, эффективный при любом числе базисных функций.

1. Интегро-дифференциальные уравнения задачи дифракции

Задача дифракции монохроматической электромагнитной волны на системе тел Q и экранов Q, расположенных в Ш , сводится [2, 4] к системе векторных интегро-дифференциальных уравнений (ИДУ):

J-( + graddiv)) G (x, y )J (y )dy -

Q

-(( + graddiv))G(x,y)u(y)dsy = E0 (x), xe Q,

f

Q

( + graddiv))G(x,y)J(y)dy -

Q

\

(1)

-(() + graddiv))G(x,y)u(y)dsy | = E0,T(x), xe Q.

Q

A

Здесь Eq т - касательная компонента падающего электрического поля,

J (х) =

Цх) —1

E(x) и G (х, y ) =

iko \х— y\ e o -Г|

k0 =

- волновое число.

4п | х - у |

Неплоский идеально проводящий экран О задан параметрически с помощью вектор-функции

x(t) = (xi(ti,t2),X2(ti,t2),X3(ti,t2))T , te D ,

(2)

В с М2 - область параметров, х^ е С(В), ранг матрицы Якоби ^^^ равен 2.

Ограничения, накладываемые на диэлектрические характеристики среды и рассеивателей, и обеспечивающие однозначную разрешимость (1) и сходимость для него метода Галеркина, подробно описаны в работах [1-4]. Формулировка метода Галеркина является стандартной и описана в многочисленных работах (см., например, [9]).

2. Дискретизация задачи

Для решения системы ИДУ (1) методом Галеркина необходимо построить расчетную сетку на системе тел и экранов.

В статье рассматривается случай, когда система рассеивателей состоит из неплоского экрана О - части сферической поверхности, и объемного тела Q , являющегося прямоугольным параллелепипедом.

Для параметрически заданного экрана О введем в области параметров В = [с1, ] X [с2, d2 ] двухиндексную нумерацию i = (¡1, ¡2) конечных элементов, которые представляют собой прямоугольники

В\22 = [^ ^ +2 ] X [<;2; +1] (¡1 = 0, п - 2, ¡2 = 0, п -1), ■-.2

D. =

[^ t^+i] X [ti2; ti2 +2] (ii = 0, n — 1, i2 = 0, n — 2),

где tik = ck + z'k^k , Ak = k Ck , k = 1,2.

Введем скалярные финитные кусочно-линейные функции

L (t) = <

1 —|t1 — ^ +11, t e Dl.

Ai

vL (t) = \

0,t e dl

U i '

, \ t2 — ^2,г2+1 \ „2 1--^—, t e D2 . ,

A i ,u2

0, t e D

U i '

и вектор-функции типа rooftop [10] (их функций подробно описаны в [11]):

v0i(t)=К,Н- v0i2(t)=(0 V)).

Так как координаты на экране Q являются гладкими, то дифференциал

dx(t): TtD ^ TxQ есть биективное отображение касательных пространств [12, 13]. 48

n

Базисные вектор-функции v. . (х) в точках х = ) = х(\, ¿2) неплос-

кого экрана определим по формуле [14]:

vf . (x(t)) = dx о v°^(ib t2), x(t) eQ .

«1 5«2

(3)

На рис. 1 представлены графики первой и второй компоненты вектор-функции v11 (х(^)) на экране О для случая, когда число разбиения в области параметров п = 2 .

\

-0

I

о

Рис. 1. Первая (а) и вторая (б) компоненты базисной вектор-функции на сферической поверхности

Количество базисных функций на экране при подобном разбиении равно:

Ка= 2п(п -1).

На теле Q = [а^Ь]х[а2,¿2]х[аз,Ь3] введем трехиндексную нумерацию 7 = (71, 72,7з) конечных элементов, представляющих собой параллелепипеды:

ПЯ,Ыз = [Х1,Л;Х1,Л+1]Х[Х2,72 'х2,72 +1]Х[Х3,7з;Х3,7з +1],

где 71 = 0, п -1 72 = 0, п -1 7з = 0, п -1, Хк, к = ак + ]к\ , % = Ьк ак ,

п

к = 1,2,3.

Вводя финитные кусочно-постоянные функции

^ Л, h, J3( x) ='

1, x e D

J2, J3'

0, x e d,

71= 72.7з'

определим базисные вектор-функции на теле по формулам:

Ч,72,7з (Х) = 71,72,7з (Х),0,0),

т\,72,7з (Х) = (0,*71,72,7з (Х),0)

тЛ,72,7з (Х) = (0,0,*71,72,7з (Х)). Количество базисных функций в теле при заданном числе разбиения п

равно

Ыд = 3п3.

Таким образом, общее количество базисных функций равно N = ЫО + Ыд = 3п3 + 2п(п -1).

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

Представим расширенную матрицу S = [S | f ] системы линейных алгебраических уравнений в блочном виде, для удобства введя индексацию базисных функций на экране с помощью верхнего индекса, а на теле - нижнего (рис. 2):

Рис. 2. Блочный вид матрицы 8

Элементы правой части системы уравнений, соответствующие телу, вычисляются по формулам:

[/к ]. = Г Ео(Х)тк (Х)ёХ = Г Ео(Х)тк (х)ох, к =

1 2 3

соответствующие экрану - по формулам:

[/к]. = ГЕо,т(Х)^Х^Х, к = 1,2. (4)

О

Элементы матрицы, соответствующие базисным и тестовым функциям на теле (верхний левый блок), получаются путем вычисления трех- и шестикратных интегралов:

[V = \Х)тк,2,3<72,73^^ -

б

-j(k0 jG(Xy)mjlj2j3dy + grad dlvjG(Xy)mlj\,j2,j3dy^hhh(y)dx =

Q Q Q

= J £( x) j — J ko2 J G (x, уЦ, j2, j3( y)dy

Q Ъ2,3

Di1,i2,i3 V D11-j2.13

m. . . (x)dx —

h ,u2 ,u3

Л

— J aX" J ~dXXiG(x,y¥л, 12,1з(y)dy

D., „ k Di „ l

^i1;i2,i3( x)dx, k, l = 1,2,3.

Элементы матрицы, соответствующие базисным и тестовым функциям на экране, вычисляются следующим образом:

[Skl ]ij = — J ko2 J G (x, y) j i2 (у )dSy

+

Q V Q

+grad div J G(x, y) v j (y)dy

Q

vf,, (x)dSx, k,l = 1,2.

1 >2

(5)

Внедиагональные блоки SQ о , SQ Q матрицы отвечают за взаимодействие полей на теле и экране; элементы матрицы в данных блоках получаются путем вычисления пятикратных интегралов. Для SQ о используем выражения:

[Sf ]j = J ko2 J G (x, y) vj1j2(y)dy

Q V Q

+

+grad div J G(x, y)vj (y)dSy • m* (x)dx, k = 1,2,3, l = 1,2. (6)

Q

Элементы блока Sq q вычисляются следующим образом:

[4 ]ij =—J ko2 J G (x, y)mj1j2,.3(y)dy

+

+grad div J G(x, y )mK j j (y)dy

Q Ъ2,Ъ

v. u (x)dsx, k = 1,2, l = 1,2,3. (7)

H

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

QV Q

формуле (3) и выражения для интеграла по поверхности через повторный интеграл по области параметров получим

[/ = \ Ео,т (х(0)у^х«)^^

д

■Ьг2

где £(0 = det(0 = gll(t)g22(t) — ё^(0 (ёу - метрический тензор [12]).

Далее операцию div в (5) можно внести под знак интеграла [15], а операцию grad - перебросить на тестовую функцию ук . (х) , так как ее нор-

■1 ,.2

мальная равна нулю на границе области интегрирования. Таким образом, формула (5) примет вид

[БЫ]у = -к02 цс(х,у)У1я к (у)у^2 (+ О.О.

+х,y)div у1^ (у) div у^ (x)dsydsx = О.О.

I \ С(х^),у(.?)) (-ко2 У1к к (у(5)) • уЦ (х($))

+

дк д1 ■

■т п. 12

+ ^)д ^ У1Я12(уШ Ф) (Од. ук^хт^ x(t)

Интегралы по экрану в формулах (6) и (7) преобразуются аналогично.

3. Программная реализация метода Галеркина

Выше вводилась индексация для конечных элементов (и отвечающих им базисных функций) в трехмерном пространстве и двумерной области, параметризующей экран. Ниже представлены формулы, связывающие значения индексов и мультииндексов.

Для сеток на теле Q формулы имеют вид

к=

■1 =

■2 =

+1,

(■ mod(и3))

(■ mod(и3))

(■ mod(и3))

■3 = (■ mod(и ) )• mod(и),

где mod(•) — взятие остатка при делении; операция [•] — взятие целой части при делении.

Индексация на экране Q задается следующим образом:

к =

il =

(i mod(n )) n2 - n

(i mod(n ))

+1,

i2 = (i mod(n )) • mod(n),

il =

(i mod(n3)) n-l

- n,

i2 = (i mod(n )) • mod(n -1),

(при к = l)

(при к = l) (при к = 2)

(при к = 2)

Для ускорения работы программы была использована библиотека MPI (msmpi) [16]. Хранение матрицы осуществляется на различных процессах в ленточном виде. Вычисление элементов матрицы осуществлялось согласно схеме, представленной на рис. 3.

Рис. 3. Пример распределения вычисления строк матрицы на четырех процессах

На рис. 3 изображена блочная матрица S порядка 13 (порядки матриц, получившиеся при выполнении реальных вычислений, существенно выше и приведены в табл. 1). Также на рис. 3 опущены (для простоты) индексы к и I и введена сквозная нумерация элементов. Вертикальные и горизонтальные штрихи отделяют блоки на теле Q , экране О и т.д.

Потребность в данном способе заполнения матрицы возникает из-за сильного перевеса по времени в вычислении блока на экране (см. рис. 3).

Заполнение на последнем процессе происходит медленнее всего. Так как в конце заполнения матрицы (до начала решения СЛАУ) отработавшие процессы будут ждать завершения счета на последнем, то заполнение матрицы завершится за 159 с, что, очевидно, не является оптимальным вариантом.

Таблица 1

Время заполнения матрицы на 10 процессах, n = 10

Rank 0 1 2 з 4 5 6 7 8 9

t 44,33 44,33 44,33 44,33 44,33 44,33 44,33 44,33 44,33 158,7

Для оптимизации заполнения матрицы СЛАУ введем понятие веса. Определение. Под весом элемента s^ у будем понимать время его расчета одним процессом и обозначать Р(s^ у).

Тогда весом строки с номером i можно назвать время, за которое одним процессом заполняется i -я строка. Этот вес вычисляется по формуле

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

P( Si ) = P

N—1

N—1

Z Si,j = Z p(Si,j ). j=0 ) j=0

Далее, естественно считать, что

Р(, и и ,) = Р(, + , + ) = Р(3 • ) = 3 • Р(,).

Из вышесказанного получаем, что функция Р линейна. Возвращаясь к рис. 3, сформулируем полученную проблему иначе:

Р(% + ^)« + ¿0).

(8)

Как видно из рис. 3, зачастую возникает ситуация, когда количество ядер компьютера намного меньше размерности матрицы. Тогда блоки Sq q + Sq вычисляются целиком на одном процессе (rank), и в силу неравенства (8) имеем

(last—1

P(ranklast) » P

U ranki

V i

Это приводит к замедлению работы программы.

Исходя из определения матричных элементов через многомерные слабосингулярные интегралы выводим соотношение

Р^) < Р^) < Р(¿о), (9)

также для большинства задач будет выполняться и

Р^) + Р( ^) < Р(50).

Тогда в силу (9), распределяя вычисление блока ¿0 приблизительно поровну между всеми процессами, невозможно добиться выполнения условия

Р(гап^) ~Р(гап^) ~ — ~Р^апк^). (10)

Для выполнения (10) реализован следующий алгоритм действий (отметим, что Р(<о) не учитывается):

1. Распределим строки матрицы по процессам, не обращая внимания на неравенство (8).

2. Предположим, что блоки ¿Од и ¿О вычисляются на последнем процессе гапк¡аз1 целиком.

3. Вычислим приблизительный вес блока ¿О д по формуле

P(SQqQ ) - 2n(n -1) • 3n3 • P(s^Q)

где ¡^р - любой элемент блока ¿0 д .

4. Выберем произвольный процесс, например первый. Рассчитаем его вес Р(гапк1), вычислим сначала вес одной строки на первом процессе по формуле

Р( ) - 3п3 • р (¡ду)+2п(п -1) • Р (),

тогда

P(rankj) - P(sj) • cori.

где corj - количество строк на первом процессе.

5. Найдем вес последнего процесса:

P(ranklast) - P(SQ,Q ) + (cor last - 2n(n -1)) • P(si) ,

если (coriast - 2n(n -1)) > 0, coriast - количество строк на последнем процессе.

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

А =

P(rankj) - P(rankiast)

P(Si)

7. Равномерно вычтем А строк из всех процессов, за исключением последнего, к последнему прибавим А строк:

corj = corj -cor2 = cor2 -

size " А size

- А mod(size), А mod( size),

cor last = cor last +Д.

Реализуем алгоритм выше и выведем полученное время заполнения матрицы.

По данным в табл. 2 видим, как и ожидалось, равномерное по времени заполнение матрицы различными процессами. Наибольшая разница в весе

между процессами составляет менее 0,01 с. Очевидно, что время заполнения матрицы на первых 9 процессах увеличилось в сравнении с исходным (см. табл. 1) в 1,41 раза, так как что блок 50 на экране теперь вычисляется на различных процессах.

Таблица 2

Оптимизированное время заполнения матрицы на 10 процессах после равномерного распределения ^О по процессам и применения алгоритма, п = 10

Rank 0 1 2 3 4 5 6 7 8 9

topt 62,94 62,94 62,94 62,94 62,94 62,94 62,94 62,94 62,94 62,94

Также стоит отметить, что хоть вес первых 9 процессов и увеличился в 1,41 раза, вес последнего процесса уменьшился приблизительно в 2,52 раза, что позволяет сказать, что общая скорость заполнения матрицы увеличилась приблизительно в 2,52 раза.

Таким образом, разработан алгоритм эффективного распределения вычислений между процессами на этапе заполнения матрицы СЛАУ. В силу зависимости результата работы алгоритма только от веса вычисляемых элементов данная реализация позволяет равномерно распределять вычислительную нагрузку между процессами при различных значениях порядка матрицы и различном соотношении числа базисных функций на экране и теле - см. табл. 3 и 4 (во второй строке таблиц курсивом выделены наименьшее и наибольшее время нагрузки процесса при неоптимизированном заполнении матрицы).

Таблица 3

Время заполнения матрицы до (t) и после (t0pt) оптимизации на 8 процессах, число разбиений для сеток п = 8

Rank 0 1 2 3 4 5 6 7

t 16,9 14,6 15,3 13 16,1 10,2 15,5 60,3

topt 22,9 22,9 22,9 22,9 22,9 22,9 22,9 22,9

Таблица 4

Время заполнения матрицы до (t) и после (t0pt) оптимизации на 14 процессах, число разбиений для сеток п = 14

Rank 0 1 2 3 4 5 6 7 8 9 10 11 12 13

t 198 166 183 184 170 144 193 180 185 121 187 176 183 658

topt 276 276 276 276 276 276 276 276 276 276 276 276 276 276

Перераспределение вычислений элементов, отвечающих экрану, будет осуществляться согласно схеме на рис. 4. С каждого из четырех процессов строки отправляются на последний процесс (в общем случае может отправляться несколько строк с процесса).

S =

«1.L Si,я Si,a Si,, Si.s Sf,6 S i .7 Si,a s,.^ I Sun S,.,i

Si.a Ss.i S 2, ] S2.B S-j.fi S*.7 S2,s s2(9 1 Зало S2.11 Si. 11 S2.11,

Si,i Sn,-- Sn.n S3. Sj,5 8з.е S3.7 S;i,s S3<u | S:},io S',.11 Si. 12 Sj.M

s,, B.i a Su S,.| S.i.n Si.s Si,i Si.s S4-1 1 S,1,111 S.,.11 S.1.12 S.i.in

SE.,1 s5,a 3,„J S;,.i S6l5 Sj.ir S-,.7 i S5.10 S,.1I S.,12 S-,,14

s„. Se.it S„, So, 5 S„,:, S.i,7 S,,.s Sr>. щ S11.11 S,U2 Sfn.rl

S.7,1 Sr.a Sr ■( Sr.t S7,?, Sr.ti S77 ST,B S7.. 1 Sr.io Sy.u S7.H ST.,;,

SK.L s^ Sjm S»,.s Ss.fl Sh,t Sx.,4 sft(1, 1 Ss.lD S«,n Sjua S»,i3

Sii. i S,i.j S9,i Sa,i S.9,6 S,.7 S'l.ft So.it S^, 1 it Ssr,U S.Jli;1

S ю. Snia Suj.k S|l! h S.Oi, SJIN.7 Sm.g Siu.o S10,ID Sio.ii S ]0,12 s 10. M

S„.,| 8ц l4 Si i ,j S.,,1 Ёи.» Sun Si,.7 Si 1.8 Siu | Sum Si i n Si 1.12 Sj i,i;i

S'u.-i SlLf.J Si J.J St г 0 Sii;T S |2,il S 12,9 I S )2, lit S 1.7.11 S12.12 s 12.

S„,i S i.i.a S и.з S i.i,r> S i3.fi Sui s 1.1.8 Sia.o S1.1. ш S1;,. J | »S,3.n

Рис. 4. Направление отправки блоков матрицы S для 4 процессов (экран)

Перейдем к заполнению других блоков. Разобьем блок на теле Q матрицы 8 на подблоки согласно схеме на рис. 5.

s =

SM S1>a Sj.J S2,i Зад S24 S:U S:(,2 S ^, ;t S t, sM S,,i s2|l, S2ir. S;5,.| SH,.% S3.fi Si 7 S||S Si r> Sj t; Sj,;» S:v7 Sji.fi, S.J,!)

St., S.li S.t,;i Ss 1 S,,o S5-, S(i.E Srt>2 S(i,;j S.i,, S.ii9 S.|frj S},.| Sri Sr.Ji Sf,,., Ss_n S(i,n S.|,7 S.^N Ss,7 Sas S.^u S{> 7 Sli rt SG,!J

ST,1 Sr,2 | Sjt.i Sft^ 69,1 S-V2 1 St., St,S S*,> Sg^i, Sy,,, Su.';, S;tii S7.7 S-,M ST.!1 S,4,7 Ss,« S|>.7 S1(,, S.j,

Sinj s ,0/2 Situ

Suj S11 S и л

Sjy.a

^Sj д

Sj.iu Sj.ii S;JJ SL.ui ^

S2.il! &S.JJ

I S: I. S,;.

S.i.tii Sin Sjiy Sj,n

S&.m 11 S и St, i.i

Sg.in S„n Siuji

Sr.iu S7i]| S7ii2 S- i.i

S*.tO S^ и

Sn.ni S„.H SN 1'J S,.,,

Sio,H) S,o,i 1 Siuta Ski и

S11,in SIMI Sn.12 Sn.ia

SiilW S,j,ii S 12,141

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

S^jfi s

$1,1.1 й Ц|.,1 8 .1.. ^ I I р ц ч ;': "

РГ)Ы йц-, й,,|, Йц; вц.я

Si.ii.-t 5,0.11 Яп.в Si2.ii

Б 1:1.1 й и,.л, В , ;, Я,,.; >

Рис. 5. Различные блоки матрицы 8

Тогда, учитывая формулы для матричных элементов и указанное выше свойство ядра, заключаем, что матрица имеет блочно-теплицеву структуру, и блоки, выделенные одним цветом, совпадают. Следовательно сокращения времени заполнения матрицы можно добиться, вычислив только один из совпадающих блоков (выберем только те блоки, которые находятся под главной диагональю) и отправив их на место блоков над главной диагональю (см. рис. 6). Выбор блоков под главной диагональю для реального счета соответствует случаю, когда перебор индексов ] базисных функций идет в порядке возрастания. Это позволяет исключить простаивание процессов и потерю производительности. Если перебор матричных элементов идет в порядке убывания индексов, необходимо заполнить блоки, расположенные над главной диагональю.

5|,]2 5|

82,1а

8/1,12 ^ ' .4

5.1,12 5.1,13

5',12 Э.Г, п

и 8еДЗ

Й7.1Д

8.1,12 1

3|Оц1З ЗЦЛ* Яцда

3]2,12 8».12

Рис. 6. Направление пересылки блоков матрицы S для 4 процессов

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

Теперь рассмотрим подробнее вычисление элементов блоков Q и

5ъ ( • Прежде всего можно увеличить скорость заполнения матрицы, вычис-

т

лив лишь один из эти блоков, так как 5(ъ = ( .

Специфика структуры основной матрицы определяет наиболее выгодный способ хранения матрицы и заполнения блоков. Заметим, что блок ъ

3 2

содержит 3п строк, а - 2(п — п), поэтому выгоднее заполнять блок

Ъ , так как он распределен по большему числу процессов (или даже всем

за исключением последнего). Заполнение матрицы завершается серией пересылок после вычисления ъ ; схема рассылок приведена на рис. 7.

»1,1 81,11 Я 1.0 »1,7 В..9 | в |,ю St.it й, 12 Зи.ч

Зад 52.0 32.0 32,7 ваш 81,1 82,2 82,1:1

8ЗЛ 83,-2 Зад йа.ь З.ио ^з.и 8.и? 8;|. 13

а.,., 8.[.2 ^ '.I 8., , 5.,.г, 8.1,0 3 1.7 "Й.и | 8,|(и> 8.»л1 5,12 8-1,1 л

Бм я?,, зя.<-, ¿(.и 85.12 8,„,а

3,.., Se.ii 8<ио Зил 1 8(1.12 ®сл и

Б?.! S7.ii 9М $7.4 S7.fi 87,7 1 87,10 5? 11 8т ш

8ВЛ И Ц Ъь.у 8^1 5*,1л

Б.,., 5.1,2 1 а,.5 8э,к 89,10 8^12 89.1:[

310.1 - к | Зцр.о 810,0 5 |и,7 810,9 3 ш, щ> SIIX.II «1.1.13

3|1.1 81,,, Зц з 5] г. 3„,з Зц.о 1,7 8 И 8ц,& | «и ,1.0 811,11 811,12 в,, ,я

5,2.1 5,2,2 81:1.3 5] 812,7 Sii.fi Ям.* 1 8(2,1,0 8|2,11 812,1'.»

Зим 5 1Г1.2 31 ;!.з 5]:ы 51 з.з Б га, е 513.7 8 «а,« ! 8] ало 8 кит 8 1-1,12

Рис. 7. Пример рассылки элементов блока ъ матрицы S для случая 4 процессов 58

Учитывая пересылку блоков Sqq и Sqq , скорректируем формулу, определяющую вес блока P(Sqq ):

P(Sq q) 2n(n -1) • 3n3 ■ P(sQf)

P(Sqq ) « --^Q- --:-.

size -1 size -1

Замечание. Для решения СЛАУ с расширенной матрицей, хранящейся на нескольких процессах, был реализован параллельный алгоритм метода Гаусса с обнулением элементов только под главной диагональю.

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

Для проверки эффективности применения параллельного алгоритма численного решения системы методом Галеркина был проведен ряд вычислительных экспериментов на персональном компьютере с процессором 1912900 (16 ядер, 24 потоков), объем доступной для вычислений оперативной памяти - 64 Гб. На рис. 8 приведены сведения о времени решения задачи в зависимости от числа используемых процессов.

115,00 95,00 75,00 55,00 35,00

а)

150,00 130,00 110,00 90,00 70,00

б)

в)

Рис. 8. Зависимость времени заполнения матрицы СЛАУ(а), решения СЛАУ методом Гаусса (б), записи данных в файлы (в) и общего времени решения задачи (г) от числа процессов

350,00 300,00 250,00 200,00

г)

Рис. 8. Окончание

Проведенные эксперименты подтверждают высокую эффективность распараллеливания задачи, как на этапе заполнения матрицы СЛАУ. Это обусловлено прежде всего сравнительно небольшим объемом обмена данными между процессами (особенно при вычислении матричных элементов). Эффективность параллельной реализации метода Гаусса уменьшается с ростом числа процессов в силу все возрастающего числа обменов между процессами.

Следующий тест проводился с целью апробации предложенного в [14] метода аппроксимации решений задачи на криволинейном экране. В качестве

экрана был рассмотрен прямоугольник 0 = [-0,3575А,;0,3575А,] , расположенный в плоскости Х3 = 0, падающая волна имеет вид £0 = (1,0,0). Результаты решения задачи дифракции на таком идеально проводящем экране опубликованы в многочисленных статьях (см., например, [17]) и могут считаться референсными. Результаты, представленные на рис. 9, не только подтверждают хорошее совпадение полученных результатов с известным, но и демонстрируют наличие внутренней сходимости.

Перейдем к рассмотрению основного вычислительного эксперимента. В качестве объемного рассеивателя рассмотрен неоднородный куб

Q =

X V3 ' 2' 2

а в качестве экрана Q - четверть сферы S^ | —2 - 0.2,0,0 j,

закрывающая верхнюю половину куба. Волновое число k0 = -2nU + i,

с

и = 15 Ггц, c - скорость света в вакууме | -СМ I, а диэлектрическая проница-

^ сек J

емость куба задается формулой

е (х) = i4 + 2i, х2 > 0, £r (Х) [ 2 + i, х2 < 0.

На рис. 10 приведены графики приближенных решений задачи дифракции для нескольких значений числа разбиений сетки п.

С увеличением числа базисных функций возрастает точность решения, что следует из табл. 5 (здесь A(u) = max | u ni — u n |).

д) к = 2, п = 20 е) к = 2, п = 30

Рис. 9. Графики к-го компонента вектора тока на поверхности плоского экрана при различных значениях числа разбиений сетки п

Таблица 5

Внутренняя сходимость решения на теле

»1 = 8, »2 = 10 »1 = 10, »2 = 12 »1 = 12, »2 = 18

A(u) 0,0200183 0,0126882 0,0043491

Д(Е) 0,135268 0,105149 0,0764559

Положив в основной матрице СЛАУ все элементы блоков д и □

равными нулю, решим одновременно две задачи дифракции на (отдельно) криволинейном экране и неоднородном кубе. Сравнение результатов (рис. 10 и 11) показывает, что в присутствии идеально проводящего экрана решение в области неоднородности существенно меняется: значение тока поляризации в «экранированной» части куба существенно меньше, чем в «неэкранирован-ной», что полностью согласуется с физической природой моделируемого процесса.

1.0&+01

3.46-02

д) п = 18 е) п = 18

Рис. 10. Плотность поверхностного тока |и| на экране (а, в, д); модуль вектора поляризации Ш в области неоднородности (б, г, е)

2&+01

62е-02

б)

Рис. 11. Решение задачи дифракции на экране (а); решение задачи дифракции на теле в отсутствие экрана (б)

Заключение

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

Список литературы

1. Смирнов Ю. Г., Цупак А. А. О фредгольмовости уравнения электрического поля в векторной задаче дифракции на объемном частично экранированном теле // Дифференциальные уравнения. 2016. Т. 52, № 9. С. 1242-1251.

2. Смирнов Ю. Г., Цупак А. А. Математическая теория дифракции акустических и электромагнитных волн на системе экранов и неоднородных тел. М. : КноРус, 2016.

3. Smimov Y. G., Tsupak A. A. Existence and uniqueness theorems in electromagnetic diffraction on systems of lossless dielectrics and perfectly conducting screens // Applicable Analysis. 2017. Vol. 96, № 8. P. 1326-1341.

4. Smirnov Y. G., Tsupak A. A. Investigation of electromagnetic wave diffraction from an inhomogeneous partially shielded solid // Applicable Analysis. 2018. Vol. 97, № 11. P. 1881-1895.

5. Смирнов Ю. Г., Медведик М. Ю., Максимова М. А. Решение задачи электромагнитной волны на экранах сложной формы // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. 2012. № 4. С. 59-72.

6. Смирнов Ю. Г., Москалева М. А. Сходимость метода Галеркина в задаче дифракции электромагнитных волн на системе произвольно расположенных тел и экранов // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. 2016. № 2. С. 78-86.

7. Смирнов Ю. Г., Медведик М. Ю., Цупак А. А., Максимова М. А. Численное решение задачи дифракции электромагнитных волн на системе тел и экранов // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. 2014. № 3. С. 114-134.

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

8. Medvedik M. Y., Smirnov Y. G., Tsupak A. A., Valovik D. V. Vector problem of electromagnetic wave diffraction by a system of inhomogeneous volume bodies, thin screens, and wire antennas // Journal of Electromagnetic Waves and Applications. 2016. Vol. 30, № 8. P. 1086-1100.

9. Kress R. Linear integral equations. Berlin : Springer-Verlag, 1989.

10. Hanninen I., Taskinen M., Sarvas J. Singularity subtraction integral formulae for surface integral equations with RWG, rooftop and hybrid basis functions // Prog. Electromagn. Res. PIER. 2006. Vol. 63. P. 243-278.

11. Медведик М. Ю. Применение функций крышек для решения задачи дифракции электромагнитных волн на экранах сложной формы // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. 2012. № 3. С. 84-98.

12. Дубровин Б. А., Новиков С. П., Фоменко А. Т. Современная геометрия. М. : Наука, 1979.

13. Зорич В. А. Математический анализ : в 2 частях. М. : ФАЗИС, 1997. Ч. 2.

14. Цупак А. А. Численный метод и параллельный алгоритм решения задачи дифракции электромагнитной волны на неплоском идеально проводящем экране // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. 2020. № 4. С. 32-41.

15. Ильинский А. С., Смирнов Ю. Г. Дифракция электромагнитных волн на проводящих тонких экранах. М. : ИIIРЖ «Радиотехника», 1998.

16. Microsoft MPI. URL: https://msdn.microsoftcom/en-us/library/bb524831(v=vs.85).aspx

17. Peter A., Zwamborn M., van den Berg Peter M. A Weak Form of the Conjugate Gradient FFT Method for Plate Problems // IEEE transactions on antennas and propagation. 1991. Vol. 39. № 2.

References

1. Smirnov Yu.G., Tsupak A.A. On the Fredholm property of the electric field equation in the vector problem of diffraction by a volume partially shielded body. Differentsial'nye

uravneniya = Differential equations. 2016;52(9):1242-1251. (In Russ.)

2. Smirnov Yu.G., Tsupak A.A. Matematicheskaya teoriya difraktsii akusticheskikh i el-ektromagnitnykh voln na sisteme ekranov i neodnorodnykh tel = Mathematical theory of diffraction of acoustic and electromagnetic waves on a system of screens and inhomo-geneous bodies. Moscow: KnoRus, 2016. (In Russ.)

3. Smirnov Y.G., Tsupak A.A. Existence and uniqueness theorems in electromagnetic diffraction on systems of lossless dielectrics and perfectly conducting screens. Applicable Analysis. 2017;96(8):1326-1341.

4. Smirnov Y.G., Tsupak A.A. Investigation of electromagnetic wave diffraction from an inhomogeneous partially shielded solid. Applicable Analysis. 2018;97(11):1881-1895.

5. Smirnov Yu.G., Medvedik M.Yu., Maksimova M.A. Solving the problem of an electromagnetic wave on screens of complex shape. Izvestiya vysshikh uchebnykh zavedeniy. Povolzhskiy region. Fiziko-matematicheskie nauki = University proceedings. Volga region. Physical and mathematical sciences. 2012;(4):59-72. (In Russ.)

6. Smirnov Yu.G., Moskaleva M.A. Convergence of the Galerkin method in the electromagnetic waves diffraction problem on a system of arbitrary located bodies and screens. Izvestiya vysshikh uchebnykh zavedeniy. Povolzhskiy region. Fiziko-matematicheskie nauki = University proceedings. Volga region. Physical and mathematical sciences. 2016;(2):78-86. (In Russ.)

7. Smirnov Yu.G., Medvedik M.Yu., Tsupak A.A., Maksimova M.A. Numerical solution of the electromagnetic wave diffraction problem on the system of bodies and screens. Izvestiya vysshikh uchebnykh zavedeniy. Povolzhskiy region. Fiziko-matematicheskie nauki = University proceedings. Volga region. Physical and mathematical sciences. 2014;(3):114-134. (In Russ.)

8. Medvedik M.Y., Smirnov Y.G., Tsupak A.A., Valovik D.V. Vector problem of electromagnetic wave diffraction by a system of inhomogeneous volume bodies, thin screens, and wire antennas. Journal of Electromagnetic Waves and Applications. 2016;30(8):1086-1100.

9. Kress R. Linear integral equations. Berlin: Springer-Verlag, 1989.

10. Hanninen I., Taskinen M., Sarvas J. Singularity subtraction integral formulae for surface integral equations with RWG, rooftop and hybrid basis functions. Prog. Electromagn. Res. PIER. 2006;63:243-278.

11. Medvedik M.Yu. Application of lid functions for solving the problem of electromagnetic waves diffraction on screens of complex shape. Izvestiya vysshikh uchebnykh zavedeniy. Povolzhskiy region. Fiziko- matematicheskie nauki = University proceedings. Volga region. Physical and mathematical sciences. 2012;(3):84-98. (In Russ.)

12. Dubrovin B.A., Novikov S.P., Fomenko A.T. Sovremennaya geometriya = Modern geometry. Moscow: Nauka, 1979. (In Russ.)

13. Zorich V.A. Matematicheskiy analiz: v 2 chastyakh = Mathematical analysis: in 2 parts. Moscow: FAZIS, 1997;(part 2). (In Russ.)

14. Tsupak A.A. A numerical method and a parallel algorithm for solving the problem of electromagnetic wave diffraction on a non-planar perfectly conducting screen. Izvestiya vysshikh uchebnykh zavedeniy. Povolzhskiy region. Fiziko-matematicheskie nauki =

University proceedings. Volga region. Physical and mathematical sciences. 2020;(4):32-41. (In Russ.)

15. Il'inskiy A.S., Smirnov Yu.G. Difraktsiya elektromagnitnykh voln na provodyashchikh tonkikh ekranakh = Diffraction of electromagnetic waves on thin conductive screens. Moscow: IPRZh «Radiotekhnika», 1998. (In Russ.)

16. Microsoft MPI. Available at: https://msdn.microsoft.com/en-us/library/ bb524831(v=vs.85).aspx

17. Peter A., Zwamborn M., van den Berg Peter M. A Weak Form of the Conjugate Gradient FFT Method for Plate Problems. IEEE transactions on antennas and propagation. 1991;39(2).

Информация об авторах / Information about the authors

Олег Сергеевич Скворцов студент, Пензенский государственный университет (Россия, г. Пенза, ул. Красная, 40)

Oleg S. Skvortsov

Student, Penza State University

(40 Krasnaya street, Penza, Russia)

E-mail: ghj.ghh. 13 @mail.ru

Алексей Александрович Цупак

кандидат физико-математических наук, доцент, доцент кафедры математики и суперкомпьютерного моделирования, Пензенский государственный университет (Россия, г. Пенза, ул. Красная, 40)

E-mail: altsupak@yandex.ru

Aleksey A. Tsupak

Candidate of physical and mathematical sciences, associate professor, associate professor of the sub-department of mathematics and supercomputer modeling, Penza State University (40 Krasnaya street, Penza, Russia)

Авторы заявляют об отсутствии конфликта интересов / The authors declare no conflicts of interests.

Поступила в редакцию / Received 15.05.2023

Поступила после рецензирования и доработки / Revised 20.07.2023 Принята к публикации / Accepted 16.08.2023

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