作者: 佚名 浏览: 日期:2024-02-28
问题描述:
图1表示一个承载的弹性梁。梁两端固定,承受两个载荷工况。梁的一个面是用一号单元划分的,用于拓扑优化,另一个面是用二号单元划分的,不作优化。最后的形状是单元1的体积减少50%。
图1? 承受两个载荷工况的梁
下面分别是利用菜单操作和命令流方式进行有限元分析的方法
一、GUI菜单操作如下:
第一步,清除内存准备分析
清除内存:
GUI:Utility Menu>File>Clear& Start New
? 2.更换工作文件名:
GUI:Utility Menu>File>Change Jobname,输入topological optimization
? 3.定义标题:
GUI:Utility Menu>File>Change Title,输入 A 2-d,multiple-load example of topological optimization
第二步,创建有限元模型
1.进入前处理器:
GUI:Main Menu>Preprocessor
2.定义单元类型:
GUI:Main Menu>Preprocessor>Element Type>Add/Edit/Delete,选择单元PLANE82;同样的方法设置第二类单元也为PLANE82
3.定义材料属性:
GUI:Main Menu>Preprocessor>Material Props>Material Models,弹出对话框,在右侧窗口中连续双击选择Structural>linear>Elastic>Isotropic,弹出窗口在值域EX处输入118e9,在值域PRXY处输入0.3
4.建立模型:
GUI:Main Menu>Preprocessor>Modeling>Create>Areas>Rectangle>By 2 Corners,弹出对话框,在WP X域输入0,WP Y域输入0,Width域输入3,Height域输入1
5.划分网格:
GUI:Main Menu>Preprocessor>Meshing>Size Cntrls>ManualSize>Global>Size,弹出对话框,在SIZE值域输入0.05;Main Menu>Preprocessor>Meshing>Mesh>Areas>Free,弹出Mesh Areas的对话框,点击Pick All按钮确定,最终的网格图如图2所示
图2?网格图
6.选择不优化的部分:
GUI:Utility Menu>Select>Entities,弹出对话框,第一个下拉列表选择Nodes,第二个下拉列表选择By Location,复选框确定为X coordinates,在Min,Max值域输入0,0.4,最下边选择From Full,点击Apply按钮;然后将第一个下拉列表选择Elements,第二个下拉列表选择Attached to,最下边选择From Full,点击OK按钮,最终选择的单元如图3所示
图3 选择不需要优化的区域
7.将不需要优化的区域设置为第二种单元类型:
GUI:Main Menu>Preprocessor>Modeling>Move / Modify>Elements>Modify Attrib,弹出对话框,点击Pick All按钮,接着弹出对话框,STLOC设置为Elem type TYPE,I1值域输入2
8.选择所以的实体:
GUI:Utility Menu>Select>verything
第三步,拓扑优化
进入求解器:
GUI:Main Menu>Solution
? 2.施加位移约束:
GUI:Main Menu>Preprocessor>Loads>Define Loads>Apply>Structural>Displacement>On Lines,弹出对话框,选择最左边以及最右边两条线段,弹出对话框,设置自由度为ALL DOF
? 3.施加集中力:
GUI:Main Menu>Preprocessor>Loads>Define Loads>Apply>Structural>Force/Moment>On Nodes,弹出对话框,在输入框输入表达式:node(1,1,0)点击OK按钮,接着弹出对话框,在Lab对应的项从下拉列表选择FY,在VALUE值域输入1000
? 4.写入第一个载荷步:
GUI:Main Menu>Solution>Load Step Opts>Write LS File,弹出对话框,在LSNUM值域输入1
?5.删除施加的集中力:
GUI:Main Menu>Solution>Define Loads>Delete>Structural>Force/Moment>On Nodes,弹出对话框,点击Pick All,接着弹出对话框,在Lab对应的项从下拉列表选择ALL
?6.施加集中力:
GUI:Main Menu>Preprocessor>Loads>Define Loads>Apply>Structural>Force/Moment>On Nodes,弹出对话框,在输入框输入表达式:node(2,0,0)点击OK按钮,接着弹出对话框,在Lab对应的项从下拉列表选择FY,在VALUE值域输入-1000
? 7.写入第二个载荷步:
GUI:Main Menu>Solution>Load Step Opts>Write LS File,弹出对话框,在LSNUM值域输入2
? 8.删除施加的集中力:
GUI:Main Menu>Solution>Define Loads>Delete>Structural>Force/Moment>On Nodes,弹出对话框,点击Pick All,接着弹出对话框,在Lab对应的项从下拉列表选择ALL
? 9.定义多重的柔量分析:
GUI:Main Menu>Topological Opt>Set Up>Advanced Opt>Topo Function,弹出对话框,Choose the desired function选择N LoadCase compl,点击OK按钮,接着弹出对话框,在RefName输入MCOMP,在NUMLC值域输入2,将Use default setting设置为Yes
? 10.定义拓扑优化目标:
GUI:Main Menu>Topological Opt>Set Up>Advanced Opt>Topo Objective,弹出对话框,在右边列表框中选择MCOMP
? 11.定义拓扑优化约束变量:
GUI:Main Menu>Topological Opt>Set Up>Advanced Opt>TopoConstraint>By Percentage,弹出对话框,在右边的列表框中选择VOLUME点击OK按钮,接着弹出需要体积缩减的百分数对话框,在Percent volume reduct’n值域输入50
?12.执行拓扑优化:
GUI:Main Menu>Topological Opt>Run,弹出对话框,[TOTYPE]Solution approach 选择Optimality,[TODEF]Convergence tolerance值域采用默认值,NITER Number of iterations值域输入12,将plot density @ each iter?设置为Yes
第四步,拓扑优化结果查看
显示拓扑优化结果:
GUI:Utility Menu>PlotCtrls>Style>Contours>Uniform Contours,弹出对话框,在Number of Contours值域输入2;Main Menu>Topological Opt>Plot Densities,显示拓扑优化结果如图4所示
图4 显示最后优化结果
? 2.绘制拓扑优化目标与迭代次数的曲线:
GUI:Main Menu>Topological Opt>Graph History,弹出对话框,在Type项选择Objective func,点击OK按钮,绘制出拓扑优化目标与迭代次数,如图5所示
图5 拓扑优化目标与迭代次数曲线图
? 3.绘制约束变量与迭代次数的曲线:
GUI:Main Menu>Topological Opt>Graph History,弹出对话框,在Type项选择Constraint,点击OK按钮,绘制出拓扑优化目标与迭代次数,如图6所示
图6 拓扑目标变量与迭代次数曲线图
二、命令流如下:
/clear,start
/filname,topological optimization
/title,A 2-d,multiple-load example of topological optimization
/prep7
blc4,0,0,3,1
et,1,82
et,2,82
mp,ex,1,118e9
mp,nuxy,1,0.3
esize,0.05
type,1
amesh,all
nsel,s,loc,x,0,0.4
esln
type,2
emodi,all
allsel
fini
/solu
nsel,s,loc,x,0
d,all,all,0
nsel,s,loc,x,3
d,all,all,0
force=1000
nsel,s,loc,x,1
nsel,r,loc,y,1
f,all,fy,force
allsel
lswrite,1
fdel,all
nsel,s,loc,x,2
nsel,r,loc,y,0
f,all,fy,-force
allsel
lswrite,2
fdel,all
/replot
tocomp,mcomp,multiple,2
tovar,mcomp,obj
tovar,volume,con,,50
/graphics,full
totype,oc
todef
toloop,12,1
/dscale,,off
/contour,,2
fini
toplot,0
/grid,0
tograph,obj
tograph,con
fini