Турбулентное обтекание "горячего" одиночного препятствия с учетом инфракрасного
теплового излучения. Код оптимизирован для одноядерных и многоядерных процессоров.
Демонстрационная версия предоставляется AS IS. Автор просит не ждать многого от
демонстрационной версии для однопроцессорных систем. Здесь находятся лишь несколько
простых экспериментов, результаты расчета которых можно получить за приемлемое время от
получаса до полутора-двух часов. Расчетные блоки компилировались VC++ 2008 (автор выражает
благодарность С.В.Пекунову), оптимизированы для работы на одноядерных и многоядерных процессорах.
В состав демо-версии не входят:
многопроцессорные (кластерные) варианты системы;
все технологии, связанные с генерацией параллельного MPI-кода;
описания сложных многофакторных моделей и соответствующие сгенерированные расчетные блоки.
В ближайшее время автор планирует скомпоновать и выложить
еще несколько любопытных экспериментов, в которых рассчитывается
излучение и распространение примесей. Также обещает, что заработают все ссылки
на данной странице, которые пока заблокированы по причине банальной нехватки
времени на приведение в приличный вид некоторых модулей демо-версии.
Скачайте и распакуйте любой из файлов экспериментов в отдельный каталог.
Запустите программу Eko_3d.exe в каталоге. Расчет может
быть очень длительным (от получаса до полутора-двух часов), причем
программа почти не выводит на экран какой-либо текстовой информации
о ходе работы. Иными словами, программа не висит, а работает. Кстати, это
очень хорошая иллюстрация необходимости расчета таких задач на более мощных
многопроцессорных системах. 20 процессоров и расчет пройдет за 5-7 минут
вместо полутора часов.
По мере работы программы
в каталоге будут "расти" размеры файлов с расширениями .v, .k, .e и других -- это файлы
с результатами. Работу программы можно прервать, это просто приведет к аварийной
остановке эксперимента (кстати, его потом можно будет продолжить, т.к. состояние
расчета сохраняется, но не на каждой итерации, поэтому данную возможность применять
не рекомендуется). Лучше просто подождать.
Скачайте и распакуйте программу просмотра результатов
в отдельный каталог. Запустите программу Eviewer.exe.
Эта программа предназначена для просмотра результатов моделирования
образования и распространения загрязнений, сгенерированных системой AirEcology-P.
Соответственно, для ее успешной работы необходимы результаты расчета,
которые обычно хранятся в виде группы файлов "эксперимент.*". Среди
этих файлов особо выделим файл с расширением .cfg -- это файл описания
эксперимента.
В состав демонстрационной версии входит несколько таких экспериментов,
большинство из которых представлены под именем 2angle. Наиболее интересные
эксперименты повышенной трудоемкости представлены под именем goett1p.
После запуска программы следует нажать кнопку "Загрузить" и выбрать
один из файлов описания эксперимента с расширением .cfg. Если программа
сообщит об отсутствии кадров, то это скорее всего означает, что эксперимент
или не был завершен или даже не был начат. Если все проходит без сообщений,
то можно начинать работу. На поле отображаются распределения полей переменных
в векторной или скалярной (цветовой) форме. В выпадающем списке рядом с кнопкой
"Загрузить" можно выбрать переменную, ряд кнопок под "Загрузить" предназначен
для перехода между "срезами" трехмерной расчетной области в различных
проекциях. Под выпадающим списком присутствуют кнопки пошагового просмотра
результатов, анимации результатов всего эксперимента. Кнопка со знаком "+" позволяет вводить новые переменные, определяя их как
функции от уже имеющихся переменных. Два "трекера" в центре позволяют переходить между отдельными кадрами
результатов и менять масштаб векторов скорости. Два "трекера" справа позволяют усекать диапазон просмотра значений
скалярных полей. Возможно масштабирование полей ("zoom"). Достаточно "очертить" (удерживая
левую кнопку мыши) рамку детализации (на любой из трех проекций). Возврат
к первоначальному масштабу -- щелчок правой кнопкой мыши.
Скачайте и распакуйте в отдельный каталог генератор фрагментов программы
расчетного блока (прочитать о генераторе подробнее).
Для работы понадобится MSXML 2.6
и выше. Обычно он уже есть в составе MS Windows/MS Office.
Запустите программу Automodeling.exe. Появляется окно редактирования моделей,
в которое можно "перетащить" элементы модели из окна "Классы" и установить между ними связи.
Дайте команду Файл/Открыть, зайдите в подкаталог
Examples, выберите один из xml-файлов с описаниями моделей:
EcologyExprA_KE_RNG_T.xml. Это описание модели для одного из
экспериментов демонстрационной версии, а именно -- турбулентного
обтекания "горячего" одиночного препятствия. Нажмите F9 для запуска
процесса генерации. После проверки модели, устранения избыточных деклараций,
синтаксических преобразований и дополнений будет сгенерирован один из
модулей расчетного блока (его текст на языке C появится в окне программы).
Скомпилировать его не удастся, т.к. прочие модули расчетного блока в демо-версию не входят. Но можно убедиться, что работает.
EcologyGoettSO2RadDrops.xml. Это описание очень серьезной
многофазной модели (капельные и газообразные загрязнители, учитываются
конденсация, испарение, излучение, распространение и поглощение SO2) для
оценки реальной экологической ситуации (имеют место выбросы загрязнителей
автотранспортом) на улице
Göttinger Straße, Ганновер, Германия.
Нажмите F9 для запуска процесса генерации. Также появится текст расчетного
файла на языке C.
System\System.xml. Это описание процесса решения системы из двух
обыкновенных дифференциальных уравнений методом Эйлера. В меню
"Генерация\Язык конкретизации" выберите нужный язык конечного кода,
нажмите F9. Полученный файл можно скомпилировать и запустить -- он
работоспособен, только потребует наличия файла SMap.map -- его можно
найти в том же подкаталоге System.
Это не очень серьезный пример, зато полностью работоспособный.
Manip.xml. Этот пример потребует установленной на этом же компьютере
системы MATLAB 6.5 и выше. Нажмите F9, затем Yes/Да (если у Вас есть MATLAB).
По кинематической модели манипулятора робота генерируется расчетный
M-файл, находящий уравнения связи координат манипулятора, который можно
исполнить и получить соответствующие уравнения.
Дополнительная информация о генераторе расчетного блока
Это подсистема автоматизированной генерации расчетных блоков
для программы AirEcology-P. Также существует в виде отдельного
программного продукта PGEN++.
Подсистема представляет интеллектуальный интерфейс, позволяющий
генерировать расчетный блок по описанию математической модели
образования и распространения загрязнений. Используется авторская технология
объектно-событийных моделей порождения программ. Модели могут
быть "самодостраиваемыми", т.е. способны разворачивать некоторые
свои декларативные фрагменты (т.е. фактически упоминания о необходимости
учесть тот или иной фактор) в конкретные части модели.
Подсистема написана на Lazarus, использует PHP (порождение),
GNU Prolog (дедуктивный вывод фрагментов модели, трансформации),
SNOBOL (перевод с обобщенного языка на конкретные для некоторых моделей).