Altair 2009 HyperWorks技术大会论文集
- 1 -
采用采用采用采用 Tcl/Tk的的的的 HyperMesh参数化建模研究参数化建模研究参数化建模研究参数化建模研究
周思达周思达周思达周思达,,,,刘莉刘莉刘莉刘莉,,,,朱华光朱华光朱华光朱华光
北京理工大学
Altair 2009 HyperWorks技术大会论文集
- 2 -
采用采用采用采用 Tcl/Tk的的的的 HyperMesh参数化建模研究参数化建模研究参数化建模研究参数化建模研究
Study of the Parametric Modeling in HyperMesh
Use Tcl/Tk
周思达,刘莉,朱华光
(北京理工大学)
摘摘摘摘 要要要要:本文对Tcl/Tk在HyperMesh有限元模型参数化建模方面进行了研究,将HyperMesh
的手工建模与 Tcl脚本建模联系起来,利用 Tcl中的变量将有限元模型中提取的
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
变量参
数化。以整体网格加筋圆筒壳为例研究 HyperMesh中曲面的参数化建模、参数化修改、网
格的参数化划分、加强筋梁单元与壁面壳单元的协调及截面属性参数化以及载荷边界条件的
自动识别施加等,得到了完整的整体网格加筋圆筒壳有限元模型。
关键字关键字关键字关键字::::参数化建模,Tcl,HyperMesh
Abstract: On study of parametric modeling in HyperMesh, the variables of the FEM are
parameterized using the variables in Tcl. The parametric modeling includes the parametric
modification, parametric partition, etc.
Key words: parametric modeling, Tcl, HyperMesh
1 Tcl与与与与 HyperMesh参数化建模参数化建模参数化建模参数化建模
Tcl(Tool Command Language)是一种通用的计算机脚本语言。由于其只有一些基本
的结构和少量的语法,因此简单易学。Altair公司的有限元前处理软件HyperMesh采用Tcl/Tk
作为二次开发的脚本语言,其中 Tcl 为脚本开发环境,Tk 为 GUI(图形用户界面)的开发
工具。相比 MSC.Patran采用 PCL,ANSYS采用 APDL,HyperMesh采用的是通用的脚本
语言 Tcl/Tk,其更具通用性和接口也更加广泛。采用通用语言作为前处理二次开发平台的概
念渐渐成为各有限元前处理软件的发展趋势,如 Abaqus/CAE采用了通用语言 Python等。
HyperMesh的 Command文件可以记录 HyperMesh的操作步骤,并且 Command文
件中的函数名称和参数格式与 Tcl 在 HyperMesh 中相应的函数和参数一致,只需使用文本
编辑器进行简单字符替换,如 Ultra Edit的正则
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
达式替换就能将其转变为 Tcl脚本。因此,
利用 HyperMesh的 Command文件是进行 Tcl二次开发的便捷途径,可以十分方便的将手
工建模的复杂过程引入参数化建模中。Command文件与 Tcl之间的转换
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
如下:
Command File命令:*createvector(1,1.0000,0.0000,0.0000)
Tcl命令:*createvector 1 1.0000 0.0000 0.0000
Altair 2009 HyperWorks技术大会论文集
- 3 -
在 Tcl中可采用的 Set命令为参数化的设计变量赋值,如“set sita 40”。在 Tcl脚本中的
使用$sita即可使用变量 sita,并可采用 Tcl的组合与替换语法将变量引入表达式,如:
[expr ((2*3.141592654*$r)/$ncycle)/(tan($sita/57.295779513))]
Tcl的控制流语句,如 for、if、while等,可以丰富参数化建模的
流程
快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计
和手段,完成一些
参数变化幅度较大的建模工作,如对模型中所有的曲面划分网格:
*createmark surfaces 1 "by comp name" cell cell_tmp
#[expr $ch/20] represents the size of element
if {$flag_mesh==0} {
*defaultremeshsurf 1 [expr $ch/$mf] 2 2 2 1 1 1 1 0 0 0 0
} else {
*interactiveremeshsurf 1 [expr $ch/$mf] 1 1 2 1 1
variable nsurf
set nsurf [hm_count surface "all" 0 0]
puts $nsurf
for {set i 0} {$i<$nsurf} {incr i} {
*set_meshfaceparams $i 2 1 0 0 1 0.5 128 256
*automesh $i 2 1
}
}
2 整体网格加筋圆筒壳有限元模型参数化建模整体网格加筋圆筒壳有限元模型参数化建模整体网格加筋圆筒壳有限元模型参数化建模整体网格加筋圆筒壳有限元模型参数化建模
下面以一个网格加筋圆筒壳的有限元参数化建模为例简要介绍 Tcl 脚本语言在
HyperMesh 有限元模型参数化建模中的应用。本模型为一个加筋结构的薄壁圆筒壳结构,
网格加筋与圆筒母线成一定角度,有限元模型要求加筋的梁单元与薄壁的壳单元节点对应。
第一步,形成胞元,如图 1所示。需要参数化的是胞元的弧度和长宽尺寸。
图 1 网格胞元曲面参数化模型
第二步,旋转和阵列胞元,如图 2 所示,形成薄壳外形。需要参数化的是圆筒的高度
和旋转、阵列的参数。
Altair 2009 HyperWorks技术大会论文集
- 4 -
图 2 网格胞元参数化旋转与重复
第三步,几何清理和网格划分,如图 3 所示。需要参数化的是网格的尺寸和网格形状
的控制参数。
图 3 有限元网格的参数化自动剖分
第四步,在胞元之间形成相应的梁单元并赋予加强筋的截面属性,如图 4 所示,为
HyperMesh 10.0梁单元三维显示下加筋圆筒壳有限元模型及局部特写。需要参数化的梁单
元的截面形状尺寸参数。
图 4 加强筋自动提取与属性参数化
第五步,参数化施加位移边界条件、载荷等分析条件。施加边界条件的 Tcl语句如下所
示:
Altair 2009 HyperWorks技术大会论文集
- 5 -
*collectorcreate loadcols "spc" "" 40
*createmark node 1 "on plane" [expr $uheight+$ch/2+$ch/20] 0 0 1 0 0 [expr $ch/12]
1 1
*loadcreateonentity nodes 1 3 1 0 0 0 0 0 0
# create the rbe2
*createmark node 2 "on plane" [expr $ch/2] 0 0 1 0 0 [expr $ch/20] 1 1
*rigidlink 1 2 123456
通过可以 HyperMesh中模型生成的 Tcl 语句将模型输出为“.fem”文件。若在 Windows
下配合批处理的功能以及 HyperView中“.mvw”文件的脚本功能,整个建模-分析-后处理过程
就可以一气呵成。如图 5所示,为参数化模型静力分析后的位移云图。
图 5 轴压状态下的结构位移云图
3 结论结论结论结论
HyperMesh强大的有限元模型建模功能结合 Tcl/Tk脚本语言简洁明了的特点,可以很
好的完成较为复杂的有限元模型参数建模。
此外,在 HyperMesh中利用 Tk(tool kit)进行 GUI(Graphic User Interface)的开发
也十分方便。
4 参考文献参考文献参考文献参考文献
[1] HyperMesh 10.0 User's Guide, Altair Engineering, Inc, 2009
[2] HyperMesh 10.0 Reference Guide, Altair Engineering, Inc, 2009
[3] 王江,黄诚, 徐卫秀, 盛祖铭, 马斌捷,敖林, 网格加筋中长圆柱壳网格角度的优化分析,
强度与环境[J], 2007