ПРОГРАММА "GEOM VIEW"
И ОСОБЕННОСТИ ПРИМЕНЕНИЯ
Исследование гидродинамики сложных систем, по крайней мере в атомной промышленности, требует применения сложных и достаточно громоздких кодов "Best estimate" ("Улучшенной оценки"), таких как Relap, Athlet и пр. По отношению к большим объектам (как, например, реакторная установка) процесс работы с этими кодами обычно разделяется на несколько этапов: сначала создается "базовая" модель, включающая в себя модели систем и оборудования, и далее, используя разработанную "базовую" модель, моделируются аварийные и переходные режимы. Результаты таких расчетов позволяют оценить состояние моделируемого объекта в исследованном режиме в каждый момент времени.
Из сказанного выше видно, что львиная доля работы расчетчика приходиться на создание "базовой" модели, и тратиться в основном на работу с чертежами, документацией по оборудованию и пр. Кроме того, приходится организовывать самопроверку проведением тестовых расчетов и пр. Это естественно: ошибка на этом этапе может поставить крест на всех выполненных (а порой и уже сданных :-)) работах.
Основным элементом практически любой гидравлической системы является трубопровод. Это может быть труба первого или второго контура, трубопровод САОР (САОЗ), или СПиР. Главное - в гидравлической системе труб достаточно много, а ведь модель каждой трубы включает в себя описание геометрии и местных сопротивлений. Кроме того, ее надо разбить на элементы разностной схемы - ноды. Вот так и возникает желание автоматизировать этот процесс, чтобы, во-первых, облегчить работу по созданию модели и, во-вторых, снизить количество ошибок при моделировании.
Успешная попытка решить эту проблему (по крайней мере, о которой я знаю) принадлежит А.М. Москалеву и С.С. Пылеву, в те времена, когда они работали в одной лаборатории Курчатовского института. Ну а поскольку в состав ее соавторов влились А.Ф. Финякин и А.Е. Доморадов, эта программа попала в к нам в лабораторию. Написанная программа была названа "GEOM", и позволяла достаточно просто рассчитать местные сопротивления для произвольной трубы и автоматически сгенерировать модель трубы для кода Athlet. Здесь надо остановиться на этой программе поподробнее, поскольку она и стала "движителем" моих потуг в создании GEOM VIEW.
Идея GEOM проста, как и все гениальное. Любая труба это последовательность типовых участков, в основном трех типов: прямой участок, поворот (гиб) и изменение сечения (конфузор/диффузор). Поэтому в текстовом файле такую трубу можно описать более-менее "человеческим" языком как последовательность участков, используя минимальную информацию. Для описания прямого участка в текстовом файле делается, например, такая запись:
1 | признак что участок - прямая труба |
0.7520 0.00 0.001 0 1.7 | последовательно введены: диаметр трубы, площадь (если 0, то считается, что труба круглого сечения) координата местного сопротивления (если меньше 0 то считается что местного сопротивления на участке нет) и величина сопротивления |
6.9210 -90.0 4.3500 | последовательно введены: длина участка, угол наклона к горизонту, высотная отметка начала участка (вводится и играет роль только для первого участка трубы) |
С поворотом (гибом или отводом) дело обстоит немного сложнее - надо определить ориентацию гиба в пространстве. Для этого достаточно знать два угла: угол на который поворачивается трубопровод (на Рис.1 это угол b) и угол к горизонту плоскости, в которой делается поворот (на Рис.1 это угол a).
Рис. 1. Ориентация поворота трубы (гиба) в пространстве
Теперь можно описать поворот, который в "формате GEOM" может выглядеть следующим образом:
2 | признак что участок - гиб |
0.7520 0.00 | последовательно введены: диаметр трубы и площадь (если 0, то считается, что труба круглого сечения) |
-45.0 90.0 1.0 1.0e-04 | последовательно введены: поворот в плоскости (угол ) наклон плоскости к горизонту (угол ) радиус гиба и шероховатость трубы |
Плавное изменение сечения трубы в "формате GEOM" может выглядеть так:
11 | признак что участок - конфузор/диффузор |
0.752 0.600 0.00 | последовательно введены: диаметр входа участка, диаметр выхода участка и площадь |
0.5 -10.0 0.00 | последовательно введены: длина участка, угол наклона к горизонту, высотная отметка начала участка (вводится и играет роль только для первого участка трубы) |
Таким образом, описав в текстовом файле трубопровод как последовательность участков можно было, используя программу GEOM получить на выходе модель этой же трубы в формате исходных данных для кода Athlet, причем помимо того что переписывалась геометрия (в формат кода Athlet) рассчитывались и записывались местные сопротивления, обусловленные изменением направления (сопротивление поворота потока в гибе) и величины скорости потока (в конфузоре или диффузоре) ну и, естественно, местные сопротивления заданные на прямых участках трубы.
Визуализация
Итак, была разработана программа, позволяющая моделировать трубопроводы для кода Athlet - рассчитывающая геометрию трубопровода и местные сопротивления по длине трубы. Когда я начал юзать эту программу, первое очевидное (а на тот момент и единственное) неудобство было связано с тем, что трубу приходилось задавать в текстовом файле. Выглядело это примерно так. Сидишь, слева компьютер справа чертеж. Ведешь пальчиком по чертежу и вбиваешь цифири. Правильно вбил или неправильно, верно нашел углы для гибов или ошибся - все это было скрыто, так что в некотором роде трубопровод стоился "вслепую". Чтобы ликвидировать такое положение, я и написал первую версию программы GEOM VIEW.
Первая версия программы позволяла только готовить исходные данные для программы GEOM. Однако уже это было существенным плюсом, поскольку банальные ошибки связанные с неправильным вводом данных были практически исключены - ведь трубопровод строился прямо на экране перед пользователем, в любом нужном ракурсе.
На "втором этапе" GEOM VIEW обрел "независимость" - в нее был включен модуль для расчета сопротивления и формирования моделей для кодов Athlet и Projekt. Таким образом, GEOM VIEW стал самостоятельным инструментом, позволяющим генерировать модели трубопроводов.
Кроме того, "побочным эффектом" одной программы, о которой я расскажу как-нибудь попозже, стал алгоритм "авторазбивки" - теперь пользователь мог задать ориентировочный размер нода и программа осуществляла разбивку модели самостоятельно.
РАБОТА С GEOM VIEW
По сути, методтика формирования трубопровода в GEOM VIEW и GEOM одинакова. Моделируемая труба представляется в виде последовательности элементов трех типов - прямого участка, гиба и изменения сечения. Наиболее существенное отличие - отображение моделируемой трубы. В Качестве примера на Рис.2 показана модель всасывающего трубопровода ГЦН РБМК.
Для первого участка должна быть обязательно задана высотная отметка. Для остальных участков она рассчитывается автоматически. Новый участок создается кнопками:
Новый участок - прямая труба | |
Новый участок - гиб | |
Новый участок -конфузор или диффузор. |
На рис. 2 видно, что один из участков выделяется коричневым цветом. Параметры такого "выделенного" участка (диаметр, угол и пр.) отображаются в верхней таблице, где их можно изменить. Выделить другие участки можно двойным щелчком мышки на нужном участке или выбрав участок из списка. Удалить выделенный участок можно кнопкой .
На панели "Формирование моделей" две кнопки - формирование моделей для кодов Athlet и Projekt при этом надо не забыть уточнить "характерный" размер нода.
Рис. 2. Модель напорного трубопровода ГЦН РБМК
Для выделенного участка в нижней таблице показано сопротивление. Кнопка вычисляет общие параметры - полное сопротивление трубопровода отнесенное к квадрату площади, а так же длину трубопровода.
Рис. 3. Модель напорного трубопровода ГЦН РБМК
Модель трубопровода представленного на Рис. 2 и Рис. 3 в "формате GEOM" представлена здесь. Как результат работы с GEOM VIEW та же модель, но для кодов Athlet и Projekt