УДК 532.5
В. С. М о р е в а
СПОСОБЫ УСКОРЕНИЯ ВЫЧИСЛЕНИЙ ПРИ РЕШЕНИИ ПЛОСКИХ ЗАДАЧ АЭРОДИНАМИКИ МЕТОДОМ ВИХРЕВЫХ ЭЛЕМЕНТОВ
Рассмотрены подходы, позволяющие сократить затраты машинного времени при решении плоских нестационарных задач аэрогидродинамики методом вихревых элементов, возможности применения параллельных вычислительных алгоритмов и так называемого быстрого метода в задаче N тел. Приведены оценки их эффективности. Оба способа реализованы в программном комплексе POLARA, позволяющем решать серию однотипных независимых задач о моделировании обтекания профилей потоком вязкой несжимаемой среды и определении их аэродинамических характеристик.
E-mail: [email protected]
Ключевые слова: метод вихревых элементов, параллельные алгоритмы,
быстрый метод в задаче N тел.
Метод вихревых элементов (МВЭ) является весьма эффективным численным методом моделирования двумерных течений несжимаемой среды; в настоящее время он интенсивно развивается как в нашей стране, так и за рубежом [1, 2]. Возможности метода достаточно широки: он, с одной стороны, позволяет исследовать фундаментальные вопросы гидромеханики вплоть до эффектов, которые невозможно или чрезвычайно трудно смоделировать при использовании других численных методов [3], а с другой стороны, дает возможность решать многие инженерные задачи с приемлемой для практических приложений точностью при достаточно низких затратах машинного времени (по сравнению с сеточными методами).
В частности, одним из актуальных направлений исследований является разработка эффективных методов моделирования поведения конструкций в потоке жидкости или газа, когда требуется решать сопряженную задачу движения профиля в потоке под действием гидродинамических сил. Во многих математических моделях учет влияния набегающего потока на обтекаемый профиль приближенно, но вполне обоснованно осуществляется c помощью безразмерных стационарных аэродинамических коэффициентов Cxa, Cya и Cm (коэффициентов лобового сопротивления, подъемной силы и аэродинамического момента соответственно). Движение профиля сопровождается изменением его угла атаки по отношению к набегающему потоку, что влечет за собой изменение аэродинамических нагрузок, которое может быть учтено через зависимости аэродинамических коэффициентов от угла атаки. Для некоторых представляющих практический интерес профилей
эти зависимости определены экспериментально; однако в соответствующих справочниках приводятся данные лишь для определенного класса профилей, чаще всего — крыловых, а также для простейших форм плохообтекаемых профилей [4, 5].
В ряде случаев решаемые задачи сводятся к исследованию влияния потока среды на систему профилей, при этом одни профили (подветренные) попадают в спутный след других (наветренных). Зависимости их стационарных аэродинамических коэффициентов от взаимного расположения профилей с учетом взаимовлияния подробно исследованы экспериментально лишь для круговых профилей [6].
Таким образом, задача численного моделирования обтекания профилей и определения их аэродинамических характеристик в зависимости от угла атаки профиля либо его расположения по отношению к другим обтекаемым профилям является актуальной.
Для получения стационарных значений Сха, Суа и Ст для фиксированного угла атаки профиля требуется решить нестационарную задачу о моделировании обтекания неподвижного профиля, установленного под заданным углом, а затем усреднить вычисленные нестационарные значения аэродинамических коэффициентов по большому промежутку времени. Для получения достаточно точных зависимостей аэродинамических характеристик от угла атаки может потребоваться значительное число расчетов. Скорость решения всей задачи, т. е. построения зависимостей Сха(а), Суа(а) и Ст(а) для определенного диапазона углов атаки а, становится особенно важной, когда требуется провести анализ большого числа возможных вариантов, например, при решении задач оптимизации и поиска оптимальной формы профиля. Аналогичная ситуация возникает при проведении вычислительных экспериментов, чрезвычайно важных при разработке новых или модификации существующих расчетных схем МВЭ. К этому же классу относятся методические задачи подбора оптимальных параметров расчетной схемы численного метода.
Целью настоящей работы является анализ способов ускорения вычислений, проводимых с помощью метода вихревых элементов (ВЭ), а также создание алгоритмов оптимизации использования имеющихся вычислительных ресурсов.
Метод вихревых элементов [1-3] — это бессеточный лагранжев метод численного моделирования нестационарного обтекания профилей, основанный на моделировании эволюции завихренности. Распределение завихренности моделируется набором ВЭ, для каждого из которых задается положение в пространстве и интенсивность. Скорость среды в любой точке течения вычисляется по закону Био-Савара по
известным характеристикам ВЭ, а давление определяется при помощи аналога интеграла Коши-Лагранжа.
Метод вихревых элементов особенно эффективен при решении внешних задач обтекания, поскольку на каждом шаге расчета по времени выполнение уравнения неразрывности и граничного условия на бесконечности происходит автоматически. Граничное условие прилипания обеспечивается генерацией ВЭ на поверхности обтекаемых профилей, а течение идеальной либо вязкой среды, описываемое уравнениями Эйлера либо Навье-Стокса, моделируется движением имеющихся ВЭ. Интенсивности генерируемых ВЭ находятся из решения соответствующей системы линейных алгебраических уравнений, аппроксимирующей граничное условие на профиле, а движение ВЭ описывается системой обыкновенных дифференциальных уравнений, правые части которой представляют собой скорости движения ВЭ. Именно процедура определения скоростей ВЭ является наиболее затратной с вычислительной точки зрения, особенно при увеличении числа ВЭ в расчете, поскольку для этого приходится учитывать взаимное влияние всех пар ВЭ. Несколько менее трудоемкими, но тем не менее достаточно затратными, являются операции реструктуризации вихревой пелены и вычисления аэродинамических нагрузок, действующих на профиль.
Таким образом, решение серии задач по расчету обтекания профилей под различными углами атаки требует выполнения большого объема вычислительной работы, но в силу однотипности и независимости отдельных задач процедуру их решения можно оптимизировать путем автоматизации серии расчетов. Одним из перспективных направлений представляется применение параллельных алгоритмов, позволяющих оптимизировать использование имеющихся вычислительных ресурсов.
Помимо распараллеливания вычислений для сокращения времени счета возможно использование так называемого быстрого метода в задаче N тел. Аналог задачи N тел в МВЭ возникает при вычислении скоростей движения ВЭ, индуцируемых другими ВЭ. Алгоритм приближенного решения данной задачи быстрым методом предлагается в работе [7]. Его использование позволяет существенно уменьшить вычислительную сложность задачи и дает возможность увеличить число ВЭ и тем самым повысить точность результатов.
Параллельные вычисления. Рассмотрим один из способов ускорения вычислений в МВЭ — использование параллельных алгоритмов [8]. В каждой задаче с помощью алгоритма МВЭ моделируется обтекание профиля под фиксированным углом атаки и определяются
аэродинамичексие нагрузки, действующие на него. В силу независимости этих задач наиболее очевидным является внешнее распараллеливание — одновременное решение нескольких задач. Для его реализации в разработанном программном комплексе РОЬАЯА предусмотрена возможность работы на современных многопроцессорных (многоядерных) вычислительных системах, что позволяет осуществлять конвейерную обработку очереди задач: использование большого числа вычислительных ядер дает возможность проводить несколько расчетов одновременно; по мере завершения отдельных расчетов и освобождения соответствующих ядер на них запускается процесс решения следующих задач.
В программном комплекс РОЬАЯА реализовано также внутреннее распараллеливание — параллельное выполнение наиболее трудоемких этапов алгоритма (например, вычисление скоростей ВЭ) внутри решения одной задачи обтекания профиля. Использование данного механизма позволяет оптимизировать загрузку вычислительных ядер при решении большой серии задач, а также сократить временные затраты при решении малой серии задач или единственной задачи, которая может иметь чрезвычайно высокую вычислительную сложность.
Программный комплекс РОЬАЯА позволяет использовать оба типа параллелизма одновременно, причем число вычислительных ядер, выделяемых под решение различных задач обтекания профиля под конкретными углами атаки, может выбираться пользователем произвольным образом. Это связано с тем, что для одного и того же профиля вычислительная сложность моделирования его обтекания может существенно зависеть от угла атаки.
Рассмотрим основные этапы алгоритма определения аэродинамических характеристик некоторого профиля в заданном диапазоне углов атаки. Для этого требуется решить серию из задач, каждая из которых соответствует обтеканию под определенным углом атаки. Пусть общее число доступных процессоров (вычислительных ядер) равно Мргос, а для решения г-й задачи выделяется прГос процессоров (рис. 1).
Рис. 1. Схема распараллеливания при решении задачи
Этап 1. На этапе запуска расчета из Кргос процессоров выделяется головной процессор, на который из текстового файла загружается список углов атаки а» с указанием чисел иргос — очередь задач. На этот процессор также загружаются из соответствующих файлов общие параметры расчетной схемы, геометрия обтекаемого профиля и значение кванта времени — времени, через которое происходит синхро-
низация работы параллельных ветвей программы, контроль загрузки процессоров и обновление очереди задач. Если в каких-то из запущенных расчетов выполняется условие прекращения счета, то их решение останавливается, а задействованные в них процессоры высвобождаются. Таким образом, глобальный головной процессор контролирует решение серии задач и осуществляет пересылки необходимых данных между другими процессорами.
Этап 2. Данный этап повторяется циклически, пока не будут решены все задачи из очереди. Если в результате анализа состояния вычислительной системы и очереди задач обнаруживается наличие необходимого числа свободных процессоров для запуска решения последующих задач, то формируются подгруппы из ир}ос процессоров и в каждой такой подгруппе выделяется головной процессор. Локальный головной процессор управляет ходом моделирования обтекания профиля на данном угле атаки и обеспечивает необходимые пересылки информации внутри своей подгруппы. Головные процессоры всех подгрупп обмениваются данными с глобальным головным процессором, передавая ему информацию о необходимости продолжения счета в данной задаче в течение следующего кванта времени или выполнении критерия останова счета.
Этап 3. На данном уровне осуществляется непосредственное численное моделирование обтекания профиля с помощью МВЭ. Шаги расчета по времени повторяются до тех пор, пока не закончится квант времени Ь^аы или выполнится критерий останова, в качестве которого может использоваться признак выполнения заданного числа временных шагов.
Наиболее затратными с вычислительной точки зрения являются следующие операциями алгоритма МВЭ.
Операция 1. Вычисление скоростей ВЭ как результата их влияния друг на друга.
Операция 2. Реструктуризация вихревой пелены, приводящая к уменьшению числа ВЭ, за счет объединения близкорасположенных ВЭ или исключения из расчетной схемы ВЭ, удалившихся от обтекаемого профиля на значительное расстояние.
Операция 3. Вычисление нагрузок, которые действуют на профиль со стороны потока, по рассчитанному полю скоростей и известному распределению завихренности.
Рис. 2. Трудоемкость операций в методе вихревых элементов
Исследуем эффективность использования параллельных алгоритмов при решении плоских задач МВЭ (внутреннего распараллеливания). На рис. 2 представлены оценки вычислительной трудоемкости различных этапов последовательного алгоритма МВЭ.
Видно, что наиболее трудоемким является вычисление скорости ВЭ. Другие две операции — реструктуризация вихревой пелены и вычисление аэродинамических нагрузок — менее трудоемки, в то время как затратами машинного времени на прочие операции (например, решение системы линейных уравнений) можно пренебречь. Аналогичные соотношения трудоемкостей были получены и при решении пространственных задач обтекания тел МВЭ [9].
Согласно хорошо известному закону Амдаля [8], для вычислительной системы с £ процессорами (вычислительными ядрами) максимально возможное ускорение компьютерной программы с долей Р параллельного кода и (1 — Р) последовательного кода равно
1
а = р-.
£ +(1 — Р)
С помощью этой формулы вычислено максимальное ускорение, которое теоретически достижимо при распараллеливании только операции 1, операций 1, 2 или операций 1, 2, 3 алгоритма, например, для вычислительных систем с 4, 16 и 64 ядрами. Результаты представлены в табл. 1.
Видно, что для вычислений с использованием небольшого числа ядер максимальные значения ускорений близки. Но при использовании системы с десятками вычислительных ядер распараллеливание операций 2 и 3 МВЭ дает значительный вклад в ускорение, несмотря на то, что трудоемкости этих операций составляют вместе лишь малую долю от трудоемкости операции 1 (приблизительно 4,4 %).
Реальное ускорение, наблюдаемое в расчетах, несколько меньше, чем предсказывает закон Амдаля, поскольку оценки ускорения по это-
Таблица 1
Максимальное ускорение параллельного кода
Распараллеленные Доля парал- Максимальное ускорение
операции лельного кода 4 ядра 16 ядер 64 ядра
1 95,3 % 3,5 9,4 16,2
1, 2 98,2 % 3,8 12,6 30,0
1, 2, 3 99,5 % 3,9 14,9 48,7
му закону получены для идеального распараллеливания, т.е. ситуации, когда параллельный код выполняется в $ раз быстрее на $-ядерной вычислительной системе.
На рис. 3 для программного комплекса РОЬАИЛ представлена зависимость ускорения от числа вычислительных ядер при распараллеливании операций 1, 2 и 3 алгоритма, полученная при решении одной, весьма сложной с вычислительной точки зрения задачи обтекания профиля под фиксированным углом атаки. Для сравнения показано максимальное значение ускорения для случаев распараллеливания только операции 1, операции 1, 2 и операций 1, 2, 3.
Реальное ускорение при распараллеливании операций 1,2,3 близко к оценке по закону Амдаля для распараллеливания только операций 1, 2 (сказывается наличие пересылок данных, затрат на синхронизацию вычислений и прочих накладных расходов), поэтому можно сделать вывод о том, что распараллеливание операции 3 важно для достижения высокой эффективности, хотя ее трудоемкость крайне мала — всего около 1,3 %.
Если требуется решить не одну, пусть и весьма трудоемкую, а серию задач по расчету обтекания профиля под разными углами атаки, эффективность применения параллельных алгоритмов (внешнего распараллеливания) может быть существенно выше. В качестве тестового
Ускорение
--Распараллеливание операции I
-О- Распараллеливание операции 1,2
- ■ - Распараллеливание операции 1,2,3
-я- Реальное ускорение
О 8 16 24 32 40 48 56 64 72 80
Рис. 3. Реальное ускорение и оценки по закону Амдаля (внутреннее распараллеливание)
— Линейное ускорение 60-| -*- МВ0100К
20
50
40
30
10
т-1-1-1-1-1-г^-
0
10
20
30
40
50
60
70
Рис. 4. Ускорение при решении серии задач (внешнее распараллеливание)
примера рассматривалась серия из 91 задачи по моделированию обтекания крылового профиля под различными углами атаки; в каждом расчете выполнялось 5000 временных шагов. На рис. 4 показаны затраты машинного времени при решении этой серии задач с помощью программного комплекса РОЬАЯА на 1, 32 и 64 вычислительных ядрах, а также зависимость ускорения вычислений от числа используемых ядер при проведении расчетов на вычислительных комплексах МВС-100К (МСЦ РАН), СКИФ-МГУ "Чебышев" (МГУ им. М.В. Ломоносова) и учебно-экспериментальном вычислительном кластере (МГТУ им. Н.Э. Баумана) [10].
Видно, что на всех вычислительных комплексах ускорение растет практически линейно с ростом числа задействованных ядер; при использовании 64 вычислительных ядер удается получить более, чем 50-кратное ускорение расчетов.
Использование быстрого метода. Помимо применения параллельных алгоритмов, в программном комплексе РОЬАЯА предусмотрена возможность использования так называемого быстрого метода в задаче N тел, позволяющего сократить временные затраты на выполнение наиболее трудоемкой операции алгоритма — вычисление скоростей ВЭ, обусловленных их взаимным влиянием. Быстрые методы решения задачи N тел основаны на том, что при расчете влияния удаленных ВЭ их коллективное воздействие рассчитывается приближенно согласно формулам, представленным в работе [7].
Первым этапом алгоритма быстрого метода является построение дерева — иерархической структуры прямоугольных областей (рис. 5), при этом прямоугольник нулевого уровня содержит все ВЭ. Он делится по длинной стороне на два одинаковых прямоугольника первого
Рис. 5. Структура дерева, имеющего глубину 4 уровня, и направление его обхода
уровня. Путем перебора ВЭ определяется их принадлежность к одному из них. Далее аналогичным образом эти прямоугольники делятся пополам, образуя области второго уровня. Деление прекращается при выполнении заданного критерия по размеру прямоугольника, числу ВЭ в нем и (или) номеру уровня. На втором этапе непосредственно вычисляются суммарные циркуляции и "центры тяжести" положительных и отрицательных ВЭ в каждом прямоугольнике нижнего уровня, а аналогичные параметры областей более высокого уровня находятся по характеристикам дочерних областей. Далее находятся скорости ВЭ в областях нижнего уровня: влияние ВЭ, находящихся в той же области, а также близкорасположенных ВЭ из других областей рассчитывается непосредственно по закону Био—Савара, а далее осуществляется обход дерева, и влияние ВЭ, расположенных в достаточно удаленных областях, учитывается при помощи четырех коэффициентов, которые одинаковы для всех ВЭ из данной области.
Соотношение трудоемкостей различных этапов алгоритма МВЭ при использовании быстрого метода, полученное при решении той же задачи, что была рассмотрена ранее (см. рис. 2), имеет следующий вид (рис. 6).
Из сравнения с предыдущими оценками следует, что доля затрат на вычисление скоростей ВЭ сократилась, хотя и осталась доминирующей. Использование быстрого метода решения задачи N тел позволило сократить общее время счета в рассмотренной тестовой задаче в 6 раз, поэтому его внедрение является целесообразным при решении "тяжелых" задач с достаточно большим числом ВЭ.
Актуальной задачей является выбор максимальной глубины построения дерева, при котором вычисление скоростей всех ВЭ может быть выполнено максимально быстро. Для этого оценим число арифметических операций (умножения и деления), выполняемых при вычислении скоростей ВЭ. Рассмотрим N ВЭ, равномерно распределенных
Рис. 6. Трудоемкость операций в методе вихревых элементов при использовании быстрого метода
в круге радиуса а/2, тогда ячейка нулевого уровня — это квадрат со стороной а. Приближенно будем считать, что все ячейки всех уровней
п
являются квадратными, тогда на к-м уровне имеется Ык = 4 • 2 =
а
= п • 2к-2 ячеек — квадратов со стороной ак = (^/^ (учитываются
только ячейки, попадающие внутрь круга). Пусть построено дерево глубиной к уровней; рассмотрим одну его ячейку и рассчитаем число ячеек этого же уровня, попадающих в ближнюю зону (т.е. тех ячеек, влияние ВЭ из которых будет учитываться непосредственно по закону Био-Савара). Под ближней зоной будем понимать круг с центром в
данном квадрате и радиусом А = —, где Н — сумма габаритных раз-
меров ячеек (в данном случае Н = 4а/(^)к = а/(^)к-4, 0 <0 < 4 — критерий близости. Число ячеек к-го уровня дерева, попадающих в этот круг, составляет
ы = 24п
ыближ 02 '
Пусть 3 = шкз — расстояние, выражаемое в длинах стороны квадрата к-го уровня, при котором квадрат 8-го уровня попадает в дальнюю зону (т. е. относится к ячейкам, влияние ВЭ из которых вычисляется приближенно и быстро)
-
3 = шкз = - (1 + (^)к-5),
тогда на расстоянии 3 = шкз ячеек к-го уровня к дальней зоне будут относиться ячейки уровня
8 = к + 2 - 2^2(03 - 2)'
Радиусы ближней области и всей исходной области, выраженные в
к 4
длинах стороны квадрата к-го уровня, равны соответственно рк = - и
0
Рк = (л/2)&—2, тогда приближенно число ячеек (максимально высокого уровня), находящихся в дальней зоне, можно оценить следующим образом:
= £ = 8п £
. ^ л а2 ^
з=Рк+i s
3
j=4+1
(03 - 2)2
(V2)k
y d = 8^
(0y - 2)2 dy 02
ln (o(V2)k-4 - 1) - (o(V2)k-4 - i) 1 +1
Вычисление четырех коэффициентов влияния от каждой ячейки дальней зоны требует 28 арифметических операций, таким образом общее число операций равно
Qi = 28^далп ■ 2k-2 =
56п2■ 2k
in (o(V2)k-4 - 1) - (o(V2)k-4 - 1) 1 +1
Вычисление скоростей ВЭ, находящихся внутри ячеек нижнего уровня, через рассчитанные коэффициенты требует
Q2 = 4-
N
п
2k-2
п
. 2k-2 = 4N
арифметических операций.
Влияние ВЭ ближней зоны, рассчитываемое напрямую по закону Био-Савара, требует
Q3 = 6Дэлиж
N
2k-2
п
k-2 п 2 =
3N 2 022k-7
арифметических операций.
Итого, общее число операций, необходимое для вычисления скорости на одном шаге расчета, составляет
22
Q = Qi + Q2 + Q3 =
896п2р 04
ln(p - 1) -
1
p - 1
+ 1
4N +
24N2
p2
где р = в • (у/2)к-4.
Для поиска значения р, при котором число арифметических операций минимально, следует приравнять нулю производную Q'(p). В результате получается алгебраическое уравнение
p4 2 ln(p - 1) + 3 +
1
(p - 1)2
3N 2 04 56п2 :
(1)
2
левая часть которого при р > 1,5 является возрастающей функцией; следовательно оно имеет единственное решение р = р*, которое может быть найдено численно. Поскольку оптимальное значение глубины дерева к* — натуральное число, оно вычисляется по формуле
k* =
p*
2 log2 ~в\
(2)
в которой квадратные скобки обозначают целую часть числа.
Для проверки полученной оценки проведены расчеты при N = = 30 000; 60 000; 120 000. В табл. 2 приведены зависимости времени выполнения алгоритма быстрого метода от максимальной глубины дерева, при этом время счета для оптимальной глубины дерева, найденной по формулам (1)—(2), принято за единицу.
Видно, что полученная оценка оптимального числа уровней дерева к* верна, и именно при данной глубине дерева время счета является минимальным. Данная оценка является более точной, чем в работе [11].
Таблица 2
Оптимальное число уровней дерева
Число Время счета tk/tk>
уровней N = 30 000 N = 60 000 N = 120 000
дерева k* = 13 k* = 14 k* = 15
11 2,20 4,01 7,12
12 1,18 2,04 3,55
13 1,00 1,30 2,07
14 1,27 1,00 1,11
15 1,88 1,38 1,00
16 2,04 2,04 1,34
Выводы. Предложены подходы, позволяющие сократить временные затраты при проведении расчетов МВЭ. При использовании параллельных вычислительных алгоритмов разработан программный комплекс РОЬАИЛ, автоматизирующий и оптимизирующий процесс решения серии однотипных и независимых задач моделирования обтекания профиля.
В программном комплексе РОЬАЯА реализована возможность применения быстрого метода решения задачи N тел, который позволяет сократить время вычислений (по сравнению с прямым методом), что важно при проведении расчетов с большим числом ВЭ. Построена оценка оптимального числа уровней дерева, при которой время счета
максимально сокращается. Данная оценка подтверждена на тестовых примерах.
Автор благодарит Межведомственный суперкомпьютерный центр РАН за предоставленную возможность использования кластера МВС-100К.
СПИСОК ЛИТЕРАТУРЫ
1. C o 11 e t G.-H., Koumoutsakos P. D. Vortex Methods: Theory and Practice. Cambridge University Press, 2008. - 328 p.
2. Андронов П. Р., Г у в е р н ю к С. В., Д ы н н и к о в а Г. Я. Вихревые методы расчета нестационарных гидродинамических нагрузок. - М.: Изд-во МГУ им. М.В. Ломоносова, 2006. - 184 с.
3. Дынникова Г. Я. Вихревые методы исследования нестационарных течений вязкой несжимаемой жидкости: Дис. ... д-ра физ.-мат. наук. - М., 2011. - 269 с.
4. Случановская З. П. Распределение давления на поверхности прямоугольного, трехгранного и полукруглого цилиндров и их аэродинамические коэффициенты // Тр. Инс-та механики МГУ, № 24. - М.: Изд-во МГУ им. М.В. Ломоносова, 1973. - С. 52-60.
5. Кашафутдинов С. Т., Лушин В. Н. Атлас аэродинамических характеристик крыловых профилей. - Новосибирск: СО РАН, 1994. - 78 с.
6. Здравкович М. М. Обзор исследований интерференции между двумя круг-лми цилиндрами при различном их взаимном расположении // Тр. Америк. общества инж.-механ., сер. "Д", рус. перевод. - 1977. - Т. 99, № 4. - С. 119-137.
7. Дынникова Г. Я. Использование быстрого метода решения "задачи N тел" при вихревом моделировании течений // Журнал вычислительной математики и математической физики. - 2009. - Т. 49, № 8. - C. 1458-1465.
8. Гергель В. П. Теория и практика параллельных вычислений. - М.: Бином, 2007. - 424 с.
9. Марчевский И. К., Щеглов Г. А. Применение параллельных алгоритмов при решении задач гидродинамики методом вихревых элементов // Вычислительные методы и программирование. - 2010. - Т. 11. - C. 105-110.
10. Лукин В. В., Марчевский И. К. Учебно-экспериментальный вычислительный кластер. Ч. 1. Инструментарий и возможности // Вестник МГТУ им. Н.Э. Баумана. Сер. Естественные науки. - 2011. - № 4. - C. 28-43.
11. ГирчаА. И. Быстрый алгоритм решения "Задачи N тел" в контексте численного метода вязких вихревых доменов // Информационные технологии моделирования и управления. - 2008. - № 1. - С. 47-52.
Статья поступила в редакцию 25.10.2011