продукт
ELCUT Data Builder создает файл данных задачи по командам из скрипта .qfd. В скрипте задают свойства материалов, источники поля и граничные условия. Для работы программы на компьютере должен быть установлен ELCUT.
ELCUT Data Builder можно запустить отдельно или вызвать из ELCUT Problem Builder командой dataBuilder.
Программа написана на Python. Исходный код, готовая программа и полное описание в формате PDF доступны в разделе загрузки.
ELCUT Data Builder можно запускать с параметрами командной строки или без них:
elcut_data_builder.exe [/h] [filepath]
/h – выводит справку по запуску программы и командам скрипта.
filepath – путь к скрипту .qfd, который нужно выполнить.
При запуске elcut_data_builder.exe без параметров открывается окно выбора скрипта.
Ход выполнения скрипта записывается в журнал elcut_data_builder.log.
Скрипт ELCUT Data Builder (.qfd) – это текстовый файл в кодировке UTF-8. Команды записываются в формате JSON Lines: по одному JSON-объекту в каждой непустой строке.
Версия формата скрипта – 1.1. Сначала укажите версию командой version, затем выберите тип задачи командой analysis.
Пример скрипта для задачи электростатики:
{"version":"1.1"}
{"analysis":"es"}
{"blockLabel":{"name":"B_Diel","permittivity":4}}
{"edgeLabel":{"name":"E_Gnd","potential":0}}
{"save":"example.des"}
Команда save сохраняет данные в файл ELCUT. Укажите расширение, соответствующее типу задачи, как в таблице ниже.
Значение команды analysis определяет тип задачи. Параметры меток и примеры для каждого типа задачи приведены в полном описании (PDF).
| Код | Тип задачи | Расширение файла данных |
|---|---|---|
ms |
Магнитостатика и нестационарное магнитное поле | .dms |
he |
Магнитное поле переменных токов | .dhe |
es |
Электростатика | .des |
dc |
Электрическое поле постоянных токов | .dcf |
ec |
Электрическое поле переменных токов | .dec |
tv |
Нестационарное электрическое поле | .dtv |
sa |
Механические напряжения | .dsa |
sht |
Стационарная теплопередача | .dht |
tht |
Нестационарная теплопередача | .dht |
Свойства материалов и источники поля задаются в метках блоков, а граничные условия и сосредоточенные источники – в метках ребер и вершин. Для этого служат три команды:
{"blockLabel":{"name":"LabelName", "...":"..."}}
{"edgeLabel":{"name":"LabelName", "...":"..."}}
{"vertexLabel":{"name":"LabelName", "...":"..."}}
В поле name укажите имя метки. Остальные параметры зависят от типа задачи, выбранного командой analysis. Например, в задаче электростатики для блока можно задать диэлектрическую проницаемость, а для ребра – электрический потенциал.
Каждую метку из геометрической модели нужно описать и в скрипте данных .qfd. Если для метки не нужны физические свойства, укажите только ее имя:
{"blockLabel":{"name":"B_Empty"}}
В параметрах, которые поддерживают формулы, вместо числа можно указать JSON-объект с полем expr:
{"expr":"формула ELCUT"}
ELCUT Data Builder проверяет, что поле expr содержит непустую строку. Синтаксис самой формулы проверяет ELCUT.