Перейти к статье

 

Экспорт КЭ модели в формате Exodus II

Для экспорта конечно-элементной модели в виде файла в формате Exodus II следует:

Этим действиям соответствует команда:

export [genesis | mesh] '<filename>' [dimension {2 | 3}] [block <ID_list>] [cubitIDs] [XML '<filename>']

Аргументы genesis и mesh не являются обязательными; их наличие указывает на запись экспортного файла в формате Exodus II. Имя этого файла (<filename>) может быть выбрано любым. Если полный путь к месту хранения файла не указан, то файл записывается в текущую рабочую директорию.

Аргумент dimension также представляет собой опцию. Большинству типов элементов присуща определенная размерность, например, балочным элементам - 2D, а гексаэрам или тетраэдрам - 3D. Если описываемый аргумент в команде не указан, то для 2D-элементов в файл Exodus II будут записываться только координаты узлов x и y. При указании этого аргумента и размерности 3 будет производиться запись всех трех координат.

Опция block <ID_list> позволяет записать в экспортный файл не всю модель, а только ее часть, соответствующую введенным идентификаторам.

Если в команду включена опция XML и в модели имеются сборки, то в XML-файл с именем <filename>, создаваемый дополнительно при экспорте, записывается информация о связи между идентификаторами блоков и деталями сборки (см. подраздел Детали, сборки и метаданные).

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

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

Карты идентификаторов элементов и узлов

В файл Exodus II всегда записываются карты идентификаторов элементов и узлов. Номера, содержащиеся в карте идентификаторов узлов, используются для указания узлов в командной строке. Номера, записанные в карте идентификаторов элементов, являются глобальными идентификаторами четырехугольников, тетраэдров, гексаэдров и прочих элементов при их добавлении в блок элементов. Карты идентификаторов элементов и узлов служат для поиска нужного сеточного объекта, в том числе, при выполнении расчетов или при постпроцессорной обработке их результатов. Для управления формированием карт идентификаторов используется команда:

set IDmaps {on | off}

Для получения дополнительной информации о картах идентификаторов элементов и узлов следует обратиться к описанию формата Exodus.

Экспорт данных для параллельного построения сетки в pCAMAL

Приводимая ниже команда используется для формирования экспортного файла в формате Exodus II с данными о граничной сетке или внешней оболочке объемов, которые пригодны для генерации сетки протяжкой путем параллельного построения программой pCAMAL:

export parallel "<filename>" [block <ID_list>] [overwrite] [processor <number>]

Часть аргументов этой команды - те же, что и у команды export [genesis | mesh] (см. выше). Опция processor позволяет указать число процессоров при использовании pCAMAL, если оно заранее известно. При ее применении делается попытка сбалансировать число объемов, в которых будет генерироваться сетка по схеме Протяжка, с целью ее параллельного построения n процессорами. Управление числом объемов обеспечивается за счет преобразования варианта "много источников - одна цель" в ряд вариантов "один источник - одна цель". Для этого исходная поверхность и разбиваемый объем в направлении протяжки подразделяются на соответствующее число частей типа "один источник - одна цель". Подразумевается, что число элементов исходной поверхности (например, четырехугольников) много больше числа слоев образуемых объемных элементов.

Преобразование файлов Exodus II в формат ASCII

Файлы в формате Exodus II являются бинарными. Часто бывает необходимо просматривать их содержимое в виде текста. Для этого можно использовать программное средство ncdump, которое входит в состав библиотеки netCDF и доступно по адресу: http://www.unidata.ucar.edu.

В операционной системе UNIX обращение к утилите ncdump выглядит следующим образом:

ncdump filename.e > filename.txt

В этом случае берется файл filename.e в формате Exodus II и выводится его содержимое в виде ASCII-файла filename.txt.

Другая возможность преобразования бинарного файла Exodus II в формат ASCII - это применение утилиты exotxt, входящей в набор SEACAS (The Sandia Engineering Analysis Code Access System), который предназначен для поддержки конечно-элементного программного обеспечения, использующего формат Exodus.

Управление точностью вывода в Exodus II

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

set Exodus single precision [on | off]

Посредством этой команды осуществляется переключение между двойной и одинарной точностью представления чисел с плавающей точкой.

Формат Large Exodus

Формат Large Exodus позволяет сохранять модель в виде индивидуальных наборов данных объемом более 2 гигабайт:

set Large Exodus [on | OFF]

При выполнении этой команды с опцией on изменяется способ хранения данных в формате Exodus, а ассоциированный с ним файл netcdf переключается в режим "64-bit offset".