关键词:
AGEN, ,P51X, , , ,step, , , ,1 移动上横梁的核心部分,移动量step
。。。 构造横梁和立柱的联接部分
。。。 施加载荷和约束
。。。 网格划分
FINISH 退出前处理器
/SOLU 进入求解器
SOLVE 求解
FINISH 退出求解器
/POST1 退出后处理器
*GET,front,NODE,2013,U,Z 给front赋值
*GET,back,NODE,1441,U,Z 给back赋值
lastdif=dif 更新lastdif
*ENDIF if-else 语句的结尾
*ENDDO *DO 循环语句的结尾
上面这个文件比较长,约1000行。主要目的是为了使程序的结构清晰。有很多代码是复用的,如一些建模指令和后处理指令。使用时,可以将这些指令构成 相应的宏在主程序中调用,能有效地缩短主程序的长度。此外,文件中多数具体的建模指令是从ANSYS程序的命令记录文件中复制过来的,包含很多在图形界面 下才用到的指令。以ANSYS的批处理方式使用时,可以将这些命令删除,也能缩短文件长度。
在上述程序中,模型指定部位的变形是通过结点读取的。在网格剖分中,为了确保剖分成功,并且不产生形状恶劣的单元,不得已使用了三角形网格。优化过程 的每一步迭代,模型的立柱和横梁核心联接部分的几何形状都会不同,这会使剖分出来的网格数量有所不同,指定位置处的结点编号就有可能不同。依据结点编号从 数据库中读取的数据就有可能不是指定位置的数据。为此,需要首先剖分横梁的核心部分,这样,横梁上的结点编号在每次迭代过程中都是固定的。
迭代的最终结果是否是一个可行的结果,需要通过查看参数flag判定。只有flag=1,计算结果才是可行的,否则表示迭代过程并没有找到最佳位置。 横梁的移动量存储在参数step中。如果计算结果是可行的,step的值就是横梁从原始设计位置到最优位置的移动量。总的迭代次数存放在参数I中,通过I 的最终值,可以估计分析结果的可行性和初始条件是否合适。
4. 分析结果
优化过程总共进行了7次迭代,耗费机时约2小时37分钟,找到了最优位置。由于机器读入指令的过程比人工修改模型的速度快得多,修改模型的时间基本可 以忽略。优化过程所需时间取决于求解时间。与人工完成的优化过程相比,效率有了较大提高,而且避免了复杂模型在建模过程中容易出现的人为失误导致后续迭代 计算出错或偏离优化目标等问题。
5. 结论
分析结果表明,本文给出的优化方法是有效的,达到了预期的优化目的。该方法的优点是可靠性高,优化过程不易出错。其次是 通用性比较好,在类似的结构优化设计中,文中给出的控制代码无需作大的改动即可移植使用。缺点是在优化过程中不能改变优化对象的拓扑结构。在不改变拓扑结 构的条件下,修改模型的工作量越大,越能体现出该方法的优越性。另外,对于需要改变拓扑结构的优化问题,可以使用ANSYS程序提供的拓扑优化功能。如果 将本文的方法与之结合,可以取得更好的优化效果。