Научная статья на тему 'Программное обеспечение для анализа волновых движений в моментных средах на многопроцессорных вычислительных системах'

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

CC BY
151
39
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МОМЕНТНЫЙ КОНТИНУУМ / УПРУГИЕ ВОЛНЫ / ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ ВЫЧИСЛЕНИЯ / COSSERAT CONTINUUM / ELASTIC WAVES / HIGH-PERFORMANCE COMPUTING

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

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

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

Похожие темы научных работ по математике , автор научной работы — Варыгина Мария Петровна, Киреев Игорь Валерьевич, Садовская Оксана Викторовна, Садовский Владимир Михайлович

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

SOFTWARE FOR THE ANALYSIS OF WAVE MOTION IN MOMENT CONTINUAON PARALLEL SUPERCOMPUTERS

For numerical analysis of dynamic problems of Cosserat elasticity theory on multiprocessor computer systems the parallel algorithms are worked out, which software implementation is fulfilled in Fortran-95 using the SPMD technology and the MPI library. The software package is provided by means of the data bulk compression with controlled information loss, permitting multiply decrease the network traffic while copying files with the results of computations from the remote cluster, and serving for the compact storage of numerical solutions in read-only memory of the computer.

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

2. Kovalev, I. V Information training technology: learner’s 3. Kovalev, I. V Adaptive algorithm offoreign vocabulary

memory state model / I. V. Kovalev, M. V. Karaseva, training on the basis of lexically related components /

E. A. Souzdaleva // Advances in Modeling : J. of AMSE I. V. Kovalev, M. V. Karaseva, O. V. Leskov // Control systems

Periodicals. Ser. B. 2002. Vol. 45, N° 1. Р 21-32. and information technology : Sci. J. 2008. N° 4 (34). Р 78-82.

М. В. Карасева

МУЛЬТИЛИНГВИСТИЧЕСКАЯ ТЕХНОЛОГИЯ. СИСТЕМНЫЕ АСПЕКТЫ ОРГАНИЗАЦИИ И ПРИМЕНЕНИЯ

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

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

УДК 519.688

М. П. Варыгина, И. В. Киреев, О. В. Садовская, В. М. Садовский

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

Для численного исследования динамических задач моментной теории упругости Коссера на многопроцессорных вычислительных системах разработаны параллельные алгоритмы, программная реализация которых выполнена по технологии БРМБ на языке Еог(тп-95 с использованием библиотеки передачи сообщений МР1. Программный комплекс оснащен средствами сжатия больших массивов данных с контролируемой потерей информации, позволяющими многократно снизить сетевой трафик при копировании файлов - результатов счета с удаленного кластера и служащими для компактного хранения численных решений в постоянной памяти компьютера.

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

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

Математическая модель. В модели моментной среды, кроме поступательного движения, которое характеризуется вектором скорости V, рассматриваются независимые повороты частиц с вектором угловой скорости щ, и наряду с тензором напряжений у, компоненты которого несимметричны, вводится несимметричный тензор моментных напряжений т. Полную систему уравнений модели образуют уравнения движения, кинематические соотношения и обобщенный закон линейной теории упругости: рт> = V- с + р g,

/ со = V- т - 2са + /д,

Л = Vv + ю, М = Vю, (1)

с = Ц5: Л) 5 + 2ц Л * + 2а Ла, т = Р(5: М) 5 + 2 уМ* + 2еМа,

1 Работа выполнена при финансовой поддержке Российского фонда фундаментальных исследований (код проекта 08-0100148), Комплексной программы фундаментальных исследований Президиума Российской академии наук № 2 «Интеллектуальные информационные технологии, математическое моделирование, системный анализ и автоматизация» и Междисциплинарного интеграционного проекта Сибирского отделения Российской академии наук № 40.

где р - плотность среды; g - вектор массовых сил; q - вектор моментов; Л и M - равные нулю в естественном (ненапряженном) состоянии среды тензоры деформаций и кривизны; j - инерционный параметр, равный произведению момента инерции частицы относительно оси, проходящей через ее центр тяжести, на число частиц в единице объема; 5 - символ Кронекера; 1, m, a, b, g и e -коэффициенты упругости для изотропного материала. В (1) также используются общепринятые обозначения и операции тензорного анализа: двоеточие означает двойную свертку, точка над символом - производную по времени, звездочка - транспонирование, верхними индексами s и а отмечены симметричная и антисимметричная составляющие тензоров. С антисимметричной составляющей, где это необходимо, отождествляется соответствующий ей вектор, в частности в уравнения вращательного движения входит вектор тензора oa = (о - о* )/2. Для оценки линейного параметра микроструктуры материала справедлива формула r = 5 j/(2р) , основанная на

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

В пространственном случае система уравнений (1) включает 24 уравнения относительно 24 неизвестных функций. Можно переписать ее в матричной форме

[3]:

AU = Б1 Пл + Б2 U,2 + Б3 U,3 + QU + G, (2)

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

U = (vi, V2, V3, оп, 022,

^, ^, ^, °3Ь 013, 021,

0>1, Ю2, ю3, т11, т22, т33, m23, т32, т3Ъ m13, т12, т21).

В вектор G входят массовые силы и моменты. Матрицы-коэффициенты A, B1, B2 и B3 симметричны, а матрица Q антисимметрична. Матрица A положительно определена, если выполняются условия, ограничивающие допустимые значения параметров среды:

3Х + 2ц, ц, a >0, 3р + 2у, у, е >0.

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

Для гиперболической системы корректно поставлена краевая задача с начальными данными и диссипативными граничными условиями [4; 5], выполнение которых для любых двух векторов-функций U и U в точках границы обеспечивает выполнение неравенства

(U - U)(n1B1 + n2Б2 + n3Б3 )(U - U) < 0.

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

°ikni = Pk, ЩкП = qk,

где n - вектор внешней нормали; p и q - заданные на границе векторы внешних усилий и моментов (сумми-

рование производится по повторяющимся индексам), а также условия в скоростях: v = V0, ю = а>0.

Вычислительная технология. Для проведения численного исследования краевых задач для системы (2) разработан параллельный вычислительный алгоритм, основанный на методе двуциклического расщепления по пространственным переменным [3]. Полученные в результате этого расщепления одномерные системы решаются с помощью явной монотонной ENO-схемы с предельной реконструкцией решения.

Алгоритм реализован в виде комплекса программ на языке Fortran-90 с использованием библиотеки MPI (Message Passing Interface) по технологии SPMD (Single Program - Multiple Data). Распараллеливание выполнено на основе блочного разбиения области решения задачи. Программный комплекс позволяет проводить расчеты распространения волн, вызванных внешними механическими воздействиями, в массиве среды, составленном из произвольного числа разнородных блоков с криволинейными границами. Внутренние границы раздела блоков считаются согласованными, что в общем случае достигается с помощью фиктивного разбиения расчетной области. На внешних границах допускается постановка основных типов краевых условий в напряжениях и скоростях, а также неотражающих условий, моделирующих беспрепятственное прохождение волн. Универсальность программ обеспечивается за счет специальной упаковки переменных, используемых на каждом из вычислительных узлов кластера, в одномерные массивы большой размерности.

Необходимые для расчета исходные данные должны представляться в виде текстовых файлов, организованных по типу реляционных таблиц. Один из таких файлов содержит механические параметры материалов в блоках, другой - условия нагружения, в третьем хранится информация о блочной структуре массива: количество слоев по переменной x количество полос в слое по переменной х2 и количество блоков в полосе по переменной x3, координаты вершин блоков, а также идентификационные номера материалов и пространственные размерности сеток. Расчетные сетки, вообще говоря, не стыкующиеся на межблочных границах, в простейшем варианте строятся с помощью кубических эрмитовых сплайнов. Склейка решений на границах раздела выполняется специальной процедурой, в которой решение на измельченной сетке, получаемой пересечением граничных ячеек соседних блоков, находится с помощью уравнений на характеристиках, а затем переносится на исходные сетки методом осреднения.

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

но превышать объем оперативной памяти отдельного процессора.

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

Для примера рассмотрим расчетную область в виде куба для двухслойной разнородной среды (слои разделены между собой поверхностью типа гиперболического параболоида), разбитую на 8 криволинейных блоков, с грубой разностной сеткой, построенной в каждом из блоков автономно (рис. 1, а), а также выделенную четверть расчетной области (два блока) (рис. 1, б) с учетом симметрии задачи, равномерно распределенной программой-препроцессором между 72 процессорами: 43 = 64 процессора обслуживают верхний блок и 23 = 8 - нижний.

Основная программа на каждом узле кластера выполняется одни и те же вычисления, которые сводятся к взаимно согласованной поэтапной реализации метода расщепления по пространственным переменным на каждом шаге по времени. Исключение составляют процессоры, производящие помимо этого еще и склейку решений на внутренних границах. Условия склейки реализуются по следующей схеме. Процессоры, обслуживающие приграничные блоки (блоки, расположенные по обе стороны от границы раздела), передают необходимую информацию одному из процессоров, который производит расчет всей границы в целом и рассылает результаты в обратном направлении. Из соображений минимизации количества пересылок используются различные варианты разбиений расчетной области: Ш, 2Б или 3Б. Если

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

При решении одномерных систем уравнений в блоке используется обычная технология законтурных ячеек (рис. 2): каждый процессор сначала обменивается с соседними процессорами граничными значениями своих данных, а затем пересчитывает искомые величины в соответствии с разностной схемой и с учетом данных, полученных от соседних процессов. Обмен данными осуществляется с помощью функции 8еМгесу библиотеки МР1. Для минимизации времени счета объем блока передаваемых данных (и, следовательно, число передач) варьируется путем совместного решения определенного количества одномерных систем.

Рис. 2. Схема обмена между процессорами с законтурными ячейками

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

Алгоритм сжатия файлов. Идея сжатия файлов числовых данных для компактного хранения и передачи решения заимствована в методе разделения переменных, в соответствии с которым заданная скалярная функция и, зависящая от вектора х = (х^ Х2, ..., хп), разлагается в бесконечный ряд. Элементы этого ряда представляют собой произведения одномерных функций:

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

и(х) - X кХкЛ(хОхк’2(х2}...Хк’п(хп). к - 1

Дискретный аналог ряда с разделенными переменными выглядит следующим образом:

и

= У ъкхклх ’ ...хк.

^ к Ч '2 'и

к = 1

(3)

Обычно в методе разделения переменных базисные фун -кцииХ-2, Хк-п являются собственными функциями некото-

рого дифференциального оператора. В данном случае они определяются из соображений наилучшего приближения и. При вычислении первого слагаемого ряда решается задача условной минимизации квадратичной функции М1 М2 мп

X X . X к»..,,,-'■ х1х2 .хп»2 <■»

'1 = 1 '2 = 1 'и = 1

относительно переменных 1, X1, Х2 ’ к 5 Х^ . При этом предполагается, что выполнены следующие условия нормировки:

М1 М 2

X (Х1)2 = Х (Х2)2 = г1 -1 г2-1

Мп

- к - X (XП )2 - 1.

п

1п — 1

Точка минимума (4) удовлетворяет системе уравнений, которая может быть получена с учетом условий нормировки методом множителей Лагранжа:

М1 М2 Мп

I -XX ... X ии г X1 X2 ... Хп , (5)

г1 г2---гп 1 12 1пу

і1 = 1 '2 = 1 'и = 1

М1 Мк-1 Мк+1 Ми

У. . . У У . . . У и1І2 .х1... Xі-1 хк+1... хп

12- ■ -1и ' 1к-1 1к+1 1и

'1=1 'к-1=1 'к+1=1 1п=!________________________________________

Мк1 г М1 Мк-1 Мк+1 Ми 1

У У- У У ..У ийі х! - - - хк-1 хк+1. - - хп I І-! Ч‘2 - ■ -'и Ч 1к-1 'к +1 'и I

V'к=! V '1 = 1 к-1 = [ 'к+1=1 'и=! 0

к+1

торой значения х^ ^ шага, а в качестве х1

-1, х. 1 участвуют вновь вычисленные значения. Таким образом, реализуется полуне-явная процедура вычислений, аналогичная методу Зей-деля для решения линейных систем алгебраических уравнений. Второе и все оставшиеся слагаемые ряда (3) находятся так же. При определении второго слагаемого дискретная функция и,12.. А заменяется погрешностью иы ' - X х1 х2 - - - хп , полученной после вычисления

1 2 ’ ’ и '1 '2 'и

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

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

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

Описанный выше алгоритм сжатия и вопросы сходимости итерационного процесса и ряда (3) с разделенными переменными в двумерном случае детально исследованы в [6-8], где показано, что скорость сходимости ряда (3) определяется гладкостью аппроксимируемой функции и. Однако для п независимых переменных эти вопросы еще далеки от своего полного решения.

В качестве примера, иллюстрирующего работоспособность алгоритма сжатия, на рис. 3 приведено графическое изображение исходного файла данных, моделирующего сферическую ударную волну на сетке из 50x50x50 ячеек (слева), и результата сжатия (справа). Были вычислены 7 членов ряда. Коэффициент сжатия файла -1/120. Относительная погрешность, характеризующая потерянную информацию, равна 1,5 %.

(6)

Эта система используется при численной реализации алгоритма. Параметр 1 определяется по формуле (5) в завершение расчета, когда базисные функции уже найдены.

Для получения базисных функций применяется один из вариантов метода последовательных приближений. Учитывая условие нормировки, начальное приближение для Xk принимается равным 1/^Мк. Все последующие приближения рассчитываются по формуле (6), в ко-

х берутся с предыдущего

'и к-1

Рис. 3. Сферическая ударная волна и результат сжатия

Также приведем исходную картину и результат сжатия файла для функции

и(Х1, Х2, Хз) -

- ^к(г-Г°)2/Г02(г2 - х2 + х22 + х32),

описывающей локализацию решения на сфере радиуса г0 (рис. 4). Здесь безразмерный параметр локализации к = 20, а радиус сферы равен наибольшей диагонали параллелепипеда. В данном случае число членов ряда равно 12, относительная погрешность вычислений - 2,2 %, коэффициент сжатия - 1/70. Число членов ряда, необходимое для достижения заданной погрешности, растет с увеличением степени локализации, т. е. коэффициента к. Таким образом, рассматриваемый алгоритм сжатия при наличии локализаций решения в весьма узких областях становится малоэффективным.

Рис. 4. Локализация решения на сфере и результат сжатия

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

зо

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

Библиографический список

1. Cosserat, E. Theorie des Corps Deformables / E. Cosserat, F. Cosserat // Chwolson’s Traite Physique. 2nd ed. Paris, 1909. P. 953-1173.

2. Пальмов, В. А. Основные уравнения теории несимметричной упругости / В. А. Пальмов // Прикл. математика и механика. 1964. Т. 28, вып. 3. С. 401-408.

3. Садовская, О. В. Математическое моделирование в задачах механики сыпучих сред / О. В. Садовская,

В. М. Садовский. М. : Физматлит, 2008.

4. Годунов, С. К. Уравнения математической физики / С. К. Годунов. М. : Наука, 1979.

5. Рихтмайер, Р Принципы современной математической физики / Р Рихтмайер. М. : Мир, 1982.

6. Аграновский, М. Л. Об одном разложении в гильбертовом пространстве / М. Л. Аграновский, Р. Д. Баглай // Журн. вычисл. математики и мат. физики. 1977. Т. 17, № 4. С. 871-878.

7. Поспелов, В. В. О приближении функций нескольких переменных произведениями функций одного переменного: препр. / В. В. Поспелов ; Ин-т прикл. математики АН СССР М., 1978.

8. Поспелов, В. В. О погрешности приближения функции двух переменных суммами произведений функций одного переменного / В. В. Поспелов // Журн. вычисл. математики и мат. физики. 1978. Т. 18, № 5.

С. 1307-1308.

M. P. Varygina, I. V. Kireev, O. V. Sadovskaya, V. M. Sadovsky

SOFTWARE FOR THE ANALYSIS OF WAVE MOTION IN MOMENT CONTINUA ON PARALLEL SUPERCOMPUTERS

For numerical analysis of dynamic problems of Cosserat elasticity theory on multiprocessor computer systems the parallel algorithms are worked out, which software implementation is fulfilled in Fortran-95 using the SPMD technology and the MPI library. The software package is provided by means of the data bulk compression with controlled information loss, permitting multiply decrease the network traffic while copying files with the results of computations from the remote cluster, and serving for the compact storage of numerical solutions in read-only memory of the computer.

Keywords: Cosserat continuum, elastic waves, high-performance computing.

УДК004.021

М. А. Селиванова, Т. А. Фонина, Е. Е. Шукшина

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

В качестве реализации подхода Л. А. Растригина к адаптивному обучению рассмотрена программная система адаптивного обучения терминологической лексике английского языка.

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

Процесс разработки любого достаточно сложного программного продукта, как правило, разделяют на этапы концептуализации, анализа, проектирования, реализации и сопровождения [1].

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

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

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

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

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