Vector Visualiza0on Applica0ons Climate Modeling Computational - - PowerPoint PPT Presentation

vector visualiza0on applica0ons
SMART_READER_LITE
LIVE PREVIEW

Vector Visualiza0on Applica0ons Climate Modeling Computational - - PowerPoint PPT Presentation

Vector Field Visualiza0on Han-Wei Shen The Ohio State University (Some images courtesy of David Kao, NASA Ames Research Center) Vector Visualiza0on Applica0ons Climate Modeling Computational Fluid Dynamics Medical Applications Astronomy


slide-1
SLIDE 1

Vector Field Visualiza0on

Han-Wei Shen The Ohio State University

(Some images courtesy of David Kao, NASA Ames Research Center)

slide-2
SLIDE 2

Vector Visualiza0on Applica0ons

Computational Fluid Dynamics Climate Modeling Medical Applications Astronomy

slide-3
SLIDE 3
  • Vector field: F(u) = v

u: posi0on in the domain (x,y) in 2D (x,y,z) in 3D v: the vector (u,v) or (u,v,w) at u

Vector Field Visualiza0on

slide-4
SLIDE 4
  • Vector field: F(u) = v

u: posi0on in the domain (x,y) in 2D (x,y,z) in 3D v: the vector (u,v) or (u,v,w) at u

  • Vectors are oPen defined at discrete points as aQributes

at different 0me steps

Vector Field Visualiza0on

slide-5
SLIDE 5

Methods for Experimental Flow Visualiza0on - Adding Foreign Material

  • Streaklines: dye injected from a fixed posi0on. By injec0ng the

dye for a period of 0me, a line of dye in the fluid is visible

  • Timelines: a row of small par0cles (hydrogen bubbles) released

at right angles to flow. The mo0on of the par0cles shows the fluid behavior

  • Pathlines: small par0cles (magnesium powder in liquid; oil

drops in gas) are added to the fluid. Velocity is measured by photographing the mo0on of the par0cles with a known exposure 0me

slide-6
SLIDE 6

Experimental Flow Visualization

slide-7
SLIDE 7

Numerical Flow Visualiza0on

Though numerical flow visualiza0on is not able to totally replicate the results from experimental flow visualiza0on, it has been widely accepted as an effec0ve mean to obtain accurate representa0on of the CFD flow solu0ons.

slide-8
SLIDE 8

Numerical Flow Visualization – Basic Methods

slide-9
SLIDE 9

Numerical Flow Visualization – Basic Methods

Velocity Magnitude Contours Vector Arrow Plots Par0cle Traces - Streamlines

slide-10
SLIDE 10

Visualiza0on Techniques I

  • Geometry-based methods:

Render primi0ves from par0cle trajectories

  • 1D: streamlines, pathlines,

streaklines

  • Line varia0ons: tubes,

ribbons

  • 2D: stream surfaces
  • 3D: flow volumes
slide-11
SLIDE 11

Visualiza0on Techniques II

  • Texture-based methods: Create

texture paQerns following flow direc0ons

– Line Integral Convolu0on – Texture Splates

slide-12
SLIDE 12

Visualiza0on Techniques III

  • Topological-based methods:

Extract features based on flow topology

– Critical points – Vortex cores – Skin-friction lines

slide-13
SLIDE 13

Par0cle Tracing

Visualizing the flow direc0ons by releasing par0cles and calcula0ng a series of par0cle posi0ons based on the vector field

slide-14
SLIDE 14

Par0cle Tracing Challenges

  • Displaying streamlines is a local technique because you can
  • nly visualize the flow direc0ons ini0ated from one or a few

par0cles

  • When the number of streamlines is increased, the scene

becomes cluQered

  • You need to know where to drop the par0cle seeds
  • Streamline computa0on is not cheap
  • It is much more difficult to predict the data access paQern
slide-15
SLIDE 15

Seed Placement

Density and distribu0on

slide-16
SLIDE 16

Vector Glyphs

  • Display the en0re flow field in a single picture
  • Minimal user interven0on
  • Example: Hedgehogs (global arrow plots)
slide-17
SLIDE 17

Example of hedgehogs

slide-18
SLIDE 18

Varia0ons of hedgehogs

slide-19
SLIDE 19

Line Integral Convolu0on (LIC)

slide-20
SLIDE 20

Flow Line Computa0on

slide-21
SLIDE 21

Flow Line Visualiza0on

  • One of the most fundamental flow visualiza0on

techniques

  • Type of flow lines:

– Streamline: a field line tangent to the velocity field at an instant in 0me – Pathline: the trajectory of a mass less par0cle released from a seed point over a period of 0me – Streakline: a line joining the posi0ons, at an instant in 0me, of par0cles released from a seed point – Timeline: a line connec0ng a row of par0le that are released simultaneously In a steady flow filed, streamlines, pathlines, and streaklines are iden0cal

slide-22
SLIDE 22

Streamlines

  • Streamline: a line that is tangen0al to the instantaneous

velocity direc0on (velocity is a vector, and it has a magnitude and a direc0on)

  • Release a par0cle into the flow and perform numerical

integra/on to compute the path of the par0cle

slide-23
SLIDE 23

Pathlines

  • A pathline shows the trajectory of a single particle

released from a fixed location (seed point)

  • Experimental method: marking a fluid par0cle and taking

a 0me exposure photo of its mo0on will generate a pathline

  • This is similar to what you see when you take a long-

exposure photograph of car lights on a freeway at night

slide-24
SLIDE 24

Streaklines

  • Streakline: a line joining the posi0ons, at an instant in

0me, of all par0cles that were previously released from a fixed loca0on (seed point)

  • Con0nuously inject par0cles into the flow at each 0me

step and track the paths of the par0cles

  • In a steady flow field, streamlines, pathlines, and

streaklines are iden0cal. However, they can be very different in unsteady flows

slide-25
SLIDE 25

Timelines

  • Timeline: a line connec0ng a row of par0cles that

released simultaneously

  • Timelines are generated by injec0ng rows of

par0cles at some fixed 0me interval

slide-26
SLIDE 26

[Lane ‘96]e

slide-27
SLIDE 27

Compu0ng Flow Lines by Par0cle Tracing

  • The path of a massless par0cle at posi0on p at 0me t

can be described by the following ordinary differen0al equa0on:

The image part with relationship ID rId3 was not found in the file.

steady flow

  • r
The image part with relationship ID rId5 was not found in the file.

unsteady flow

slide-28
SLIDE 28

Compu0ng Flow Lines - Par0cle Tracing

  • The path of a massless par0cle at posi0on p at 0me t

can be described by the following ordinary differen0al equa0on:

  • And the posi0ons of the par0cle can be computed by
The image part with relationship ID rId3 was not found in the file.
  • r
The image part with relationship ID rId5 was not found in the file.

steady flow unsteady flow Solved by numerical integra0on

slide-29
SLIDE 29

Compu0ng Flow Lines - Par0cle Tracing

  • The path of a massless par0cle at posi0on p at 0me t

can be described by the following ordinary differen0al equa0on:

  • And the posi0ons of the par0cle can be computed by
The image part with relationship ID rId3 was not found in the file.
  • r
The image part with relationship ID rId5 was not found in the file.

steady flow unsteady flow Solved by numerical integra0on

slide-30
SLIDE 30

Numerical Integra0on

  • Discrete approxima0on of the con0nuous

integra0on result

t

v v(t)

slide-31
SLIDE 31

Numerical Integra0on

  • Discrete approxima0on of the con0nuous

integra0on result

  • Calculate area under curve

for curve y(t)

– Trapezoidal approxima0on

t

v v(t)

t

v v(t)

slide-32
SLIDE 32

Numerical Integra0on

  • Discrete approxima0on of the con0nuous

integra0on result

  • Calculate area under curve

for curve y(t)

– Trapezoidal approxima0on

  • Error related to the step

size used

  • Below we describe a few popular methods of

numerical integra0on for par0cle tracing

t

v v(t)

t

v v(t)

slide-33
SLIDE 33

Euler’s Method

  • Simple but lower accuracy

pk+1 = pk + v(pk) x Δt

Approxima0on Ground True

slide-34
SLIDE 34

Euler’s Method

  • Simple but lower accuracy

pk+1 = pk + v(pk) x δt

  • The equa0on can be derived from Taylor series expansion

where y is one component of the P posi0on, and y’ is the one component of the velocity, h is the step size (Δt) Error

Approxima0on Ground True

slide-35
SLIDE 35

2nd Order Runge-KuQa (RK2)

  • Improved accuracy, more commonly used

p* = pk + v(pk) x δt

slide-36
SLIDE 36

2nd Order Runge-KuQa (RK2)

  • Improved accuracy, more commonly used

p* = pk + v(pk) x δt pk+1 = pk + (v(pk) + v(p*) ) x δt/2

  • Can also be derived from Taylor’s series (next slide)
slide-37
SLIDE 37

2nd Order Runge-KuQa (RK2)

  • Improved accuracy from Euler for ODE
  • Differen0a0ng the above equa0on
  • From Taylor series expansion:

V(Pk) V(P*)

slide-38
SLIDE 38

4th Order Runge-KuQa (RK4)

  • BeQer accuracy, recommended

a = 2δt v(pk), b = 2δt v(pk+a/2), c = 2δt v(pk+b/2) d = 2δt v(pk+c/2), pk+1 = pk + (a+2b+2c+d)/6

slide-39
SLIDE 39

Put it All Together Par0cle Tracing Algorithm

  • 1. Specify a seed posi0on p(0), t = 0
  • 2. Perform cell search to locate the cell that contains

the p(t)

  • 3. Interpolate the velocity field to determine the

velocity at p(t)

  • 4. Advance the par0cle from p(t) to p(t+Δt) using a

numerical integra0on method

  • 5. Repeat from step 2 un0l the par0cle moves a

certain distance or goes out of bound

slide-40
SLIDE 40

Line Integral Convolu0on

slide-41
SLIDE 41

Line Integral Convolution

slide-42
SLIDE 42

Motivation

  • To visualize steady 2D vector fields,
  • r flows near the body of the model

(surface flows)

  • To create images similar to

experimental oil-flow visualization

  • To overcome the drawback of

traditional flow visualization techniques

slide-43
SLIDE 43

Streamline Problems

  • Seed placement is non trivial
  • Trial and error
  • Need prior knowledge
  • Unsatisfactory visualization
  • Grid spacing may vary
  • Difficult to control streamline lengths
  • Discontinued flow lines
slide-44
SLIDE 44

Streamlines

Uneven streamline density and lengths

slide-45
SLIDE 45

Streamline and LIC Comparison

Streamlines LIC

slide-46
SLIDE 46

LIC – Cabral & Leedom ‘93

slide-47
SLIDE 47

Line Integral Convolution

  • From each pixel,

streamlines are computed in both directions

slide-48
SLIDE 48

Line Integral Convolution

  • From each pixel,

streamlines are computed in both directions

slide-49
SLIDE 49

Line Integral Convolution

  • From each pixel,

streamlines are computed in both directions

  • Pixel values from the input

noise image are summed together with weights

slide-50
SLIDE 50

Line Integral Convolution

  • From each pixel,

streamlines are computed in both directions

  • Pixel values from the input

noise image are summed together with weights

slide-51
SLIDE 51

Line Integral Convolution

  • From each pixel,

streamlines are computed in both directions

  • Pixel values from the input

noise image are summed together with weights

  • The result is output to the

pixel

slide-52
SLIDE 52

The Convolu0on Kernel h

  • The convolu0on kernel determines the

weights of the pixel values along the forward and backward streamline

Box filter hi = 1 / l Tent filter hi = 1- i / l

slide-53
SLIDE 53

The Convolu0on Kernel h

  • Windowed Hanning rippled func0on:

* =

  • B. Cabral and C. Leedom, Imaging vector fields using line integral

convolu0on, in Proceedings of SIGGRAPH 93, pages 263-270, 1993.

slide-54
SLIDE 54

Periodical Motion Filter

  • The weight of pixel in the convolution

is decided by a periodic motion filter - windowed Hanning ripple function

  • The phase of the function can be

shifted to create animations

X = T = 1 T = 2 T=3 T=4 T=5

slide-55
SLIDE 55

Results

[Cabral and Leedom ’93]

slide-56
SLIDE 56

Some references for LIC

  • 1. B. Cabral and C. Leedom, Imaging vector fields using line

integral convolu0on, in Proceedings of SIGGRAPH 93, pages 263-270, 1993.

  • 2. J. van Wijk, Image based flow visualiza0on, in

Proceedings of ACM SIGGRAPH ‘02, pages 745-754, 2002.

  • 3. J. vanWijk, Image based flow visualiza0on on curved

surfaces, in Proceedings of Visualiza/on 2003, pages 123-131, IEEE Computer Society Press, 2003.