了解如何对为OptiStruct定义的两个具有公共Inputs Variable的有限元模型执行多学科尺寸优化。
在开始之前,请将本教程中使用的模型文件从 /HS-4210/ 复 制到您的工作目录。
目标是在应力和频率约束下最小化板的体积。Inputs Variable是三个component中每个component的厚度,通过PSHELL卡在输入模型中定义。厚度应在0.05到0.15之间;初始厚度为0.1。优化类型为size。为了演示如何在多学科优化中使用优化工具,我们创建了两个模型。一个模型用于应力分析,另一个模型用于频率分析。两个模型必须具有相同的Inputs Variable。
1.启动HyperStudy。
2.通过以下方式开始新研究:
a)在菜单栏中,单击File>New。
b)在功能区上,单击。
3.在Add Study对话框中,输入研究名称,选择研究的位置,然后单击OK。
4.转到Define Models步骤。
5.添加Parameterized File模型。
a)从目录中,将位于approaches/setup_1-def/run__00001/m_1中的plate1.tpl文件拖放到工作区中。
b)在Solver input file列中,输入plate1.fem。
这是HyperStudy在评估期间写入的求解器输入文件的名称。
c)在Solver execution script列中,选择OptiStruct(os)。
6.添加Parameterized File模型。
a)从目录中,将位于approaches/setup_1-def/run__00001/m_2中的plate2.tpl文件拖放到工作区中。
b)在Solver input file列中,输入plate2.fem。
c)在Solver execution script列中,选择OptiStruct(os)。
7.单击Import Variables。
从plate1.tpl和plate2.tpl资源文件导入六个Inputs Variable。
8.转到Define Input Variables步骤。
9.查看Inputs Variable的下限和上限范围。
10.将Property 21关联到Property 11。
a)单击Links选项卡。
b)在Inputs Variable Property 21的Expression列中,单击。
c)在Expression Builder中,单击Input Variables选项卡。
d)在工作区中,选择Property 11。
e)单击Insert varname。
表达式var1将显示在Evaluate expression字段中。
f)单击OK。
模型2的属性21与模型1的属性11相关联。
11.再创建两个链接。
a)链接Property 22到Property 12。
b)链接Property 23到Property 13。
1.转到Test Models步骤。
2.单击Run Define。
将在study目录中创建一个approaches/setup_1-def/ 目录。approaches/setup_1-def/run__00001/m_1和approaches/setup_1-def/run__00001/m_2子目录包含plate2.out(用于结构体积和频率)和plate1.h3d(用于应力)文件,它们是试运行的结果,将在优化期间使用。
在此步骤中,您将创建三个输出响应:Volume、Stress43和Frequency1。
1.转到Define Output Responses步骤。
2.创建Volume输出响应,它表示板的体积。
a)从目录中,将位于approaches/setup_1-def/run__00001/m_2中的plate2.out文件拖放到工作区中。
b)在File Assistant对话框中,将Reading技术设置为Altair® HyperWorks®,然后单击Next。
c)选择Single item in a time series,然后单击Next。
d)定义以下选项,然后单击Next。
将Type设置为Volume。
将Request设置为Volume。
将Component设置为Value。
e)将输出响应标记为Volume。
f)将表达式设置为First Element。
Note: 因为这个数据源中只有一个值,所以[0]输入到m_2_ds_1之后,从而选择数据源中的第一个(也是唯一一个)条目。
g)单击Finish。
Volume Output responses将添加到工作区。
3.创建Stress43输出响应,它表示单元43的von Mises应力。
a)从目录中,将位于approaches/setup_1-def/run__00001/m_1中的plate1.h3d文件拖放到工作区中。
该文件包含分析结果,包括应力。
b)在File Assistant对话框中,将Reading技术设置为Altair® HyperWorks®,然后单击Next。
c)选择Single item in a time series,然后单击Next。
d)定义以下选项,然后单击Next。
将Subcase设置为Subcase 1(Load)。
将类型设置为Element Stress(2D & 3D)(2D)。
将Requests设置为E43。
将Component设置为vonMises(Mid)。
e)将输出响应标记为Stress43。
f)将表达式设置为First Element。
g)单击Finish。
Stress43输出响应将添加到工作区。
4.创建Frequency1输出响应,它表示频率结果。
a)从目录中,将位于approaches/setup_1-def/run__00001/m_2中的plate2.out文件拖放到工作区中。
b)在File Assistant对话框中,单击Next。
c)选择Single item in a time series,然后单击Next。
d)定义以下选项,然后单击Next。
将Type设置为Frequency1。
将Requests设置为Mode 1。
将Component设置为Value。
e)将输出响应标记为Frequency1。
f)将表达式设置为First Element。
g)单击Finish。
Frequency1输出响应被添加到工作区。
5.单击Evaluate以提取输出响应值。
1.添加优化。
a)在Explorer中,右键单击并从上下文菜单中选择Add。
b)在Add对话框中,选择Optimization。
c)对于Definition from,选择一种方法,然后单击OK。
2.转到Optimization 1>Definition>Define Output Responses步骤。
3.单击Objectives/Constraints - Goals选项卡。
4.对Volume Output responses应用目标。
a)单击Add Goal。
b)在Apply On列中,选择Volume。
c)在Type列中,选择Minimize。
5.对Stress43输出响应应用约束。
a)单击Add Goal。
b)在Apply On列中,选择Stress43。
c)在Type列中,选择Constraint。
d)确定性
e)在第1列中,选择<=。
f)在第2列中,输入22。
6.对Frequency1输出响应应用约束。
a)单击Add Goal。
b)在Apply On列中,选择Frequency1。
c)在Type列中,选择Constraint。
d)确定性
e)在第1列中,选择>=。
f)在第2列中,输入32。
7.转到Optimization>Specifications步骤。
8.在工作区中,将Mode设置为Adaptive Response Surface Method(ARSM)。
Note: 只启用对问题表述有效的方法。
9.单击Apply。
10.转到Optimization>Evaluate步骤。
11.单击Evaluate Tasks。
12.绘制Optimization迭代的进度。
a)单击Iteration Plot选项卡。
b)使用通道选择器,选择Goal 1、Goal 2和Goal 3。
c)在Channel selector上方,激活 并启用Bounds设置。
在优化过程中,目标最小化,最后满足约束。在图中,大标记表示至少有一个违反约束的设计,小标记表示可行的设计。在最优设计中,唯一激活的约束是Constraint 1。相反,约束2在最佳状态下不激活;这表示Constraint 2对结果没有影响。