Alex Bausk on engineering and unrelated learnings

Житїє

CalculiX II. Маленький комментарий по вводу и выводу

leave a comment »

Начало серии, требуемые умения смотри CalculiX I.

Требуемые материалы:
[1] – Установленный CalculiX.
[2] – Русский перевод мануала Getting started with CalculiX.

Предполагается, что по мануалу [2] мы разобрались с базовыми функциями построения модели в CalculiX.
Интерфейс препроцессора CGX, безусловно, для инженерной работы чудовищен. Его надо будет улучшать либо заменой на Gmsh (см. файлы на dwg.ru), либо, что было бы идеально, дополнить его собственными разработками, которые использовали бы самое естественное решение для моделирования расчетной схемы – имеющуюся у пользователя CAD-программу (AutoCAD или его клон).

Интереснее разобраться с тем, что из себя представляет солвер CalculiX (CCX) и препроцессор (CGX) с точки зрения ввода-вывода.

Для пользовательского вывода используется команда

save

Она позволяет сохранять расчётную модель. Она не требует имени файла в случае работы с новой моделью, поскольку это имя мы уже задавали, когда входили в препроцессор CGX в режиме построения модели:

I:\_CALCULIX\CJobs>cgx -b test.fdb
CalculiX for Windows standard version: 1.8 build 002
on a WinXP machine, nodename DEVONSHIRE, release 5, version 5.1 Service Pack 2 2
600, machine 600
parameters:3 arguments:2
 ERROR: The input file "test.fdb" could not be opened.

GL_MAX_EVAL_ORDER:40

Препроцессор не смог найти файл test.fdb, поэтому он сохранит нашу модель в новый файл по команде save.

Разоберемся с рабочей средой CalculiX. Этот небольшой экскурс нужен, чтобы понять, как организовать передачу на выполнение данных расчетной схемы из внешних программ (например, препроцессора, который желательно написать).

Окно командной строки на заднем плане принимает все команды, направленные в проепроцессор CGX. В случае, когда мы только открыли CalxuliX по иконке “CalculiX Command”, никакой программы на самом деле не загружается. На самом деле обрабатывается командный файл %CALCULIX_ROOT%\сommon\site\cmdStartup.bat, в котором прописаны значения необходимых переменных, только и всего. Когда из окна CalculiX мы вызываем команды ccx и cgx, их на выполнение принимает оболочка ОС, как при работе с обычной консолью, выхываемой по команде cmd в Windows.
Эти команды запускают на выполнение исполняемые файлы солвера CCX и препроцессора CGX с требуемыми параметрами – все как в большинстве программ академической разработки.
Короче говоря, задача пользовательского препроцессора, если мы соберемся его создавать, крайне проста – сформировать на базе модели, построенной в CAD-программе, исполняемый файл, и передать его на выполнение исполняемому файлу CalculiX.

Ещё препроцессор должен уметь генерировать разные описания расчетной схемы и нагрузок и потом собирать результаты нескольких расчетов в удобную для обработки инженером форму. Например, это нужно для вариантного проектирования, моделирования последовательности возведения, разных расчетных сочетаний – того, чем сильны специализированные пакеты класса “Лиры”.
Не знаю еще пока, как в CalculiX решается вопрос с несколькими загружениями и особенно коэффициентами по нагрузке.

Тема следующего поста: формат текстовых файлов CalculiX и продолжение мечтаний о создании стоящего препроцессора.

Written by Alexander Bausk

June 20, 2009 at 10:00 am

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: