分析文件生成是ANSYS优化设计过程中的关键部分。ANSYS程序运用分析文件构造循环文件,进行循环分析。分析文件中可以包括ANSYS提供的任意分析类型。
在分析文件中,模型的建立必须是参数化的(通常是优化变量为参数),结果也必须用参数来提取(用于状态变量和目标函数)。优化设计中只能使用数值参数。
用户的任务是建立分析文件并保证其正确性。分析文件应当覆盖整个分析过程并且是简练的,不是必须的语句应当从分析文件中省略掉。只有在交互过程中希望看到的显示[EPLODT等]可以包含在分析文件中,或者将其定位到一个显示文件中[/SHOW]。请注意分析文件是要多次执行的,与优化分析本身无关的命令都会不必要地耗费机时,降低循环效率。
建立分析文件有两种方法:①用系统编辑器逐行输入;②交互式地完成分析,将ANSYS的LOG文件作为基础建立分析文件。
1.参数化建立模型
用设计变量作为参数建立模型的工作是在PREP7中完成的。在给出的梁的例子中,设计变量是B(梁的宽度)和H(梁的高度),因此单元的实参是由B和H来表示的:
/PREP7
1初始化设计变量:
B=2.0
H=3.0
ET,1,BEAM3 !二维梁单元
AREA=B*H !梁的横截面面积
IZZ=(B*(H**3》/12 !绕Z轴的转动惯量
R,1,AREA,IZZ,H !以设计变量表示的单元实参
!模型的其他部分
MP,EX,1,30E6 !杨氏模量
N,1 !节点
N,11,120
FILL
E,1,2 !单元
EGEN,10,1,一1(www.daowen.com)
FINISH !退出PREP7
前面提到,可以对设计的任何方面进行优化:尺寸、形状、材料性质、支撑位置、所加载荷等,唯一的要求就是将其参数化。
设计变量(例如B和V)可以在程序的任何部分初始化,一般是在PREP7中定义的。这些变量的初值只是在设计计算的开始用得到,在优化循环过程中会被改变。
2.求解
求解器用于定义分析类型和分析选项,施加载荷,指定载荷步,完成有限元计算。分析中所用到的数据都要指出:缩减法分析中的主自由度,非线性分析中的收敛准则,谐波分析中的频率范围等。载荷和边界条件也可以作为设计变量。
梁的例子中,SOLUTION部分的输入大致如下:
/SOLU
ANTYPE,STATIC !静力分析(默认)
D,l,UX,0,,11,10,UY !UX=UY=0,梁两端节点固定
SFBEAM,ALL,1,PRES,100 1施加压力
SOLVE
FINISH !退出SOLUTION
这一步骤不仅限于一次分析过程,例如,可以先进行热分析再进行应力分析。
3.参数化提取结果
在本步中,提取结果并赋值给相应的参数。这些参数一般为状态变量和目标函数。提取数据的操作用*GET命令(Utility Menu|Parameters|Get Scalar Data)实现。通常用POST1来完成本步操作,特别是涉及到数据的存储、加减或其他操作时。
在梁的例子中,梁的总重量是目标函数。因为重量与体积成比例,那么减小总体积就相当于减小总重量。因此可以选择总体积为目标函数。在本例中,状态变量选择为总应力和位移。这些参数可以用如下方法定义:
4.准备分析文件
到此为止,已经对于分析文件的基本需求做了说明。如果是用系统编辑器来编辑的批处理文件,那么简单地存盘进入第二步即可。如果是用交互方式建模的话,用户必须在交互环境下生成分析文件。可以通过两种方式完成本步操作:数据库命令流文件或程序命令流文件。数据库命令流文件:可以通过LGWRITE命令生成命令流文件。LGWRITE将数据库内部的命令流写到文件Jobname.LGW中。内部命令流包含了生成当前模型所用的所有命令。
程序命令流文件:Jobname.LOG包含了交互方式下用户输入的所有命令。如果用Jobneme.LOG作为分析文件,用户必须用系统编辑器删除文件中所有不必要的命令。因为交互方式下所有的操作都记录在LOG文件中,编辑工作会比较烦琐。而且,如果分析是在几个过程中完成的,就必须将几个LOG文件合在一起编辑生成一个完整的分析文件。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。