Flow Visualization
Overview: Flow Visualization (1) Introduction, overview Flow data Simulation vs. measurement vs. modelling 2D vs. surfaces vs. 3D Steady vs time-dependent flow Direct vs. indirect flow visualization Experimental flow visualization Basic possibilities PIV (Particle Image Velocimetry) + Example Eduard Gröller, Helwig Hauser 2
Overview: Flow Visualization (2) Visualization of models Flow visualization with arrows Numerical integration Euler-integration Runge-Kutta-integration Streamlines In 2D Particle paths In 3D, sweeps Illuminated streamlines Streamline placement Eduard Gröller, Helwig Hauser 3
Overview: Flow Visualization (3) Flow visualization with integral objects Streamribbons, Streamsurfaces, stream arrows Line integral convolution Algorithm Examples, alternatives Glyphs & icons, flow topology Eduard Gröller, Helwig Hauser 4
Flow Visualization Introduction: FlowVis = visualization of flows Visualization of change information Typically: more than 3 data dimensions General overview: even more difficult Flow data: nD nD data, 1D 2 /2D 2 /nD 2 (models), 2D 2 /3D 2 (simulations, measurements) Vector data (nD) in nD data space User goals: Overview vs. details (with context) Eduard Gröller, Helwig Hauser 5
Flow Data Where do the data come from: Flow simulation: Airplane- / ship- / car-design Weather simulation (air-, sea-flows) Medicine (blood flows, etc.) Flow measurements: Wind tunnel, fluid tunnel Schlieren-, shadow-technique Flow models: Differential equation systems (ODE) (dynamical systems) Eduard Gröller, Helwig Hauser 6
Data Source – Examples 1/2 Eduard Gröller, Helwig Hauser 7
Data Source – Examples 2/2 Eduard Gröller, Helwig Hauser 8
Comparison with Reality Experiment Simulation Eduard Gröller, Helwig Hauser 9
2D vs. Surfaces vs. 3D 2D-Flow visualization 2D 2D-Flows Models, slice flows (2D out of 3D) Visualization of surface flows 3D-flows around “obstacles” Boundary flows on surfaces (2D) 3D-Flow visualization 3D 3D-flows Simulations, 3D-models Eduard Gröller, Helwig Hauser 10
2D/Surfaces/3D – Examples 3D Surface 2D Eduard Gröller, Helwig Hauser 11
Steady vs. Time-Dependent Flows Steady (time-independent) flows: Flow static over time v ( x ): R n R n , e.g., laminar flows Simpler interrelationship Time-dependent (unsteady) flows: Flow itself changes over time v ( x ,t): R n R 1 R n , e.g., turbulent flows More complex interrelationship Eduard Gröller, Helwig Hauser 12
Time-Dependent vs. Steady Flow Eduard Gröller, Helwig Hauser 13
Direct vs. Indirect Flow Visualization Direct flow visualization: Overview on current flow state Visualization of vectors Arrow plots, smearing techniques Indirect flow visualization: Usage of intermediate representation: vector-field integration over time Visualization of temporal evolution Streamlines, streamsurfaces Eduard Gröller, Helwig Hauser 14
Direct vs. Indirect Flow Vis. – Example Eduard Gröller, Helwig Hauser 15
Experimental Flow Visualization Optical Methods, etc.
With Smoke rsp. Color Injection Injection of color, smoke, particles Optical methods: Schlieren, shadows Eduard Gröller, Helwig Hauser 17
Example: Car-Design Ferrari-model, so-called five- hole probe (no back flows) Eduard Gröller, Helwig Hauser 18
PIV: Particle Image Velocimetry Laser + correlation analysis: Real flow, e.g., in wind tunnel Injection of particles (as uniform as possible) At interesting locations: 2-times fast illumination with laser-slice Image capture (high-speed camera), then correlation analysis of particles Vector calculation / reconstruction, typically only 2D-vectors Eduard Gröller, Helwig Hauser 19
PIV - Measurements Setup and typical result: Eduard Gröller, Helwig Hauser 20
Example: Wing-Tip Vortex Problem: Air behind airplanes is turbulent Eduard Gröller, Helwig Hauser 21
Visualization of Models Dynamical Systems
Dynamical Systems Visualization Differences: Flow analytically def.: d x /dt = v ( x ) Navier-Stokes equations E.G.: Lorenz-system: dx/dt = (y-x) dy/dt = rx-y-xz dz/dt = xy-bz Larger variety in data: 2D, 3D, nD Sometimes no natural constraints like non- compressibility or similar Eduard Gröller, Helwig Hauser 23
Visualization of Models Sketchy, “hand drawn” Eduard Gröller, Helwig Hauser 24
Visualization of 3D Models Eduard Gröller, Helwig Hauser 25
Flow Visualization with Arrows Hedgehog plots, etc.
Flow Visualization with Arrows Aspects: Direct Flow Visualization Normalized arrows vs. scaling with velocity 2D: quite usable, 3D: often problematic Sometimes limited expressivity (temporal component missing) Often used! Eduard Gröller, Helwig Hauser 27
Arrows in 2D Scaled arrows vs. color-coded arrows Eduard Gröller, Helwig Hauser 28
Arrows in 3D Following problems: Ambiguity Perspective Shortening 1D-objects in 3D: difficult spatial perception Visual clutter Improvement: 3D-arrows (help to a certain extent) Eduard Gröller, Helwig Hauser 29
Arrows in 3D Compromise: Arrows only in slices Eduard Gröller, Helwig Hauser 30
Arrows in 3D Well integrable within “real” 3D: Eduard Gröller, Helwig Hauser 31
Integration of Streamlines Numerical Integration
Streamlines – Theory Correlations: flow data v : derivative information d x /d t = v ( x ); spatial points x R n , time t R, flow vectors v R n streamline s : integration over time, also called trajectory, solution, curve s ( t ) = s 0 + 0 u t v ( s ( u ))d u ; seed point s 0 , integration variable u difficulty: result s also in the integral analytical solution usually impossible! Helwig Hauser, Eduard Gröller 33
Streamlines – Practice Basic approach: theory: s ( t ) = s 0 + 0 u t v ( s ( u ))d u practice: numerical integration idea: (very) locally, the solution is (approx.) linear Euler integration: follow the current flow vector v ( s i ) from the current streamline point s i for a very small time (d t ) and therefore distance Euler integration: s i +1 = s i + d t · v ( s i ), integration of small steps (d t very small) Helwig Hauser 34
Euler Integration – Example v x = d x /d t = y 2D model data: v y = d y /d t = x /2 Sample arrows: 2 1 True 0 solution: 0 1 2 3 4 ellipses! Helwig Hauser 35
Euler Integration – Example Seed point s 0 = (0|-1) T ; current flow vector v ( s 0 ) = (1|0) T ; d t = 1/2 2 1 0 0 1 2 3 4 Helwig Hauser 36
Euler Integration – Example New point s 1 = s 0 + v ( s 0 )·d t = (1/2|-1) T ; current flow vector v ( s 1 ) = (1|1/4) T ; 2 1 0 0 1 2 3 4 Helwig Hauser 37
Euler Integration – Example New point s 2 = s 1 + v ( s 1 )·d t = (1|-7/8) T ; current flow vector v ( s 2 ) = (7/8|1/2) T ; 2 1 0 0 1 2 3 4 Helwig Hauser 38
Euler Integration – Example (1.44|-0.63) T ; = (23/16|-5/8) T s 3 (0.63|0.72) T ; v ( s 3 ) = (5/8|23/32) T 2 1 0 0 1 2 3 4 Helwig Hauser 39
Euler Integration – Example (1.75|-0.27) T ; = (7/4|-17/64) T s 4 (0.27|0.88) T ; v ( s 4 ) = (17/64|7/8) T 2 1 0 0 1 2 3 4 Helwig Hauser 40
Euler Integration – Example (0.20|1.69) T ; s 9 (-1.69|0.10) T ; v ( s 9 ) 2 1 0 0 1 2 3 4 Helwig Hauser 41
Euler Integration – Example (-3.22|-0.10) T ; s 14 (0.10|-1.61) T ; v ( s 14 ) 2 1 0 0 1 2 3 4 Helwig Hauser 42
Euler Integration – Example s 19 (0.75|-3.02) T ; v ( s 19 ) (3.02|0.37) T ; clearly: large integration error, d t too large! 19 steps 2 1 0 0 1 2 3 4 Helwig Hauser 43
Euler Integration – Example d t smaller (1/4): more steps, more exact! s 36 (0.04|-1.74) T ; v ( s 36 ) (1.74|0.02) T ; 36 steps 2 1 0 0 1 2 3 4 Helwig Hauser 44
Comparison Euler, Step Sizes Euler is getting better propor- tionally to d t Helwig Hauser 45
Euler Example – Error Table d t #steps error 1/2 19 ~200% 1/4 36 ~75% 1/10 89 ~25% 1/100 889 ~2% 1/1000 8889 ~0.2% Helwig Hauser 46
Better than Euler Integr.: RK Runge-Kutta Approach: = s 0 + 0 u t v ( s ( u ))d u theory: s ( t ) = s 0 + 0 u < i v ( s u ) d t Euler: s i Runge-Kutta integration: idea: cut short the curve arc RK-2 (second order RK): 1.: do half a Euler step 2.: evaluate flow vector there 3.: use it in the origin RK-2 (two evaluations of v per step): s i +1 = s i + v ( s i + v ( s i )·d t /2)·d t Helwig Hauser 47
RK-2 Integration – One Step Seed point s 0 = (0|-2) T ; current flow vector v ( s 0 ) = (2|0) T ; preview vector v ( s 0 + v ( s 0 )·d t /2) = (2|0.5) T ; d t = 1 2 1 0 0 1 2 3 4 Helwig Hauser 48
RK-2 – One more step Seed point s 1 = (2|-1.5) T ; current flow vector v ( s 1 ) = (1.5|1) T ; preview vector v ( s 1 + v ( s 1 )·d t /2) (1|1.4) T ; d t = 1 2 1 0 0 1 2 3 4 Helwig Hauser 49
RK-2 – A Quick Round RK-2: even with d t =1 (9 steps) better than Euler with d t =1/8 (72 steps) Helwig Hauser 50
Recommend
More recommend