基于OpenFOAM的数值波浪水槽的建立与验证*

2015-03-14 09:40黄鹏飞宋呈文付深尧
舰船电子工程 2015年6期
关键词:波高水槽波浪

黄鹏飞 张 凯 宋呈文 付深尧

(中国白城兵器试验中心气象海洋水文装备测试与评估技术实验室 白城 137001)



基于OpenFOAM的数值波浪水槽的建立与验证*

黄鹏飞 张 凯 宋呈文 付深尧

(中国白城兵器试验中心气象海洋水文装备测试与评估技术实验室 白城 137001)

论文基于粘性不可压缩流体的N-S方程,采用开源CFD代码OpenFOAM建立了二维数值波浪水槽,并对水槽的造波效果进行了验证。结果表明:采用OpenFOAM能够方便建立符合设计要求的数值波浪水槽;数值水槽能够产生试验所需的规则波动;水槽消波区域作用良好,能够消除反射波对自由波动区域的影响。

OpenFOAM; 数值波浪水槽; 造波与消波

Class Number TP391

1 引言

数值波浪水槽主要用来模拟物理实验波浪水槽的造波与消波功能,完成波浪及水流、泥沙与海洋工程相互作用等相关科学研究和试验任务。相较于传统波浪水槽,数值波浪水槽具有造价低廉、数据采集容易、易于改造等特点,是开展波浪水槽相关试验的有效方法。伴随着水动力学和计算机技术的发展,开发和应用数值波浪水槽,已经成为了国内外的研究热点。同时,对于采用数值波浪水槽进行的科学试验而言,由于其可以实现无触流场测量,能够有效避免试验中传感器的干扰,获得更加系统和详尽的流场数据,因而广泛应用于海岸、港口和海岸工程建设和研究中[1~3]。

对于数值水槽的建立而言,控制方程一般采用基于势流理论的Laplace方程和基于粘性理论的N-S方程等。相比于Laplace方程,N-S方程能够求解波面破碎、翻卷以及漩涡等复杂的流场粘性效应变化,因而基于N-S方程建立数值波浪水槽是更好的选择[4~5]。近年来,针对数值波浪水槽的研究不断发展,取得了许多成果。邹志利等、刘加海等根据物理水槽造波原理,通过造波板边界的运动实现了规则波的造波[6~7]。Lin & Liu提出了基于N-S方程的质量源造波方法[8]。周勤俊等采用Fluent软件,发展了适用于VOF方法的源造波与消波技术[9]。梁修锋等建立了基于推边界造波和动量源消波的数值波浪水池,模拟了规则波下的甲板上浪过程[10]。

本文采用OpenFOAM开源软件建立数值波浪水槽实现数值造波与消波,OpenFOAM的造波模块waveFoam是基于interFoam模型开发而来,根据选取的造波方式的不同,造波源项可以完成:线性波、椭圆余弦波、摆线波、孤立波、斯托克斯波等波动形式的模拟。相比于传统方法,采用OpenFOAM建立数值波浪水槽更加方便易用,并且能够实现多种波动的造波,对于海洋水文试验保障有着一定应用价值。

2 理论模型

二维数值波浪水槽的控制方程采用以速度和压力为变量的不可压缩粘性流的的二维N-S方程和连续方程。选取x方向和z方向作为二维直角坐标系,其中x方向水平向右,z方向垂直向上。u和w分别为两方向的速度分量,ρ为流体密度,ν为流体的运动学粘性系数。

连续方程表示如下:

(1)

动量方程表示如下:

(2)

其中,μ(x)为消波系数。对于不同区域,消波系数的表达形式不同。

本文造波源项采用斯托克斯波浪理论(有限振幅波理论),Stokes去掉了微振幅的局限,并且能保持波形不变。同时,其考虑到了自由表面的非线性条件,得到弱非线性的二阶Stokes波的波面方程和势函数,如下:

(3)

在有限振幅波理论二阶近似下,波长与波高是相互独立的两个参数,而波长的变化仅仅与波动周期相关,波高和周期才是真正独立的两个波浪要素。对于三阶及三阶以上的有限振幅波理论,波长除了与周期相关外,也与波高有关。有限振幅波理论中,水质点的运动轨迹不是封闭的,而是螺旋向前延伸的。并且,水质点垂直方向上的运动平均位置在静止位置以上。

3 数值波浪水槽的建立与验证

3.1 水槽的建立方法

要想实现数值造波,就必须首先对实验所需波浪的造波参数进行相应计算。波浪参数的设定,需要满足有限深度情况下波动的速度公式:

(4)

在设定好实验所需的水深depth、周期T、波高height后,根据公式迭代求解,即可得到波长。

首先建立数值造波所需计算模型并对模型进行网格划分(本文采用Gambit软件实现数值水槽模型建立和网格划分),通过OpenFOAM的网格转换程序,将生成的网格文件转换到OpenFOAM计算系统下,并修改相应边界条件以备计算使用。根据计算所得波浪参数,设定wavefoam数值造波的波浪参数,具体在constant文件夹下的waveProperties文件设定,如图1所示为本文设定的波浪参数文件之一。其中需要设定的参数主要为:水平面位置、造波类型、周期、圆频率、水深、波数、波高等参数,同时需要设定造波区域和消波区域,编程如下:

timeShift 0.0;

seaLevel 0.00;

relaxationNames (inlet outlet);

initializationName outlet;

pName p_rgh;

inletCoeffs

{

Tsoft 3.58;

depth 20.00;

omega 1.75508;

phi 0.000000;

waveNumber (0.3141593 0.0 0.0);

height 0.4;

relaxationZone

羊,我曾经与它们这些牲畜朝夕相处。它们是我们那地方人来到这个世界就与其厮守一生的伴侣啊。后来,是我放弃了它们。也许从那时起,我的生命就已经到头了。

{

relaxationScheme Spatial;

relaxationShape Rectangular;

beachType Empty;

relaxType INLET;

startX (0 0.0 -1);

endX (40 0.0 1);

orientation (1.0 0.0 0.0);

}

};

outletCoeffs

{

waveType potentialCurrent;

U (0 0 0);

Tsoft 3.58;

relaxationZone

{

relaxationScheme Spatial;

relaxationShape Rectangular;

beachType Empty;

relaxType OUTLET;

startX (160 0.0 -1);

endX (200 0.0 1);

orientation (1.0 0.0 0.0);

}

};

OpenFOAM的数值模拟计算有其特殊性,由于不具备窗口式操作界面,所有参数设定,包括:初始条件、网格文件、环境参量、计算控制参量等都需要在文本文件中设定。在文件夹0下设定计算初始场文件,在system文件夹下controlDict文件中设定计算时间步长、计算时间等参数。同时,为了分析波动传播情况以及分析造波情况好坏,在controlDict文件中设定采样点以监视波动发展情况好坏。各项控制文件设定完成后,调用wavefoam的前处理模块,进行波浪初始化设定,然后调用wavefoam计算程序计算即可。

3.2 结果的验证

为了验证采用OpenFOAM所建立数值波浪水槽的造波效果,本文共建立两个不同尺寸数值波浪水槽模型,分别为水深20m和水深40m两种情况,模拟了不同水深、不同波长、不同波高等条件下波浪生成情况。两个波浪水槽边界类型设定一致,左边界为波浪输入入口,右边界为消波区域边界,底边界为壁面边界,上边界为压力出口边界。

根据实验目的,本文共计设计了八组数值模拟造波实验,分别为:水深20m时,波长10m,波高0.4m;水深20m时,波长10m,波高0.6m;水深20m时,波长20m,波高0.4m;水深20m时,波长20m,波高0.6m;水深40m时,波长20m,波高0.6m;水深40m时,波长20m,波高0.8m;水深40m时,波长40m,波高0.6m;水深40m时,波长40m,波高0.8m。8组数值造波实验编号如表1所示,以D20-L10-H0.4为例:D20表示水深20m,L10表示波长10m,H0.4表示波高0.4m,其余命名标准与此一致。

表1 数值造波实验编号

数值造波结果的好坏主要体现在三个方面,首先是造波区域能够生成符合设计需要的原始波动,这是数值造波实现的基础;其次是波浪参数设定正确且能够保证波动传播到自由区域后保持原有波动情况,这是数值造波的目的;最后就是消波区域能够充分消除波动,避免回波影响自由区域的波动状况,这是数值造波实现的保证。依据以上因素,以D20-L20-H0.4这组实验为代表分析本文所建立数值波浪水槽造波效果(其余各组实验结果与D20-L20-H0.4基本一致,都能生成可靠的波动场)。

首先对造波区域中波动情况进行分析,对于D20-L20-H0.4而言设定造波参数为:波长20m、波高0.4m、周期3.58s,图1表示距离左边界20m处造波区域内一点的波动随时间变化情况(以左边界作为零点,0m~40m范围为造波区域)。

图1 距离左边界20m处波面变化

由图可知,此处波动情况波高0.4m,波动周期计算后为3.58s,同时根据表面波动情况计算出波长为20m,完全符合波浪参数设定情况,说明数值造波初始场设定正确。由于造波区域中的波动情况是强制波动,不存在波动传播的衰减,因此其波动状况为规则变化,且完全符合造波参数设定。

图2 距离左边界100m处波面变化

其次,对自由波动区域波动情况进行分析。图2表示位于距离左边界100m处自由波动区域一点波动随时间的变化情况(以左边界作为零点,40m~160m范围为自由区域)。由图可知,由于波动需要传播一段时间才能到达此处,所以其波动变化开始较造波区域晚一点,且波动传播过来之后需要一定时间才能使波动变化趋于平稳。分析平稳后波动情况,可知此处波动周期为3.58s,波长为20m,与造波区域设定一致,波高约为0.39m左右,与造波区域相比略有降低。波动从造波区域传播到自由波动区域之后,波动状态从强制波动变为自由波动状态,因此,在波动传播的过程中存在能量的损耗,导致波高相比于造波区域而言有所降低,这属于正常情况。通过分析表明,波动从造波区域传播到自由区域后,波形未发生明显变化,波动传播稳定,符合造波设计要求,说明本文所建立数值波浪水槽能够生成试验所需的规则波浪。

最后,对消波区域消波效果进行分析,这也是衡量数值造波好坏的关键因素。消波区域的作用是消除波动,避免波动传播到边界后反射影响自由区域波动情况,消波区域设定的好坏直接影响自由波动区域波动场的好坏。图3分别表示距离左边界180m处和195m处位于消波区域两个点的波动随时间变化情况(以左边界作为零点,160m~200m范围为消波区域)。由图可知,当波动传播到消波区域后,波动情况在消波区域消波项的作用下波动迅速衰减,在180m处已经基本不存在波动情况,195m处则完全没有波动现象。因此,本文消波区域的设定完全符合设计需求。

图3 消波区两点波面变化

综合以上三个方面,本文采用OpenFOAM的wavefoam模块实现数值造波的方法是可靠的,能够建立符合设计指标的数值波浪水槽。无论是造波区域,自由区域,还是消波区域,都能很好地满足设计需要,生成研究所需的波动,能够满足海洋水文试验所需造波需求。

4 结语

本文基于粘性不可压缩流体的N-S方程,采用开源CFD代码OpenFOAM建立了二维数值波浪水槽,并通过对水槽造波区域、自由波动区域和消波区域三个要素的分析,对水槽的造波效果进行了验证,结果表明:

1) 采用OpenFOAM能够方便地建立海洋水文试验所需的数值波浪水槽,通过选取不同的造波方法可以产生多种波动;

2) 数值波浪水槽采用的二阶Stokes源造波方法能够产生海洋水文试验需要的规则波动;

3) 数值波浪水槽的消波区域设计合理,能够消除反射波对自由波动区域的影响,保障试验区域(自由波动区域)波动情况不受边界影响。

[1] 黄华,邓冰,等.数值波浪水槽构建与二阶Stokes波仿真[J].系统仿真学报,2012,24(1):167-171.

[2] Park J C, Kim M H, Miyala H. Three-dimensional numerical wave tank simulations on fully nonlinear wave-current-body interactions[J]. Journal of Marine Science and Technology,2001(6):70-82.

[3] G Wei, Y X You, X B Su. Two-Dimension Numerical Internal Wave tank for Navier-stokes Equation Model in the stratified Fluid[C]//Proceedings of the Fifth International Conference on Fluid Mechanics Shanghai, China Aug,2007:15-19.

[4] Harlow FH, Welch J E. Numerical calculation of time-dependent viscous incompressible flow[J]. Physics of Fluids,1965,8:2182-2189.

[5] Orlansk I. A simple boundary condition for unbounded hyperbolic flows[J]. Journal of Computational Physics,1976,21:251-269.

[6] 邹志利,邱大洪,王永学.VOF方法模拟波浪槽中二维非线性波[J].水动力学研究与进展,1996,11(1):93-103.

[7] 刘加海,杨永全,张洪雨,等.二维数值水槽波浪生成过程及波浪形态分析[J].四川大学学报(工程科学版),2004,36(6):28-31.

[8] Lin P, LIU P L F. Internal wave maker for navier stokes equations models[J]. Joural of Waterway, Port, Coastal and Ocean Engineering,1999,125(4):207-217.

[9] 周勤俊,王本龙,兰雅梅,等.海堤越浪的数值模拟[J].力学季刊,2005,26(4):629-633.

[10] 梁修锋,杨建民,李欣,等.FPSO甲板上浪的数值模拟[J].水动力学研究与进展,2007,22(2):229-236.

Building and Verification of Numerical Wave Tank Based on OpenFOAM

HUANG Pengfei ZHANG Kai SONG Chengwen FU Shenyao

(Meteorological and Ocean Hydrological Equipments Test & Evaluation Technology Laboratory, Baicheng Ordnance Test Center, Baicheng 137001)

Based on the Navier-Stokes equations for viscous and incompressible fluid, a two dimensional numerical wave tank was established using OpenFOAM. Then, typical stokes was simulated and verified in this 2D numerical wave tank. The result showed that numerical wave tank could be established using OpenFOAM. The wave generating and absorbing function worked well. Within the numerical wave flume, the reflected waves from the construction could be absorbed effectively.

OpenFOAM, numerical wave tank, wave generating and absorbing

2014年12月4日,

2015年1月11日

黄鹏飞,男,硕士研究生,助理工程师,研究方向:流体动力模拟及其海洋应用。

TP391

10.3969/j.issn1672-9730.2015.06.021

猜你喜欢
波高水槽波浪
波浪谷和波浪岩
可升降折叠的饮水机水槽
可升降折叠的饮水机水槽
潜堤传递波高系数研究
小鱼和波浪的故事
波浪谷随想
基于外海环境预报的近岸岛礁桥址区波高ANN推算模型
为什么水槽管要做成弯曲状
水槽过滤片
波浪斜向入射近岸浅水变形波高模型建立