了解如何执行多学科设计优化研究。本教程中使用的规则是structural performance和cost。
在开始之前,请将本教程中使用的模型文件从 /HS-4215/ 复 制到您的工作目录。
结构性能使用OptiStruct进行模拟,成本使用Compose或Python进行模拟。这两个模拟的优化参数都在与每个输入模型对应的模板文件中标识:
tail.fem: OptiStruct
tail.oml: Compose
tail.py: Python
假设尾巴在其内侧部分悬臂式。考虑了三种加载情况;一种是尾部在底部皮肤上承受0.25 psi的压力载荷,另一种是尾部承受400磅的尖端载荷,第三种是尾部同时承受压力载荷和尖端载荷。施加的载荷如图2所示。
本研究的问题表述如下:
Inputvariables
内侧玻璃布厚度;初始值= 0.1;下限= 0.01,上限= 2.0
中跨玻璃纤维布厚度;初始值= 0.1;下限= 0.01,上限= 2.0
舷外机的玻璃布厚度;初始值= 0.1;下限= 0.01,上限= 2.0
内侧的芯厚;初始值= 0.1;下限= 0.01,上限= 2.0
中跨的芯织物厚度;初始值= 0.1;下限= 0.01,上限= 2.0
舷外机的芯织物厚度;初始值= 0.1;下限= 0.01,上限= 2.0
铝筋厚度;初始值= 0.1;下限= 0.01,上限= 2.0
Note: 两个模型都有七个Inputs Variable;但是两个模型之间的Inputs Variable值需要一致。为了获得这一点,我们将两组Inputs Variable相互链接。
Objective
最大限度地降低成本
Designconstraints
最大位移必须小于其基准值31
1.通过以下方式开始新研究:
a)在菜单栏中,单击File>New。
b)在功能区上,单击。
2.在Add Study对话框中,输入研究名称,选择研究的位置,然后单击OK。
3.转到Define Model步骤。
4.添加Parameterized File模型。
a)从Directory中,将tail_structure_optistruct.tpl文件拖放到工作区中。
b)在Solver Input File列中,输入tail.fem。
这是HyperStudy在评估期间写入的求解器输入文件的名称。
c)在Solver Execution Script列中,选择OptiStruct(os)。
5.添加第二个Parameterized File模型。
a)从Directory中,将相应的.tpl文件拖放到工作区中。
i.如果您使用的是Python,请使用tail_cost_python.tpl。
ii.如果您使用的是Compose,请使用tail_cost_compose.tpl。
b)在Solver Input File列中,输入HyperStudy在任何评估期间写入的求解器输入文件的名称。
i.如果您使用的是Python,请输入tail.py。
ii.如果您使用的是Compose,请输入tail.oml。
c)在Solver Execution Script列中,选择以下任一选项:
i.Python(py)
ii.Compose(oml)
d)如果您使用Compose作为求解器执行脚本,请在Solver Input Arguments列中,在$file之前输入-f。
Note: 如果您将Compose作为HyperWorks套件的一部分,那么HyperStudy应该会自动指向正确的.bat文件。如果您将Compose作为单独的安装,则在Register Solver Script步骤中,您必须指向Compose_batch.bat。
6.单击Import Variable。
从两个.tpl资源文件中导入14个Inputs Variable。
7.转到Define input variables步骤。
8.查看Inputs Variable的下限和上限范围。
9.链接Inputs Variable。
a)单击Links选项卡。
b)在Varname列中,复 制所有自变量(Model_1中的所有变量)。
c)在所有因Inputs Variable(Model_2中的所有变量)的Expression列中,粘贴自变量。
1.转到Test Model步骤。
2.单击Run Define。
将在study目录中创建一个approaches/setup_1-def/ 目录。approaches/setup_1-def/run__00001/m_1和approaches/setup_1-def/run__00001/m_2子目录包含tail.h3d(用于最大位移)和cost.res(用于成本)文件,它们是标称运行的结果,将用于优化。
在此步骤中,您将创建两个输出响应:MaxDisp和Cost。
1.转到Define Output Responses步骤。
2.创建MaxDisp输出响应。
a)从目录中,将位于approaches/setup_1-def/run__00001/m_1中的tail.h3d文件拖放到工作区中。
b)在File Assistant对话框中,将读取技术设置为Altair® HyperWorks®并单击Next。
c)选择Multiple Items at Multiple Time Steps,然后单击Next。
d)定义以下选项,然后单击Next。
SUBCASE:Subcase 5(Combo)
Type:Displacement (Grids)
请求- 开始:选择First Request并输入N4660
请求- 结束:选择Last Request并输入N7528
component:Mag。
e)选中Create Individual Response (Maximum)(1) 复选框,然后选择Maximum。
f)单击Finish。
输出响应将添加到工作区。
g)在工作区的Label列中,将标签更改为MaxDisp。
3.创建Cost Output responses。
a)从目录中,将位于approaches/setup_1-def/run__00001/m_1中的cost.res文件拖放到工作区中。
b)在File Assistant对话框中,将读取技术设置为Altair® HyperWorks®并单击Next#。
c)选择Single item in a time series,然后单击Next。
d)定义以下选项,然后单击Next。
Type:Unknown。
Request:Block 1。
component:Column 1。
e)标记输出响应Cost。
f)将Expression设置为First element。
g)单击Finish。
的成本输出响应将添加到工作区。
4.单击Evaluate以提取响应值。
1.添加优化。
a)在Explorer中,右键单击并从上下文菜单中选择Add。
b)在Add对话框中,选择Optimization#。
c)对于Definition from,选择一种方法,然后单击OK。
2.转到Optimization>Definition>Define Output Responses步骤。
3.单击Objectives/Constraints - Goals选项卡。
4.对Cost Output responses应用目标。
a)单击Add Goal。
b)在Apply On列中,选择Cost。
c)在Type列中,选择Minimize。
5.将约束应用于MaxDisp输出响应。
a)单击Add Goal。
b)在Apply On列中,选择MaxDisp。
c)在Type列中,选择Constraint。
d)确定性
e)在第1列中,选择**#<=**。
f)在第2列中,输入31。
6.转到Optimization>Specifications步骤。
7.在工作区中,将Mode设置为Adaptive Response Surface Method(ARSM)。
Note: 只启用对问题表述有效的方法。
8.单击Apply。
9.转到Optimization>Evaluate步骤。
10.单击Evaluate Task。
11.查看Optimization的迭代历程记录。
a)点击Iteration Plot选项卡以绘制优化迭代的进度。
b)使用Channel选择器,选择Objective_1和Constraint_1。
目标函数和约束与迭代的演变是2D绘制的。您可以看到,水平尾平面的成本从72715降低到67700(降低7%),同时保持结构性能不变。