Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

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

Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов
<
Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Пекунов Владимир Викторович. Параллельное моделирование распространения загрязнений окружающей среды при автоматизации проектирования энергетических и муниципальных объектов : Дис. ... канд. техн. наук : 05.13.12, 05.13.01 : Иваново, 2003 161 c. РГБ ОД, 61:04-5/708-X

Содержание к диссертации

Введение

Глава 1. Математическая модель и численные методы 13

1.1. Обзор моделей, применяемых для оценки уровней загрязнений 13

1.2. Определение общих требований к математической модели 19

1.3. Основные уравнения модели 22

1.4. Выбор модели турбулентности 27

1.5. Численные методы 37

1.6. Особенности реализации выбранных численных методов для областей сложной формы 44

Выводы к первой главе 46

Глава 2. Распараллеливание вычислений 47

2.1. Распараллеливание вычислений при интегрировании динамических уравнений 48

2.2. Распараллеливание вычислений при интегрировании уравнений химической кинетики 57

2.3. Выбор программных средств распараллеливания 66

2.4. Общий алгоритм вычислений и обменов данными 72

2.5. Краткое описание разработанного программного кода 76

2.6. Анализ эффективности алгоритма балансировки загрузки процессоров 78

2.7. Исследование общей эффективности распараллеливания 84

Выводы ко второй главе 87

Глава 3. Имитаторы многопроцессорной системы Power XPlorer 89

3.1. Общие принципы построения имитаторов 90

3.2. Одномашинный имитатор Power XPlorer 96

3.3. Сетевой имитатор Power XPlorer 104

Выводы к третьей главе 111

Глава 4. Численные эксперименты по моделированию распространения загрязнений 112

4.1. Моделирование распространения загрязнений на перекрестке улиц 112

4.1.1. Постановка эксперимента 114

4.1.2. Обсуждение результатов эксперимента 126

4.2. Моделирование распространения загрязнений в окрестности предприятия 136

4.2.1. Постановка эксперимента 138

4.2.2. Обсуждение результатов эксперимента 141

4.3. Рекомендации по применению результатов работы в САПР энергетических предприятий и объектов городской застройки 146

Выводы к четвертой главе 149

Заключение 151

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

Введение к работе

В настоящее время существует множество экологических проблем, обусловленных загрязнением воздушной среды в окрестностях энергетических предприятий, а также в больших городах. Крупными источниками твердых и газообразных загрязнителей являются энергетические предприятия: ТЭЦ и ТЭС, котельные установки. Здесь наибольшее количество загрязнителей (мелкой пыли, оксидов азота и серы) попадает в атмосферу при сжигании угля [1, 43]. Большое количество токсичных веществ выбрасывается в атмосферу предприятиями черной и цветной металлургии [1, 43] (например, медно-никелевым комбинатом «Печенганикель»). Постоянными источниками пыли являются промышленные отвалы и взрывные работы.

Выхлопы городского автомобильного транспорта являются постоянными источниками угарного газа, окислов азота, углеводородов. Истирание шин и дорожных покрытий приводит к образованию мелкой резиновой, асбестовой и битумной пыли. Химические реакции, протекающие между загрязнителями, приводят к появлению новых токсичных веществ (пары сернистой и азотной кислот, озон, пероксиацетилнитрат), возникает смог [26, 30, 37]. Интенсивный смог может приводить к удушью, аллергическим реакциям, приступам астмы, обострению множества хронических заболеваний [26].

Неблагоприятная экологическая ситуация часто является следствием принятия проектных решений, плохо обоснованных с точки зрения экологической безопасности. Проблема, обычно, заключается в использовании недостаточно точных оценок предполагаемых уровней загрязнений при анализе проектных вариантов. Применяемые в настоящее время нормативные методики (ОНД-86 и другие) недостаточно учитывают ряд важных факторов, например, турбулентности и химической кинетики [41]. Актуальна задача повышения качества проектных решений за счет использования более точных средств оценки

4 уровней загрязнений в САПР ТЭЦ, ТЭС и иных предприятий энергетического профиля, а также объектов городской застройки.

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

Теоретические методы основываются на попытках аналитического решения систем нелинейных уравнений газовой динамики. Такие методы, обычно, имеют высокую точность, однако их применимость ограничивается лишь некоторыми случаями, например, в работе [50] рассматриваются решения для стационарных течений. В работах [28, 38] также приведены некоторые аналитические решения, полученные при наличии серьезных допущений, например, о мгновенном приспособлении течений к перемене ветра и о постоянстве коэффициента диффузии во всей расчетной области. В сложных же случаях, особенно при наличии турбулентности, возможность существования аналитического решения не доказана. Более того, вероятно, при современном уровне развития методов интегрирования получение аналитических решений для многих практически важных задач невозможно.

Экспериментальные методы отличаются разнообразием. Перечислим лишь небольшую часть методов, используемых для получения качественной картины распределения загрязнений: применение дыма и красителей, трассирующих частиц и нитей, метод запыления, химические способы визуализации, интерферометрический, голографический методы, методы конденсации и кристаллизации, Шлирен-метод. К сожалению, данные методы позволяют дать информацию о распределении лишь одного - двух параметров, чаще всего плотности. Для получения количественных значений концентраций также существует множество методов: фотоколориметрический, потенциометрический, газовой хроматографии и другие. В сборнике [42] указано более шестидесяти методов для различных загрязняющих веществ. Следует отметить, что получение количественных результатов возможно лишь в ограниченном количестве

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

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

Численные методы также отличаются разнообразием [см., например, 11, 28, 29, 39].. Выбор метода зависит от требований, предъявляемых к точности, устойчивости, вычислительной трудоемкости и другим параметрам. Однако применение численных методов в САПР для оценок уровней загрязненности сталкивается с определенными трудностями. Проблема состоит в том, что для обеспечения приемлемых точности и устойчивости расчета приходится брать расчетную сетку с достаточно большим количеством ячеек и выполнять множество итераций. В результате число арифметических операций, необходимых для расчета динамики распространения загрязнений в течение часа на сетке с 104т-105 узлов при шаге по времени порядка 10'2 сек, может достичь 1015 и более. Однопроцессорные вычислительные системы с такой нагрузкой справляются плохо, поэтому наиболее оправданно применение многопроцессорных систем. Но здесь возникают иные проблемы, связанные с тем, что различные численные методы могут быть распараллелены с различной эффективностью. Соответственно, при выборе метода следует искать приемлемый компромисс между точностью, устойчивостью и эффективностью распараллеливания.

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

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

Пакет GAS DYNAMICS TOOL () позволяет рассчитывать многофазные течения (с учетом тепла, химической кинетики, межфазных переходов) в областях сложной формы путем численного решения трехмерных уравнений Эйлера или Навье-Стокса. Используется метод крупных частиц на основе явной, двухшаговой схемы первого порядка, что накладывает определенные ограничения на шаг интегрирования по времени. Кроме того, данный пакет не учитывает фактор турбулентности.

Значительно более мощным является пакет Star-CD (информацию можно найти, например, в [13]), позволяющий рассчитывать многофазные потоки (с учетом межфазных переходов, тепла, турбулентности и химической кинетики) путем численного решения трехмерных уравнений Навье-Стокса или Рей-нольдса. Пакет предоставляет широкий выбор моделей турбулентности. Существует и параллельная реализация данного пакета Star-HPC (), показывающая достаточно хорошие результаты по эффективности распараллеливания. Данный пакет претендует на универсальность, вероятно, с его помощью могут решаться и задачи распространения загрязнений.

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

7 ориентированные на решение конкретного класса задач способны решать данные задачи более эффективно.

Существует большое количество зарубежных специализированных программ моделирования распространения загрязнений (см., например, обзоры [60, 63] на сайте , а также [73, 74]): ADAM, ADMS-3, CAL3QHC, ISC-3, PANACHE, REMSAD, RPM-IV, UAM-IV, UAM-V, WYNDVALLEY и другие. Все перечисленные программы ориентированы на однопроцессорные системы. Большей частью используются модели на основе распределения Гаусса (например, ADAM, ADMS-3, CAL3QHC, ISC-3), реже модели на основе уравнений Эйлера и/или Навье-Стокса (например, PANACHE, REMSAD, WYNDVALLEY). Иногда дополнительно применяется лагранжева модель для расчета переноса пыли (RAPTAD, PANACHE). Наиболее совершенные программы учитывают факторы химической кинетики (ADAM, ADMS-3, PANACHE, REMSAD, RPM-IV и другие), переноса тепла (ADAM, PANACHE), сложной геометрии области (ADMS-3, ISC-3, PANACHE и другие), турбулентности (PANACHE).

Известны и отечественные исследования и разработки, посвященные теме распространения загрязнений, однако большая их часть (см., например, [4, 7, 12, 14, 22, 28, 40, 49]) не затрагивает вопроса распараллеливания. Там же, где данный вопрос рассматривается (см., например, [53]), обычно используются сравнительно несложные модели распространения загрязнений, учитывающие не все значимые факторы.

Значительно меньшее число специализированных программ моделирования распространения загрязнений ориентировано на многопроцессорные системы. Назовем две известные нам разработки: ECOSIM [64] и MAQSIP [58]. Используются достаточно совершенные математические модели, позволяющие осуществлять сложные расчеты распространения загрязнений. Оба программных комплекса имеют модульную структуру, причем распараллелены лишь некоторые модули. Так, в ECOSIM распараллелен (с помощью PVM) модуль,

8 осуществляющий интегрирование уравнений переноса загрязнителей и уравнений химической кинетики (подмодель DYMOS). В MAQSIP распараллелен (с использованием High Performance FORTRAN) модуль, отвечающий за моделирование образования аэрозолей. Безусловно, для обеспечения наивысшей эффективности вычислений необходима более высокая степень распараллеливания, что возможно лишь при организации системы как единого целого. В свою очередь, повышение эффективности вычислений позволяет использовать более сложные и точные математические модели и методы решения.

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

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

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

а) недоступностью многопроцессорной вычислительной техники;

б) отсутствием (во многих системах) специализированных средств отладки.

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

Целью данной работы является новое, более целостное, точное и эффек-
Vf тивное решение задачи численного моделирования распространения загрязне-

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

Для достижения поставленной цели сформулируем следующие задачи:

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

J. зрения экологической безопасности; определить методы интегрирования. Мо-дель должна учитывать большое количество значимых факторов: турбулентности, переноса тепла, диффузии, слабой сжимаемости среды, химической кинетики.

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

  2. Разработать имитаторы многопроцессорной вычислительной машины

Power XPlorer, облегчающие разработку, перенос и отладку параллельных про-

грамм.

4. Определить возможности повышения точности оценок экологической
безопасности проектных решений при использовании разработанного про
граммного комплекса путем: а) проведения численных экспериментов (в па-

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

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

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

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

  2. Для решения поставленной задачи сформулирована четкая методика

*

выбора метода распараллеливания на основе оценки количества пересылок (в зависимости от структуры взаимосвязей между переменными).

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

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

4. Впервые поставлена и решена задача создания сетевого имитатора многопроцессорной вычислительной системы Power XPiorer. Сетевой имитатор позволяет оперативно переносить параллельные программы с Power XPiorer на Windows-кластеры.

Практическая ценность данной работы состоит в следующем:

  1. На базе предложенных модели и алгоритмов разработаны однопроцессорная и многопроцессорная версии программы моделирования загрязнений, предназначенные для исполнения в операционных системах Windows, Linux и Parix. Многопроцессорный вариант оптимизирован для работы с системами МВС-1000, Power XPiorer, а также с Windows- и Linux-кластерами. Применение разработанного комплекса программ позволяет повысить качество принимаемых проектных решений в САПР энергетических предприятий и объектов го-родской застройки за счет более точной и эффективной автоматизированной оценки предполагаемых уровней загрязнений.

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

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

12 Даны рекомендации по применению результатов диссертации в САПР энергетических предприятий и САПР объектов городской застройки. Приведен пример итерационной процедуры поиска оптимального места размещения ТЭС с помощью разработанной подсистемы точной автоматизированной оценки предполагаемых уровней загрязнений. На защиту выносятся:

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

  2. Методика выбора метода распараллеливания.

  3. Алгоритм балансировки загрузки процессоров.

  4. Принципы построения сетевых имитаторов многопроцессорной вычислительной системы Power XPlorer.

Материалы диссертации докладывались на следующих конференциях и семинарах: II Международном симпозиуме «Математическое моделирование экологических процессов» (Иваново, 2000); II Всероссийской научной конференции «Высокопроизводительные вычисления и их приложения» (Черноголовка, 2000); Международной научно-технической конференции «Состояние и перспективы развития электротехнологий» (X Бенардосовские чтения) (Иваново, 2001); VIII Всероссийском съезде по теоретической и прикладной механике (Пермь, 2001); IV Всероссийской научной internet-конференции «Компьютерное и математическое моделирование в естественных и технических науках» (Тамбов, 2002); семинаре в Институте прикладной математики имени М.В. Келдыша, РАН (23 мая 2002).

По материалам диссертации опубликовано 8 печатных работ.

Диссертация состоит из введения, четырех глав, заключения и библиографического списка из 76 наименований.

Особенности реализации выбранных численных методов для областей сложной формы

Система уравнений модели состоит из двух подсистем: динамических (1.1)-(1.4), (1.6), (1.7), (1.17), (1.18) и кинетических уравнений (1.8). К каждой из подсистем целесообразно применить свой метод интегрирования.

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

В работе [24] описывается применение метода Монте-Карло к уравнениям Навье-Стокса, записанным в разностной форме. Данный метод сравнительно прост, но требует выполнения достаточно большого числа статистических проб и, соответственно, весьма трудоемок в вычислительном смысле, что и является основным препятствием к его широкому применению.

Наиболее часто используются методы расщепления, сводящие исходный сложный оператор к нескольким более простым. Тогда интегрирование уравнения сводится к последовательному интегрированию уравнений более простой структуры. Расщепление может осуществляться по физическим параметрам [11, с.297], когда на каждом шаге интегрирования действие различных факторов разделяется во времени, либо по более сложным основаниям. Например, в работе [5] рассматривается расщепление на конвективный и диффузионный перенос, соответственно, используются два различных метода интегрирования. Чаще используется локально-одномерный метод: исходное уравнение сводится к более простым, каждое из которых содержит производные лишь по одной координате [28, с.114]. При этом достаточно лишь одного метода интегрирования, что значительно упрощает вычисления.

Возможно применение как явных, так и неявных разностных схем различных порядков аппроксимации. Назовем явные схемы типа предиктор-корректор Лакса-Вендрофа [67, с.844] второго порядка точности по всем переменным, явные и неявные схемы Кранка-Николсона [29, с.290-293] также второго порядка аппроксимации, неявные схемы Годунова и их модификации второго, третьего и выше порядков точности (например, схема ENO (Essentially Non-Oscillatory) [75] третьего порядка). Явные схемы имеют достаточно ограниченные области устойчивости. Их применение возможно (см., например, [2]), но есть серьезные ограничения на величину шага интегрирования.

Высокой устойчивостью отличаются методы, использующие неявные схемы различных порядков аппроксимации. Это и простейшие неявные схемы и уже упоминавшиеся различные варианты схем Годунова повышенной точности. Общеизвестно, что чем выше порядок аппроксимации разностной схемы, тем выше ее вычислительная сложность. Применение неявных схем высокой точности, вероятно, оправданно лишь в очень сложных случаях, например, для течений в турбомашинах при наличии интенсивных скачков уплотнения и срывов течения [23, 75]. Моделируемый в данной работе случай является более простым, поэтому возможно применение устойчивых неявных методов первого или второго порядка точности. Так как предполагается повышение эффективности вычислений за счет их распараллеливания, следует учитывать тот факт, что чем выше вычислительная сложность схемы и чем больше в ней шагов, тем большее количество обменов данными потребуется при параллельной реализации, тем ниже эффективность распараллеливания.

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

Заметив, что все динамические уравнения модели имеют общую форму (1.5), применим к ним метод расщепления по физическим параметрам [11, с.286, с.297], в данном случае заключающийся в последовательном интегрировании трех уравнений вида: одна из осей Х\, х2, Хз; Ux — проекция вектора скорости на ось х. При этом будем будем считать поля Ux, К и R квазипостоянными, то есть, не изменяющимися в ходе выполнения данной итерации. Легко видеть, что в этом случае возможна любая последовательность интегрирования трех уравнений вида (1.19), например, х = Х, х2, х3 или х = х2, хь х3. Получающиеся при этом разностные операторы шага метода не тождественны, но эквивалентны по порядку точности [29, с.309]. Будем использовать неявную разностную схему, применив для интегрирования уравнений вида (1.19) метод скалярной прогонки, обладающий достаточно высокой вычислительной устойчивостью.

Распараллеливание вычислений при интегрировании уравнений химической кинетики

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

Причины возникновения неравномерной загрузки процессоров достаточно подробно описаны в работе [21]. Известно, что химические реакции наиболее активно идут в областях повышенной температуры. Система дифференциальных уравнений (1.8) в таких областях является жесткой. При ее решении, например, методом Гира требуется провести достаточно большое количество итераций с малым шагом по времени, согласованным с характерным временем самого быстрого процесса [39]. В то же время в других участках расчетной области температура сравнительно невысока, химические реакции идут намного медленнее, соответственно, расчет методом Гира осуществляется за значительно меньшее (в десятки раз) число итераций. Возникает ситуация, когда участки с повышенной температурой обрабатываются значительно медленнее других. Тогда, если применить для уравнений химической кинетики тот же блочный метод распараллеливания по пространству (в работе [21] данный метод назван «геометрическим параллелизмом»), что и для динамических уравнений вида (1.5), вполне возможна ситуация, когда в некоторых блоках присутствует множество участков с повышенной температурой, а в остальных — нет. Следовательно, одни блоки будут обрабатываться значительно медленнее других. Так как время выполнения параллельного участка программы определяется временем выполнения наиболее «медленного» ее фрагмента, очевидно, что некоторые процессоры в ходе выполнения итерации значительную часть времени будут простаивать.

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

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

Известен централизованный алгоритм балансировки (метод коллективного решения). Существует некий управляющий процессор, владеющий всеми значениями концентраций веществ в каждом узле и информацией о времени их обработки. Данный процессор распределяет узлы по рабочим процессорам и собирает результаты обработки (взаимодействие по схеме «звезда»). Очевидно, что при использовании данного метода очень велики количество и объем пересылок между управляющим и рабочими процессорами, что существенно снижает эффективность распараллеливания [21, 34].

Более совершенным является распределенный алгоритм балансировки, предложенный в работе [21] для моделирования задач горения, характеризую 59 щихся быстрым изменением местоположения «горячих» точек. Алгоритм обладает следующими достоинствами: 1. Каждый процессор в первую очередь обрабатывает локальные (принадлежащие ему) узлы. Узлы с других процессоров запрашиваются только в том случае, если все локальные узлы обработаны или переданы на обработку другим процессорам. 2. Передача точек для обработки и обработка локальных точек выполняются одновременно. 3. Объем передаваемой информации значительно сокращен по сравнению с централизованной балансировкой. 4. Затраты времени на управление балансировкой сокращены. Кратко опишем данный алгоритм. На каждом процессоре запускаются два процесса — управляющий и вычислительный. Управляющий процесс работает по следующей схеме: 1. Если в наличии имеются необработанные точки и вычислительный процесс свободен, то одна из этих точек передается ему на обработку. По окончании обработки точки вычислительный процесс уведомляет об этом управяющий процесс. 2. Если в наличии нет необработанных точек, управляющий процесс посылает запрос на получение необработанных точек управляющему процессу на каком-либо ином процессоре. 3. Ожидание сообщений. Возможны три типа сообщений: а) локальная точка обработана (от вычислительного процесса); б) список запрошенных ранее необработанных точек; в) запрос на предоставление необработанных точек другим процессорам. 4. Полученное сообщение обрабатывается. Далее действия 1-4 повторяются. Однако такой алгоритм (без изменений) может быть реализован с использованием только тех интерфейсов распараллеливания, которые корректно работают с многопоточными программами. Сведений о корректной поддержке многопоточности в интерфейсе Router обнаружить не удалось. Не поддерживается многопоточность и в таких реализациях MPI как MPICH 1.2.0 и LAM 6.5.6. Автору известна лишь одна реализация MPI (WMPI 1.5 для Windows NT, 2000), обеспечивающая полную поддержку многопоточности. Но основным недостатком данного алгоритма является, все же, наличие большого числа коротких транзакций, что малоэффективно для систем со сравнительно высокой латентностью каналов связи, когда серия коротких сообщений передается медленнее, чем одного длинное сообщение. В частности, такая ситуация наблюдается в компьютерной сети Fast Ethernet при работе с пакетом WMPI, использующим протокол TCP/IP. Продемонстрируем эту ситуацию, сравнив время передачи одного сообщения из N элементов с временем передачи N сообщений из одного элемента. Примем допущение о том, что время передачи сообщения tn(L) линейно зависит от размера сообщения L, измеряемого в условных элементах [8]. В данном случае условным элементом является блок данных об узле. Тогда имеет место формула: — время на установку соединения (латентность, которая, в общем случае, также зависит от размера сообщения); t,., — время передачи одного элемента. При достаточно большой величине N можно считать, что tfl(N) « №эл. Получим следующее соотношение: Легко видеть, что при любом ЦІ), отличном от нуля, передача N сообщений по одному элементу всегда требует больше времени, чем передача одного сообщения из N элементов. То есть эффективность передачи одного элемента сообщения растет с увеличением длины сообщения. Это подтверждается Очевидно, что вышеуказанный алгоритм обладает «нижним» порогом эффективности, когда время tj на обработку одного узла сравнимо со временем tn(l) на передачу короткого сообщения, содержащего блок необходимых данных об этом узле. В случаях, когда ti tn(l), время выполнения итерации перестает зависеть от ti и эффективность падает. Существенно влияет на эффективность алгоритма и число используемых Процессоров, в зависимости от которого изменяются количество и объем пере 62 сылок. В работе [21] приведен график эффективности распараллеливания, построенный на основании экспериментов, проведенных в системе Parsytec СС. Вызывает существенные возражения тот факт, что авторы [21] приняли за 100% эффективность, полученную при использовании четырех процессоров, объясняя это тем, что расчет на меньшем числе процессоров неэффективен из-за недостатка оперативной памяти. Если бы причина заключалась только в этом, то, при декларируемой почти 100-процентной эффективности балансировки, с увеличением числа процессоров от одного до двух эффективность должна была расти, поскольку используемый объем памяти на каждом из процессоров уменьшался. Однако на приведенном в работе [21] графике при переходе от одного процессора к двум наблюдается резкое снижение эффективности приблизительно на 27%. Далее эффективность действительно (на интервале от двух до четырех процессоров) возрастает на 17%, после чего относительно стабилизируется на уровне, принятом авторами за 100%. По нашему мнению, это можно объяснить следующим образом.

Одномашинный имитатор Power XPlorer

Рассмотрим существующие аналоги. Автору известны два варианта одномашинного имитатора системы Power XPlorer, разработанные кандидатом химических наук, доцентом А.С. Очеретовым. Имитаторы реализованы в соответствии с принципом частичной имитации и пригодны, преимущественно, для учебных и отладочных целей. Первый имитатор предназначен для работы под управлением MS-DOS, второй — Microsoft Windows. Имитируются простейшие средства терминального ввода/вывода, функции AbortServer, GET_ROOT, ConnectLink, SendLink, RecvLink. Отслеживаются ошибочные ситуации, связанные с передачей данных: работа с несуществующим соединением, несовпадение длин передаваемого и принимаемого сообщений и другие.

В первом имитаторе текст параллельной программы проходит обработку специальным препроцессором, создающим множество копий текста главной функции main, которые вызываются управляющим модулем (диспетчером) имитатора. Данные копии периодически обращаются к специальной функции, выполняющей связь с управляющим модулем и обеспечивающей имитацию одновременности исполнения. Бесспорными достоинствами первого имитатора являются: а) возможность его использования даже на самых старых компьютерах с процессором 80286; б) возможность отлаживать программу непосредственно в среде Turbo С 1.0. Однако существуют и недостатки: а) при работе с MS-DOS (Turbo С 1.0 работает в реальном режиме) раз мер доступной памяти ограничен 640 килобайтами, что не позволяет отлажи вать серьезные программы с помощью данного имитатора; б) процедуры подготовки и компиляции параллельной программы, пред назначенной для работы с имитатором, несколько усложнены; в) предоставляемых имитатором отладочных возможностей (вывод трас сировочных сообщений) не всегда достаточно, отсутствует прямая возмож ность направить отладочную информацию в файл отчета; г) достаточно строги ограничения, накладываемые на текст исходной па раллельной программы (размещение всех модулей в одном файле; переменные, объявленные на уровне файла, разрешается использовать только в подпро граммах; все определения структур и типов должны размещаться в отдельном файле заголовков). Второй имитатор (для среды Microsoft Windows) обладает приблизительно теми же возможностями, что и первый. Ограничения на объем используемой памяти, фактически, сняты. Отладочные возможности несколько улучшены — появились средства отображения состояния («прием», «передача», «работа») имитируемых процессоров, но данная информация не конкретизируется, например, не указываются идентификаторы процессоров, с которыми осуществляется взаимодействие. По нашему мнению, набор функций, подлежащих имитации, должен быть расширен. Например, при решении многих задач используются функции ожидания приема данных Select и SelectList, которые позволяют поднять эффективность распараллеливания, сглаживая «неравномерности» выполнения программы на различных процессорах. Находит применение и функция порождения процессов StartThread. Желательно расширить возможности диагно-стировки ошибок путем ведения журнала подробных регистрационных сообщений о выполнении имитируемых функций, а также графического отображения процессов установления соединений и передачи данных. Разработаем одномашинный имитатор Power XPlorer, предназначенный для работы в среде Microsoft Windows на IBM - совместимых компьютерах. Учитывая предполагаемое использование имитатора в учебных и отладочных целях, следует исходить из следующих основных условий: а) работоспособности при разумных минимальных требованиях к аппа ратному и программному обеспечению; б) простоты использования; в) диагностировки максимально возможного числа ошибок, связанных с параллельным программированием; г) наличия средств мониторинга, облегчающих отладку параллельных программ (ведение журнала регистрационных записей о выполнении обменов, графическое отображение потоков данных между процессорами). Будем ориентироваться на работу с многозадачной операционной оболочкой Microsoft Windows 3.11, работоспособной даже на компьютере, обладающем процессором 80386SX и 4 Мб оперативной памяти. Основным средством программирования выберем компиляторы семейства Borland C++, способные генерировать 16-разрядные исполняемые файлы для среды Windows. Используем принцип частичной имитации, поскольку, как уже было сказано, полная для учебных и отладочных целей не является необходимой. Рассмотрим имитацию основных компонентов системы Power XPlorer: 1. Учитывая требование простоты использования, при имитации интерфейса ограничимся элементарным вводом с клавиатуры и «телетайпным» выводом, которые в языке С реализуются вызовами функций scanf и printf. Пусть эти операции осуществляются в окне программы - диспетчера. Соответственно, все программы, которые будут работать на имитируемых процессорах, должны иметь возможность посылать данные для вывода на экран (printf) программе -диспетчеру и принимать от нее введенные данные (scanf). 2. Для имитация наличия N процессоров используем N запущенных приложений. Подход, связанный с запуском N потоков одной программы неприменим по причине отсутствия в 16-битной системе Windows 3.11 понятия потока, появившегося лишь с 32-разрядными версиями Microsoft Windows. 3. При имитации взаимодействия процессоров применим стандартный интерфейс DDE, поддерживаемый не только в Windows 3.11 (в расширенном режиме), но и в последующих версиях Microsoft Windows. Два приложения могут установить друг с другом DDE - диалог, в котором одно приложение выступает в роли сервера, а другое — клиента. Сервер может обслуживать множество клиентов, а каждый клиент может работать с множеством серверов. Приложение - клиент может посылать приложению - серверу транзакции (элементарные запросы данных или обслуживания). Сервер обрабатывает транзакцию (или отказывает в обработке) и сообщает результат клиенту. 4. Выберем для имитации следующие основные функции параллельного языка С среды Embedded Parix: а) установления соединения (ConnectLink); б) синхронных приема и передачи данных (RecvLink, SendLink); в) получения информации о конфигурации системы (GETROOT); г) ожидания приема данных (Select, SelectList); д) порождения процессов (StartThread); е) аварийного завершения работы (AbortServer). Указанный набор функций вполне достаточен для создания полноценных параллельных приложений. Заметим, что поскольку в Windows 3.11 отсутствует понятие потока, смысл функции Starthread несколько изменен: вместо запуска потока, связанного с некоторой процедурой текущей программы, запускается внешняя программа, предназначенное для работы с имитатором. Соответственно, скорректирован список параметров вызова функции StartThread.

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

При запуске приложение - диспетчер, которое для краткости будем называть просто диспетчером, запрашивает у пользователя имя исполняемого файла программы, предназначенной для работы под управлением имитатора. Это обычная параллельная программа, написанная с использованием специальных функций Embedded Parix (ЕРХ), незначительно скорректированная с учетом специфики работы с имитатором [56] и скомпилированная с использованием его библиотеки. Далее запрашиваются размеры процессорной кладки имитируемой системы по X, Y, Z и режим работы (обычный или отладочный; с визуализацией потоков данных или без таковой).

Рекомендации по применению результатов работы в САПР энергетических предприятий и объектов городской застройки

Предполагается использование разработанного комплекса программ в качестве подсистемы САПР, осуществляющей автоматизированную оценку предполагаемых уровней загрязнений для различных проектных вариантов. Задача подсистемы состоит в генерации данных об уровнях загрязнений в контрольных точках, на основании которых вычисляется один из частичных критериев, входящих в состав общей целевой функции и/или системы ограничений задачи оптимального проектирования. Таким критерием обычно является максимальный из рассчитанных уровней концентрации загрязнителей. Однако может использоваться и несколько более сложный критерий, определяемый следующим образом: где wis — нормированный вес і-й контрольной точки в s-й момент времени (wis е [0; 1]); rk — нормированная степень опасности k-го загрязнителя (гк є [0; 1]); Pisk — уровень загрязненности среды в і-й точке в s-й момент времени по k-му загрязнителю.

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

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

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

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

Предполагается итерационная процедура поиска оптимального решения указанных задач, которую мы кратко рассмотрим на примере задачи о выборе места размещения ТЭС. Первым шагом является выбор первоначального варианта размещения в точке Х0, который приблизительно соответствует заданным требованиям. Такой вариант осуществляется с учетом существующих строительных и санитарных норм и правил, а также других нормативных документов [см., например, 15, 47], с учетом розы ветров, рельефа местности, наличия источников водоснабжения и многих других значимых факторов [47].

Далее целесообразно провести точную оценку текущего варианта размещения на соответствие предполагаемых уровней загрязнений экологическим нормам. По специальным методикам [см., например, 43] определяются объемы выбросов загрязнителей из дымовой трубы. Эти данные, вместе с информацией о конфигурации расчетной области, о типичных метеоусловиях, о расположении предполагаемых источников загрязнений, о возможных химических реакциях, вводятся в разработанный программный комплекс моделирования распространения загрязнений. Проводится численный эксперимент, по результатам которого вычисляются критерии вида (4.19) или иные. Проверяется соответствие полученных значений системе ограничений, заданных в соответствии с нормативными документами. Если система ограничений не выполняется, то производится генерация нового варианта размещения Хт+ь например, путем сдвига в направлении вектора F: где h — коэффициент сдвига, Sk — предельно допустимый уровень загрязненности по k-му загрязнителю, Ск — концентрация k-го загрязнителя. Далее осуществляется возврат на этап оценки варианта. Такая процедура может быть применена в САПР ТЭС.

В данной главе осуществлено численное моделирование продессов рас пространения загрязнений в воздушном бассейне большого города (перекресток улиц Cromwell Road и Queens Gate города Лондона) и в окрестности предприятия вблизи города Сканторп. Подробно описаны постановка и результаты экспериментов. Полученные результаты демонстрируют практическую значимость данной диссертационной работы.

Осуществлено сравнение полученных результатов с реальными данными. Показано, что при наличии достаточно точных исходных данных, полученные результаты: а) качественно вполне соответствуют действительности; б) количественно сортветствуют действительности в большинстве случаев.

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

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

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