本发明涉及数值仿真,特别涉及一种鲁棒的颗粒两相流数值求解方法、装置、设备及介质。
背景技术:
1、当前,点力颗粒求解器被广泛应用于能源化工,海洋环境,航空航天等问题的颗粒两相流数值仿真软件中。然而,真实工程问题的颗粒数目巨大,数值仿真相当耗时,消耗大量的计算资源。
2、综上所述,如何减少冗余计算以提高计算效率并节省求解资源是当前亟待解决的问题。
技术实现思路
1、有鉴于此,本发明的目的在于提供一种鲁棒的颗粒两相流数值求解方法、装置、设备及介质,能够减少冗余计算以提高计算效率并节省求解资源,其具体方案如下:
2、第一方面,本技术公开了一种鲁棒的颗粒两相流数值求解方法,应用于由颗粒求解器与流体求解器耦合得到的颗粒两相流求解器,包括:
3、当前第一时间步开始时,基于输运管道的第一流场信息更新当前颗粒信息和当前源项,以得到每个流体微团中的颗粒的目标颗粒信息和第一目标源项;所述第一流场信息包括当前流体微团速度;
4、在所述当前第一时间步内,基于第二时间步根据第二流场信息进行时间步推进以更新所述第一目标源项和所述当前流体微团速度,直至所述当前第一时间步结束时得到第二目标源项和目标流体微团速度;
5、将下一第一时间步作为所述当前第一时间步,并将所述目标流体微团速度作为所述当前流体微团速度,基于所述第二目标源项确定新的所述当前源项,并跳转至所述基于输运管道的第一流场信息更新当前颗粒信息和当前源项的步骤,直至获取到求解结束信息。
6、可选的,第一时间步为所述第二时间步与目标整数的乘积;所述目标整数为预先基于自适应时间步技术计算的所述输运管道中颗粒群的惯性参数与携带流体相的惯性参数的整数比值。
7、可选的,所述基于输运管道的第一流场信息更新当前颗粒信息和当前源项,以得到每个流体微团中的颗粒的目标颗粒信息和第一目标源项,包括:
8、通过所述颗粒求解器的控制方程基于输运管道的第一流场信息,更新当前颗粒信息得到每个流体微团中的颗粒的目标颗粒信息;
9、基于所述目标颗粒信息得到每个流体微团的目标颗粒源项;
10、将基于拉格朗日坐标系的所述目标颗粒源项投影至相应流体微团的基于欧拉坐标系的所述当前源项得到第一目标源项;
11、相应的,所述基于第二时间步根据第二流场信息进行时间步推进以更新所述第一目标源项和所述当前流体微团速度,直至所述当前第一时间步结束时得到第二目标源项和目标流体微团速度,包括:
12、当前第二时间步开始时,根据第二流场信息计算每个流体微团的目标压力梯度源项;所述第二流场信息包括压力势;
13、将所述目标压力梯度源项投影至相应流体微团的基于欧拉坐标系的最新的临时源项得到新的临时源项;所述第一目标源项为初始的临时源项;
14、通过携带流体相的动力学方程更新所述当前流体微团速度,以得到新的所述当前流体微团速度;
15、将下一第二时间步作为所述当前第二时间步,跳转至所述计算每个流体微团的目标压力梯度源项的步骤,直至所述当前第一时间步结束时得到目标流体微团速度和第二目标源项。
16、可选的,所述基于所述第二目标源项确定新的所述当前源项,包括:
17、分别在三维方向上对所述第二目标源项包括的颗粒源项进行低频滤波,并将滤波后的所述第二目标源项作为所述当前源项。
18、可选的,所述基于输运管道的第一流场信息更新当前颗粒信息和当前源项,包括:
19、基于中央处理器并行计算环境对输运管道进行分块处理,然后并行在每个分块中基于第一流场信息更新当前颗粒信息和当前源项;
20、其中,所述在每个分块中基于第一流场信息更新当前颗粒信息和当前源项,包括
21、基于图形处理器并发计算环境确定若干目标线程,并在每个分块中,通过所述若干目标线程并发基于第一流场信息更新当前颗粒信息和当前源项。
22、可选的,所述基于第二时间步根据第二流场信息进行时间步推进,包括:
23、基于中央处理器并行计算环境,并行在每个分块中基于第二时间步根据所述第二流场信息进行时间步推进;
24、其中,所述在每个分块中基于第二时间步根据所述第二流场信息进行时间步推进,包括:
25、在每个分块中,通过所述若干目标线程并发基于第二时间步根据所述第二流场信息进行时间步推进。
26、可选的,所述在每个分块中,通过所述若干目标线程并发基于第一流场信息更新当前颗粒信息和当前源项,包括:
27、在每个分块中,通过所述若干目标线程并发基于第一流场信息更新当前颗粒信息和当前源项,以得到每个流体微团中的颗粒的目标颗粒信息和第一目标源项,并将每个分块对应的所述目标颗粒信息并发存放至该分块对应的中央处理器的动态链表数组中。
28、第二方面,本技术公开了一种鲁棒的颗粒两相流数值求解装置,应用于由颗粒求解器与液相求解器耦合得到的颗粒两相流求解器,包括:
29、颗粒求解模块,用于当前第一时间步开始时,基于输运管道的第一流场信息更新当前颗粒信息和当前源项,以得到每个流体微团中的颗粒的目标颗粒信息和第一目标源项;所述第一流场信息包括当前流体微团速度;
30、流体求解模块,用于在所述当前第一时间步内,基于第二时间步根据第二流场信息进行时间步推进以更新所述第一目标源项和所述当前流体微团速度,直至所述当前第一时间步结束时得到第二目标源项和目标流体微团速度;
31、步骤跳转模块,用于将下一第一时间步作为所述当前第一时间步,并将所述目标流体微团速度作为所述当前流体微团速度,基于所述第二目标源项确定新的所述当前源项,并跳转至所述基于输运管道的第一流场信息更新当前颗粒信息和当前源项,以得到每个流体微团中的颗粒的目标颗粒信息和第一目标源项的步骤,直至获取到求解结束信息。
32、第三方面,本技术公开了一种电子设备,包括:
33、存储器,用于保存计算机程序;
34、处理器,用于执行所述计算机程序,以实现前述公开的鲁棒的颗粒两相流数值求解方法。
35、第四方面,本技术公开了一种计算机可读存储介质,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的鲁棒的颗粒两相流数值求解方法。
36、可见,本技术当前第一时间步开始时,基于输运管道的第一流场信息更新当前颗粒信息和当前源项,以得到每个流体微团中的颗粒的目标颗粒信息和第一目标源项;所述第一流场信息包括当前流体微团速度;在所述当前第一时间步内,基于第二时间步根据第二流场信息进行时间步推进以更新所述第一目标源项和所述当前流体微团速度,直至所述当前第一时间步结束时得到第二目标源项和目标流体微团速度;将下一第一时间步作为所述当前第一时间步,并将所述目标流体微团速度作为所述当前流体微团速度,基于所述第二目标源项确定新的所述当前源项,并跳转至所述基于输运管道的第一流场信息更新当前颗粒信息和当前源项的步骤,直至获取到求解结束信息。由此可见,本技术颗粒求解器以第一时间步为时间步进行循环,流体求解器以第二时间步为时间步进行循环,第一时间步大于所述第二时间步,则与三个求解器为同一时间步(第二时间步)相比,减少了颗粒求解器的冗余计算,提高计算效率并节省了求解资源。