自由曲面单层网格的划分和优化研究
0 引言
随着社会的进步和计算机的快速发展,建筑的造型越来越多样化。自由曲面因形式多样、线条柔美、造型流畅,越来越多地出现在了现代建筑中。但是自由曲面不同于传统的标准曲面,无法用解析函数来描述,传统标准曲面上的网格划分方法无法直接应用于自由曲面上,在自由曲面上布置杆件长度一致、分布均匀、线条流畅的单层网格是一个困难且复杂的问题。
实际自由曲面工程的网格划分大都采用人工经验或者半经验的方法,如米兰新贸易会展中心
一般而言,高质量的自由曲面网格很难一步到位,因此需对网格进行优化调整,以改善网格的均匀性、流畅性和美观性。文献
1 基本原理
1.1 NURBS曲线曲面
NURBS(Non-Uniform Rational B-Spline)曲线曲面,即非均匀有理B样条曲线曲面,是一种通用的描述自由曲线曲面的方法,通过控制点、权因子、基函数三个因素就可精确表示任意自由曲线曲面。NURBS为描述任意形式的曲线或曲面提供了统一的数学表达式,文献
一条k次NURBS曲线采用有理分式表达形式如下:

式中:u为曲线上的参数;P(u)为参数u在曲线上对应的三维点阵;ωi(i=0,1,…,n)为权因子;di(i=0,1,…,n)为控制顶点,顺序连接成控制多边形;Ni,k(u)为k次规范B样条基函数,由节点矢量按德布尔-考克斯递推公式决定。
类似于NURBS曲线,一张k×l次NURBS曲面的有理分式表达形式如下:

式中:u,v代表曲面两个方向的参数;P(u,v)为曲面上参数u,v对应的三维点阵;ωij(i=0,1,…,m;j=0,1,…,n)为权因子;dij(i=0,1,…,m;j=0,1,…,n)为控制点网格;Ni,k(u)(i=0,1,…,m)和Nj,l(v)(j=0,1,…,n)分别为u向k次和v向l次的规范B样条基函数,分别由u向和v向节点矢量按德布尔递推公式决定。
1.2 网格质量评价
自由曲面网格质量主要取决于单元形状的好坏、杆件长度的均匀性和网格线条的流畅性,网格线条流畅性难以定量评价,故在自由曲面网格优化研究中,常将网格的单元形状指标和杆件长度指标作为网格质量评价指标
对于网格形状指标而言,网格形状越接近正多边形(如正三角形或正四边形),则网格质量越好;对于杆件长度指标而言,杆件长度差异越小,则网格均匀性越好
本文以杆件长度指标为参考指标,对自由曲面网格进行优化研究。优化程序采用统计学的方式,以杆件长度为样本,利用杆长平均值l—和杆长标准差δl来计算杆件长度指标。

式中:li为网格各杆件长度;N为杆件总数。
当δl值越小,则表示杆件长度越均匀,即网格越均匀。
2 基于杆长均匀性的网格优化方法
优化程序采用在物理空间直接优化的方法,以网格杆长标准差最小为优化目标,通过调整网格节点在曲面上的位置,实现对空间网格的均匀性优化,优化流程图如图1所示。优化时将网格节点分为固定节点、边界非固定节点和内部非固定节点三类,针对不同的网格节点类型采取相应的处理措施。
2.1 固定节点
对于开放型曲面,为使网格能更加贴合曲面轮廓,当网格节点位于曲面的角点时,将其定义为固定节点。对于其他不想在优化过程中发生位置改变的网格节点可通过人为输入的方式将其定义为固定节点。固定节点在优化过程中维持坐标不变。
曲面角点是曲面的特征点,可通过下述方法确定:先提取曲面边界线,然后提取曲面边界线的端点作为曲面角点。
2.2 边界非固定节点
当网格节点与曲面边界线的最短距离小于某一容许误差时可视该节点为边界节点,若边界节点为非固定节点,这些节点将沿该边界线进行调整以维持网格轮廓贴合曲面轮廓。边界线上节点的最优布置为等弦长布置,程序中采用中垂面的方法进行调整。
图2所示曲线为目标曲面的边界线,P1,P2,P3,…,Pn为该曲线上的网格节点,其中P1和Pn为曲面的角点,也即优化过程的固定点,其他节点采用中垂面的方法进行调整,直到连接这些节点的杆件长度相等。以P2节点的调整为例介绍该类节点的调整步骤。
Step1:维持点P1和P3不动,计算出P1和P3的中点P1,3,根据P1,3和P3坐标计算由点P1,3指向P3的向量
Step2:计算参考平面与边界曲线的交点P'1,3。若参考平面与曲线只有一个交点,则该点为P'1,3;若有多个交点,以位于节点P1和P3之间的交点为P'1,3。
Step3:令P2=P'1,3,即完成了点P2的调整。
Step4:重复步骤Step1~Step3调整其他节点。
按照Step1~Step4对边界节点进行多次循环调整,并计算每次调整后节点P1,P2,P3,…,Pn间连接杆件长度的标准差δi,并判断
2.3 内部非固定节点
网格节点大部分为曲面内部节点,对于曲面内部节点,采取逐点优化的方式进行优化调整。网格内部节点周围拓扑连接的节点往往有多个,对该节点的优化调整过程也就是在目标曲面上寻找目标点使得该点与周围各节点连接杆件长度渐趋相等的过程,即各杆件长度的标准差逐渐减小的过程。典型的内部节点优化单元如图3所示。
图3所示优化单元中曲面内部节点P0分别与节点P1,P2,…,P6相连,优化过程中固定P1,P2,…,P6位置不动,调整P0在目标曲面上的位置,使得点P0与周围各点的连接杆件长度标准差最小。当点P1,P2,…,P6共球面时,最优P0点与周围各点距离相等,此时杆长标准差等于0。曲面内部点采用网格法
Step1:计算节点P1,P2,…,P6在目标曲面上所对应的曲面参数u,v值。
Step2:选取上述u,v值中的最大值和最小值umax,umin,vmax,vmin,创建曲面搜索域Ω={(u,v)|umin<u<umax,vmin<v<vmax}。对于某方向闭合的曲面,如u向闭合的柱形曲面,若优化单元横跨曲面上u=0曲线,这时需将搜索域进行调整,具体调整方式为先将位于曲面终止侧的点(us,max/2<u<us,max点)的u值更新为u-us,max(us,max为曲面u向参数最大值),然后再选取u,v值中的最大值和最小值并计算曲面搜索域Ω。

根据曲面参数ui,vj和曲面参数方程可计算得到节点Pi,j在整体坐标系下的坐标。程序中采用Rhino中的Surface.PointAt()函数计算Pi,j坐标。
Step4:计算点Pi,j与点P1,P2,…,P6距离的标准差δi,j,然后计算同一个小格的四个角点标准差的平均值

Step5:取上述计算的标准差平均值最小的小格作为新的搜索区域Ω,取该小格四个角点坐标的平均值得到点Popt,采用函数Surface.ClosestPoint()在目标曲面上找到Popt的最近点P'opt,点P'opt即为最优点,调整点P0至该位置。
Step6:重复步骤Step3~Step5直至点P0与周围各点的杆长标准差的相对改变量小于精度要求。
Step7:重复步骤Step1~Step6完成其余内部非固定节点的优化。
对所有节点进行多次迭代优化,直至网格杆件均匀性满足要求。
3 计算实例
为验证本文网格优化方法的正确性和适用性,本节以三个实例进行说明。
3.1 平面四边形网格
如图5所示,边长为9m×9m的平面四边形被划分成9个四边形网格,对该初始网格进行优化,最终得到图6中边长为3m×3m的9个四边形网格。由于本例有数值解,因此较易检验本优化方法的正确性。本文优化方法不改变网格的拓扑结构,因而只要初始网格的拓扑结构不变,不管其形状如何,最终都能优化得到图6所示的形状。
3.2 自由曲面1网格
采用等参线网格划分
将初始网格和目标曲面输入优化程序,优化最高迭代步设置为50步,对该网格进行优化调整。优化调整后的网格如图9所示,可以看出,优化后的网格均匀性和流畅性均得到了明显的改善。网格杆长最大值由优化前的4.40m减小为优化后的3.03m,杆长最小值由优化前的0.88m增大为1.76m,杆长平均值由优化前的2.50m变为优化后的2.46m。优化过程中网格杆长标准差的变化如图10所示。
3.3 自由曲面2网格
采用映射法
将初始网格和曲面输入优化程序,优化最高迭代步设置为30步,对该网格进行优化调整。优化调整后的网格如图14所示,可以看出,优化后的网格均匀性和流畅性均得到了明显的改善。网格杆长最大值由优化前的5.78m减小为优化后的3.87m,杆长最小值由优化前的1.44m增大为1.54m,杆长平均值由优化前的2.67m变为优化后的2.60m。优化过程中网格杆长标准差的变化如图15所示。
4 结论
本文提出了基于杆长均匀性的网格优化方法,以平面四边形网格优化算例验证了本方法的正确性,以两个自由曲面网格优化算例证明了本方法的适用性。结合这三个算例得出以下结论:
(1)通过在Rhino+Grasshopper平台上编制网格均匀性优化程序,实现网格划分和网格优化在同一平台上相继进行,使网格设计与优化调整的衔接更加紧密、操作更加方便,同时也极大地提高了工作效率。
(2)基于杆长均匀性的网格优化方法是对空间网格的直接优化,优化调整过程保证网格节点始终位于曲面上,且能智能识别曲面角点和边界点,避免了网格形状失真的情况出现,也保证了网格在整个优化过程中始终与曲面贴合,实现了结构网格与建筑曲面的完美融合。
[2]李承铭,卢旦.自由曲面单层网格的智能布局设计研究[J].土木工程学报,2011,44(3):1-7.
[3]丁慧.自由形态空间网格结构的网格设计方法研究与实现[D].杭州:浙江大学,2014.
[4]施法中.计算机辅助几何设计与非均匀有理B样条(修订本)[M].北京:高等教育出版社,2013.
[5]江存.自由曲面空间网格结构网格划分、优化及力学性能研究[D].杭州:浙江大学,2015.
[6]徐汝锋,陈志同,陈五一.计算点到曲面最短距离的网格法[J].计算机集成制造系统,2011,17(1):95-100.
[7]张慎,尹鹏飞.基于Rhino+Grasshopper的异形曲面结构参数化建模研究[J].土木建筑工程信息技术,2015,7(5):102-106.