广东工业大学学报 ›› 2019, Vol. 36 ›› Issue (03): 25-31.doi: 10.12052/gdutxb.180173
朱鉴, 张浩晨, 陈炳丰, 蔡瑞初
Zhu Jian, Zhang Hao-chen, Chen Bing-feng, Cai Rui-chu
摘要: 基于物理的流体模拟方法通过数值求解流体的控制方程可获得逼真的模拟结果,但求解中易产生数值耗散造成流体细节丢失.本文提出采用涡粒子模拟流体,通过求解涡度形式的流体控制方程获得涡度场,再将涡度场转换为不可压的速度场,可降低对流数值耗散,自动保证速度场散度为零,因而能够保持更丰富的流体细节.针对算法在涡度转换为速度时需求解泊松方程的性能瓶颈,基于图形处理器(GPU)设计并实现了一个高效的预条件共轭梯度法求解方程,比现有求解器加速超过10倍.实验结果表明,与现有方法相比,本文算法能够获得真实感更强的流体模拟效果,且模拟速度显著提升.
中图分类号:
[1] HUANG Z P, GONG G H, HAN L. Physically-based smoke simulation for computer graphics:a survey[J]. Multimedia Tools and Applications, 2015, 74(18):7569-7594 [2] BRIDSON R. Fluid simulation for computer graphics[M]. New York, America:A K Peters/CRC Press, 2015:21-28. [3] HUANG Z P, KAVAN L, LI W K, et al. Reducing numerical dissipation in smoke simulation[J]. Graphical Models, 2015, 78:10-25 [4] COTTET G H, KOUMOUTSAKOS P D. Vortex methods:theory and practice[M]. Cambridge, UK:Cambridge University Press, 2000. [5] SELLE A, RASMUSSEN N, FEDKIW R. A vortex particle method for smoke, water and explosions[J]. ACM Transactions on Graphics, 2005, 24(3):910-914 [6] PFAFF T, THUEREY N, GROSS M. Lagrangian vortex sheets for animating fluids[J]. ACM Transactions on Graphics, 2012, 31(4):1-8 [7] MAURICIO V, BEN H, LANG J, et al. Vortical inviscid flows with two-way solid-fluid coupling[J]. IEEE Transaction on Visualization and Computer Graphics, 2014, 20(2):303-315 [8] ZHANG X X, LI M C, BRIDSON R. Resolving fluid boundary layers with particle strength exchange and weak adaptivity[J]. ACM Transactions on Graphics, 2016, 35(4):1-8 [9] EBERHARDT S, WEISSMANN S, PINKALL U, et al. Hierarchical vorticity skeletons[C]//Proceedings of the ACM SIGGRAPH/Eurographics Symposium on Computer Animation. NY, USA:ACM Press, 2017:1-11. [10] ZHU J, LUO Y, REN X H, et al. Synthetic fluid details for the vorticity loss in advection[J]. Computer Animation and Virtual Worlds, 2018, 29(3-4):1-11 [11] JANG T, BLANCO I RIBERA R, BAE J, et al. Simulating SPH fluid with multi-level vorticity[J]. International Journal of Virtual Reality, 2011, 10(1):17-23 [12] PEER A, TESCHNER M. Prescribed velocity gradients for highly viscous SPH fluids with vorticity diffusion[J]. IEEE Transactions on Visualization and Computer Graphics, 2017, 23(12):2656-2662 [13] COOK S. CUDA Programming:a developer's guide to parallel computing with GPUs[M]. Waltham, USA:Elsevier, 2013:106-205. [14] TOLKE J, KRAFCZYK M. Teraflop computing on a desktop pc with gpus for 3d cfd[J]. International Journal of Computational Fluid Dynamics, 2008, 22(7):443-456 [15] MCADAMS A, SIFAKIS E, TERAN J. A parallel multigrid Poisson solver for fluids simulation on large grids[C]//ACM SIGGRAPH Symposium on Computer Animation. Madrid, Spain:Eurographics Association Aire-la-Ville, 2010:65-74. [16] BAILEY D, BIDDLE H, AVRAMOUSSIS N, et al. Distributing liquids using OpenVDB[C]//ACM SIGGRAPH 2015 Talks. Los Angeles:ACM Press, 2015:1. [17] YANG Y, YANG X B, YANG S C. A fast iterated orthogonal projection framework for smoke simulation[J]. IEEE Transactions on Visualization and Computer Graphics, 2016, 22(5):1492-1502 [18] LIU H X, MITCHELL N, AANJANEYA M, et al. A scalable Schur-complement fluids solver for heterogeneous compute platforms[J]. ACM Transactions on Graphics, 2016, 35(6):1-12 [19] CHU J Y, ZAFAR N B, YANG X B. A schur complement preconditioner for scalable parallel fluid simulation[J]. ACM Transactions on Graphics, 2017, 36(5):1-10 [20] TAKADA K, NITTA T, OHNO K. Acceleration of SPH-based fluid simulation on GPU[C]//High Performance Computing Symposium. Los Angeles, USA:ACM Press, 2017:26-35. [21] GAO M, WANG X L, WU K, et al. GPU optimization of material point methods[J]. ACM Transactions on Graphics, 2018, 37(6):1-12 [22] AMADOR G, GOMES A. CUDA-based linear solvers for stable fluids[C]//ICISA 2010:2010 International Conference on Information Science and Applications. Seoul:IEEE, 2010:279-286. |
[1] | 曾文曲; 文有为; 孙海卫; . 图像恢复中的一种新预处理算子[J]. 广东工业大学学报, 2000, 17(2): 76-81. |
|