System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于计算流体力学领域,具体涉及一种基于sph(smoothed particlehydrodynamics,光滑粒子流体动力学)和fpm(finite particle method,有限粒子法)耦合数值模型的海洋波浪模拟方法。
技术介绍
1、波浪问题的研究在海岸工程中具有重要的意义。对波浪传播演变特性的研究能够更好的指导工程实践,随着计算机硬件和软件的进步与发展,数值模拟的可重复、低成本优势愈加显现。然而传统的数值模拟方法以网格法为主,面对部分包含自由面或涉及大变形的海洋波浪问题,例如波浪破碎、越浪现象、极端波浪、波浪抨击等,往往会由于网格的扭曲变形导致计算精度下降甚至计算崩溃。而以sph方法为代表的具有拉格朗日特性的无网格法,非常适合来研究波浪问题,能够很好地解决自由表面问题,为研究波浪特性提供一种更为有效的研究手段。
2、与传统的网格方法相比,sph方法的粒子特性使其天然的适合研究海洋波浪问题,而与其他格式的无网格方法相比,sph法往往具有较好的数值稳定性,即使在支持域内粒子极为稀疏时也能保证计算稳定,甚至在自由面处能够天然满足自由面边界条件。然而,作为一种较早提出的无网格方法,sph方法只具有一阶精度,即使采用更高的粒子分辨率和更小的时间步长,其精度仍然可能低于fpm等具有二阶精度的数值格式。fpm方法作为sph方法的一种高精度格式,当计算域中粒子数有限时,fpm对粒子的不连续性并不敏感,即相对于sph方法,fpm在粒子分布不连续的情况下仍能保持良好的计算精度。但是,在fpm方法中,当粒子支持域严重
技术实现思路
1、针对现有技术中存在的“sph方法只具有一阶精度,其精度低于fpm等具有二阶精度的数值格式”和“fpm方法不合适求解自由表面附近的流动”的问题,本申请提出一种基于sph和fpm耦合数值模型的海洋波浪模拟方法,通过耦合两种不同的无网格方法,使用sph方法求解fpm方法不能求解的自由表面粒子,使用fpm方法求解其余的粒子以获得更高的精度,达到精确模拟海洋波浪问题的目的。
2、为解决上述技术问题,本专利技术采取的技术方案是一种基于sph和fpm耦合数值模型的海洋波浪模拟方法,具体包括以下步骤:
3、1)初始时刻,依据待模拟海域的尺度,用sph粒子来离散海洋波浪中的水体建立海洋波浪的数值模型,并给所有粒子赋予所需物理量的初始值;sph粒子包括流体粒子和边界粒子两大类,流体粒子用于离散水、空气等真实存在的流体,边界粒子用于代替海岸、海洋工程结构物等具体边界,并起到防止边界附近的流体粒子支持域缺失的作用;
4、2)某一时间步中,计算某一个流体粒子前,首先判断该粒子是否位于自由表面,或临近自由表面,从自由表面最外侧起3-4层内的粒子均称为自由表面粒子;
5、3)若某一流体粒子i属于自由表面粒子,则按照sph格式离散连续性方程计算其密度增量:
6、
7、其中,ρi是粒子i当前时间步的的密度,粒子j是粒子i支持域内某一个粒子,ui,uj分别是粒子i和粒子j的速度矢量,是核函数梯度,mj,ρj分别是粒子j的质量和密度,t表示时间;
8、使用经sph法离散后的navier-stokes方程计算粒子i的速度增量,即按下式计算粒子i的速度增量:
9、
10、其中,
11、πij=(uj-ui)·(xj-xi)/|xij|2
12、上式中,g是重力加速度矢量,c是声速,ρ0i是粒子i的参考密度,pi,pj是粒子i和粒子j的压力,wij是由粒子j和粒子i之间距离确定的核函数值,α是人工粘性系数,xi,xj是粒子i和粒子j的位置矢量,xij=xi-xj,h为粒子的光滑长度;
13、4)如果某一流体粒子i不属于自由表面粒子,则使用fpm法离散后的连续性方程计算粒子i的密度增量,使用fpm法离散后的navier-stokes方程计算粒子i的速度增量;
14、5)若某一粒子i属于边界粒子,使用shepard插值求解粒子i的压力和速度:
15、
16、
17、其中,f代表流体粒子,pf,mf,ρf分别是流体粒子的压力、质量和密度,wif是由边界粒子i和流体粒子f之间距离确定的核函数值,uf是流体粒子f的速度矢量;
18、6)对所有流体粒子,按步骤3)、步骤4)求得粒子的速度增量和密度增量后,依照计算所用的时间推进格式(如预测-校正时间格式),更新粒子的密度和速度,进入下一时间步的求解。
19、优选的,所述物理量包括压力、速度、密度、质量、光滑长度和变形梯度张量;根据模拟的具体的问题可能包括其他需要初始化的物理量,初始化完成后开始计算。
20、所述步骤4)中,对于二维模拟,密度增量和速度增量按下式计算:
21、
22、
23、其中,是核函数梯度在x方向和y方向分量,ui,vi是粒子i的速度矢量ui在x方向和y方向的分量大小,uj,vj是粒子j的速度矢量uj在x方向和y方向的分量大小,τi,x,τi,y是粘性力τ在x方向和y方向的分量,fi,x,fi,y是体力f在x方向和y方向的分量,vj是粒子j的体积,vj=mj/ρj,amn(m=1,2,3;n=1,2,3)是系数矩阵中的元素:
24、
25、其中,xji,yji分别是粒子在x和y方向的距离,即xji=xi-xj,yji=yi-yj,,xi,yi是粒子i在x方向和y方向上的坐标值,xj,yj是粒子j在x方向和y方向上的坐标值;
26、对于三维模拟,仍以fpm法离散后的连续性方程计算粒子i的密度增量,以fpm法离散后的navier-stokes方程计算粒子i的速度增量,离散后控制方程的具体形式在二维模拟的基础上作相应变换,具体的,密度增量和速度增量的计算式应当修改为:
27、
28、
29、其中,是核函数梯度z方向的分量,wi,wj是粒子i和粒子j的速度矢量ui,uj在z方向的分量大小,τi,z是粘性力τ在z方向的分量,fi,z是体力f在z方向的分量,amn(m=1,2,3,4;n=1,2,3,4)是系数矩阵中的元素:
30、
31、其中,zji是粒子在z方向的距离,即zji=zi-zj,zi,zj是粒子i和粒子j在z方向上的坐标值。
32、进一步的,在步骤4)中,对非自由表面的流体粒子使用粒子位移技术以保证粒子分布尽可能均匀,从而避免fpm方法的计算中产生病态矩阵,保证计算稳定性的同时获得更高的计算精度。使用粒子位移技术时,在每一时间步结束后,修正所有非自由表面的流体粒子i的位置,例如,修正量δri可以按下式计算:
33、
34、得到修正量后,按下式修正粒子的位置矢量:
35、x’i=本文档来自技高网...
【技术保护点】
1.一种基于SPH和FPM耦合数值模型的海洋波浪模拟方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的基于SPH和FPM耦合数值模型的海洋波浪模拟方法,其特征在于,所述物理量包括压力、速度、密度、质量、光滑长度和变形梯度张量。
3.根据权利要求1所述的基于SPH和FPM耦合数值模型的海洋波浪模拟方法,其特征在于,
4.根据权利要求1所述的基于SPH和FPM耦合数值模型的海洋波浪模拟方法,其特征在于,所述步骤4)中,对于三维模拟,仍以FPM法离散后的连续性方程计算粒子i的密度增量,以FPM法离散后的Navier-Stokes方程计算粒子i的速度增量,离散后控制方程的具体形式在二维模拟的基础上作相应变换,具体的,密度增量和速度增量的计算式应当修改为:
5.根据权利要求1所述的基于SPH和FPM耦合数值模型的海洋波浪模拟方法,其特征在于,在步骤4)中,对非自由表面的流体粒子使用粒子位移技术以保证粒子分布尽可能均匀,从而避免FPM方法的计算中产生病态矩阵,保证计算稳定性的同时获得更高的计算精度;
6.根据权利要求1所述的
...【技术特征摘要】
1.一种基于sph和fpm耦合数值模型的海洋波浪模拟方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的基于sph和fpm耦合数值模型的海洋波浪模拟方法,其特征在于,所述物理量包括压力、速度、密度、质量、光滑长度和变形梯度张量。
3.根据权利要求1所述的基于sph和fpm耦合数值模型的海洋波浪模拟方法,其特征在于,
4.根据权利要求1所述的基于sph和fpm耦合数值模型的海洋波浪模拟方法,其特征在于,所述步骤4)中,对于三维模拟,仍以fpm法离散后的连续性方程计算粒子i的密度增量,以fpm法离散后的navier-stokes方程计算粒子i的速度增量,离散后控制方程的具体形式在二维模拟的基础上作相应变换,具体的,密...
【专利技术属性】
技术研发人员:何方,张逸凡,姜浩男,赵雨禾,黄灿,
申请(专利权)人:浙江大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。