1、1三角网格等效体积法计算河床冲淤摘 要:文章针对三角形网格模型,提出并证明了河床冲淤的三角网格等效体积算法,最后结合工程实例,对算法的计算结果进行了对比分析。 关键词:三角网格 等效体积 河床冲淤 1.前言 在河道的河床演变分析中,通常要利用不同时期的两套地形测图来计算其时间跨度内河床的冲淤情况。在目前的河床实测地形的冲淤计算中,通常采用矩形网格来计算。然而,在河道的数值模拟中,常用三角形网格来建立模型。故本文针对三角形网格模型,提出河床冲淤的三角网格等效体积算法。 2.等效体积的证明 三角形网格计算河床冲淤的思路是:将模型区域(河道范围)看做一平面,并按一定步长划分为若干个小三角形网格;对两
2、套地形做差值,求出各个小网格的河床冲淤值与冲淤面积;分别对冲刷值、淤积值、冲刷面积、淤积面积进行累加,即可求出整个河道的冲刷量、淤积量、冲刷面积、淤积面积。计算思路的关键是如何求出每个小网格的冲淤值。 本文利用三角网格的等效体积,来计算各网格的河床冲淤。现对等效体积法进行证明。 2(1)假定模型平面(z=0)内所计算的三角网格的三顶点坐标分别为 A、B、C,地形差值后各顶点对应的河床冲淤值分别为 z1、z2、z3,且 z1z2z3,则该三角形网格的冲淤量可近似等于空间体 ABC-A1B1C1的体积。如图 1 示,当 z1、z2、z3 同为正值或负值时,空间体 ABC-A1B1C1 为凸五面体;
3、当 z1、z2、z3 不同为正或负值时,空间体由一四面体和一凸五面体组成;当 z1、z2、z3 有零值时,情况较为简单,空间体仅由四面体或四棱锥组成。 (2)底面为ABC 的直三棱柱的体积 V(z)=SABC?z,其中 SABC 为计算三角网格的面积,为已知值。故体积 V(z)是关于变量z(zR)的线性函数,连续且单调递增。 由图可知,V(z1)VA B CA1B1C1V(z3) 。 设存在 z=z0,使得直三棱柱 ABCA0B0C0 的体积等于空间体 A BCA1B1C1 的体积,其中A0B0C0 在平面 z=z0 上。则有 V(z1)V(z0)V(z3) ,带入算式得:z1z0z3。 根据
4、函数的连续性,可知 z0 存在;又 V(z)为单调增函数,故 z0唯一。因此,有且仅有一个 z0,使得 V(z0)=VABCA1B1C1,且z1z0z3。 (3)令 V(z0)=VABC-A1B1C1,根据数学知识3,可求得z0=(z1+z2+z3)/3,且 z=z0 为经过A1B1C1 重心的平面。 至此,三角网格的等效体积法得以证明,且可描述为:任意三角形与其在任一平面上的投影所组成的空间体的体积,等于该投影三角形到经过原三角形重心且平行于投影平面的平面的直三棱柱的体积。 33.计算结果及对比 图 2 为西江界首至贺江口段(长约 14.2Km)2011 年 12 月至 2013 年9 月的
5、河床冲淤变化图,图中负值(蓝色区域)表示期间河床冲刷、正值(黄色或红色区域)则为淤积。河段河床的冲淤量及冲淤面积计算结果见表 1。 由表可知:三角网格计算的河床冲淤量与矩形网格的计算结果相差不大,说明计算结果可信。从总面积看,三角网格的计算结果与模型区域的实际面积误差很小,且计算时间大为缩短,说明本文提出的三角网格等效体积法计算河床冲淤较传统矩形网格算法更优。 4.结论 在河道的数值模拟中,常用三角网格建立模型。针对三角网格模型,本文提出了河道河床冲淤的三角网格等效体积算法:任意三角形与其在任一平面上的投影所组成的空间体的体积,等于该投影三角形到经过原三角形重心且平行于投影平面的平面的直三棱柱的体积。 文章还结合工程实例,对算法的计算结果进行对比分析,认为算法计算结果可信,且较传统的矩形网格算法更优。等效体积法计算三角网格模型河床冲淤的一种思路简单、求解迅速的近似算法,网格步长越小精度越高。当模型网格达到一定步长时,可满足工程的计算精度要求。 参考文献: 1胡建平,吴卫平. Delaunay 三角网在河床冲淤计算中的应用J.海洋测绘,第 29 卷第 6 期,2009 年 11 月. 2王泉德.任意三角网格模型体积的快速精确计算方法J.计算机4工程与应用,2009,45(18). 3贾彪,刘萍.高等数学M.南京:东南大学出版社,2009.