船体曲面的一种光顺重构法

2016-04-25 01:25董枫陈顺怀
哈尔滨工程大学学报 2016年2期
关键词:插值重构

董枫, 陈顺怀

(武汉理工大学 交通学院, 湖北 武汉 430063)



船体曲面的一种光顺重构法

董枫, 陈顺怀

(武汉理工大学 交通学院, 湖北 武汉 430063)

摘要:为了在船舶CAD/CAM/CAE中使用更加精确和光顺的船体模型,基于船体型值数据,通过插值或逼近的方式得到常规站线以及广义站线的NURBS表达式。在得到了这些曲线以后,通过等数弧长均分的方式在这些曲线上取数目相同的数据点,构成所谓的广义型值点,对这些广义型值点进行插值重构来得到一致化的常规站线以及广义站线,这些曲线共同构成生成船体曲面的截面曲线。将这些截面曲线取为曲面的u向等参数线,采用改进的曲面放样方法得到整个船体曲面。结果表明:重构的船体曲面能够具有较好的拟合精度和光顺性。

关键词:插值;逼近;重构;广义站线;等数弧长均分;改进放样

船体曲线曲面生成技术是计算机辅助船舶设计CASD领域最活跃最的学科分支之一,是实现船舶数字化造型的关键技术之一,它可以辅助进行船舶总体性能计算、适航性计算、流体力学分析、结构设计和船舶的生产设计。船体曲面通常是非常复杂的几何曲面,特别是在艏艉区域具有双向曲度,因此如何快速精确的表达船体曲面一直是困扰很多造船工作者的难题,也是他们一直努力的目标。

船体曲线曲面生成是船舶设计制造重要的技术基础,自从国际标准化组织(ISO)正式将NURBS作为定义工业产品几何形状的唯一数学方法[1],曲线曲面几何造型实现了表达形式的统一。国内外学者对船体曲线曲面生成算法原理进行了大量研究,David F. Rogers[2]首次提出采用B样条曲线和曲面来表达船体;Nam[3]在船体曲面设计过程中运用NURBS方法表达;Le T-H等[4]采用遗传算法,以数据点和曲面的最近距离作为适应度函数来拟合曲面;WANG Hu等[5]通过迭代的方式使得曲面在两个参数方向各自具有相同的控制顶点数和节点矢量,然后得到整个船体曲面。周超骏等[6]采用B样条构造船体曲面;林焰等[7-10]对船体曲面的NURBS表达和设计进行了系列研究;陈宾康等[11-12]对NURBS 在船舶设计中的应用进行了相关研究。

在目前的船舶设计过程中,设计人员工作的出发点大多是船体型值点,所关心的是船体型值。但是,船体曲面的重构需要用到的是NURBS 曲线、曲面的控制顶点。基于NURBS的船体曲面重构解决的是NURBS曲面的“反算”问题,即根据已知船体曲面上的一些型值点,构造出NURBS曲面,且保证曲面通过或逼近这些型值点。

本文以NURBS为船体曲线曲面的数学表达工具,采取由点—线—面的方式来获得整个船体曲面,其中点为现有型值点,线为通过本文方法所构造的广义站线,面则为最终通过改进放样法得到的船体曲面。研究表明,本方法能够根据有限的离散型值获得较为精确和光顺的船体曲面,利于对船体进行后续的CAD/CAE/CAM处理。

1船体NURBS曲线的插值和逼近

本文中NURBS曲线曲面均采用齐次坐标表示[13], 次数取为三次和双三次。

1.1曲线插值

可以将NURBS曲线的插值视为简单的插值四维带权型值点的问题,即求解出插值带权型值点的非有理B样条曲线的带权控制顶点,它和传统的B样条插值方法一致,然后取其在的超平面ω=1上的投影,便得到所求的NURBS曲线的控制顶点。

(1)

(2)

4)曲线的分段连接点分别依次与NURBS曲线定义域内的节点一一对应,因此按照式(1)可建立插值方程组,目前该方程组中仅包含n0+1个方程,而未知控制顶点为n0+3个,因此还需要添加2个边界条件使方程组封闭。常用的边界条件包括端切矢条件、自由端条件、抛物线条件、非节点条件等[14]。结合边界条件将方程组写成矩阵形式,以自由端边界条件为例:

P=ND

(3)

式中:

注意N中的元素大部分值为零,每一行只有4个为非零值,求解式(3)便可以得到相应的带权控制顶点:

(4)

图1 插值横剖线Fig.1 Interpolation sectional curve

1.2曲线逼近

事实上往往由于测量误差、录入错误等原因,很多情况下得到的型值点都不是百分百准确的。以此作为后续工作的基础,会使误差得以保留、传递,因此,应该对型值点进行处理,降低误差,即采用逼近而非插值的方式得到曲线往往更有效。

图2 逼近流程Fig.2 Process of approximation

具体的插值反算过程如下:

(5)

3)此时需要寻找一条三次NURBS曲线:

(6)

满足:

剩下的型值点则以最小二乘的方式的逼近,即

(7)

式中:f为一个包含napp-1个变量D1,D2,…,Dnpp-1的标量函数。应用标准的线性最小二乘拟合技术,欲使f最小,则其关于未知变量Dl的导数为零,即

对上式进行简单变换可得

(8)

式(8)为关于未知控制顶点的线性方程,由于l=1,2,…,napp-1,因此便得到一个包含napp-1个变量和napp-1的方程的方程组。写成矩阵形式为

(9)

式中:

(10)

(11)

5)计算求得的逼近曲线与型值点之间的偏差,可以用最大欧几里得范数距离来表达:

(12)

如果ξ≤ε,则输出结果,如果ξ>ε,则取napp=napp+1然后转到第3)步继续执行。

图3为某常规单体船和某双艉船的艉部逼近横剖线。图3(a)和(b)曲线与型值点的最大相对误差分别为0.24%和0.18%。

图3 逼近横剖线Fig.3 Approximation sectional curve

对于实际应用中具体是采用插值还是逼近一方面要考虑型值点的精度,另一方面要考虑型值点的个数。如果型值点不存在测量误差或录入误差且每个横截面的型值点数量不多并分析较为均匀,建议采用插值方法,否则作者建议采用逼近的方法。插值能保证精度但是控制顶点数相对较多,而逼近能够保证在规定误差范围内的情况下进行数据压缩,设计者可根据具体情况进行选择。

图4为某船型艏轮廓线的插值和逼近NURBS曲线对比。型值点数为12个,图4(a)插值曲线的控制顶点为14个,曲线精确通过每个型值点,图4(b)逼近曲线的控制顶点个数为10个,曲线与型值点的最大相对误差为0.17%。从图中可知,对于型值点较多且分布不太均匀的型值点,逼近曲线要比插值曲线光顺。因此对于允许存在一定误差的情况下,逼近曲线的效果要优于插值曲线。

图4 插值和逼近生成的艏轮廓线对比Fig.4 Comparison of stem contour generated by interpolation and approximation

2广义站的构造和曲线重构

2.1构造广义站线

显然,常规的站线无法构成完整表达船体曲面的设计截面,还需要艏艉轮廓线和反应艏艉曲率变化特征的特征曲线,本文以纵向设计法为基础,将船体的艏艉轮廓线和反映艏艉曲率变化特征的特征曲线统称为广义站线,本节将主要介绍这些广义站线的构造方法。

艏艉轮廓线的构造相对简单,只要根据中纵剖线上的型值点插值或逼近即可得到,而反映艏艉曲率变化特征的特征曲线的构造则相对复杂,首先这些特征曲线往往并非平面曲线,如图5中左列所示,平面广义站线通常无法准确反映艏艉部的曲率变化与过渡,因此本文采用三维空间曲线作为广义站线,以便于较好的反映艏艉曲面的走势,如图5中右列虚线所示,这些曲线便是所谓的广义站线。

由于仅根据常规站线无法获得空间广义站线的信息,所以要借助于水线或纵剖线,由于水线相对纵剖线更符合一般的设计思路,因此本文主要借助水线来构造广义站线,具体的构造方法如下:

1)根据型值点,依照第1节提出的插值或逼近方法,得到各条常规横剖站线和水线的NURBS表达式。

2)确定广义站线的纵向范围:以艏部为例:对于不包含球艏的简单船型,如图5中最上面一行图所示,可以将离艏轮廓线最近的站线作为艏部广义站线的左边界,对于带球艏的船型,如图5中最下面一行图所示,此时球艏和船体曲面主体的过渡部分存在双向曲度,通常需要相对较长的纵向范围且较多的广义站线,因此将离艏轮廓线次近的站线作为艏部广义站线的左边界。艉部广义站线纵向范围的确定方式则与艏部类似,如图5中中间一行图所示。

图5 插值和逼近生成的艏轮廓线对比Fig.5 Comparison of stem contour generated by interpolation and approximation

3)为了获得构造广义站线的广义型值点,需要在步2)确定的纵向范围内对每条水线进行等数分割,分割的方式可以是等弧长分割也可以是其他不等弧长分割例如等比分割、指数分割等[15]。本文采取等弧长的等数分割来构造广义型值点,弧长计算表达式如下:

(13)

4)根据第1节提出的方法,对广义型值点进行插值或逼近得到广义站线。

将艏艉广义站线纵向范围内的空间广义站线取代该范围内的常规站线,配合艏艉轮廓线以及艏艉空间广义站线之间的中间常规站线,共同构成了后续生成船体曲面的截面曲线。图6为本方法构造的带球艏和球艉船型的艏艉部广义站线。

图6 艏艉处的广义站线Fig.6 The generalized station of stem and stern

2.2基于等数弧长均分的曲线重构

大量控制顶点的引入使得经典的曲面放样算法很难直接应用到实际的CAD系统中,因此本文提出一种新的一致化处理方法:首先对各条截面曲线(包括常规站线和广义站线)进行等数弧长均分采样以获得广义型值点,然后采用相同次数和节点矢量的一组相容的的NURBS曲线来插值采样点,从而对截面曲线进行一致化的重构。经过该处理过程,各条重构的截面曲线便具有相同的次数、控制顶点数和节点矢量,这样不仅构造了一致化的截面曲线,同时大大减少了控制顶点的冗余,从而为后续的放样曲面过程提供了良好的基础。注意此处采用等数弧长均分的方式采样和2.1节中对水线进行等数弧长均分的目的是不一样的,后者是为了获得足够数量的广义站线以反映曲面在艏艉的走势,而前者是为了构造一致化的截面曲线。

具体的截面曲线一致化重构过程如下:

1)对各截面曲线进行等数弧长均分,设重构前的原截面曲线为

(14)

2)对各条截面曲线的广义型值点进行NURBS插值,次数取为三次,节点矢量则取准均匀节点矢量:

(15)

3)采用1.1节叙述的插值方法对广义型值点进行插值,得到重构后的一致化截面曲线:

(16)

4)计算重构曲线与原截面曲线之间的偏差,同样用最大欧几里得范数距离来表达:

如果ξ≤ε,则输出结果,如果ξ>ε,则取m=m+1然后转到第2)步继续执行。

图7为一游艇重构前和重构后的船体曲线对比。

注:虚线为重构前的原截面曲线,实线为重构后的船体曲线。图7 游艇截面曲线的重构Fig.7 Reconstruction of a yacht′s cross-section curve

从图中可知重构曲线几乎跟原曲线重合,相对误差为ε=0.05%,弧长等分数为7,而且满足后续生成曲面的一致化要求。

3船体NURBS曲面的重构

不同的船型,外型有不同的特点。船体外型的传统描述与表达是船舶型线图和型值表。经过实船的NURBS描述已证明,仅通过船舶型线图和型值表是不能够得到光顺的船体曲面,原因是船舶型线图的站线、水线均太稀疏,不足以来表达光顺的船体曲面。而船体曲面造型包含了一条船的完整的形状信息,它的信息量较船舶型线图或肋骨型线图更完整、全面。

本节的目的便是通过上节重构的截面曲线(包括广义站线和常规站线)来构造船体曲面,采用的曲面生成方法为改进的放样曲面(loftingsurface)方法[16],该方法将截面曲线定义为参数曲面的等参数线并插值通过这些截面曲线。由于重构后的各截面曲线已经满足一致化要求,因此可直接跳过对曲线的预处理过程而直接进行曲面生成,将截面曲线的参数方向取为u向,不失一般性,设共有q+1条截面曲线:

(17)

(18)

(19)

对v向的各行截面曲线控制顶点采用累加弦长参数化方法计算其对应的v向参数值,取各个对应控制顶点参数值的平均值作为统一的v向参数值vs[13]:

(20)

minFi=Ei+Bi=

(21)

求解出上述的优化问题(21),便可以得到船体曲面的控制顶点,然后根据NURBS曲面的表达式(2)得到船体曲面。

图8和图9分别为按照本文提出的船体曲面重构方法得到的船体曲面,图8为一简单船型,图9为带球艏和球艉的复杂船型,从结果可知该重构方法得出的船体曲面具有较好的精度和光顺性。

图8 简单船型的NURBS曲面重构Fig.8 NURBS surface reconstruction of simple hull

图9 复杂船型的NURBS曲面重构Fig.9 NURBS surface reconstruction of complex hull

4结论

以插值和逼近方式拟合型值为基础,引入广义站线来构造船体曲面的截面曲线,通过改进的曲面放样法构造了船体曲面,研究表明:

1)广义站线相对传统站线能够更好的体现出船体曲面在艏艉处的曲率变化和过渡,也为后续的船体曲面重构提供了更为合理的截面曲线;

2)基于等数弧长均分的曲线重构能够在精度范围内很好的拟合船体型线,而且具有良好的数据压缩效果,避免了控制顶点冗余;

3)改进放样法所构造的船体曲面具有较高的拟合精度和光顺性,有效避免了后期大量的人工干预和手动光顺处理;

4)由于曲面重构的过程考虑的是两个参数方向曲线的光顺性,并未从曲面整体来考虑,今后的工作需要对这方面内容进行改进。

参考文献:

[1]ISO. ISO 10303, STEP application handbook[S]. New York: SCRA, 2001.

[2]ROGERS D F. B-Spline curves and surfaces for ship hull design[C]//Proceedings SNAME, SCHAD′77, First International Symposium on Computer Aided Hull Surface Definition. Annapolis, Maryland, 1977: 26-27.

[3]NAM J H, PARSONS M G. A parametric approach for initial hull form modeling using NURBS representation[J]. Journal of ship production, 2000, 16(2): 76-89.

[4]LE T H, KIM D J, MIN K C, et al. B-spline surface fitting

using genetic algorithm[J]. Journal of the society of naval architects of Korea, 2009, 46(1): 87-95.

[5]WANG Hu, ZOU Zaojian. Geometry modeling of ship hull based on non-uniform B-spline[J]. Journal of Shanghai Jiao Tong university: science, 2008, 13(2): 189-192.

[6]周超骏, 刘鼎元, 曹沅. 船体数学线型设计-B样条曲面法[J]. 上海交通大学学报, 1985, 19(3): 1-10, 109.

ZHOU Chaojun, LIU Dingyuan, CAO Yuan. Mathematical design of hull lines with B-spline surfaces[J]. Journal of Shanghai Jiao Tong university, 1985, 19(3): 1-10, 109.

[7]林焰, 纪卓尚, 戴寅生. 船体B样条曲面的数学描述及计算机方法[J]. 中国造船, 1996(4): 83-86.

LIN Yan, JI Zhuoshang, DAI Yinsheng. Mathematical description and computer method for B-spline hull surface[J]. Shipbuilding of China, 1996(4): 83-86.

[8]陆丛红. 基于NURBS表达的船舶初步设计关键技术研究[D]. 大连: 大连理工大学, 2006: 23-47.

LU Conghong. Key technologies in preliminary ship design based on NURBS representation[D]. Dalian: Dalian University of Technology, 2006: 23-47.

[9]张明霞, 纪卓尚, 林焰. 面向计算的船体曲面NURBS造型[J]. 船舶工程, 2001, (5): 11-12, 40.

ZHANG Mingxia, JI Zhuoshang, LIN Yan. Calculation-oriented ship hull surface NURBS modeling[J]. Ship engineering, 2001, (5): 11-12, 40.

[10]仵大伟, 林焰, 纪卓尚. 船体曲面的NURBS 表达与设计[J]. 大连理工大学学报, 2002, 42(5): 569-573.

WU Dawei, LIN Yan, JI Zhuoshang. Ship hull surface′s NURBS representation and design[J]. Journal of Dalian university of technology, 2002, 42(5): 569-573.

[11]赵成璧, 邹早建. 基于 NURBS 的船舶型线设计程序EHULL[J]. 武汉造船, 2001 (1): 28-31.

ZHAO Chengbi, ZOU Zaojian. Ship line design package EHULL based on NURBS[J]. Wuhan shipbuilding, 2001 (1): 28-31.

[12]陈绍平, 陈宾康. 基于NURBS 曲线的双艉船型线设计研究[J]. 中国造船, 2001, 42(2): 7-11.

CHEN Shaoping, CHEN Binkang. Hull line design for twin stern ship based on NURBS curve[J]. Shipbuilding of China, 2001, 42(2): 7-11.

[13]PIEGL L, TILLER W. The NURBS book[M]. 2nd ed. Berlin: Heidelberg: Springer, 1997: 52-77.

[14]施法中. 计算机辅助几何设计与非均匀有理B样条[M]. 北京: 高等教育出版社, 2001: 24-28.

[15]闫秋莲, 杨启. 基于NURBS的船体曲面重构[J]. 船舶工程, 2006, 28(5): 5-9.

YAN Qiulian, YANG Qi. Ship hull surface reconstruction on the basis of NURBS modeling[J]. Ship engineering, 2006, 28(5): 5-9.

[16]董枫. 船体曲面特征参数化设计技术研究[D]. 武汉: 武汉理工大学, 2012: 36-45.

DONG Feng. Study on characteristic parametric design of ship hull surface technology[D]. Wuhan: Wuhan university of technology, 2012: 36-45.

A fair reconstruction method of hull surface

DONG Feng,CHEN Shunhuai

(School of Transportation, Wuhan University of Technology, Wuhan 430063, China)

Abstract:In order to use more accurate and fair hull model in ship CAD/CAM/CAE system, based on the hull offset data, the NURBS representation of the conventional station ordinates and generalized station ordinates are obtained by interpolation or approximation method. After obtaining these curves, the same number of data points is sampled from these curves by dividing its arc length equally, so as to form generalized offset points. By interpolation of these generalized offset points, compatible conventional station ordinates and generalized station ordinates are reconstructed, and these curves together constitute the cross-section curves of the hull surface. These cross-section curves are taken as u-direction isoparametric curves of hull surface. By using improved surface lofting method, the whole hull surface is gotten. From the results, it can be seen that the reconstructed hull surface has good fitting accuracy and fairness.

Keywords:interpolation; approximation; reconstruction; generalized station; dividing arc length equally; improved lofting

中图分类号:U662.2

文献标志码:A

文章编号:1006-7043(2016)02-0198-07

doi:10.11990/jheu.201410069

作者简介:董枫(1989-), 男,博士研究生;陈顺怀(1966-),男,教授,博士生导师.通信作者:董枫,E-mail: dfisgood@163.com.

基金项目:国家自然科学基金重点资助项目(51039006).

收稿日期:2014-10-27.网络出版日期:2015-12-15.

网络出版地址:http://www.cnki.net/kcms/detail/23.1390.u.20151215.1517.032.html

猜你喜欢
插值重构
滑动式Lagrange与Chebyshev插值方法对BDS精密星历内插及其精度分析
视频压缩感知采样率自适应的帧间片匹配重构
长城叙事的重构
基于Sinc插值与相关谱的纵横波速度比扫描方法
北方大陆 重构未来
基于pade逼近的重心有理混合插值新方法
混合重叠网格插值方法的改进及应用
北京的重构与再造
《刑法》第64条的实然解读与应然重构
对教育会诊的反思与重构