基于Excel-VBA与CATIA的拱坝有限元参数化建模方法
2017-05-16王飞
王 飞
(中国电建集团贵阳勘测设计研究院有限公司,贵州贵阳550081)
基于Excel-VBA与CATIA的拱坝有限元参数化建模方法
王 飞
(中国电建集团贵阳勘测设计研究院有限公司,贵州贵阳550081)
由于拱坝的体形越来越复杂,拱坝的建模难度越来越大。利用VBA对Excel进行二次开发,得出CATIA拱坝建模中所需的fog规则,根据这些fog规则直接在CATIA的GSD模块中生成拱坝上下游拱圈线,快捷高效地建立了双曲拱坝模型,为此后的拱坝仿真计算节约了大量的时间。实例表明,Excel-VBA与CATIA的结合使用,使拱坝精细化建模过程可完全进行模块化、参数化处理,为拱坝这种复杂体形的有限元建模提供了便利。
Excel-VBA;CATIA;ANSYS;拱坝;参数化建模
0 引 言
由于拱坝体形的复杂,建立精细化的拱坝仿真模型的难度越来越大。准确地建立模型是保证拱坝仿真结果真实有效的必要条件,受到了水利水电工作者的高度重视。通用有限元分析软件ANSYS因其强大的仿真分析功能受到工程计算人员的青睐[1]。如何快速精细化地在ANSYS中建立拱坝模型,为拱坝的仿真分析计算节省时间,成为工程人员必须熟练掌握的技能。ANSYS提供了与大型三维软件CATIA的通信接口,通过该接口直接将CATIA三维模型导入ANSYS中,能够显著提高ANSYS的使用效率[2]。实现拱坝的精细化参数建模,需要大量的模型参数,包括拱圈层数、拱圈高程、左岸和右岸的曲率半径、拱冠处及左右岸的拱厚、拱圈中心线方程以及上下游拱圈线方程等。由于其中一些参数的控制方程复杂,正好利用CATIA强大的fog规则来创建拱坝模型的上下游拱圈线,以达到精细化建模的需求。使用Excel-VBA程序处理导出各个特征高程CATIA建模所需的fog规则参数,然后在CATIA中创建fog规则及相应的半中心角参数,直接生成各个特征高程的拱圈线,之后通过ANSYS中的CATIA模型通信接口直接导入,该方法通过VBA程序数组生成各个特征高程的拱圈线控制方程,具有准确高效的优势,避免了在大量fog规则推导过程中极易出现的疲劳错误,大大地提高了整个建模过程的效率,且易于被工程人员所掌握。
1 Excel-VBA及CATIA简介
VBA是Visual Basic for Application的缩写,它是Microsoft面向最终用户的应用软件编程的自动化语言,可以使常用的程序自动化,但它不能独立于主应用程序运行,必须基于一个主应用程序来实现自动化,如Microsoft Excel、Word、AutoCAD等[3]。在Microsoft Excel中,VBA可以实现使重复的任务自动化,对数据进行复杂的操作和分析等,是较好的二次开发工具。
CATIA软件是法国Dassault系统公司的产品,目前已在水电工程行业中有了比较广泛的影响,其强大的参数化建模功能为设计者提供了便利的修改功能[4-5],为设计者大大地节省了劳动时间,而且其强大的三维模型处理能力[6]可以直观的展现出所设计的产品效果,为设计者们提供前期的宣传效果以及决策的依据。
2 工程实例
2.1 基本资料
某拦河大坝采用双曲混凝土拱坝,拱圈中心线方程为
左半拱y=Yc-x2/2Rl
右半拱y=Yc-x2/2Rr
拱厚方程为
T=Tc+(Ta-Tc)(1-cosφ)/(1-cosφa)
上下游面拱圈方程为
上游面Yu=y+Tcosφ/2;Xu=x+Tsinφ/2
下游面Yd=y-Tcosφ/2;Xd=x-Tsinφ/2
式中,x、y为拱圈中心线任意位置X、Y方向坐标;Yc为拱冠梁中心Y坐标;Rl、Rr分别为拱冠处左拱及右拱的曲率半径;φ为拱圈中心线任意位置法线与拱坝中心线的夹角;φa为拱端中心角;T为拱圈任意位置厚度;Tc、Ta分别为拱冠与拱端厚度;Xu、Yu分别为对应于拱圈中心线位置(x,y)处的法线方向坝体上游面坐标;Xd、Yd为对应于拱圈中心线位置(x,y)处的法线方向坝体下游面坐标。
2.2 实例分析
基于上述拱坝的体形参数方程,要准确地建立拱坝模型,需要先创建出CATIA参数化建模所需的fog规则,由于拱坝拱圈中心线是抛物线方程,拱厚是以半中心角为参数的指数方程,拱厚的方程无法以中心线弧长的函数表示,因此不能采用“平行曲线”工具通过拱圈中心线生成拱圈上、下游边线。又由于上下游边线不能表示成半弦长或半中心角的显示函数,也无法采用“平行曲线”工具通过半弦长或半中心角生成拱圈上下游边线。经过摸索,最终采用“空间曲面相交投影”的办法,生成拱坝上下游拱圈线。其在CATIA中的具体操作步骤是通过8个fog规则方程来控制某一个特征高程的上下游拱圈线,且可以直接修改fog中的方程参数来修改拱坝体形,不需要重新导入新的fog规则来修改拱坝三维模型,如果整体模型具有N个特征高程,那么在建模前便需要生成8N个fog规则,由于控制拱圈线的fog规则参数多,极易出现编写错误,因此采用VBA数组直接在EXCEL中生成N个特征高程所需的fog规则,其特点是高效不易出错,且便于后期修改,而且可以生成固定的VBA程序模板,以后同类模型建模前可直接重新导入拱坝体形参数即可快速生成fog规则。
VBA程序数组部分代码如下:
Sub auto()’ Dim heights()As Double
heights=Array(942,954,966,977,988,999,1 010,1 021,1 032)
RL=Array(55.35,61.503 2,68.251 6,74.826 58,81.649 17,88.598 58,95.554 03,102.394 77,109)
Rr=Array(55.25,60.381 6,66.802 8,73.283 37,79.832 29,85.963 98,91.192 87,95.033 4,97)
Yc=Array(96.05,98.362 4,100.137 2,101.228 97,101.750 48,101.645 03,100.855 92,99.326 48,97)
Tc=Array(18.5,17.648,16.604,15.451,14.085 14,12.481 75,10.616 2,8.463 83,6)
……
Fori=21 To 29
Cells(i,1).Value=heights(i-21)
Cells(i,2).Value="xuL=("&RL(i-21)&"*tan(t*"&BL(i-21)&"deg)+"&Tc(i-21)&"/2*sin(t*"&BL(i-21)&"deg))*1 000"
Cells(i,3).Value="yuL=("&Yc(i-21)&"-"&RL(i-21)&"/2*(tan(t*"&BL(i-21)&"deg))**2+"&Tc(i-21)&"/2*cos(t*"&BL(i-21)&"deg))*1 000"
Cells(i,4).Value="xdL=("&RL(i-21)&"*tan(t*"&BL(i-21)&"deg)-"&Tc(i-21)&"/2*sin(t*"&BL(i-21)&"deg))*1 000"
Cells(i,5).Value="ydL=("&Yc(i-21)&"-"&RL(i-21)&"/2*(tan(t*"&BL(i-21)&"deg))**2-"&Tc(i-21)&"/2*cos(t*"&BL(i-21)&"deg))*1 000"
……
Next
图1 通过VBA数组控制生成的特征高程fog规则
End Sub
在Excel中生成的特征高程fog规则如图1所示。
2.3 CATIA中生成拱圈线
将Excel中生成的fog规则导入CATIA中,并分别用GSD模块中的“平行曲线”工具,在正交的两个平面(x-φ平面和y-φ平面)上作出x曲线和y曲线。分别拉伸两条曲线,得到两个曲面,如图3所示,两曲面相交,得空间交线,然后将空间交线投影到特征高程平面上,即得拱圈边线。CATIA中建立的拱坝模型如图4所示。
图2 fog规则
图3 相交曲面
图4 拱坝模型
2.4 ANSYS模型的导入
在CATIA中完成了拱坝的精细化参数建模,至此通过ANSYS中的CATIA模型通信接口,直接导入CATIA三维模型,导入ANSYS中的拱坝三维模型效果如图5所示。
图5 ANSYS中拱坝模型效果
3 结 论
通过上述工程实例分析发现,基于Excel-VBA与CATIA的拱坝参数化建模方法是非常有效的,利用VBA生成CATIA参数化建模所需的fog规则,不仅大大提高了工作效率,而且避免了由于大量参数转换中易出现的疲劳错误,另外通过第一个工程实例的VBA程序开发,后期同类工程可直接写入相应的拱坝体形参数数组,不必重新编写VBA程序代码;CATIA三维软件GSD模块在整个拱坝精细参数化建模过程中也扮演了非常重要的角色,其特点在于:一是CATIA软件本身的参数化功能便于随时对模型的参数进行修改,不必重新开始整个建模过程;二是GSD模块中强大的fog曲线绘制功能,结合CATIA的参数化设计,使得整个拱坝模型全参数化,并可以随时对其体形参数进行修改。ANSYS作为大型的有限元计算软件,在各类工程应用中非常广泛,但传统的有限元拱坝建模由于软件本身的属性问题,往往耗时长,而且创建的模型精度不高,为后续的有限元网格划分带来了诸多不便,且一旦需调整模型体形参数,就需要重复整个建模过程,本文所述的VBA-CATIA-ANSYS的拱坝精细化建模过程可完全进行模块化、参数化处理,为拱坝这种复杂体形的有限元建模提供了便利。
[1]尚晓江, 邱峰, 赵海峰, 等. ANSYS 结构有限元高级分析方法与范例应用[M]. 北京: 中国水利水电出版社, 2005.
[2]张涛. ANSYS APDL参数化有限元分析技术及其应用实例[M]. 北京: 中国水利水电出版社, 2013.
[3]陈晨. Excel VBA在工程水文计算中的应用[J]. 水利水电快报, 2008(S1): 199-202.
[4]余军, 田永生, 胡燚, 等. 拱坝三维设计技术应用与研究[J]. 人民黄河, 2013(3): 79-81.
[5]黄艳芳, 吕昌伙, 张玲丽. 大中型水电站地下厂房三维参数化设计技术应用[J]. 人民长江, 2015(1): 46-49.
[6]黄艳芳, 李小帅. CATIA软件在双曲拱坝设计中的应用初探[J]. 人民长江, 2009(21): 26-28.
(责任编辑 焦雪梅)
Parametric Modeling of Arch Dam Based on Excel-VBA and CATIA
WANG Fei
(PowerChina Guiyang Engineering Corporation Limited, Guiyang 550081, Guizhou, China)
As the shape of arch dam becomes complicated, the modeling of arch dam is also growing more and more difficult. The secondary development of Excel by making use of VBA to get required fog rules is conducted, in which, the arch rings are directly generated in the GSD module of CATIA on the basis of those fog rules, and finally the double-curvature arch dam model is established quickly and efficiently. It can save a lot of time for next simulation analysis and calculation of arch dam. The case study shows that the parametric modeling of arch dam becomes more convenient and accurate by combining the method of Excel-VBA and CATIA, and facilitates the finite element modeling of complex shape of arch dam.
Excel-VBA; CATIA; ANSYS; arch dam; parametric modeling
2015-12-11
王飞(1988—),男,湖北宜昌人,工程师,硕士,主要从事大体积混凝土温度应力控制及防裂研究.
TV642.4
A
0559-9342(2017)02-0051-03