一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种稀薄气体粒子碰撞模拟计算方法与流程

2022-03-30 10:46:36 来源:中国专利 TAG:


1.本发明涉及稀薄气体动力学数值模拟领域,具体地,涉及一种稀薄气体粒子碰撞模拟计算方法。


背景技术:

2.当气体处于稀薄状态时,连续介质的假设失效,一般的计算流体力学(cfd)格式不再精确。稀薄气体流动的求解通常需要采用粒子类的直接模拟蒙特卡洛(direct simulation monte carlo, dsmc)方法。dsmc方法的核心思想是从流体的物理本质出发,在平均自由程和平均碰撞时间的时空尺度上,将粒子的运动和碰撞解耦处理。
3.碰撞计算一般采用非时间计数器方法,步骤如下:1、计算网格单元中待测试的粒子碰撞对数目:其中,是网格单元内粒子数目,是一个粒子所代表的的真实分子数目,是碰撞截面积,是碰撞对相对速度,是时间步长,是网格单元的面积。表示网格单元内的最大值。
4.2、遍历所有待测试碰撞对,选择碰撞对粒子,计算碰撞概率,根据取舍法,判断碰撞对是否真正发生碰撞。
5.如果,判定碰撞发生,否则碰撞不发生。
6.其中,是位于0和1之间均匀分布的随机数。
7.3、如果判定发生碰撞,则采用现象学larsen-borgnakke模型完成内能的松弛计算,并采用变径硬球模型完成碰撞后速度的计算。如果考虑化学反应,则执行总碰撞能模型或者量子动理学模型来完成化学反应计算。
8.组成碰撞对的两个粒子之间的距离称为平均碰撞距离(mean collision seperation, mcs)。这一参数对计算结果的精确性有着直接的影响。在早期的方法中,两个粒子均是在网格单元内随机选取,与两个粒子间的相对位置无关。碰撞过程中,质量、动量与能量守恒,但角动量并不守恒。由于这种非守恒性,当两个粒子分别从网格单元的相对面(最远端)来选取的时候,会降低计算的精度。
9.一种改进的选取方法是固定子网格技术。碰撞对中的第一个粒子仍然从网格单元内随机选出,但第二个粒子不再随机选择,而是优先从第一个中选粒子所在的子网格中选
取。如果失败,再转到临近的子网格中选取。这样,就可以有效地降低mcs,将mcs的尺度由网格单元尺度降为子网格单元尺度。但是如果不能保证每个子网格内至少有两个粒子的话,碰撞对的搜索就会显得复杂,从而增加算法的复杂度。而且粒子在网格及子网格中的索引排序需要增加一些时间消耗。
10.还有一种改进方法是虚拟子网格技术。在随机选中第一个粒子之后,逐一检查该粒子与网格中剩余的n-1个粒子的距离,选择距离最近的为第二个中选粒子。但是当网格中粒子数较多时,搜索存在较大冗余,时间消耗也很大。
11.以上两种方法可以有效地降低平均碰撞距离,提高计算精度。但是当网格单元内粒子分布非常不均匀时,如图1所示,如果第一个随机选择的粒子恰恰与其它粒子距离较远时,这两种方法均不能保证选中的粒子对距离最小。可以使用暴力算法来遍历所有可能的粒子对,找出其中距离最短的,但是时间复杂度为。


技术实现要素:

12.为了保障计算的准确性并降低时间复杂度,本发明提供了一种稀薄气体粒子碰撞模拟计算方法。
13.为实现上述目的,本发明提供了一种稀薄气体粒子碰撞模拟计算方法,所述方法包括:计算网格单元中待测试的粒子碰撞对数目;遍历所有待测试的粒子碰撞对,选取候选粒子碰撞对,基于所述候选粒子碰撞对进行气体粒子碰撞模拟计算;其中,选取候选粒子碰撞对的方式具体包括:构建二维坐标系,将所述网格单元内的粒子分布在所述二维坐标系中,所述网格单元内的粒子数为;将所有粒子按照其x轴坐标大小从小到大排序,并用直线l将所有粒子平分为左右两个集合;计算获得左集合中任意两个粒子之间的最小距离,计算获得右集合中任意两个粒子之间的最小距离,基于所述与所述获得,;基于所述在所述二维坐标系中构建一预设区域,所述预设区域对应的x轴坐标坐标范围为大于或等于,且小于或等于,为直线l对应的x轴坐标;将所述预设区域内的所有粒子按照其y轴坐标大小进行排序,获得序列d1、...、dm,m为所述预设区域内的粒子数目;遍历d1至dm中的每个粒子,计算粒子di与粒子dj之间的距离值,每个粒子对应获得一个距离集合,总共获得j1至jm个距离集合,比较j1至jm个距离集合中的每个距离值大小获得最小的距离值,其中,i和j均大于或等于1且小于或等于m,且i与j之差的绝对值小于或等于第一阈值;基于所述与所述获得最终的候选粒子碰撞对对应的最小距离值,
其中,;基于所述查找获得对应的候选粒子碰撞对。
14.其中,本方法采用上述方式来寻找网格单元中距离最近的粒子对作为碰撞对候选,可使得测试的碰撞对粒子距离最小,保证了碰撞计算的精度,同时计算效率优于暴力算法。
15.优选的,所述第一阈值的大小为15。将第一阈值设计为15的原因是:如果将所述预设区域再划分为边长为的16个小方块,那么在直线l任一边,是粒子对最小距离,任意两点的距离都不会小于,所以每个小方块内最多有1个粒子。假设两个粒子序号相隔15以上,那么它们中间至少间隔3个方块,那么两个粒子之间的间距。由此可知如果此区域内的两粒子距离如果小于,那么其在排好序的序列中的序号差小于或等于15。
16.优选的,本方法采用以下公式计算网格单元中待测试的粒子碰撞对数目:其中,为一个粒子所代表的的真实分子数目,为碰撞截面积,为碰撞对相对速度,为时间步长,为网格单元的面积,表示网格单元内的最大值。
17.优选的,所述方法在步骤选取候选粒子碰撞对后,以及在步骤基于所述候选粒子碰撞对进行气体粒子碰撞模拟计算之前还包括以下步骤:基于所述候选粒子碰撞对计算碰撞概率,若碰撞概率大于第二阈值,则执行后续步骤基于所述候选粒子碰撞对进行气体粒子碰撞模拟计算。
18.优选的,所述碰撞概率的计算方式为:,其中,为碰撞截面积,为碰撞对相对速度,表示网格单元内的最大值。
19.优选的,所述第二阈值为,为0至1之间均匀分布的随机数。其中,0到1之间均匀分布的随机数,是指每次产生的浮点数在0到1之间随机分布,将这一过程重复大量次数后,所产生的随机数的集合在0到1之间均匀分布。单个随机数的位置是任意的,均匀分布指的是大量随机数在区间内各个位置出现的概率是均匀的。
20.本发明提供的一个或多个技术方案,至少具有如下技术效果或优点:本方法采用分治算法来寻找网格单元中距离最近的粒子对作为碰撞对候选,可使
得测试的碰撞对粒子距离最小,保证了碰撞计算的精度,同时计算效率优于暴力算法,进而使得稀薄气体粒子碰撞模拟计算计算精度和计算效率均较高。
21.与现有技术相比,本方法可以在粒子分布不均匀时,仍能保证选中的碰撞对粒子距离最小,在优于暴力算法的计算效率的基础上,保证了碰撞计算的精度。
附图说明
22.此处所说明的附图用来提供对本发明实施例的进一步理解,构成本发明的一部分,并不构成对本发明实施例的限定;图1是粒子分布不均匀示意图;图2是粒子分布示意图;图3是将粒子按照x坐标平分成左右两个集合示意图;图4是预设区域示意图;图5是查找粒子对距离最小值示意图;图6是稀薄气体粒子碰撞模拟计算方法的流程示意图。
具体实施方式
23.为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在相互不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
24.在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述范围内的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
25.实施例一请参考图6,图6为稀薄气体粒子碰撞模拟计算方法的流程示意图,本发明实施例一提供了一种稀薄气体粒子碰撞模拟计算方法,所述方法包括:计算网格单元中待测试的粒子碰撞对数目;遍历所有待测试的粒子碰撞对,选取候选粒子碰撞对,基于所述候选粒子碰撞对进行气体粒子碰撞模拟计算;其中,选取候选粒子碰撞对的方式具体包括:构建二维坐标系,将所述网格单元内的粒子分布在所述二维坐标系中,所述网格单元内的粒子数为;将所有粒子按照其x轴坐标大小从小到大排序,并用直线l将所有粒子平分为左右两个集合;计算获得左集合中任意两个粒子之间的最小距离,计算获得右集合中任意两个粒子之间的最小距离,基于所述与所述获得,;基于所述在所述二维坐标系中构建一预设区域,所述预设区域对应的x轴坐标坐标范围为大于或等于,且小于或等于,为直线l对应的x轴坐标;
将所述预设区域内的所有粒子按照其y轴坐标大小进行排序,获得序列d1、...、dm,m为所述预设区域内的粒子数目;遍历d1至dm中的每个粒子,计算粒子di与粒子dj之间的距离值,每个粒子对应获得一个距离集合,总共获得j1至jm个距离集合,比较j1至jm个距离集合中的每个距离值大小获得最小的距离值,其中,i和j均大于或等于1且小于或等于m,且i与j之差的绝对值小于或等于第一阈值;基于所述与所述获得最终的候选粒子碰撞对对应的最小距离值,其中,;基于所述查找获得对应的候选粒子碰撞对。
26.其中,在本发明实施例中,可以通过网格生成软件生成网格单元,具体的网格生成软件本发明不进行具体的限定。
27.其中,在本发明实施例中,基于候选粒子碰撞对进行气体粒子碰撞模拟计算采用现有的计算方式进行,本发明不进行具体的赘述,本发明的改进点在于候选粒子碰撞对的选取。
28.其中,在本发明实施例中,粒子对之间的距离计算方式可以采用以下方式:假设组成粒子对的两个粒子的空间坐标分别为(x1,y1)和(x2,y2),则它们之间的距离=sqrt((x1-x2)^2 (y1-y2)^2)。
29.其中,在本实施例中,碰撞对粒子的选取问题实际上可看做是平面最近点对问题,可以使用分治法求解。具体步骤如下:步骤1:假设网格单元内的粒子数为,分布如图2,将所有粒子按照x坐标从小到大排序,并用直线l平分成左右两个集合,如图3所示;步骤2:分别在左右两集合递归地计算距离最小的粒子对,假设左半部分的粒子对最小距离为,右半部分的粒子对最小距离为,取左右集合中粒子对距离最小值。
30.步骤3:在中央部分划分一个范围为的区域,如图4所示。检查位于此区域中的粒子对最小距离。将此区域内的粒子按照y坐标由大到小排序。
31.步骤4:将步骤3中的区域再划分为边长为的16个小方块,如图5所示。因为在直线l任一边,是粒子对最小距离,任意两点的距离都不会小于,所以每个小方块内最多有1个粒子。假设两个粒子序号相隔15以上,那么它们中间至少间隔3个方块,间距。由此可知如果此区域内的两粒子距离如果小于,那么其在排好序的序列中的序号差小于或等于15。遍历已排好序的序列,检查与每个粒子序号相差15以内的其它
粒子,找出距离最小值。
32.取。这样就找到了距离最近的一对粒子,可以作为碰撞对候选。经分析可知,算法复杂度为。
33.尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
34.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献