基于SPH算法的流域建模方法技术

技术编号:37325873 阅读:13 留言:0更新日期:2023-04-21 23:04
本发明专利技术公开了一种基于SPH算法的流域建模方法,包括步骤S1:将流域划分成若干网格,并沿流域宽度方向将网格分为三个区域,包括靠近流域河床的两侧外部网格区域和位于流域中心的内部网格区域;步骤S2:流域由若干水分子微粒组成,建立水分子微粒受力模型,分析不同区域水分子微粒的受力情况,采用SPH算法得出水分子微粒的加速度关系式;步骤S3:每个网格中含有多个水分子微粒,给不同网格设置不同编号,建立网格哈希表,根据网格编号获取内部水分子微粒索引;然后根据水分子微粒的速度、加速度值,得出下一帧画面中水分子微粒所在位置,实现水流动态可视化模拟,效果更接近真实情况,为流域后续深入研究奠定良好的基础。为流域后续深入研究奠定良好的基础。为流域后续深入研究奠定良好的基础。

【技术实现步骤摘要】
基于SPH算法的流域建模方法


[0001]本专利技术属于水文领域,具体涉及一种基于SPH算法的流域建模方法。

技术介绍

[0002]水文监测是水文工作的重要组成部分,对我国水利规划、水工程建设管理、防汛抗早、水资源管理与保护具有重要意义。近年来,随着通信技术、人工智能技术等新技术的发展,以及全国中小河流水文监测系统工程、全国水文基础设施建设规划等重点项目的实施,我国水文水资源监测能力得到显著提升。
[0003]在对流域水文研究中,对流域进行模拟、分析也尤为重要。现有技术中,对流域的模拟研究中,大多数基于沿河流宽度方向水的流速相同这一基础,但是这样的设定与真实情况不符,导致模拟失真,进而影响后续的研究精准度。因为在真实环境中,由于流域两侧靠近河岸的的部分,水流受到河岸的阻力,导致流速较缓,而河流中间位置的流速更快。

技术实现思路

[0004]本专利技术提供了一种基于SPH算法的流域建模方法,解决现有技术中在对流域的模拟研究过程中,大多数研究基于沿河流宽度方向水的流速相同这一基础,但是这样的设定与真实情况不符,导致模拟失真的技术问题。
[0005]为了解决上述技术问题,本专利技术采用如下方案实现:基于SPH算法的流域建模方法,包括如下步骤:步骤S1:将流域划分成若干网格,并沿流域宽度方向将网格分为三个区域,包括靠近流域河床的两侧外部网格区域和位于流域中心的内部网格区域;步骤S2:流域由若干水分子微粒组成,建立水分子微粒受力模型,分析不同区域水分子微粒的受力情况,采用SPH算法得出水分子微粒的加速度关系式;步骤S3:每个网格中含有多个水分子微粒,给不同网格设置不同编号,建立网格哈希表,根据网格编号获取内部水分子微粒索引;然后根据水分子微粒的速度、加速度值,得出下一帧画面中水分子微粒所在位置,模拟流域中水的流动。
[0006]本申请中,基于水流受到河岸的阻力导致不同区域流速不同的真实状况,将流域沿其宽度方向将网格分为三个区域,分为靠近流域河床的两侧外部网格区域和位于流域中心的内部网格区域;对外部网格区域和内部网格区域的水流分别进行受力分析。根据不同区域水流的受力不同,得出不同区域水流下一时刻的速度、加速度,以及下一帧所在位置,实现水流动态可视化模拟,效果更接近真实情况,为流域后续深入研究奠定良好的基础。
[0007]进一步优化,所述步骤S2中,建立单个水分子微粒受力模型,并进行受力分析:1)、靠近流域河床的两侧外部网格区域中的水分子微粒受力如下:;(1)2)、流域中心的内部网格区域中的水分子微粒受力如下:
;(2)其中,,为水分子微粒的重力,g为重力加速度,为密度;,为水分子微粒受到的压力,为水分子微粒从上一个位置流动到下一位置过程中所受压力之差;,为水分子微粒受到的粘性力,由水分子微粒之间的速度差产生,μ为粘度系数,水分子微粒从初始位置流动到下一位置的流速差。
[0008],为水分子微粒受到的河床的阻力,由水流与河岸接触面摩擦产生。
[0009]其中,,表示水流与河岸的摩擦系数,n为与水流接触的河岸的粗糙度,e
t
边界层厚度;S表示接触面积,表示水分子微粒到河道接触面之间的垂直距离。。
[0010]进一步优化,所述步骤S2中,采用SPH算法得出水分子微粒的加速度关系式,具体包括如下步骤:步骤S2.1:定义光滑核函数,在流域中随机选择一个水分子微粒D,其半径为r;以水分子微粒D为中心,在光滑核半径h范围内有N个其他水分子微粒,半径依次为r1,r2,
……
,r
N
,受周围其他N个水分子微粒作用后,则水分子微粒D的某项属性A为:;(3)其中,j∈[1,N],且为正整数,A
j
为要累加的某种属性,m
j
、和分别是周围其他水分子微粒的质量、密度和位置,为水分子微粒D的位置向量,h为光滑核半径;W为光滑核函数;步骤S2.2:分析单个水分子微粒与光滑核半径h范围内的其他水分子微粒之间的关系,具体为:步骤S2.2.1:用密度ρ代替公式(3)中的A,设定所有水分子微粒的质量相同都为m,在三维空间中,处的密度计算公式最终为:;(4)依次用压力P、速度u代替公式(3)中的A,并与式(4)联合,得出光滑核半径h范围内水分子微粒所受重力、压力和粘性力;步骤S2.2.2:计算靠近流域河床的两侧外部网格区域中水分子微粒所受阻力:靠近流域河床的两侧外部网格区域中,沿流域宽度方向包含多层网格,不同层网
格中的水分子微粒受到河床的阻力不同;具体为从河岸向河流中心,水分子微粒受到河床的阻力逐渐衰减,设定衰减系数;;(5)式中,k为水分子微粒所在边界层网格的索引,其中边界层最靠近河床壁面的那层网格索引为0,为边界层厚度;得出阻力产生的加速度:;(6)步骤S2.2.2:计算出水分子微粒的加速度:其中,流域中心的内部网格区域中水分子微粒的加速度:;(7)靠近流域河床的两侧外部网格区域中的水分子微粒加速度:(8)。
[0011]进一步优化,所述步骤S3中,具体包括如下步骤:步骤S3.1:首先创建单个水分子微粒的信息结构体,保存其位置、密度、压力、流体阻力、加速度、速度以及最终速度信息;其次,建立缓冲缓存类,保存所有的水分子微粒信息;并建立一个链接,将网格中的多个水分子微粒通过链接方式连接;步骤S3.2:遍历链接,根据每个水分子微粒的受力,从而得出水分子微粒下一时刻的速度、加速度,以及下一帧画面中水分子微粒所在位置;伴随时间的推移,更新缓存数据,实现基于SPH的水分子微粒动态可视化;所有水分子微粒动态移动形成流域中水的流动。
[0012]进一步优化,靠近流域河床的两侧外部网格区域中,沿流域宽度方向包含多层网格,设定与河床接触的最外层网格编号为k=0,次外层编号为1,依次递加;然后使用哈希表的方式,给每个空间网格赋予编号,根据网格编号在哈希表中获取水分子微粒索引,具体为:首先建立三个网格哈希表,分别记为第一哈希表、第二哈希表和第三哈希表,其中,第一哈希表储存全部的网格信息,第二哈希表储存靠近流域河床的两侧外部网格区域中的网格信息,第三哈希表储存流域中心的内部网格区域的网格信息;然后再根据靠近流域河床的两侧外部网格区域中的分层情况,设置一定数量的子哈希表,将外部网格区域中各层网格信息存储到对应编号的子哈希表中。
[0013]进一步优化,建立冲突链表,哈希冲突时,将网格中的多个水分子微粒通过链表方式连接。
[0014]进一步优化,所述网格边长设置为光滑核半径的2倍。
[0015]与现有技术相比,本专利技术具有如下有益效果:本申请中,基于水流受到河岸的阻力导致不同区域流速不同的真实状况,将流域
沿其宽度方向分为三个区域,分为靠近流域河床的两侧外部网格区域和位于流域中心的内部网格区域;对外部网格区域和内部网格区域的水流分别进行受力分析,根据不同区域水流的受力不同,得出不同区域水流下一时刻的速度、加速度,以及下一帧所在位置,实现水流动态可视化模拟,效果更接近真实情况,为流域后续深入研究奠定良好的基础。...

【技术保护点】

【技术特征摘要】
1.基于SPH算法的流域建模方法,其特征在于,包括如下步骤:步骤S1:将流域划分成若干网格,并沿流域宽度方向将网格分为三个区域,包括靠近流域河床的两侧外部网格区域和位于流域中心的内部网格区域;步骤S2:流域由若干水分子微粒组成,建立水分子微粒受力模型,分析不同区域水分子微粒的受力情况,采用SPH算法得出水分子微粒的加速度关系式;步骤S3:每个网格中含有多个水分子微粒,给不同网格设置不同编号,建立网格哈希表,根据网格编号获取内部水分子微粒索引;然后根据水分子微粒的速度、加速度值,得出下一帧画面中水分子微粒所在位置,模拟流域中水的流动。2.根据权利要求1所述的基于SPH算法的流域建模方法,其特征在于,所述步骤S2中,建立单个水分子微粒受力模型,并进行受力分析,具体为:1)、靠近流域河床的两侧外部网格区域中的水分子微粒受力如下:;(1)2)、流域中心的内部网格区域中的水分子微粒受力如下:;(2)其中,,为水分子微粒的重力,g为重力加速度,为密度;,为水分子微粒受到的压力,为水分子微粒从上一个位置流动到下一位置过程中所受压力之差;,为水分子微粒受到的粘性力,由水分子微粒之间的速度差产生,μ为粘度系数,水分子微粒从初始位置流动到下一位置的流速差;,为水分子微粒受到的河床的阻力,由水流与河岸接触面摩擦产生;其中,,表示水流与河岸的摩擦系数,n为与水流接触的河岸的粗糙度,e
t
边界层厚度;S表示接触面积,表示水分子微粒到河道接触面之间的垂直距离。3.根据权利要求2所述的基于SPH算法的流域建模方法,其特征在于,所述步骤S2中,采用SPH算法得出水分子微粒的加速度关系式,具体包括如下步骤:步骤S2.1:定义光滑核函数,在流域中随机选择一个水分子微粒D,其半径为r;以水分子微粒D为中心,在光滑核半径h范围内有N个其他水分子微粒,半径依次为r1,r2,
……
,r
N
,受周围其他N个水分子微粒作用后,则水分子微粒D的某项属性A为:;(3)其中,j∈[1,N],且为正整数,A
j
为要累加的某种属性,m
j
、和分别是周围其他水分子微粒的质量、密度和位置,为水分子微粒D的位置向量,h为光滑核半径;W为光滑核函
数;步骤S2.2:分析单个水分子微粒与光滑核半径h范围内的其他水分子微粒之间的关系,具体为:步骤S2.2.1:用密度ρ代替公式(3)中的A,设定所有水分子微粒的质量相同都为m,在三维空间中,处的...

【专利技术属性】
技术研发人员:钱燕熊佳韦露斯何力劲吴春熠赵小娥黄依之谢天云张义敏黄晓霞周舜轩林芯伊
申请(专利权)人:水利部珠江水利委员会水文局
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1