Эффективная CUDA-реализация быстрых алгоритмов расчета взаимодействия частиц при моделирования плоских течений вихревыми методами
DOI:
https://doi.org/10.14529/cmse260302Ключевые слова:
вычислительная гидродинамика, вихревой метод, быстрый алгоритм, взаимодействие частиц, метод Барнса—Хата, LBVH-дерево, вычисления на GPU, ближайшие соседиАннотация
Решена задача повышения эффективности расчета парных взаимодействий вихревых частиц в вихревых методах моделирования плоских течений несжимаемой среды. Прямой расчет, имеющий квадратичную сложность, невозможен при числе частиц, превышающем несколько десятков тысяч, тогда как для получения количественно согласующихся с экспериментом результатов требуется рассматривать до нескольких миллионов вихревых частиц. Выполнена адаптация и оптимизация для графических ускорителей (GPU) гибридного быстрого алгоритма, объединяющего идеи метода Барнса—Хата и метода мультиполей. Алгоритм обеспечивает квазилинейную сложность за счет построения LBVH-дерева и мультипольных разложений для аппроксимации влияния удаленных кластеров частиц. На его основе разработаны и реализованы на GPU вспомогательные алгоритмы поиска ближайших соседей и контроля проникновения частиц внутрь обтекаемого контура. Созданные алгоритмы интегрированы в программный комплекс VM2D. Вычислительные эксперименты по моделированию обтекания системы профилей на графических ускорителях NVIDIA H100, Titan V, GeForce RTX 5080 подтвердили высокую производительность реализации. Выполненная оптимизация алгоритма позволила добиться трехкратного ускорения выполнения основных операций, при этом погрешность вычисления скоростей вихревых частиц остается на весьма низком уровне. Работа открывает перспективы использования оптимизированных GPU-алгоритмов и производительных графических ускорителей для ресурсоемких расчетов в вихревых методах вычислительной гидродинамики.
Библиографические ссылки
Joukowsky N.E. On attached vortices. Proceedings of the Department of Physical Sciences of the Society of Devotees of Natural Science. 1906. Vol. 13, no. 2. 14 p. (in Russian)
Belotserkovskii S.M., Nisht M.I. Separated and unseparated Flow of an ideal fluid past thin wings. Moscow: Nauka, 1978. 352 p. (in Russian)
Aubakirov T.O., et al. Nonlinear wing theory and its applications. Almaty: Gylym, 1997. 448 p. (in Russian)
Mimeau C., Mortazavi I. A review of vortex methods and their applications: from creation to recent advances. Fluids. 2021. Vol. 6. Article 68. DOI: 10.3390/fluids6020068.
Lifanov I.K. Singular integral equations and discrete vortices. Utrecht, VSP publ., 1996, 476 p.
Beale J.T., Majda A. Vortex methods. II: Higher order accuracy in two and three dimensions. Mathematics of Computation. 1982. Vol. 39, no. 159. P. 29–52. DOI: 10.1090/S0025-5718-1982-0658213-7.
Chorin A.J. Numerical study of slightly viscous flow. Journal of Fluid Mechanics. 1973. Vol. 57, no. 4. P. 785–796. DOI: 10.1017/S0022112073002016.
Degond P., Mas-Gallic S. The weighted particle method for convection-diffusion equations. Part 1: The case of an isotropic viscosity. Mathematics of Computation. 1989. Vol. 53, no. 188. P. 485–507. DOI: 10.2307/200871611.
Giannopoulou O., Colagrossi A., Di Mascio A., Mascia C. Chorin’s approaches revisited: Vortex particle method vs finite volume method. Engineering Analysis with Boundary Elements. 2019. Vol. 106. P. 371–388. DOI: 10.1016/j.enganabound.2019.05.026.
Dynnikova G.Ya. The Lagrangian approach to solving the time-dependent Navier-Stokes equations. Doklady Physics. 2004. Vol. 49. P. 648–652. DOI: 10.1134/1.1831530.
Hockney R.W., Eastwood J.W. Computer simulation using particles. CRC Press, 1988. 540 p.
Marchevsky I., Ryatina E., Kolganova A. Fast Barnes–Hut-based algorithm in 2D vortex method of computational hydrodynamics. Computers & Fluids. 2023. Vol. 266. Article 106018. DOI: 10.1016/j.compfluid.2023.106018.
Kolganova A., Marchevsky I. Parallel implementation of fast algorithms in the Vortex Particle Method. Communications in Computer and Information Science. 2023. Vol. 1868. P. 197–211. DOI: 10.1007/978-3-031-38864-4.
Kempka S.N., Glass M.W., Peery J.S., Strickland J.H., Ingber M.S. Accuracy considerations for implementing velocity boundary conditions in vorticity formulations. SANDIA rep. SAND-96-0583. 1996. DOI: 10.2172/242701.
Barnes J., Hut P. A hierarchical O(N logN) force-calculation algorithm. Nature. 1986. Vol. 324. P. 446–449. DOI: 10.1038/324446a0.
Greengard L., Rokhlin V. A fast algorithm for particle simulations. Journal of Computational Physics. 1987. Vol. 73, no. 2. P. 325–348. DOI: 10.1016/0021-9991(87)90140-9.
Dynnikova G.Ya. Fast technique for solving the N-body problem in flow simulation by vortex methods. Computational Mathematics and Mathematical Physics. 2009. Vol. 49. P. 1389–1396. DOI: 10.1134/S0965542509080090.
Burtscher M., Pingali K. An efficient CUDA implementation of the tree-based Barnes Hut n-body algorithm. GPU Computing Gems Emerald Edition. 2011. P. 75–92. DOI: 10.1016/B978-0-12-384988-5.00006-1.
Karras T. Maximizing parallelism in the construction of BVHs, octrees, and k-d trees. EGGH-HPG’12: Proceedings of the Fourth ACM SIGGRAPH / Eurographics conference on High-Performance Graphics. 2012. P. 33–37. DOI: 10.2312/EGGH/HPG12/033-037.
Bærentzen A., Aanæs H. Signed distance computation using the angle weighted pseudonormal. IEEE Transactions on Visualization and Computer Graphics. 2005. Vol. 11, no. 3. P. 243–253. DOI: 10.1109/TVCG.2005.49.




