Параметрическое моделирование – одна из самых активно развивающихся и громкоговорящих тем в области автоматизированного проектирования. Но зачастую параметрический ввод данных не используют для создания аналитических (расчётных) моделей зданий и сооружений. Связка SOFiSTiK и Grasshopper позволяет использовать параметрический ввод для создания комплексных параметрических расчётных моделей, подготовить их для МКЭ анализа и впоследствии рассчитать конструкции. В статье описаны основные принципы и возможности использования платформы Grasshopper в качестве полного или частичного препроцессора для подготовки и создания расчётной модели в ПК SOFiSTiK для различных задач и типов конструкций.
Ниже описаны принципиальные шаги по работе в связке SOFiSTiK и Grasshopper. Они включают обзор рабочего процесса и возможностей использования нейтрального BIM формата для ПК SOFiSTiK.
Для освоения этого процесса пользователям предварительно требуются базовые знания ПК SOFiSTiK. Предполагается, что перед изучением данного текста читатель уже способен создать простую расчётную модель в ПК SOFiSTiK, используя текстовый ввод на встроенном языке программирования CADINP. CADINP доступен для пользователей уже более чем 30 лет и позволяет создать данные с помощью различных ресурсов, в том числе и ПК SOFiSTiK.
1. ПК SOFiSTiK возможности и структура
ПК SOFiSTiK является универсальным комплексом по расчету любых строительных конструкций: зданий и промышленных сооружений, мостов и пролётных строений, оснований и фундаментов и т. д. Более того, в SOFiSTiK доступны широкие возможности по МКЭ анализу, основные из которых:- динамические расчёты (сейсмика, ударные, подвижные нагрузки);
- анализ геометрической, конструктивной и физической нелинейности;
- расчёт стадий возведения (усадка/ползучесть, прогрессирующее разрушение, вторичные эффекты и т. д.);
- моделирование и расчёт преднапряжения;
- термодинамические расчёты, анализ фильтрации;
- CFD анализ (моделирование аэродинамической трубы);
- расчёт системы «Грунт-Сооружение», геотехнические расчёты и т. д.
В качестве препроцессора пользователь может выбрать между модулем SOFiPLUS(-X) (надстройкой графического интерфейса на основе AutoCAD), FEA расширением для Autodesk Revit, Rhinoceros интерфейсом или текстовым вводом через интерфейс Teddy. Каждый из этих препроцессоров имеет свои преимущества, а также может использоваться в комбинации с другими препроцессорами и контролироваться через SOFiSTiK Structural Desktop.
1.1 Teddy – CADINP
Наиболее продвинутым препроцессором ПК SOFiSTiK является ввод с помощью языка программирования CADINP. Это простой объектно-ориентированный язык программирования, который поставляется вместе с общими командами с переменными, циклами и выражениями. Предоставляемый текстовый редактор Teddy позволяет пользователю создать расчётную схему со всеми необходимыми исходными данными, а также контролировать все параметры и шаги расчётов. Кроме того, CADINP может использоваться как полнофункциональный инструмент создания и расчёта и как дополнительный инструмент корректировки данных/параметров расчёта совместно с любым из препроцессоров и интерфейсом SSD.Пользователь всегда может выбрать способ моделирования и анализа между текстовым редактором, электронными таблицами, языками программирования или средствами визуального программирования, такими как Grasshopper для Rhinoceros или Dynamo для Revit.
2. Rhinoceros
Rhinoceros является коммерческим программным обеспечением для компьютерной 3D-графики и автоматизированного проектирования. Геометрия Rhinoceros основана на математической модели NURBS, которая специализируется на создании математически точного изображения кривых и поверхностей произвольной формы (в отличие от приложений, которые применяют полигональные сетки).Grasshopper является графическим редактором алгоритмов для инструментов 3-D моделирования в Rhinoceros. Холст (для размещения визуального сценария) и лента являются двумя основными разделами приложения. Визуальный сценарий создает или использует данные в Rhinoceros, которые поддерживаются прямой передачей/ссылкой.
Grasshopper в среде Rhinoceros
3. Рабочий процесс использования SOFiSTiK в связке Rhinoceros
Интерфейс SOFiSTiK Rhinoceros является продолжением модели 3D NURBS Rhinoceros. Он предоставляет функционал для создания конечно-элементной модели и передачи данных из Rhinoceros в SOFiSTiK FEA для анализа. Аналитические свойства, такие как материал, сечения или граничные условия, могут быть назначены объектам Rhinoceros. Конечно-элементная модель может быть создана непосредственно в Rhinoceros через панель инструментов SOFiSTiK. Панель инструментов также обеспечивает доступ к программам SOFiSTiK, таким как SOFiSTiK Structural Desktop, Teddy, Animator и Wingraf.Интерфейс Rhinoceros включает функции для создания точек, линий, областей и связей для аналитической модели.
Вид Rhinoceros для КЭ сетки SOFiSTiK
Интерфейс Rhinoceros можно комбинировать/дополнять с помощью элементов Grasshopper. Элементы, созданные в Grasshopper, можно передать командой “bake” в Rhino (создать объект Rhino из объекта Grasshopper) и использовать в дальнейшем как объекты Rhinoceros (создание сетки + создание элементов в SOFiSTiK). Такие элементы типа “baked” передаются из Grasshopper в Rhinoceros в одном направлении, поэтому связь, образуемая между объектами, является разорванной. При внесении изменений в Grasshopper пользователь также должен повторить выполнение команды “bake” для обновления данных в модели. Чтобы поддерживать связь между параметризацией и анализом, рекомендуется прямой сценарий от Grasshopper до SOFiSTiK.
Компоненты Grasshopper
SOFiSTiK разработал компоненты для Grasshopper, которые можно бесплатно скачать и использовать. Компоненты публикуются в соответствии с лицензионным соглашением MIT, которое позволяет использовать программное обеспечение и в коммерческих случаях.Компоненты создают необходимые данные (текстовый файл на основе CADINP) в Grasshopper для генерации модели в SOFiSTiK. Более того, они поддерживаются путем создания входного файла, являющегося связью между Grasshopper и SOFiSTiK. Компоненты, включая инструкции и примеры, доступны по адресу https://github.com/SOFiSTiK.
Компоненты SOFiSTiK для Grasshopper
Доступны следующие компоненты:
Создать файл проекта | |
Создать оси геометрии | |
Создать нагрузки (номер случая загружения, нагрузки по площади, линии и в точке + исходные данные для модуля SOFiLOAD) | |
Создать структурные компоненты (плоскость, линия и точка + исходные данные для модуля SOFiMSHC) |
Эти компоненты создают данные CADINP на основе объектов Grasshopper (точка, площадь, линия) с заданными параметрами и значениями (например силой сосредоточенной нагрузки в виде вектора). Эти данные аналогичны использованию CADINP в качестве встроенного препроцессора в SOFiSTiK.
Использование компонентов SOFiSTiK для Grasshopper
4. Работа с интерфейсом взаимодействия
Поскольку интерфейс Rhinoceros или предоставляемые компоненты Grasshopper не содержат инструментов, необходимых для анализа и проектирования, то может и должен использоваться другой постпроцессор SOFiSTiK. Функциональная совместимость между приложениями зависит от происхождения модели, а также от процедуры генерации. Более того, данный интерфейс включает не весь необходимый функционал. Тем не менее, представленная методика разработана с учётом всех практических требований.Преимущества генерации открытых данных и множественных пользовательских интерфейсов заключаются в том, что работа может быть выполнена с помощью лучшего инструмента/приложения, зависящего от задачи.
Ниже представлены 7 шагов методики использования Rhinoceros, Grasshopper, SOFIPLUS и TEDDY.
Шаг 1. Кривые контура поверхности свободной формы создаются в Rhino3D. Сама поверхность создаётся в Grasshopper.
Шаг 4. сама расчётная модель (КЭ-сетка) создаётся напрямую в Rhinoceros.
5. Создание данных SOFiSTiK напрямую через Grasshopper
При создании нового проекта с помощью SOFiSTiK первичная информация о проекте определяется выбором соответствующего нормативного документа. Все библиотеки с базовой информацией (материалами, сечениями, системами преднапряжения) обычно определяются тоже в самом начале – за исключением выбранных препроцессоров. Данная информация обычно задаётся в SOFiSTiK Structural Desktop при создании нового проекта.5.1 Создание геометрии
Объекты (точки, линии и поверхности), заданные напрямую в Rhinoceros или Grasshopper, могут быть также распознаны как структурные элементы ПК SOFiSTiK. Данные для ПК SOFiSTiK могут быть сгенерированы как с помощью интерфейса Rhinoceros, так и напрямую через Grasshopper. Рабочий процесс при использовании Grasshopper включает компоненты SOFiSTiK, которые содержат входные данные для создания сетки конечных элементов. Пользователь также может создать необходимые данные путём ручного ввода скриптов/сценариев и программных кодов. Мануальный текстовый ввод (создание скриптов) позволяет пользователю иметь доступ к расширенному функционалу, включённому в ПК SOFiSTiK (CADINP).Данные SOFiSTiK, сгенерированные с помощью линий Rhinoceros компонентами и скриптом вручную
Внешние кривые, привязанные к оси и данным, созданным с помощью компонентов SOFiSTiK. Переменные (расположение опор), заданы вдоль оси
5.2 Нагрузки
Компоненты SOFiSTiK в Grasshopper обеспечивают простой способ использования преимуществ сложных геометрий для определения нагрузок. Точечные, поверхностные и линейные нагрузки могут быть размещены на элементах конструкции и изменены в случае изменения геометрии конструкции автоматически. Данные, определенные для нагрузок, также изменятся соответственно.Задание нагрузки на поверхность для элемента сложной области с помощью компонента нагрузки SOFiSTiK (см. 4.1)
5.3 Свойства поперечных сечений
Поперечные сечения для элементов балки можно выбрать из библиотеки сечений SOFiSTiK (в SOFiSTiK Structural Desktop), используя другие стандартные сечения (в SOFiSTiK Structural Desktop или с помощью скриптов (сценариев) CADINP) или определение сплошного или тонкостенного сечений пользователем. Сочетание нескольких программ AQUA также возможно. Пользователь может выбрать наиболее удобный способ, чтобы сделать определение доступным для SOFIMSHA/C до создания сетки. Поперечные сечения из других проектов, баз данных и библиотек тоже могут быть импортированы.Импорт поперечных сечений из другой базы данных
Толщина для поверхности, указанная в SOFiSTiK Structural Area component
6. SOFiSTiK Анализ и проектирование
Поскольку данные создаются и импортируются в SOFiSTiK Structural Desktop, пользователь может следовать стандартным рабочим процессам SOFiSTiK. Все шаблоны, скрипты практики, используемые в типичном рабочем процессе, являются действительными и годными к использованию и в данном случае.Параметрические данные из Grasshopper могут быть переданы в папку проекта и автоматически включены в SOFiSTiK (#include + filename ... это особенные команды SOFiSTiK Teddy), так что последние данные доступны в любое время. Следует помнить, что ответственность за обновление данных несет пользователь, особенно когда обновления не нужны. В Grasshopper папка для потоковой передачи данных является прямым определением. Копирование скриптов (сценариев) из предыдущих проектов также включает потоковую передачу данных в определенные папки/файлы (старые данные автоматически перезаписываются).
Геометрия модели определена в Grasshopper и импортирована в SOFiSTiK
7. Пример применения для балочного моста
Параметризация проекта и всего рабочего процесса может быть написана на заказ и настроена для различных уровней сложности и типов структур. Скрипты (сценарии) допускают динамические, мгновенные изменения, которые отражаются графически. Анализ и дизайн являются итеративным процессом. Более того, именно в этом и заключается преимущество повторяющихся задач и очень быстрой оценки вариантов дизайна.Разные страны имеют разные типовые или стандартные типы мостов. В приведенном ниже примере используется австралийский Australian PSC Super-T Girders.
Пользователь определяет вертикальную геометрию моста и опор как пунктов на этой оси.
Пользователь задаёт основную информацию о геометрии моста:
- Свес
- Толщина слоев асфальта
- Количество балок
- Длина балки в конце
- Зазор между балками (при опоре)
- Толщина плиты
- Предопределенный тип балки (вкл. геометрию + свойства поперечного сечения)
- Расстояние между балками
Визуализация расчетной модели с 4-пролетными / 8-балочными непрерывными надстройками Super-T, созданными на основе только данных, описанных ниже
Генерация данных в SOFiSTiK также может быть автоматизирована через Grasshopper. Здесь были представлены все данные предварительного напряжения, в том числе:
- Площадь и марка стали
- Напряжение для предварительного напряжения
- Этап конструкции для предварительного напряжения
- Случай загружения для предварительного напряжения
- Количество пучков для каждого слоя
- Слои пучков (расстояние от низа или вершины)
- Длина рукава для каждой группы пучков
Модель SOFiSTiK точно соответствует геометрии модели
Этапы строительства составлены в виде скрипта (сценария), который учитывает автоматически: прогон DL / предварительное напряжение / ползучесть и усадку / бетонирование плиты / асфальтовые слои / финальные ползучесть и усадку.
Напряжения бетона t=oo в верхнем/нижнем полотне сечения балки + в верхней части бетонной плиты
Автоматическая проверка производительности в соответствии со стандартом проектирования (Md/Mu)
ПК SOFiSTiK автоматически создает отчет по расчетам для документации (свойства модели, данные предварительного напряжения,…)
Общие рекомендации для параметризации моста
Существующие скрипты могут быть повторно использованы, обновлены и изменены. Полная доступная информация о геометрии предоставляет разработчику возможность использовать одни и те же точные данные для глобальных и локальных моделей анализа, для элементов балки, поверхностей или объемных элементов, просто, когда разработчик захочет провести структурный анализ. Пользователи также могут оптимизировать свои рабочие процессы, создавая компоненты, кластеры и шаблоны.Внешняя геометрия; геометрия считывается по оси моста
Мостовые конструкции параметризованы на внешней геометрической оси и реагируют на все изменения самой геометрической оси
Расчетные модели могут быть автоматизированы в соответствии с обновленной геометрией
Созданные данные могут соответствовать требованиям информационного моделирования, а исходные данные для анализа SOFiSTiK полностью основаны на решении пользователя