Универсальная технология параллельных вычислений для численного моделирования задач, описываемых системами уравнений гиперболического типа, и ее применения
Концепция параллелизма появляется в архитектуре компьютеров сначала на уровне разрядно-параллельной памяти и арифметики в компьютерах IBM 701 в 1953 г., затем вводятся независимые процессоры ввода/вывода (IBM 709, 1958 г.) и расслоение памяти на несколько банков (IBM Stretch, 1961 г.), которые могут обслуживаться одновременно. Конвейерная обработка команд была впервые использована в 1963 г. в… Читать ещё >
Универсальная технология параллельных вычислений для численного моделирования задач, описываемых системами уравнений гиперболического типа, и ее применения (реферат, курсовая, диплом, контрольная)
Содержание
- Глава 1. Универсальная технология параллельных вычислений для численного моделирования задач, описываемых системами уравнений гиперболического типа
- 1. 1. Постановка задачи
- 1. 2. Формализация задачи и унификация расчетных методик
- 1. 3. Конечно-разностные схемы
- 1. 4. Обобщение монотонной гибридной схемы второго порядка для неравномерных сеток
- 1. 5. Применение метода крупных частиц
- Глава 2. Реализация параллельного программного пакета для численного моделирования задач, описываемых системами уравнений гиперболического типа
- 2. 1. Описание программного пакета
- 2. 2. Объектная модель
- 2. 3. Декомпозиция задач численного моделирования, описываемых уравнениями гиперболического типа, на параллельных компьютерах
- 2. 4. Оценки эффективности при пространственной декомпозиции задач на параллельных компьютерах
- 2. 5. Тестовые расчеты
- Глава 3. Численное моделирование пространственных течений в атмосфере, вызванных крупномасштабными возмущениями
- 3. 1. Введение
- 3. 2. Математическая модель
- 3. 3. Тестовые расчеты
- 3. 4. Моделирование пожаров
- -33.5 Течения с вихревой структурой
- Глава 4. Численное моделирование прямой задачи геофизики
- 4. 1. Обзор прикладной области
- 4. 2. Математическая модель
- 4. 3. Тестовые расчеты
- 4. 4. Моделирование прямой задачи геофизики в неоднородной среде
Математика всегда черпала свои задачи из физики и других естественных наук. Но и методы исследования этих наук сильно обогатились за последнее время. Там где сложно, дорого или вообще невозможно производить физический эксперимент, прибегают к математическому моделированию. И, если раньше моделирование ограничивалось только аналитическими методами, то с появлением вычислительной техники появился новый способ исследованиявычислительный эксперимент [1]. То, что невозможно получить аналитически, зачастую легко моделируется на ЭВМ. Кроме того вычислительный эксперимент гораздо дешевле физического, а если требуется серия исследований, то применение ЭВМ становится еще более привлекательным. Вычислительный эксперимент необходим там, где есть угроза жизни человека (например, летчика-испытателя или физика-ядерщика). С помощью вычислительного эксперимента можно смоделировать поведение экологически опасного объекта в различных условиях, дать практические рекомендации обеспечения для условий безопасной работы [2].
Большинство задач механики сплошных сред невозможно решить явно в аналитическом виде. Связано это с нелинейностью рассматриваемых уравнений. Так, например, для большинства задач газовой динамики вообще не доказано существование и единственность решения соответствующих систем уравнений [3]. Поэтому применяют также эмпирические и полуэмпирические методы. Сложности также встречаются на пути формализации задачи и построения математической модели, поскольку физическая постановка задачи не всегда формализована и может включать множество дополнительных факторов. Адекватность построенной модели и использованных методов моделирования должны проверяться путем сравнения с результатами экспериментов, других расчетов, аналитических выкладок.
Модели в основном строятся как численное решение дифференциальных уравнений в частных производных. Для решения таких задач используется численное моделирование [1,4]. При численном моделировании осуществляется переход от непрерывной модели, выражающейся в записи исходной системы дифференциальных уравнений и граничных условий, к дискретной модели, представляющей собой систему алгебраических уравнений большой размерности, получаемую на основе различных разностных схем исследуемых уравнений. В дискретных моделях дифференцирование заменяется разностными операторами, интегрирование — суммированием и т. д.
Для широкого круга задач система исследуемых уравнений в частных производных оказывается гиперболической [3] (т.е. в каждой точке может быть расщеплена на N независимых одномерных уравнений переноса в характеристических переменных) или содержит гиперболическую часть (при использовании принципа расщепления по физическим процессам один из этапов численного решения описывается гиперболической системой уравнений). Это связано с тем, что одним из основных механизмов в механике сплошных сред является конвекция — перенос основных физических компонент: массы, импульса, энергии.
Основными представителями таких уравнений являются: уравнения гидрои аэродинамики, акустики, упругости, магнитной гидродинамики, уравнения «мелкой воды» и другие. Каждая из этих областей включает несколько разделов, каждый из которых содержит множество задач, как решенных, так и открытых для исследования. Таким образом, рассматриваемый в диссертации класс гиперболических уравнений охватывает большое число важных задач, как с теоретической, так и с практической точек зрения.
В последнее время бурное развитие вычислительной техники позволило производить ресурсоемкие расчеты [5] и получать физически оправданные результаты для 3-мерных задач [6,7]. Развитие аппаратных средств в свою очередь стимулирует появление новых программных технологий и ориентацию на языки высокого уровня. Используя эти новые технологии можно обеспечивать большую гибкость и надежность программного обеспечения, разрабатывать сложные программные системы с меньшими затратами, как вследствие высокой степени абстрактности и простоты используемых средств разработки, так и за счет повторного использования программ.
Кроме того, использование суперкомпьютеров и параллельных программ позволяет повышать производительность вычислений в порядки раз [5]. Высокая производительность вычислений выводит численное моделирование на качественно новый этап развития, на котором возможно решение качественно новых задач: либо вследствие достижения необходимой точности вычислений, либо вследствие возможности расчета на больших сетках (или, там, где не используются сетки, с большим числом расчетных параметров).
К сожалению, развитие программного обеспечения для суперкомпьютеров отстает от общего развития технологий и в области, где доминируют персональные компьютеры. Это связано в первую очередь с разницей в алгоритмах решения одних и тех же задач на многопроцессорных ЭВМ и однопроцессорных. Многопроцессорные вычислительные системы позволяют проводить вычисления одновременно на нескольких процессорах, что обеспечивает большую производительность вычислений, но только в том случае, если алгоритм реализует параллельную модель вычислений. Поэтому приходится проводить дополнительную работу по распараллеливанию последовательного алгоритма, либо придумывать новый [8]. Кроме того, используемые средства для разработки параллельных программ сами по себе довольно сложны [8,9]. Высокая цена многопроцессорных вычислительных систем и их небольшой объем использования по сравнению с другими ЭВМ также порождают отставание технологий в области параллельных вычислений от общего развития технологий разработки программного обеспечения [10,11]. Поэтому разработка специальных технологий для параллельных вычислений и эффективных параллельных алгоритмов для решения обширного круга прикладных задач в различных областях численного моделирования является чрезвычайно актуальной задачей и способствует развитию технологий параллельной обработки информации в целом.
Данная диссертационная работа и программный пакет, созданный по ее результатам, призваны заполнить некоторый пробел в области параллельных вычислений и технологий программного обеспечения для многопроцессорных вычислительных систем. Целью настоящей диссертационной работы является создание универсальной технологии параллельных вычислений для численного моделирования задач, описываемых системами уравнений гиперболического типа, создание на ее основе прикладного программного пакета, и проведение с помощью этого пакета исследования нескольких задач численного моделирования в двух различных прикладных областях. Первый класс задач включает численное моделирование пространственных атмосферных течений, вызванных крупномасштабными возмущениями (термики, пожары, взрывы, огненные смерчи, торнадо) [194,182]. Вторая задача — численное моделирование прямой задачи геофизики [12], которая заключается в рассмотрении прохождения звуковых волн (продольных и сдвиговых) в неоднородной земной коре.
Численное моделирование — сравнительно молодая наука. Однако первые работы по этой тематике появились еще до возникновения компьютеров. В 1910 г. Л. Ричардсон [13] опубликовал статью, посвященную итерационным методам решения дифференциальных уравнений в частных производных. Кроме того, что Ричардсон разработал сами методы, получил оценки сходимости, изучил задание граничных условий, он также произвел по ним первый расчет практической задачи — расчет напряжений в каменной дамбе. Эта статья послужила отправной точкой исследований по численному моделированию. В 1923 г. Филлипс и Винер [14] получили первое строгое доказательство сходимости метода Либмана, в 1918 г. усовершенствовавшего метод Ричардсона для решения эллиптических уравнений [15]. В 1928 году Курант, Фридрихе и Леви [16] опубликовали теоретическую работу по конечно-разностным методам, ставшую основополагающей и определившую развитие этих методов. В этой работе исследовались такие вопросы, как сходимость решений разностных уравнений к решениям дифференциальных, устойчивость решения, доказывались теоремы о существовании и единственности решения как для эллиптических и параболических, так и для гиперболических систем уравнений.
Первое численное моделирование в гидродинамике было проведено Томом в 1933 г. [17]. Был произведен расчет течения вязкой несжимаемой жидкости в следе при обтекании кругового цилиндра. В 1955 г. Аллен и Саусвелл [18] применили метод релаксации Саусвелла [19] для расчета обтекания циллиндра вязкой жидкостью при различных числах Рейнольдса. Результаты вычислений показали наличие неустойчивости течения в определенном диапазоне чисел Рейнольдса. Следом за Саусвеллом различные методы релаксации были разработаны Фоксом в 1948 [20], Франкелом в 1950 [15] и Янгом в 1954 [21]. В.
1950 г. были впервые проведены расчеты крупномасштабных метеорологических задач [51]. В той же статье были опубликованы результаты работ фон Неймана, проведенные в Лос-Аламосской лаборатории во время второй мировой войны, в том числе критерий устойчивости для параболических задач. С развитием ЭВМ и внедрением их в научные лаборатории, стали появляться методы, ориентированные в первую очередь на решение задач на ЭВМ, например, методы типа Монте-Карло. Были разработаны новые методы для решения задач, которые ранее не могли быть рассчитаны, например, для многомерных нестационарных задач гидрои аэродинамики. В книге Рихтмайера 1957 г. [22] было приведено более десяти различных численных методов для решения задач нестационарной гидродинамики. После опубликования статьи Харлоу и Фромма в 1965 г. [38] за вычислительной гидродинамикой закрепляется статус становится самостоятельной науки. Термин вычислительная гидродинамика (computational fluid dynamics, CFD) устоялся с выходом в 1976 г. одноименной книги Роуча [24].
Для гиперболических систем уравнений создано большое количество разнообразных методов решения [1,25,26]. Наряду с прямыми аналитическими методами нахождения решения используются точные методы, использующие разложение в ряд Фурье и другие функциональные ряды, метод разделения переменных в многомерных задачах, также используется метод потенциалов, представляющий решение в виде интеграла, зависящего от параметра. Однако, они дают решение в удовлетворительном виде только для ограниченного количества задач, не включающего наиболее практически ценные.
Среди численных методов решения можно выделить несколько отдельных групп:
— характеристические методы [27], в которых аппроксимация системы осуществляется на характеристической сетке, строящейся в процессе счета;
— наиболее многочисленный класс конечно-разностных методов [28,3], включающий как эйлеровы, так и лагранжевы методы [29];
— сеточно-характеристические методы [30], в которых расчет осуществляется в характеристических переменных на обычной нехарактеристической сетке (эйлеровой или лагранжевой).
— метод конечных элементов [31], в котором ищется приближение точного решения в определенном функциональном пространстве;
— полуаналитические методы, такие как: метод прямых [32], в котором сетка строится только для пространственных переменных, а временная переменная остается непрерывной, таким образом исходные уравнения аппроксимируются большой системой обыкновенных дифференциальных уравнений, обобщающий его метод интегральных соотношений [33], методы динамики вихрей [34], в которых вихревое поле моделируется большим количеством дискретных вихревых частиц, а исходные уравнения аппроксимируются ОДУ, описывающими положения дискретных вихрей;
— методы квазичастиц, в которых определенные объемы сплошной среды моделируются конечным числом квазичастиц, такие как: метод частиц в ячейках [35], метод крупных частиц [36], метод сеток и частиц [37], метод маркеров в ячейке [38], во всех данных методах имеется сетка ячеек, через которую осуществляют движение различного рода квазичастицы;
— статистические методы, такие как, методы типа Монте-Карло [39] или статистический метод частиц в ячейках [40].
Конечно-разностные методы и схемы можно классифицировать по шаблону: явные, неявные, полунеявныепо количеству временных слоев в шаблоне: двухслойные, трехслойные итдпо размерности: одномерные, двумерные, трехмерныепо типу шаблона: с регулярным шаблоном, с нерегулярнымпо однородности: схемы сквозного счета [3,43] и схемы с явным выделением особенностей [41]) — по алгебраическому виду: линейные, квазилинейные, гибридные, нелинейные [42]- и по способу получения: с помощью разностных аппроксимаций [28], с помощью интегро-интерполяционных методов [43], например, консервативный метод потоков [44], и с использованием метода неопределенных коэффициентов [30].
Одной из базовых конечно-разностных схем является схема Куранта-Изаксона-Риса [45], являющаяся также схемой бегущего счета, вследствие того, что при расчете по ней вычисления бегут от одной границы к другой, что удобно для решения смешанной задачи Коши. Фон Нейман и Рихтмайер [46] в схеме типа крест" впервые предложили метод использования псевдовязкости для обеспечения устойчивости решения путем сглаживания контактных разрывов. Лаке в 1954 [47] предложил центрально-разностную схему, получившую имя Лакса-Фридрихса. В этой работе Лаке также впервые использовал консервативную форму для записи уравнений гидродинамики. В широко известной схеме Лакса-Вендрофа [48] вязкость аппроксимации не приводит к размазыванию контактного разрыва и обеспечивает второй порядок аппроксимации. Рихтмайер [49] сформулировал более экономичную двухшаговую схему, приводящую к той же схеме Лакса-Вендрофа, на первом шаге которой используется схема Лакса-Фридрихса, а на втором — схема «чехарда». Мак-Кормак [50] предложил двухшаговый метод для квазилинейного уравнения, на разных шагах которого вычисляются разности вперед и назад. Метод Мак-Кормака совпадает с методом Лакса-Вендрофа на линейных уравнениях, а для нелинейных — дает лучшие результаты по сравнению с методом Лакса-Вендрофа на движущихся разрывах.
Одновременно развивался и математический аппарат исследования численных методов. Фон Нейманом, Рихтмайером, а также Лаксом в 50-х годах [46,51, 52] были исследованы вопросы устойчивости разностных схем, в частности, был получен фундаментальный критерий устойчивости фон Неймана [53]. Фундаментальная работа Годунова [54] ответила на главный вопрос о несуществовании линейной монотонной схемы для уравнения переноса выше первого порядка аппроксимации и дала направление исследований для построения монотонных схем. В той же работе была сформулирована монотонная схема Годунова, имеющая первый порядок, на каждом шагу которой в каждых соседних ячейках точно решалась задача Римана о распаде разрыва. Годунов также изучал класс схем, обладающих свойством сохранения энтропии (введенным им же) [55,56]. Ошер описал общий критерий сохранения энтропии для конечно-разностных схем для уравнений с постоянными коэффициентами [57].
Вслед за работой Годунова, первым введшего аналитическое решение задачи Римана в кончено-разностный метод, было разработано множество методов, базирующихся на точном или приближенном решении задачи Римана. Мак.
Намара [58] модифицировал метод Годунова, введя подвижную сетку, перестраивавшуюся под положение контактного разрыва. Схожий с методом Годунова метод для решения уравнения Бюргерса был предложен Глиммом [59], который также решал задачу с кусочно-постоянным распределением на соседних ячейках точно, а затем использовал процедуру реконструкции решения. Еще до работ ван Лира Колган [60] предложил метод, использующий процедуру ограничения потоков, полученных с помощью метода Годунова. В середине 70-х годов ван Лир публикует серию статей [61−65], в которых описывается техника создания монотонных схем путем построения или модификации существующих схем с помощью процедуры линейной реконструкции решения и ограничения потоков. В последней из этих статей [65] рассматривается известная схема второго порядка по пространству МШСЬ, основанная на приближенном решении задачи Римана в Лагранжевых координатах. В этой схеме был также впервые реализован способ вычисления частичных разностей для системы уравнений. Методы, реализующие данный подход к вычислению разностей, получили в дальнейшем название методов МШСЬ-типа, например, метод 4-го порядка, предложенный Ямамото и Дайгуджи [66].
В работе [67] Магомедов и Холодов изложили общий сеточно-характеристический подход для методов решения гиперболических систем уравнений. В этой работе была также предложена векторная схема для решения векторной задачи Римана, обобщающая схему Куранта-Изааксона-Рисса. Аналогичная запись была использована Роу [68,69], однако здесь уже речь шла о методе второго порядка. Роу также предложил осреднение матриц Якоби, при котором решение задачи Римана для линеаризованного уравнения с осредненной матрицей совпадает с решением нелинейного уравнения. Роу и Пайком было доказано [70], что такое осреднение единственно. Кроме того, Роу предложил ограничитель БирегВее [71] и ввел понятие функции-ограничителя, формализующее уже использовавшиеся ранее методы ограничения потоков в других схемах: схемы ван Лира [65], Колгана [60] и Хартена [72] с широко известным ограничителем МтМоё. Различные авторы использовали большое количество различных ограничителей, среди которых следует отметить ограничители ван Албады [73], ограничитель, использованный Хартеном и.
Ошером [74] в схеме UNO второго порядка, «острый» ограничитель, предложенный Тишкиным [92,93], дающий схему третьего порядка. В такой же форме с ограничителем можно представить и кусочно-параболический метод РРМ Колелла и Вудворда [75].
Альтернативный подход к методу Роу также на основе приближенного решения задачи Римана был предложен Ошером [76,77]. Так в методе Энгквиста-Ошера [77] для вычисления потока использовалось интегральное осреднение матрицы Якоби. Методы Роу и Ошера базируются на представлении решения в виде суперпозиции дискретных волн, движущихся в прямом и обратном направлениях, поэтому они получили название методов с разностным расщеплением потоков. Другой тип методов с векторным расщеплением потоков основывается на представлении решения в виде взаимодействующих псевдочастиц. Так, например, расщепление ван Лира [78] основано на Больцмановском распределении скоростей частиц, а расщепление Стигера-Уорминга [79] исходит из предположения, что половина частиц движется с одной характеристической скоростью, а другая половина — с другой скоростью.
Имеется несколько схожих подходов к построению монотонных схем. Так, Ии, Уорминг и Хартен [80] выделяют 4 принципа построения таких схем: гибридные схемы, подход ван Лира с использованием реконструкции решения для решения задачи Римана, подход Роу на основе метода расщепления потоков, подход Хартена для TVD методов с модификацией потоков. Первыми из них были получены и стали использоваться монотонные гибридные методы, переключающиеся между линейными методами высокого порядка в области гладкости решения и методами первого порядка на разрывах. Среди них следует отметить гибридные методы Хартена [81], Хартена и Цваса [82], ван Лира [61] и Бима-Уорминга [83]. Хотя метод коррекции потоков FCT Бориса и Бука [84,85,86] первоначально не был отнесен к этому классу методов, было показано, что он может трактоваться как гибридный метод. Различные гибридные схемы строились и изучались Магомедовым и Холодовым с помощью подхода с использованием неопределенных коэффициентов и пространств схем [30]. В работе Белоцерковского, Гущина и Коныпина [87] была предложена гибридная монотонная разностная схема второго порядка по времени и по пространству.
Развитие TVD схем связано с именем Хартена. TVD-свойство, т. е. свойство схем уменьшать полную вариацию функций, является более слабым требованием, чем монотонность. Однако за счет ослабления требований к схеме удается построить схемы более высокого порядка, тем не менее, не осциллирующие на разрывах решения. В работах [72,88,80] Хартен ввел класс TVD-схем и изучил их свойства, а также предложил известную TVD-схему Хартена второго порядка. Широко известен также метод энтропийной коррекции Хартена [89], применяемый во многих TVD-схемах. Было опубликовано много TVD-схем, в том числе и более высоких порядков. Среди них стоит упомянуть схему Чакраварти-Ошера [90], модифицированную впоследствии Ямамото и Дайгуджи [66]. Дальнейшее развитие этот подход получил в схемах ENO [91], UNO [74], отметим UNO-схему третьего порядка Янга [94]. Схемы ENO и UNO также не являются в общем случае TVD-схемами, как TVD-схемы не являются монотонными, но имеют более слабые свойства, не допускающие нефизичных осцилляций.
До появления компьютеров вычисления производились вручную и с применением арифмометров. Скорость таких вычислений была крайне невелика. С появлением первых ЭВМ в начале 1940 гг. численное моделирование стало стремительно развиваться. Развитие этой области стимулировалось необходимостью проведения сложных расчетов для военных задач, таких как наведение зенитных орудий по быстродвижущимся самолетам и т. п. Первая ЭВМ общего назначения ENIAC, появившаяся в 1946 г., могла производить около 5000 сложений или 14 умножений в секунду и обладала оперативной памятью в 20 слов. К тому времени, как она была готова к работе, задачи наведения, для решения которых ENIAC разрабатывался, уже потеряли актуальность. Однако уже в 1945 г. в ходе испытаний этой машины С. Франкелем и Н. Метрополисом из Лос-Аламосской лаборатории была проведена серия расчетов термоядерных реакций при взрыве водородной бомбы. В СССР в 1953 г. появилась машина «Стрела» со скоростью 2000 операций в секунду и памятью 1024 слов. Было выпущено 7 таких машин, на которых в ВЦ АН СССР, ИПМ АН СССР, МГУ им. М. В. Ломоносова и в вычислительных центрах некоторых министерств было проведено множество научных расчетов. Крупным событием стало появление в СССР в 1967 г. машины БЭСМ-6 с быстродействием до 1 млн оп./сек и памятью.
32 Кб. В этой ЭВМ было реализовано множество революционных архитектурных особенностей, в том числе, конвейер команд, параллельная и асинхронная работа процессора и модулей оперативной памяти, ассоциативная кеш-память. Механизмы прерывания, защиты памяти, преобразования виртуальных адресов в физические и привилегированный режим работы для ОС позволили использовать БЭСМ-6 в мультипрограммном режиме и режиме разделения времени.
Концепция параллелизма появляется в архитектуре компьютеров сначала на уровне разрядно-параллельной памяти и арифметики в компьютерах IBM 701 в 1953 г., затем вводятся независимые процессоры ввода/вывода (IBM 709, 1958 г.) и расслоение памяти на несколько банков (IBM Stretch, 1961 г.), которые могут обслуживаться одновременно. Конвейерная обработка команд была впервые использована в 1963 г. в машине ATLAS, разработанной в Манчестерском университете. Данный компьютер оказал огромное влияние на архитектуру ЭВМ и ОС: в нем впервые использована мультипрограммная ОС, основанная на использовании виртуальной памяти и системы прерываний. В 1964 г. фирма CDC выпускает CDC-6600 — первый компьютер, в котором использовалось несколько независимых функциональных устройств. За ним в 1969 г. последовал CDC-7600, в котором 8 независимых функциональных устройств могли осуществлять конвейерную обработку. В 1972 г. Сеймур Крэй покидает CDC и основывает компанию Cray Research, которая в 1976 г. выпускает первый векторно-конвейерный компьютер CRAY-1. Для данного типа параллельных архитектур характерно наличие векторных команд, работающих с целыми массивами независимых данных и позволяющих эффективно использовать конвейерные функциональные устройства. В то же время (1967 — 1974 гг.) разрабатывается компьютер ILLIAC-IY, в котором имелось 64 вычислительных элемента и центральный управляющий процессор, и была реализована концепция SIMD (Single Instruction Multiple Data). Вычислительные элементы (процессор и оперативная память) были соединены сетью в виде матрицы и работали в синхронном режиме, одновременно выполняя одни и те же инструкции, получаемые от центрального процессора. Похожая идея организации вычислительных элементов в двухили трехмерную матрицу была положена в основу транспьютерной техники. В 1985 г. фирма INMOS начала выпуск транспьютеров, объединявших в одной микросхеме микропроцессор, коммуникационную систему и оперативную память. Из транспьютеров собирались относительно дешевые, но мощные, надежные и масштабируемые суперкомпьютеры. В отличие от матричных процессоров, в транспьютерных системах была реализована модель MIMD. В 1987 г. фирмой Sun была разработана рабочая станция Sun-4 на основе процессоров с масштабируемой архитектурой SPARC. Данная архитектура позволяет строить симметричные мультипроцессоры с общей памятью (SMP). В настоящее время уже многие персональные компьютеры имеют несколько процессоров, соединенных общей шиной данных, и работающих с общей памятью.
С развитием возможностей коммуникационного оборудования и сетей передачи данных большее применение находят массивно-параллельные компьютеры (МРР) и компьютеры с кластерной архитектурой. Уже упоминавшиеся транспьютерные системы были родоначальниками массивно-параллельных архитектур с использованием матричной топологии сети связи. Однако, наиболее оптимальной топологией является n-мерный куб, в котором максимальная длина пути доставки сообщения от одного процессора другому и соответственно время доставки пропорциональны логарифму количества процессоров. Впервые такая система связей была использована в компьютере Caltech Hypercube, созданном в 1984 г. в Калифорнийском технологическом университете. По всей видимости, первой анонсировала концепцию кластерной системы компания DEC в 1983 г. на основе VAX-компьютеров. Однако, еще в начале 80-х годов Билл Джой (один из основателей компании Sun) сказал фразу, впоследствии ставшую лозунгом Sun: «Сеть — это компьютер». Подтверждением этому становится доминирование в настоящее время кластерных гибридных архитектур с использованием высокоскоростных коммуникационных сетей, таких как Fast Ethernet, Myrinet, Paramnet итп. Так, наиболее мощный на сегодняшний день суперкомпьютер NEC Earth-Simulator (по данным списка Тор 500 [95] на ноябрь 2002 г.) представляет собой кластер, составленный из 640 узлов, каждый из которых — 8-процессорный мультипроцессор с общей памятью на основе векторных процессоров. Все основные типы параллельных архитектур: векторно-конвейерные процессоры, SMP и МРР/кластеры находят достойное применение в данном суперкомпьютере-победителе.
Для каждого типа архитектур параллельных компьютеров характерна своя модель программирования. Так, для SIMD-архитектур используется модель data parallel, для векторно-конвейерных процессоров характерно наличие векторных инструкций, осуществляющих операции одновременно над целым массивом регистров. В мультипроцессорах с общей памятью (SMP) вычисления обычно производятся в нескольких нитях или процессах под управлением одной операционной системы (ОС) с явной (или неявной) синхронизацией доступа к разделяемой памяти. Кроме стандарта POSIX программного интерфейса ОС здесь имеется также специализированный для SMP-компьютеров стандарт ОрепМР. Для МРР и компьютеров с кластерной архитектурой стандартной моделью является программирование с использованием сообщений. Впервые сообщения как средство межпроцессного взаимодействия ввел Хоар в 1978 г. в работе [96]. Эта модель является настолько удобной и универсальной, что может с успехом употребляться на всех типах MIMD-архитектур. На основе сообщений было создано много систем параллельного программирования, например, Parallel Virtual Machine [97], High Performance Fortran [98], P4 [99], Express [100] и, конечно же, стандарт MPI для работы с сообщениями [157,101,102]. В настоящее время большинство параллельных программ реализуется с использованием тех или иных реализаций MPI. Более высокоуровневые параллельные языки и программные среды, такие как трС [103], DVM [104], также часто реализуются с использованием MPI, добавляя свой слой программного обеспечения, реализующего параллельные конструкции языка. Сборник [105] освещает основные парадигмы и модели программирования для различных классов параллельных ЭВМ.
Параллельные вычисления, как это ни странно, были открыты еще в докомпьютерную эпоху. Пионером в параллельной обработке потоков данных был академик Самарский, выполнявший в начале 50-х годов расчеты, необходимые для моделирования ядерных взрывов. Непосредственно расчеты совершали несколько десятков человек с арифмометрами, которые передавали данные друг другу просто на словах. Таким образом, в частности, была рассчитана эволюция взрывной волны. Это, можно сказать, и была первая параллельная система, в которой к тому же была реализована модель передачи сообщений.
С параллельным программированием связано много важных как теоретических, так и чисто практических вопросов. Как практическим, так и некоторым теоретическим аспектам программирования для параллельных компьютеров уделяется внимание в обзоре [106]. В центре же этой области науки находится построение и анализ алгоритмов распараллеливания. Как уже было сказано, не любой последовательный алгоритм можно распараллелить, часто необходимо строить новый параллельный алгоритм, эквивалентный существующему. Анализу алгоритмов на предмет их возможного распараллеливания посвящены работы Воеводина [8,107,108]. Параллельные алгоритмы для решения задач линейной алгебры наиболее широко освещены в книге Ортега [109]. В книге Фримана и Филипса [110] также основное внимание уделяется параллельным методам решения задач линейной алгебры, а также рассматриваются параллельные методы решения обыкновенных дифференциальных уравнений и задач оптимизации. Параллельным методам решения алгебраических задач посвящены также книги Саада [111], Донгарры [112]. Данные методы также используются и при решении уравнений в частных производных, поскольку при их решении задача часто сводится к линейным разностным уравнениям. Параллельные алгоритмы в приложении к задачам численной гидродинамики рассматривались Ван дер Ворстом в сборнике [113]. Основной метод распараллеливания, используемый для задач математической физики и, в частности, численной гидродинамики — декомпозиция расчетной области [114,115] на подобласти, обрабатываемые различными процессорами. Такой метод удобен при распараллеливании программ для компьютеров с распределенной памятью, поскольку каждый процессор может производить вычисления в своей подобласти, находящейся в своей локальной памяти. Параллельные алгоритмы в применении к задачам численной гидродинамики продолжают рассматриваться в литературе и в последние годы [116,117,118].
Для решения задач математической физики на параллельных компьютерах разработано большое число библиотек и программных комплексов. Часть из них, такие, как пакеты UNPACK [121], ScaLAPACK [122], NAG Parallel Library [123],.
PINEAPL [124], нацелены на решение систем линейных уравнений различного типа, в том числе, с ленточными и разреженными матрицами, получающимися при дискретизации дифференциальных уравнений в разностные. Другая часть пакетов направлена сугубо на численное решение уравнений в частных производных. Наиболее популярными математическими программами являются Mathematica [125] и Maple [126], однако в них можно решать ограниченное число типов уравнений, так, например, в Maple стандартный пакет DETools умеет решать только квазилинейные уравнения в частных производных первого порядка с двумя переменными. Более универсальными и гибкими являются: пакет PDELab [127] для численного исследования систем нелинейных дифференциальных уравнений в частных производных, а также, FlexPDE [128] - программная система для получения численных решений систем дифференциальных уравнений, встречающихся при решении задач во многих областях фундаментальной и прикладной науки. Крупнейший мировой архив Netlib [129] свободно распространяемых программных библиотек (многие из которых предназначены для параллельных компьютеров) для разнообразных математических исследований, в том числе, для численного решения дифференциальных уравнений в частных производных, поддерживается AT&T Bell Laboratories.
Следующий класс программ и пакетов предназначен для численного моделирования в определенных прикладных областях. Это довольно обширный класс, для примера можно привести такие программы, как FLOW-3D [130] -программа для численного моделирования в гидрои газодинамикеCARDINAL [131] - программа для моделирования динамики различных водных объектов, оценка загрязнений водыSME [132] - моделирование в гидрологииArgus [133] -программная среда для численного моделирования в геологии и геофизикепакет программ KIPARIS [134], разрабатываемый в ИММ РАН, для численного моделирования сверхзвуковых течений вязкого газа в 2-D и 3-D геометриях на многопроцессорных транспьютерных системахGDT [135] - пакет для моделирования газодинамических задач, включающий различные модели горения, в сложных конфигурациях и геометриях, задаваемых пользователем. Программы этого класса имеют ограниченное число реализованных в них моделей и ограниченное число параметров, доступных для задания пользователю.
Промежуточное положение между программами решения дифференциальных уравнений в частных производных общего типа и пакетами для моделирования в определенной прикладной области занимают так называемые каркасы приложений [136]. Каркасы приложений предоставляют некоторую поддержку для решения задач по определенному шаблону, но реализация основного ядра программы остается за пользователем. В качестве каркасов приложений можно рассматривать следующие пакеты: CLAWPACK [137] для расчета законов сохранения и гиперболических систем, разработанный Ле ВекомGEMS, Goddard Earth Modeling System [139] для моделирования климата Земли, распространения загрязненийFlux Coupler [138] для вычисления потоков в различных компонентных моделях климатической системы ЗемлиFMS, Flexible Modeling System [140] для моделирования атмосферных явлений, например, ураганов, а также химических взаимодействий в атмосфере.
Особенно интересны пакеты для параллельных компьютеров. Пакеты DDB, Distributed Data Broker [141] и PAWS, Parallel Application Workspace [142] предоставляют средства для организации параллельных приложений в компонентно-ориентированную инфраструктуру, работающую в распределенной среде. Пакеты DAGH, Distributed Adaptive Grid Hierarchy [143] и SAMRAI, Structured Adaptive Mesh Refinement Applications Infrastructure [144] являются каркасами для реализации параллельных вычислений на адаптивных вложенных сетках. Но более всего указанной категории программных продуктов соответствуют три развитых каркаса параллельных приложений для численного моделирования: CACTUS [145] - каркас приложений для численного решения уравнений в частных производных, он более ориентирован на приложения в области астрофизики и релятивистской физикиРООМА, Parallel Object-Oriented Methods and Applications [146] - большая библиотека классов, реализующих различные абстракции уравнений в частных производных и параллельных вычислений вообщеPETSC, Portable Extensible Toolkit for Scientific Computing [147] - расширяемый каркас для решения уравнений в частных производных с использованием параллельных вычислений. Отличный обзор имеющихся каркасов и программ для численного моделирования на параллельных компьютерах был проведен при предпроектном обследовании группой Earth System Modeling Framework TASC в рамках NASA Computational Technology Project [148]. Сравнительный обзор каркасов и инструментальных средств для разработки параллельных приложений в области численного моделирования был также представлен ДеЛюка и Деннисом на конференции NCAR по информационным технологиям [149].
В данной диссертации рассматриваются вопросы, связанные с решением задач численного моделирования с системами уравнений гиперболического типа. Процесс построения программной модели может быть символически описан как нахождение точки в трехмерном пространстве, координатами которого являются три оси, которые мы сейчас кратко опишем. Как уже указывалось, гиперболические уравнения встречаются в различных прикладных областях. Поэтому, первое измерение, в котором мы перемещаемся — это измерение физических моделей и конкретных задач моделирования. Здесь изменяются: основные расчетные компоненты, конкретный вид системы уравнений, массовые силы, матрицы Якоби итп.
Многие методы численного решения этих уравнений могут быть использованы независимо от конкретного вида системы, причем различные методы обычно комбинируются для совместного использования. Некоторые из этих методов ортогональны в том смысле, что они являются независимыми и могут быть заменены другими методами данного типа независимо от других частей результирующего метода. Это многообразие численных методов составляет второе измерение, в котором мы находим результирующий численный метод для решения нашей задачи.
Последнее, что мы должны выбрать на третьей оси — это алгоритм и программная реализация выбранного метода. Для того чтобы получать наиболее точные результаты, нужно использовать параллельные вычисления на многопроцессорных компьютерах. Следует заметить, что параллельные и последовательные алгоритмы для одного и того же метода могут сильно отличаться. Существует разнообразные программные пакеты и библиотеки методов, но многие исследователи пишут свои собственные программы — в основном, потому что большинство этих пакетов не настолько гибки, как того бы хотелось исследователям, пакеты не являются переносимыми, они поддерживают ограниченное количество методов, их очень тяжело интегрировать с другими программами, и многие из них не имеют параллельных версий.
Для облегчения разработки программ для численного моделирования в различных прикладных областях, с использованием различных численных методов и существующего программного обеспечения предлагается использовать унифицированный каркас приложений, который можно представлять себе в виде общего ядра, встречающегося во всех программах для численного моделирования, лежащих в описанном пространстве моделей. Программный продукт должен представлять собой универсальный, гибкий, расширяемый, открытый, ориентированный на стандарты каркас для построения солверов для параллельных компьютеров. Каждый альтернативный алгоритм (описывающий метод, модель и т. п.) должен быть представлен определенным строительным блоком, встраиваемым в каркас. Наиболее полезные и часто используемые блоки должны предоставляться наряду с каркасом в том же программном продукте, но каркас должен иметь открытый интерфейс для пользователей, которые могли бы подключать через данный интерфейс другие физические модели, методы, солверы, визуализаторы и другие компоненты. Для построения данного каркаса нужно базироваться на универсальной методике, которая также должна быть гибкой и расширяемой. В диссертации описывается такая методика, представляется ее реализация в программном пакете и рассматриваются результаты приложения данного пакета к численному моделированию нескольких актуальных задач газодинамики атмосферных потоков и сейсмического моделирования.
Основными целями диссертации являются:
— разработка универсальной технологии параллельных вычислений для численного моделирования задач, описываемых системами уравнений гиперболического типа,.
— разработка программного пакета, позволяющего упростить создание параллельных программ для численного моделирования, на основе разработанной технологии,.
— проведение численного моделирования серии задач, связанных с конвективными течениями в стратифицированной атмосфере, вызванными пожарами или другими высокоэнергетическими источниками,.
— проведение серии численных экспериментов, заключающихся в решении прямой задачи геофизики.
Диссертация состоит из введения, четырех глав, заключения и списка литературы.
1. Белоцерковский О. М., Численное моделирование в механике сплошных сред — М., Физматлит, 1994.
2. Самарский А. А., Вабищевич П. Н. Математическое моделирование и вычислительный эксперимент, 2000http://www.imamod.ru/~vab/matmod/MatMod.htm.
3. Рождественский Б. Л., Яненко Н. Н., Системы квазилинейных уравнений М., Наука, 1978.
4. Griebel М., Dornseifer Т., Neunhoeffer Т., Numerical Simulation in Fluid Dynamics, a Practical Introduction Philadelphia, SIAM, 1998.
5. Белоцерковский O.M., Математическое моделирование на суперкомпьютерах (опыт и тенденции) // ЖВМ и МФ, том 40, № 40, 2000.
6. Белоцерковский О. М., Опарин A.M., Численный эксперимент в турбулентности: от порядка к хаосу М., Наука, 2000.
7. Koniges A.Z., Industrial Strength Parallel Computing: Programming Massively Parallel Processors Morgan Kaufman Publishers, 1999.
8. Воеводин B.B., Воеводин Вл.В., Параллельные вычисления БХВ-Петербург, 2002.
9. Foster I., Designing and Building Parallel Programs Addison-Wesley, 1995.
10. Корнеев В. Д., Параллельное программирование в MPI Новосибирск, Издательство СО РАН, 2000.
11. Забродин А. В. Параллельные вычислительные технологии. Состояние и перспективы. Препринт ИПМ № 71 -М., ИПМ РАН, 1991.
12. Аки К., Ричарде П., Количественная сейсмология М., Мир, 1983.
13. Richardson L.F., The approximate arithmetical solution by finite differences of physical problems involving differential equations, with an application to the stresses in a masonry dam // Trans. Roy. Soc. London, ser. A, vol. 210.
14. Phillips H., Wiener N., Nets and the Dirichlet program // Journal of Mathematicsand Physics, vol. 2, 1923.
15. Frankel S.P., Convergence rates of iterative treatment of partial differential equations // Mathematical Tables and Other Aids to Computation, vol.4, 1950.
16. Курант P., Фридрихе Л. О., Леви X., О разностных уравнениях математической физики // Успехи математических наук, вып. 8, 1940.
17. Thom A., The flow past circular cylinder at low speeds // Proc. Roy. Soc. London, ser. A, vol. 141, 1933.
18. Allen D.N. de G., Southwell R.V., Relaxation methods applied to determine the motion in two dimensions of a viscous fluid past a fixed cylinder // Quart. Journal of Mechanics and Applied Mathematics, vol. 8, 1955.
19. Southwell R.V., Relaxation methods in theoretical physics New York, Oxford University Press, 1946.
20. Fox L., A short account of relaxation methods // Quart. Journal of Mechanics and Applied Mathematics, vol. 1, 1948.
21. Young D., Iterative methods for solving partial differential equations of elliptic type // Trans. Amer. Math. Society, vol.76, 1954.
22. Рихтмайер Р. Д., Разностные методы решения краевых задач М., Иностранная Литература, 1960.
23. Harlow F.H., Fromm J.E., Computer experiments in fluid dynamics // Scientific American, vol. 212, № 3, 1965.
24. Роуч П., Вычислительная гидродинамика М., Мир, 1980.
25. Оран Э., Борис Дж., Численное моделирование реагирующих потоков М., Мир, 1990.
26. Куликовский А. Г., Погорелов Н. В., Семенов А. Ю., Математические вопросы численного решения гиперболических систем уравнений М., Физматлит, 2001.
27. Панов Ю. Д., Численное решение квазилинейных гиперболических систем дифференциальных уравнений в частных производных М., Гостехиздат, 1957.
28. Самарский А. А., Теория разностных схем М., Наука, 1977.
29. Fromm J.E., Lagrangian difference approximations for fluid dynamics // Los Alamos Scientific Laboratory Report № 2535, Los Alamos, New Mexico, 1961.
30. Магомедов K.M., Холодов A.C., Сеточно-характеристические численные методы М., Наука, 1988.
31. Оден Дж., Конечные элементы в нелинейной механике сплошных сред М., Мир, 1976.
32. Лисковец О. А., Методы прямых // Дифференциальные уравнения, том 1, стр. 1662−1678, 1965.
33. Белоцерковский О. М., Чушкин П. И., Численный метод интегральных соотношений // ЖВМ и МФ, том 2, № 5, 1962.
34. Leonard A., Vortex methods for flow simulation // Journal of Computational Physics, vol. 37, 1980.
35. Харлоу Ф. Х., Численный метод частиц в ячейках для задач гидродинамики // Вычислительные методы в гидродинамике М., Мир, 1967.
36. Белоцерковский О. М., Давыдов Ю. М., Метод крупных частиц в газовой динамике М., Наука, 1982.
37. Marder В.М., GAP a PIC-type fluid code // Math. Сотр., vol. 24, 1975.
38. Harlow F.H., Welch J.F., Numerical calculation of time-dependent viscous incompressible flow of fluid with free surface // Phys. Fluids, vol. 8, 1965.
39. Соболь И. М., Численные методы Монте-Карло М., Наука, 1973.
40. Белоцерковский О. М., Яницкий В. Е., Статистический метод частиц в ячейках для решения задач динамики разреженного газа // ЖВМ и МФ, том 15, № 5, № 6, 1975.
41. Алалыкин Г. Б., Годунов С. К., Киреева И. Л., Плинер Л. А., Решение одномерных задач газовой динамики в подвижных сетках М., Наука, 1970.
42. Гольдин В. Я., Калиткин Н. Н., Шишова Т. В., Нелинейные разностные схемы для гиперболических уравнений // ЖВМ и МФ, том 5, № 5, 1965.
43. Тихонов А. Н., Самарский А. А., Об однородных разностных схемах // ЖВМ иМФ, том 1, № 1, 1961.
44. Белоцерковский О. М., Северинов Л. И., Консервативный метод потоков и расчет обтекания тела конечных размеров вязким теплопроводным газом // ЖВМ и МФ, том 13, № 2, 1973.
45. Courant R., Isaacon Е., Rees М., On the solution of nonlinear hyperbolic differential equations by finite differences // Comm. Pure and Applied Mathematics, vol. 5, 1952.
46. Neuman J. von, Richtmayer R.D., A method for numerical calculation of hydrodynamic shocks //Journal of Applied Physics, vol. 21, № 1, 1950.
47. Lax P.D., Weak solutions of nonlinear hyperbolic equations and their numerical computations // Comm. Pure and Applied Mathematics, vol. 7, 1954.
48. Lax P.D., Wendroff В., Systems of conservation laws // Comm. Pure and Applied Mathematics, vol. 13, 1960.
49. Richtmyer R.D., A survey of difference methods for nonsteady fluid dynamics // NCAR Technical Note 63−2 Colorado, Boulder, 1963.
50. MacCormack R.W., The effect of viscosity in hypervelocity impact cratering // AIAA Paper № 69−354,1969.
51. Charney J.G., Fjortoft R., von Neuman J., Numerical integration of the barotropic vorticity equation // Tellus, vol. 2, № 4, 1950.
52. Lax P.D., Richtmyer R.D., Survey of the stability of linear finite difference equations // Comm. Pure and Applied Mathematics, vol. 9, 1956.
53. Рихтмайер P., Мортон К., Разностные методы решения краевых задач М., Мир, 1972.
54. Годунов С. К., Разностный метод численного расчета разрывных решений гидромеханики // Математический сборник, том 47, вып. 3, 1959.
55. Годунов С. К., О неединственном «размазывании» разрывов в решениях квазилинейных систем // Доклады Академии Наук СССР, том 136, № 2, 1961.
56. Годунов С. К., Элементы механики сплошных сред М., Наука, 1978.
57. Osher S., Riemann solvers, the entropy condition and difference approximations // SIAM Journal of Numerical Analysis, vol. 21, 1984.
58. McNamara W., FLAME computer code for the axisymmetric interaction of a blast wave with a shock layer on a blast body // Journal of Spacecraft and Rockets, vol. 4, 1967.
59. Glimm J. // Comm. Pure and Applied Mathematics, vol. 18, 1965.
60. Yamamoto S., Daiguji H. // Computers and Fluids, vol.22, 1993.
61. Магомедов K.M., Холодов A.C., О построении разностных схем для уравнений гиперболического типа на основе характеристических соотношений // ЖВМ и МФ, том 9, № 2, 1969.
62. Roe P.L., Approximate Riemann solvers, parameter vectors and difference schemes // Journal of Computational Physics, vol. 43, 1981.
63. Roe P.L., Characteristic-based schemes for the Euler equations // Ann. Rev. FluidMechanics, vol. 18, 1986.
64. Roe P.L., Pike J. Efficient construction and utilization of approximate Riemann solutions // Computing Methods in Applied Sciences and Engineering, ed. Glowinski R.G., Lions J.L., vol. 6 Amsterdam, North-Holland, 1984.
65. Roe P.L., Some contributions to the modeling of discontinuous flows // Lectures in Applied Mathematics, vol. 22, 1985.
66. Harten A., Osher S., Uniformly high-order accurate nonoscillatory schemes. I // SIAM Journal of Numerical Analysis, vol. 24, 1987.
67. Colella P., Woodward P.R., The piecewise parabolic method (PPM) for gas dynamical simulations // J. Comput. Phys., vol. 54,1984.
68. Osher S., Numerical solution of singular perturbation problems and hyperbolic systems of conservation laws // North Holland Mathematical Studies, vol. 47, 1981.
69. Engquist B., Osher S., One-sided difference approximations for nonlinear conservation laws // Math. Comput., vol. 36,198 178. van Leer B., Flux-vector splitting for the Euler equations // Lecture Notes in Physics, vol. 170, 1982.
70. Steger J.L., Warming R.F., Flux vector splitting of the inviscid gasdynamic equations with application to finite difference methods // Journal of Computational Physics, vol. 40, № 2, 1981.
71. Yee H.C., Warming R.F., Harten A., Application of TVD schemes for the Euler equations of gas dynamics // Lectures in Applied Mathematics, vol. 22, 1985.
72. Harten A., The method of artificial compression // CIMS Report C00−3077−50 -New York, Courant Institute, NYU, 1974.
73. Harten A., Zwas G., Self-adjusting hybrid schemes for shock computations // Journal of Computational Physics, vol. 6,1972.
74. Beam R., Warming R.F., An implicit finite-difference algorithm for hyperbolic systems in conservation-law-form // Journal of Computational Physics, vol. 22, 1976.
75. Boris J.P., Book D.L., Flux-corrected transport. I. SHASTA, a fluid transport algorithm that works // Journal of Computational Physics, vol. 11, 1973.
76. Boris J.P., Book D.L., Hain K., Flux-corrected transport. II. Generalizations of the method // Journal of Computational Physics, vol. 18, 1975.
77. Boris J.P., Book D.L., Flux-corrected transport. III. Minimal-error FCT algorithms // Journal of Computational Physics, vol. 20, 1976.
78. Белоцерковский O.M., Гущин B.A., Конынин B.H., Метод расщепления для исследования течений стратифицированной жидкости со свободной поверхностью // ЖВМ и МФ, том 27, 1987.
79. Harten A., On a class of high resolution total-variation-stable finite-difference schemes // NYU Report New York, NYU, 1982.
80. Harten A., The artificial compression method for computation of shocks and contact discontinuities: III. Self-adjusting hybrid schemes // Math. Comput., vol. 32, 1978.
81. Chakravarthy S.R., Osher S., Computing with high-resolution upwind schemes for hyperbolic equations // Lectures in Applied Mathematics, vol. 22, 1985.
82. Harten A., Engquist В., Osher S., Chakravarthy S.R., Uniformly high-order accurate essentially non-oscillatory schemes. Ill // Journal of Computational Physics, vol. 71, 1987.
83. Yang J.Y., Third-order nonoscillatory schemes for the Euler equations // AIAA Journal, vol. 29, № 10, 1991.
84. Top 500 Supercomputer Sites, November, 2002 -http://www.top500.org/list/2002/ll/.
85. Xoap Ч., Взаимодействующие последовательные процессы M., Мир, 1989.
86. Geist A., Beguelin A., Dongarra J., Jiang W., Manchek R., Sunderam V., PVM: Parallel Virtual Machine MIT Press, 1994.
87. Koelbel C., Loveman D., Schreiber R., Steele G., Zosel M., The High Performance Fortran Handbook MIT Press, 1994.
88. Butler R., Lusk E., Monitors, message, and clusters: The p4 parallel programming system // Parallel Computing, № 20, 1994.
89. Express User’s Guide, version 3.2.5 edition Parasoft Corporation, Pasadena, CA, 1992.
90. Gropp W., Lusk E., Skjellum A., Using MPI: Portable Parallel Programming with the Message Passing Interface MIT Press, 1995.
91. Message Passing Interface Forum http://www.mpi-forum.org.
92. The mpC Project http://www.ispras.ru/~mpc.
93. The DVM System http://www.keldysh.ru/dvm.
94. Zomaya A.Y., Parallel computing: paradigms and applications Int. Thompson Сотр. Press, 1996.
95. Бебб P., Мак-Гроу Дж., Акселрод Т., Программирование на параллельных вычислительных системах М., Мир, 1991.
96. Воеводин В. В., Информационная структура алгоритмов М., Изд-во МГУ, 1997.
97. Воеводин В. В., Математические модели и методы в параллельных процессах М., Наука, 1986.
98. Ортега Дж., Введение в параллельные и векторные методы решения линейных систем М., Мир, 1991.
99. Freeman L., Phillips C., Parallel numerical algorithms Prentice Hall, 1993.
100. Saad Y., Iterative methods for sparse linear systems PWS Publishing Co., Int. Thompson Publ. Co, 1995.
101. Dongarra J., Duff I., Sorensen D., Van der Vorst H., Numerical linear algebra for high-performance computers Philadelphia, SIAM, 1998.
102. Van der Vorst H., Parallel iterative solution methods for linear systems arising from discretized PDE’s // Special course on parallel computing in CFD, AGARD-R-807 France, Neuily-sur-Seine, AG ARD, Workshop Lecture Notes, 1995.
103. Glowinsti R., Domain decomposition methods for partial differential equations, Proceeding of the 1st International symposium Philadelphia, SIAM, 1988.
104. Keyes D.E., Domain decomposition: a bridge between nature and parallel computers // ICASE Report № 92−44,1992.
105. Roose D., Driessche R.V., Parallel computers and parallel algorithms for CFD: an introduction // AGARD-R-807, 1995.
106. Proceedings of a Symposium «Computational Fluid Dynamics for the 21st Century» // Notes on Numerical Fluid Mechanics, vol. 78 Springer-Verlag, 2001.
107. Book of Abstracts of the V International Congress on Mathematical Modelling, September 30 October 6, 2002, Joint Institute for Nuclear Research, Dubna, Russia. -M., UHyc-K, 2002.
108. Bunch J., Dongarra J., Moler C., Stewart G.W., LINPACK User’s Guide SIAM, Philadelphia, PA, 1979.
109. The ScaLAPACK Project http://www.netlib.org/scalapack/index.html.
110. NAG Parallel Library Documentationhttp://www.nag.co.uk/numeric/FD/FDdocumentation.asp.
111. The PINEAPL Project: Parallel Industrial NumErical Applications and Portable Libraries http://www.nag.co.uk/projects/PINEAPL/.
112. Maeder R. E., Programming in Mathematica Addison-Wesley, 1996.
113. Прохоров Г. В., Леденев M.A., Колбеев B.B., Пакет символьных вычислений MAPLE V М., Петит, 1997.
114. Пакет PDELab http://pdelab.com/Russian/Russian.html.
115. Пакет FlexPDE http://www.pdesolutions.com/.
116. Архив NetLib http://www.netlib.org/.
117. Программа FLOW-3D http://www.cad.ru/flow3d/frmain.htm.
118. Программа CARDINAL http://webcenter.ru/~klevanny/.
119. Пакет SME http://www.uvm.edu/giee/SME3/.
120. Проект Argus http://www.argusint.com/.
121. Пакет KIPARIShttp://www.imamod.ru/about/mmll.htm.
122. Пакет GDT http://www.cfd.ru.
123. Fayad М. Е., Schmidt D. С., Johnson R. Е., Building Application Frameworks: Object-Oriented Foundations of Framework Design Wiley, 1 999 137. Пакет CLAWPACK http://www.amath.washington.edu/~rjl/clawpack.html.
124. Пакет Flux Coupler http://www.cgd.ucar.edu/csm/models/cpl/.
125. Проект GEMS: Goddard Earth Modeling Systemhttp://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/gems/www/gems/gems.html.
126. Проект FMS: Flexible Modeling System http://www.gfdl.noaa.gov/~fms/.
127. Пакет DDB: Distributed Data Brokerhttp ://www .atmos .ucla.edu/~drummond/DDB.
128. Пакет PAWS: Parallel Application Workspacehttp://www.acl.lanl.gov/paws/.
129. Пакет DAGH: Distributed Adaptive Grid Hierarchyhttp://www.cs.utexas.edu/users/dagh/welcome.html.
130. Пакет SAMRAI: Structured Adaptive Mesh Refinement Applications Infrastructure http://www.llnl.gov/CASC/SAMRAI.
131. Пакет CACTUS http://www.cactuscode.org/.
132. Пакет РООМА: Parallel Object-Oriented Methods and Applicationshttp://www.acl.lanl.gov/pooma/.
133. Пакет PETSC: Portable Extensible Toolkit for Scientific Computinghttp://www.mcs.anl.gov/petsc/.
134. NASA Computational Technology Project, Earth System Modeling Framework TASChttp://ess.gsfc.nasa.gov/frameworks.htmlhttp://ess.gsfc.nasa.gov/esmftasc/index.htmlhttp://ess.gsfc.nasa.gov/esmftasc/t431frameworks.html.
135. DeLuca C., Dennis J., Overview of Frameworks and Toolkits for Parallel Scientific Computing // Computational Science Section, Information Technology Workshop II, NCAR, 2000 http://www.scd.ucar.edu/css/staff/cecelia/itw2/.
136. Ковеня B.M., Яненко H.H., Метод расщепления в задачах газовой динамикиНовосибирск, Наука, 1981.
137. Яненко Н. Н., Метод дробных шагов решения многомерных задач математической физикиНовосибирск, Наука, 1967.
138. Strang J., On the construction and comparison of difference schemes // SIAM Journal of Numerical Analysis, vol. 5, 1968.
139. LeYeque R.J., Wave propagation algorithms for multi-dimensional hyperbolicsystems // Jornal of Computational Physics, vol. 131, 1997.
140. Anderson W.K., Thomas J.L., van Leer В., Comparison of finite volume flux vector splittings for the Euler equations // AIAA Journal, vol.24, № 9, 1986.
141. Гришин Ю. А., Новые схемы метода крупных частиц и их использование для оптимизации газовоздушных трактов двигателей // Математическое моделирование, том 14, № 8, 2000.
142. Snir М., Otto S., Huss-Lederman S., Walker D., Dongarra J., MPI: The Complete Reference. MIT Press, 1996.
143. Zeigler B.P., Object-Oriented Simulation with Hierarchical, Modular ModelsNew York: Academic Press, 1990.
144. Буч Г., Объектно-ориентированное проектирование с примерами применения: пер. с англ. М.: Конкорд, 1992.
145. Booch G., Rumbaugh J., Jacobson I., The Unified Modeling Language User Guide Addison-Wesley, 1999.
146. Wilson G.V., Practical Parallel Programming. MIT Press, 1995.
147. Кочин H.H., Кибель И. А., Розе H.B., Теоретическая гидромеханика М., Физматлит, 1963.
148. Glaz Н.М., Colella P., Glass I., Deschambault R.L., A numerical study of oblique shock-wave reflections with experimental comparisons // Proc. R. Soc. Lond., vol. A, 398, 1985.
149. Конюхов A.B., Мещеряков M.B., Утюжников C.B., Движение крупномасштабного турбулентного термика в стратифицированной атмосфере // Теплофизика высоких температур, том 32, № 2, 1994.
150. Quirk J.J., An adaptive grid algorithm for computational shock hydrodynamics. PhD Thesis Cranfield Institute of Technology, College of Aeronautics, 1991.
151. Будыко М. И., Голицын Г. С., Израэль Ю. А., Глобальные климатические катастрофы М., Гидрометеоиздат, 1985.
152. Ebert C.H.V., The meteorological factor in the Hamburg fire storm // Weatherwise, vol. 16, № 2, 1963.
153. Гришин A.M., Математическое моделирование лесных пожаров и новые способы борьбы с ними Новосибирск, Наука, 1992.
154. Копылов Н. П., Рыжов A.M., Хасанов И. Р., Математическое моделирование крупномасштабного экспериментального пожара // Физика Горения и Взрыва, № 5,1985.
155. Small R.D., Heires К.Е., Early cloud formation by large area fires // Journal of Applied Meteorology, vol. 27, № 5,1988.
156. Гостинцев Ю. А., Копылов Н. П., Рыжов A.M., Хасанов И. Р., Конвективный перенос продуктов сгорания в атмосфере над большими пожарами // Известия РАН, Механика Жидкости и Газа, № 4, 1990.
157. Гостинцев Ю. А., Махвиладзе Г. М., Новожилов В. Б., Формирование большого пожара, вызванного излучением // Известия РАН, Механика Жидкости и Газа, № 1,1992.
158. Музафаров И. Ф., Утюжников С. В., Численное моделирование конвективных колонок над большим пожаром в атмосфере // Теплофизика Высоких Температур, том 33, № 4,1995.
159. Опарин A.M., Конюхов А. В., Численное моделирование пространственных турбулентных процессов в атмосфере // Научный отчет по гранту РФФИ 00−100 693 за 2001 г. М., ИАП РАН, 2002.
160. Гостинцев Ю. А., Рыжов A.M., Численное моделирование динамики пламен, огненных вихрей и штормов при пожарах на открытом пространстве // Известия РАН, Механика Жидкости и Газа, № 6, 1994.
161. Carrier G.F., Fendell F.E., Feldman P. S., Firestorms // Journal of Heat Transfer, vol. 107, № 1, 1985.
162. Андрущенко В. А., Шевелев Ю. Д., Численное моделирование трехмерныхвихревых течений в неоднородной атмосфере // Известия РАН, Механика Жидкости и Газа, № 2,1997.
163. Davis С.А., Weisman M.L., Balanced dynamics of mesoscale vortices produced in simulated convective systems //Journal of Atmospheric Sciences, vol. 51, № 14, 1994.
164. Grasso L.D., Cotton W.R., Numerical simulation of a tornado vortex // Journal of Atmospheric Sciences, vol. 52, № 8, 1995.
165. Андрианов C.A., Васильченко И. И., Забавин B.H., Онуфриев А. Т., Турчак Л. И., Щербин М. Д., Численное моделирование интенсивных вертикальных вихрей в атмосфере М., ВЦ РАН, 2000.
166. Таблицы стандартной атмосферы. ГОСТ 4401–48 —М., Стандартизация, 1974.
167. Белоцерковский О. М., Андрущенко В. А., Шевелев Ю. Д., Динамика пространственных вихревых течений в неоднородной атмосфере М., Янус-К, 2000.
168. Андрущенко В. А., Образование кольцевого вихря при подъеме нагретой массы воздуха в стратифицированной атмосфере // Известия АН СССР, Механика Жидкости и Газа, № 2,1978.
169. Андрущенко В. А., Численное моделирование подъема приповерхностных термиков // Известия АН СССР, Механика Жидкости и Газа, № 2, 1989.
170. Андрущенко В. А., Горбунов А. А., Пасконов В. М., Чудов Л. А., Решение задачи о взаимодействии четрых приземных термиков на многопроцессороном комплексе ЕС 1037-ЕС 2706 // Математическое моделирование, том 4, № 3, 1992.
171. Morton, B.R., Taylor, G.T., Turner, Y.S. // Proc. R. Soc. A., vol. 234, № 1196, 1956.
172. Голицын Г. С., Гостинцев Ю. А., Солодовник А. Ф. //Прикл. Мат. Тех. Физ., № 6, 1989.
173. Thomson C.J., Chapman С.Н., An introduction to Maslov’s asymptotic method // Geophys. J. R. Astr. Soc., vol. 83, 1985.
174. French W.S., Computer migration of oblique seismic reflection profiles // Geophysics, vol. 40, 1975.
175. Stolt R.H., Migration by Fourier transform // Geophysics, vol.43, 1978.
176. Biondi В., Palacharla G., 3-D prestack migration of common-azimuth data // Geophysics, vol. 61, 1996.
177. Ландау Л. Д., Лифшиц E.M., Теоретическая физика. Том VII. Теория упругости. М., Наука, 1987.
178. Николаев А. В., Жигалин А. Д., Геолого-геофизические исследования на площадке 2-го блока АЭС «Бушер». Окончательный отчет. М., ИГЭ РАН, 2001.
179. Antonenko M. N, Konyukhov A.V., Kraginskii L.M., Meshcheryakov M.V., Utyuzhnikov S.V., Numerical modeling of intensive convective flows in atmosphere, induced by large-scale fire. // Computational Fluid Dynamics Journal, vol. 11, № 2, 2002.
180. Белоцерковский O.M., Крагинский Л. М., Опарин A.M., Численное моделирование пространственных течений в стратифицированной атмосфере, вызванных сильными крупномасштабными возмущениями. // Принято к печати в ЖВМ и МФ, 2003.