430 likes | 794 Views
Wavelet Turbulence for Fluid Simulation. 논문 세미나 2008.10.02 윤종철. 목 차. Abstract Introduction Previous Works Procedural Wavelet Turbulence Incompressible, Band-Limited Noise Kolmogorov Wavelet Turbulence High-Resolution Fluid Synthesis Background Injecting Turbulence
E N D
Wavelet Turbulence for Fluid Simulation 논문 세미나 2008.10.02 윤종철
목차 Abstract • Introduction • Previous Works • Procedural Wavelet Turbulence • Incompressible, Band-Limited Noise • Kolmogorov Wavelet Turbulence • High-Resolution Fluid Synthesis • Background • Injecting Turbulence • Detecting Scattering • Texture Distortion • Final Algorithm • Complexity • Results • Conclusions
Abstract • 저해상도 VS 고해상도 빠름 Not detail 느림 detail • 빠른 속도로 원하는 해상도의 • 결과를 얻는 것이 목표
Abstract • High spatial resolution 유체 시뮬레이션을 위한 wavelet method 제안 • Post-processing step으로 디테일을 더함 • Linear system 안 풀고, 병렬화 쉽고, 약간의 보조 array만 필요 • 고해상도, 저해상도 독립적으로 편집 가능
1. Introduction • Visual simulation of fluids는 지난 10년간 Considerable progress but scalability와user interaction 여전히 problem • Large-scale phenomena simulation할 때memory 사용량 linear increase, 실행 시간 linear increase보다 더 오래 걸림 => small-scale 유체 detail을 procedurally 발생 algorithm 제안 detail 잃은 곳에 incompressible turbulence function으로 다시 생성 velocity field만 input으로 필요 보통 fluid solver로 해상도 높이면 effective viscosity 변해 모션 달라짐 본 논문은 existing structures 유지됨
1. Introduction • Contributions • An incompressible turbulence function that can generate arbitrary energy spectra • A method for estimating the small-scale turbulence that is lost by a simulation, and re-synthesizing it in a way consistent with Kolmogorov theory • A method of preserving the temporal coherence of the synthesized turbulence • A large- and small-scale fluid detail decoupling that allows the latter to be edited independently
1. Introduction • Contributions • 임의의 에너지 spectra를 발생시킬 수 있는 incompressible turbulence function • 잃어버린 small-scale turbulence를 추정하는, 그리고 일관된 Kolmogorove theory를 사용하여 재합성하는 기법 • 합성된 turbulence의 temporal coherence 유지 기법 • large- 그리고 small-scale fluid 디테일 독립적으로 편집 가능
2. Previous Works • Adaptive Refinement Octree Graded Tetrahedra • [Lossaso et al.2004] • [Shi and Yu 2004] • [Klingner et al. 2006]
2. Previous Works • Dissipation Suppression • MacCormack / BFECC • Vortex Methods • [Kim et al. 2006] • [Selle et al. 2008] • [Fedkiw et al. 2001] • [Selle et al. 2005]
2. Previous Works • Turbulence Modeling • [Stam and Fiume 1993] • [Rasmussen et al. 2001]
Back ground (Fourier Transform, Wavelet Transform) • Fourier Transform • 시간축의 파형을 주파수축으로 변환 • 주파수와 위상 크기가 다른 정현파(sin,cos)의 조합으로모든 파형을 만들어 낼 수 있음 -> 모든 파형은 주파수별 위상과 크기가 다른 정현파로분리됨 • ex) 이퀄라이져 • 음악신호에 들어있는 주파수 성분을 각각 나누어 크기 가시화. 수백 Hz에서 20khz까지 순간 주파수대역의 신호 크기가 디스플레이 • 임의의 파형을 주파수가 다른 정현파들로 분리시켜 놓은 것이 바로푸리에 변환
Back ground (Fourier Transform, Wavelet Transform) • FourierTransform Wavelet Transform
3. Procedural Wavelet Turbulence • Notation • Bold는 vector, non-bold는 scalar • x는 spatial position • k는 spectral band, u는 velocity field • Carat은 wavelet transform • 는 spectral band k안의 position x에서 velocity u의 spectral component • N 큰 grid, n은 작은 grid
3-1. Incompressible, Band-Limited Noise • Wavelet Noise [Cook and DeRose 2005] 사용 • [Bridson et al. 2007]에서 처럼 scalar field 의 Curl로 divergence-free field 생성
3-2. Kolmogorov Wavelet Turbulence • A velocity field
3-2. Kolmogorov Wavelet Turbulence • Frequency Decomposition
3-2. Kolmogorov Wavelet Turbulence • Frequency Decomposition
3-2. Kolmogorov Wavelet Turbulence • 한 grid cell x에서 kinetic energy e정의 • 모든 cell의 e(x)합은 total energy et • 각 band k에 대해 et를 계산하면 energy spectrum을 얻음 • Kolmogorovtheory의 key results중에 하나는 turbulent fluid의 energy spectrum이 5/3 power distribution에 접근한다는것 • C와 입실론은Kolmogorov상수이고 unit mass 당 에너지 소실률 의미
3-2. Kolmogorov Wavelet Turbulence • Noise function w를 사용하여, 이power distribution을 생성하는 속도 필드를 procedurally 만들 수 있음 • 식 (3)을 이용하여
3-2. Kolmogorov Wavelet Turbulence • 를w(x)로 대체 • i는 spectral band를 제어하는데 사용 • Discussion :(7)과 비슷함
3-2. Kolmogorov Wavelet Turbulence • Energy Spectrum
3-2. Kolmogorov Wavelet Turbulence • Energy Spectrum
4. High-Resolution Fluid Synthesis • 4.1 Background • 물리적으로 5/3 distribution은scattering 때문에 발생 • Forward scattering • Eddy는 incompressible field에 의해advect되기 때문에한 방향으로stretch, 다른 방향으로compress되고 결국 이 deformations는 반짜리 사이즈 두 개의 eddy로 나뉨 • Back scattering • 작은eddies가 큰 eddy로 combine될 때 발생 • 그러나forward scattering이 보통 지배적임
4-2.Injecting Turbulence • 목표는 저해상도 속도 필드로부터 고해상도 density field D를 합성하는 것 • : 고해상도 위치 X에서 u를 interpolation • : U로 D를 advection • u에서 가장 작은 eddies의 energy et (n/2)를 계산하여 weight로 사용
4-3.Detecting Scattering • Texture Advection [Neyret 2003] • texture coordinate의 set을 flow를 따라 advection • Texture coordinates의Jacobian을 사용하여 local deformation의 양을 계산 • Threshold 보다 크거나 작으면 regenerate
4-4.Texture Distortion • advect된 texture coordinates가 stretch하고 rotate할 때 y가 incompressibility를 위배할 수 있음 • Cartesian axes를 texture space로projection, directional derivative를 구하는 것으로 해결
4-6.Complexity • 거의 모든 스텝은 smaller n^3 grid상에서 일어남 • 큰 grid는D, D는 메모리 사용량이 많아서 약점 -> 파티클사용하면 D 필요 없음
6. Conclusions • Add physical detail as post-processing • Preserves vortex frequencies • Fast, efficient, low memory • Relatively simple to implement • Limitations • Cannot reproduce “correct” high-res solution • Obstacle interaction depends on low resolution • Vortex advection limited due to regeneration