基于Excel-VBA与APDL的拱坝参数化建模方法
2015-01-16周强
周 强
(浙江华东工程安全技术有限公司,浙江杭州,310014)
0 引言
由于拱坝体形复杂,建立拱坝仿真模型的难度较大。准确地建立模型是保证拱坝仿真结果真实有效的必要条件,ANSYS因其强大的仿真分析功能受到工程计算人员的青睐[1]。如何快速准确地在ANSYS中建立拱坝模型,为拱坝的仿真分析计算节省时间,成为工程人员必须熟练掌握的技能。ANSYS提供了参数化设计语言APDL,运用它可以实现脱离菜单操作,能够显著提高ANSYS的使用效率[2]。但是应用APDL实现拱坝参数化建模需要大量的模型参数,包括拱圈层数、拱圈高程、左岸和右岸的曲率半径、拱冠处及左右岸的拱厚、上游偏距、左右岸拱端中心X坐标等。由于其中一些参数的控制方程复杂,无法直接求出精确解,往往要通过试算得出粗略结果,不仅工作量大,而且易引起误差和错误。使用Excel-VBA编制数值方法求解程序计算需要的参数,可大幅减少计算工作量、提高计算精度,且可将计算结果根据APDL命令流的格式需要来输出,既直观又方便,易被工程人员掌握。
1 Excel-VBA及APDL简介
VBA是Visual Basic for Application的缩写,它是Microsoft面向最终用户的应用软件编程的自动化语言,可以使常用的程序自动化,但它不能独立于主应用程序运行,必须基于一个主应用程序来实现自动化,如 Microsoft Excel、Word、AutoCAD 等[3]。在Microsoft Excel中,VBA可以实现使重复的任务自动化,对数据进行复杂的操作和分析等,是较好的二次开发工具。
APDL(ANSYS Parametric Design Language)即ANSYS参数化设计语言。在利用APDL进行产品设计时,先建立产品的数学模型,再利用程序设计语言将ANSYS命令组织起来,编写APDL程序,实现有限元分析的全过程。其优点是:可减少大量重复工作,特别适用于需要多次重复计算的场合;文件数据量小,便于保存和携带,利于交流和应用,不受ANSYS软件版本限制等。
2 工程实例
2.1 基本资料
某拦河大坝为混凝土双曲拱坝,坝顶全长122.21 m,最大坝高137 m,坝顶宽6.00 m。该拱坝选用抛物线线型,厚度变化指数取2.00。
拱坝厚度沿弧长变化如下:
右半拱:T(s)=TC+(TAR-TC)(S/SAR)α
左半拱:T(s)=TC+(TAL-TC)(S/SAL)α
式中:S为从拱冠起算的中心线弧长;TC、TAR、TAL分别是拱冠、右拱端、左拱端的厚度;α为变厚系数,对该拱坝,取α=2.0。拱圈中心线方程:
式中,R为抛物线在拱冠处的左拱圈或右拱圈的曲率半径。该拱坝的主要体形参数见表1。
2.2 实例分析
基于上述拱坝的体形参数,要准确地建立拱坝模型,需要计算出各个给定高程的上下游面坐标,其难点是要计算出各个高程拱圈中心线的端点x坐标,即要求出x0的值,如图1所示。拱圈中心线方程为y+x2/2R=0,式中R为抛物线在拱冠处的左拱圈或右拱圈的曲率半径。由曲率半径的推导公式,拱圈中心线端点处的曲率半径为:
其中x=x0。由曲率中心坐标公式可知:
其中x=x0
由图1的几何关系可以得出:
图1 拱圈中心线端点各几何量示意图Fig.1 Schematic of each geometric quantity in arch axis end⁃point of arch ring
将上述两式代入得到:
表1 抛物线拱坝体形参数Table 1 Parameters of parabolic-curve arch dam
其中未知量x=x0,R,θ均为已知量,运用牛顿迭代法求此方程的解x0,令:
对其求导得:
2.3 Excel-VBA程序界面及代码
Excel中上下游面各高程拱圈坐标点计算界面,如图2所示。
图2 Excel中各高程拱圈上下游面坐标计算界面Fig.2 Calculation interface of upstream and downstream coor⁃dinates of arch ring on each elevation
部分代码如下:
图3为由Excel-VBA求得的某高程的点坐标。
图3 计算得出的某高程点坐标Fig.3 Calculational coordinates of an elevation
2.4 ANSYS-APDL命令流文件
在Excel中计算得出的点坐标按照APDL命令流的格式输出(如点格式:K,NPT,X,Y,Z)。建模采用自下而上的方法,即先建立关键点,由这些点建立线、面,继而生成体。部分APDL命令如下:
ANSYS中建立的拱坝模型如图4所示。
图4 拱坝模型图Fig.4 Model of arch dam
3 结语
上述拱坝模型的建立表明,基于Excel-VBA与APDL的拱坝参数化建模方法是有效的。Excel-VBA简单易用,且可以根据需要设计灵活的界面,并进行相应的计算。APDL语言编写方便快捷、易修改、建模效率高。两者结合使用,可以在ANSYS中方便快捷地完成拱坝建模。
[1]尚晓江,邱峰,赵海峰,等.ANSYS结构有限元高级分析方法与范例应用[M].北京:中国水利水电出版社,2005.
[2]张涛.ANSYS APDL参数化有限元分析技术及其应用实例[M].北京:中国水利水电出版社,2013.
[3]陈晨.Excel VBA在工程水文计算中的应用[J].水利水电快报,2008(S1):199-202.