======Как создать новый решатель в новой оболочке?====== В данном руководстве описан процесс добавления в существующую модель FRUND нового решателя, сопоставленного какому-либо телу. =====Перед тем, как создать решатель===== Перед созданием нового решателя следует убедиться, что выполнены следующие требования: * У пользователя установлена новая версия пакета FRUND. * Пользователем подготовлена MBS((MBS --- multibody system, многотельная система.))-модель, которая успешно проходит этапы генерации и решения. Подготовка такой модели в настоящее время может быть произведена с помощью старой оболочки FRUND (//FSHELLXP//), в новой оболочке (//FSHELL//) соответствующий функционал отсутствует LOL. * Имеется CAD-модель тела, для которого требуется создать решатель. CAD-модель может быть подготовлена с помощью редактора трехмерной компьютерной графики или (в случае простых 3D-примитивов) [[how_to_create_new_solver_in_new_fshell#Создание CAD-моделей 3D-примитивов средствами оболочки|средствами оболочки]] //FSHELL//. CAD-модель должна быть представлена в одном из распространенных форматов: * //BREP// (файлы с расширением ''*.brep'', ''*.rle''), * //IGES// (''*.igs'', ''*.iges''), * //STEP// (''*.stp'', ''*.step''). =====Подготовительные действия===== - Запустить новую оболочку FRUND: __Пуск -> Все программы -> Frund -> FShell__.\\ {{:new_fshell_create_solver:new_fshell_after_launch.png|Окно новой оболочки (FShell) сразу после загрузки}} - Открыть в оболочке подготовленную модель FRUND: пункт меню __MBS -> Open model...__ или сочетание клавиш __Ctrl+O__, выбрать каталог с моделью и название модели.\\ {{:new_fshell_create_solver:new_fshell_model_opening.png|Диалог открытия новой модели}} \\ Вид окна оболочки после открытия модели: \\ {{:new_fshell_create_solver:new_fshell_after_model_opening.png?1024|Окно новой оболочки после открытия модели}} - Открыть //Model Explorer//: пункт меню __View -> Model Explorer__ или сочетание клавиш __Ctrl+Alt+L__. Появятся окно дерева элементов модели (//Model Explorer//) и окно свойств (//Properties//).\\ {{:new_fshell_create_solver:new_fshell_with_model_explorer_and_properties.png?1024|Окно новой оболочки с окном дерева элементов и окном свойств}} =====Создание и настройка нового решателя===== В качестве примера рассмотрим создание НДС((НДС --- напряженно-деформированное состояние.))-решателя для одного из рычагов подвески грузового автомобиля. - Создаем новый решатель: - В окне //Model Explorer// разворачиваем((В окне дерева элементов можно увидеть, какие дочерние элементы содержит тот или иной элемент, путем нажатия кнопки <<+>> перед наименованием элемента.)) группу элементов //Bodies of the model// (тела модели) и выбираем нужное тело. Выбранное тело будет подсвечено в окне редактирования модели.\\ {{:new_fshell_create_solver:new_fshell_some_body_selected.png?1024|Окно новой оболочки с выбранным телом "Рычаг подвески нижний передний левый"}} - Открываем контекстное меню((Контекстное меню можно открыть путем нажатия правой кнопки мыши (ПКМ) на нужном элементе.)) тела и выбираем пункт меню __Add solver__.\\ {{:new_fshell_create_solver:new_fshell_body_context_menu.png?1024|Контекстное меню тела в дереве элементов}} - В открывшемся окне редактирования решателей данного тела нажимаем кнопку __New__.\\ {{:new_fshell_create_solver:new_fshell_add_solver_dialog.png|Окно редактирования решателей тела перед нажатием кнопки "New"}} - В открывшемся окне создания нового решателя для данного тела вводим наименование создаваемого решателя и нажимаем кнопку __OK__.\\ {{:new_fshell_create_solver:new_fshell_create_new_solver_dialog.png|Окно создания нового решателя}} - Вновь появится окно редактирования решателей данного тела. В нем будет выбран только что созданный решатель и появится возможность редактирования его параметров. Выбираем тип решателя в параметре //Solvers//: //ST_Thermal// --- тепловой решатель, //ST_StressStrain// --- НДС-решатель.\\ {{:new_fshell_create_solver:new_fshell_add_solver_dialog_after_solver_creating.png|Выбор типа решателя в окне редактирования решателей}} - Нажимаем кнопку __OK__.\\ {{:new_fshell_create_solver:new_fshell_add_solver_dialog_press_ok.png|Окно редактирования решателей перед нажатием кнопки "OK"}} \\ Новый решатель создан. =====Отличительные особенности при создании теплового решателя===== =====Вспомогательные настройки===== =====Типы решателей и их параметры===== В настоящее время реализованы 2 типа решателей: - [[how_to_create_new_solver_in_new_fshell#Тепловой решатель|тепловой решатель]], - [[how_to_create_new_solver_in_new_fshell#НДС-решатель|НДС-решатель]]. Для всех специальных решателей характерны следующие наборы параметров: * общие параметры: * [[how_to_create_new_solver_in_new_fshell#Параметры сетки|параметры сетки]] (//Solver grid parameters//), * [[how_to_create_new_solver_in_new_fshell#Параметры интегрирования|параметры интегрирования]] (//Solver integration parameters//); * параметры, специфичные для каждого из специальных решателей: * параметры граничных условий (//Boundary conditions//), * специальные параметры (//Special solver parameters//). Все эти наборы параметров являются именованными (т.е. различаются в пределах пространства имен определенного набора параметров по уникальному имени). Посмотреть, какие наборы параметров созданы в модели //FRUND//, можно в окне дерева элементов модели: __Model Explorer -> Header -> Multiphysics -> __. {{:new_fshell_create_solver:new_fshell_multiphysics_parameters_group.png?1024|Наборы параметров специальных решателей}} ====Общие параметры специальных решателей==== ===Параметры сетки=== Следующие параметры относятся к параметрам сетки: - //BcMapperId// --- номер текущего //Mapper// (нумерация начинается с ''0''), - //BcMappers// --- список объектов //Mapper//, - //CAD file// --- наименование файла с CAD-моделью тела (файл в формате //BREP//, //IGES// или //STEP//), - //Grid file// --- наименование файла с сеточным представлением тела (файл с расширением ''*.rlc''), - //Grid step// --- шаг сетки (в миллиметрах, мм), - //Mirror geometry// --- признак, необходимо ли отражать CAD-модель тела (и его сеточное представление), - схема трансформации CAD-модели тела (и его сеточного представления) к ее (его) первоначальному положению в модели. ===Параметры интегрирования=== Следующие параметры относятся к параметрам интегрирования: - //Number of frames writed to disk// --- количество кадров, записываемое в файл с результатами расчета сетки, - //Time step// --- шаг интегрирования (в секундах, с). **Примечание:** Общее время интегрирования задается в настройках MBS-решателя (__Model Explorer -> Header -> Solver options -> Контекстное меню -> Edit solver settings__). {{:new_fshell_create_solver:new_fshell_solver_options_context_menu.png?1024|Контекстное меню MBS-решателя}} ====Тепловой решатель==== Тепловой решатель предназначен для расчета тепловых процессов, происходящих в твердом теле. ===Параметры граничных условий теплового решателя=== Существуют следующие типы граничных условий теплового решателя: - //Dirichlet boundary condition (temperature)// --- граничные условия первого рода (задача Дирихле). Параметры: - //Temperature// --- температура (в кельвинах, К); - //Neumann boundary condition (temperature flow)// --- граничные условия второго рода (задача Неймана). Параметры: - //NGPR// --- номер ГПР((ГПР --- гидро-пневматическая рессора.)), - //Termal flow// --- тепловой поток (в Вт/м^2); - //Heat emission// --- граничные условия третьего рода (задача Робена). Параметры: - //Environment temperature// --- температура окружающей среды (в кельвинах, К), - //Heat emission// --- коэффициент теплоотдачи (в Вт/{К*м^2}). ===Специальные параметры теплового решателя=== Следующие параметры относятся к специальным параметрам теплового решателя: - //Density// --- плотность (в кг/{м^3}), - //Heat capacity// --- теплоемкость (в {Дж}/К), - //Heat conduction// --- теплопроводность (в Вт/{К*м}), - //???// --- начальная температура тела (в кельвинах, К). ====НДС-решатель==== НДС-решатель предназначен для расчета напряженно-деформированного состояния тела. ===Параметры граничных условий НДС-решателя=== Существуют следующие типы граничных условий НДС-решателя: - //Stress Strain Boundary Force// --- к данной поверхности прикладывается некоторая сила и/или момент силы. Параметры: - //NSE// --- номер соединительного элемента, - //X// --- составляющая силы, действующая вдоль оси //Ox// (в ньютонах, Н), - //Xr// --- составляющая момента силы, действующего вдоль оси //Ox// (в Н*м), - //Y// --- составляющая силы, действующая вдоль оси //Oy// (в ньютонах, Н), - //Yr// --- составляющая момента силы, действующего вдоль оси //Oy// (в Н*м), - //Z// --- составляющая силы, действующая вдоль оси //Oz// (в ньютонах, Н), - //Zr// --- составляющая момента силы, действующего вдоль оси //Oz// (в Н*м); - //Stress Strain Boundary Sealing// --- данная поверхность считается закрепленной по некоторым степеням свободы. Параметры: - //X// --- признак, отсутствует ли поступательная степень свободы (движение вдоль оси //Ox//), - //Xr// --- признак, отсутствует ли вращательная степень свободы (вращение вокруг оси //Ox//), - //Y// --- признак, отсутствует ли поступательная степень свободы (движение вдоль оси //Oy//), - //Yr// --- признак, отсутствует ли вращательная степень свободы (вращение вокруг оси //Oy//), - //Z// --- признак, отсутствует ли поступательная степень свободы (движение вдоль оси //Oz//), - //Zr// --- признак, отсутствует ли вращательная степень свободы (вращение вокруг оси //Oz//); **Примечание:** значения признаков присутствия/отсутствия той или иной степени свободы интерпретируются следующим образом: отрицательные значения (например, ''-1'') соответствуют закрепленной степени свободы, положительные (например, ''1'') --- незакрепленной. ===Специальные параметры НДС-решателя=== Следующие параметры относятся к специальным параметрам НДС-решателя: - //Damping factor// --- **???** коэффициент демпфирования **???** (в ???), - //Elastic modulus// --- коэффициент упругости (в паскалях, Па). =====Создание CAD-моделей 3D-примитивов средствами оболочки===== В оболочке //FShell// существует возможность создания CAD-моделей следующих примитивов: * [[how_to_create_new_solver_in_new_fshell#Параметры параллелепипеда|параллелепипед]] (//Box//), * [[how_to_create_new_solver_in_new_fshell#Параметры сферы|сфера]] (//Sphere//), * [[how_to_create_new_solver_in_new_fshell#Параметры цилиндра|цилиндр]] (//Cylinder//). ====Общий алгоритм создания CAD-модели 3D-примитива==== - "Нарисовать" 3D-примитив: пункт меню __Draw -> __.\\ {{:new_fshell_create_solver:new_fshell_draw_primitive_menu.png?1024|Меню создания 3D-примитива}} \\ В появившемся окне задать параметры примитива и нажать кнопку __OK__. - Выделить нарисованный 3D-примитив в окне редактора геометрии модели.\\ **Примечание:** выделенный в редакторе геометрии модели объект обычно отображается другим цветом. - Выполнить экспорт 3D-примитива в файл одного из распространенных форматов CAD-моделей: пункт меню __File -> Export -> __.\\ {{:new_fshell_create_solver:new_fshell_export_cad_menu.png?1024|Меню экспорта объекта в файл формата CAD-модели}} \\ **Примечание:** в качестве формата для экспорта рекомендуется выбрать один из следующих: //BREP//, //IGES// или //STEP//.\\ В появившемся окне задать имя файла CAD-модели примитива и задать его местоположение.\\ {{:new_fshell_create_solver:new_fshell_select_cad_name_to_export_dialog.png|Диалог задания имени и местоположения файла CAD-модели формата STEP при экспорте}} \\ **Важно:** ошибка при экспорте обычно означает, что выбранный для экспорта объект не выделен. Вернитесь к пункту 2. ====Параметры примитивов==== ===Параметры параллелепипеда=== Вызвать окно задания параметров параллелепипеда можно, выбрав пункт меню __Draw -> Box__. {{:new_fshell_create_solver:new_fshell_draw_box_dialog.png|Окно задания параметров создаваемого параллелепипеда}} В появившемся диалоговом окне можно задать следующие параметры: - //Position// --- координаты опорной вершины параллелепипеда: - //X// --- координата вдоль оси абсцисс (//Ox//), - //Y// --- координата вдоль оси ординат (//Oy//), - //Z// --- координата вдоль оси аппликат, (//Oz//); - //Size// --- размеры параллелепипеда: - //Length// --- длина, откладывается вдоль оси //Ox//, - //Width// --- ширина, откладывается вдоль оси //Oy//, - //Height// --- высота, откладывается вдоль оси //Oz//. **Примечания:** * Все значения задаются в миллиметрах (мм). * С помощью данного диалогового окна может быть создан только прямоугольный параллелепипед. * Создаваемый параллелепипед будет ориентирован следующим образом: * стороны параллелепипеда параллельны соответствующим координатным осям; * длины сторон откладываются от опорной вершины в положительном направлении соответствующих координатных осей. ===Параметры сферы=== Вызвать окно задания параметров сферы можно, выбрав пункт меню __Draw -> Sphere__. {{:new_fshell_create_solver:new_fshell_draw_sphere_dialog.png|Окно задания параметров создаваемой сферы}} В появившемся диалоговом окне можно задать следующие параметры: - //Position// --- координаты центра сферы: - //X// --- координата вдоль оси абсцисс (//Ox//), - //Y// --- координата вдоль оси ординат (//Oy//), - //Z// --- координата вдоль оси аппликат, (//Oz//); - //Radius// --- радиус сферы. **Примечание:** Все значения задаются в миллиметрах (мм). ===Параметры цилиндра=== Вызвать окно задания параметров цилиндра можно, выбрав пункт меню __Draw -> Cylinder__. {{:new_fshell_create_solver:new_fshell_draw_cylinder_dialog.png|Окно задания параметров создаваемого цилиндра}} В появившемся диалоговом окне можно задать следующие параметры: - //Position// --- координаты центра одного из оснований цилиндра: - //X// --- координата вдоль оси абсцисс (//Ox//), - //Y// --- координата вдоль оси ординат (//Oy//), - //Z// --- координата вдоль оси аппликат, (//Oz//); - //Orts// --- вектор, задающий направление образующей цилиндра, состоит из следующих компонент: - //X// --- компонента, параллельная оси абсцисс (//Ox//), - //Y// --- компонента, параллельная оси ординат (//Oy//), - //Z// --- компонента, параллельная оси аппликат, (//Oz//); - //Radius// --- радиус основания цилиндра; - //Height// --- длина образующей цилиндра. **Примечания:** * Все значения задаются в миллиметрах (мм). * С помощью данного диалогового окна может быть создан только прямой круговой цилиндр. * Создаваемый цилиндр будет ориентирован следующим образом: * образующая цилиндра параллельна вектору, задающему ее направление; * длина образующей откладывается от задаваемого центра основания в направлении этого вектора; * основания цилиндра перпендикулярны образующей и проходят через ее концы.