Stream Lines and Surfaces Lecture 9 February 20, 2020 Outline - - PowerPoint PPT Presentation

stream lines and surfaces
SMART_READER_LITE
LIVE PREVIEW

Stream Lines and Surfaces Lecture 9 February 20, 2020 Outline - - PowerPoint PPT Presentation

CS53000 - Spring 2020 Introduction to Scientific Visualization Stream Lines and Surfaces Lecture 9 February 20, 2020 Outline Introduction Overview of basic techniques Mathematical / numerical foundations CS530 / Spring 2020 : Introduction


slide-1
SLIDE 1

CS53000 - Spring 2020

Introduction to Scientific Visualization

Lecture

Stream Lines and Surfaces

February 20, 2020

9

slide-2
SLIDE 2

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Outline

Introduction Overview of basic techniques Mathematical / numerical foundations

2

slide-3
SLIDE 3

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Vector Field Visualization

General Goal:

  • Display the field’s information
  • direction
  • norm
  • Convey patterns
  • Capture overall structure

Domain Specific:

  • Detect certain features:
  • vortex cores, attachment, shock

3

slide-4
SLIDE 4

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Data set is given by a vector component and its

magnitude Often results from study of fluid flow or by looking at derivatives (rate of change) of some scalar quantity (e.g., bioelectric field) No visual intuition for what a vector field should look like Many visualization techniques proposed

4

Vector Field Visualization

slide-5
SLIDE 5

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Origins of Flow Visualization

Rich field of Fluid Flow Visualization (experimental) Hundreds of years old!! Computational fluid dynamics (CFD) simulations require powerful computational flow visualization techniques

5

slide-6
SLIDE 6

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Experimental Flow Vis

6

slide-7
SLIDE 7

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Experimental Flow Vis

7

slide-8
SLIDE 8

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Experimental Flow Vis

8

slide-9
SLIDE 9

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Experimental Flow Vis

9

slide-10
SLIDE 10

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Experimental Flow Vis

10

slide-11
SLIDE 11

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Experimental Flow Vis

11

Streaklines in the wake behind a cylinder (from Batchelor 1967)

slide-12
SLIDE 12

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Flow Visualization in SciVis

Direct visualization Integral lines and surfaces

Texture-based and dense methods Topology Feature extraction Coherent structures Extension to tensor data

12

slide-13
SLIDE 13

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Direct Visualization

Glyphs: visual encoding (geometry + color) of local data attributes

13

Peikert and Roth, ETH Zurich Pieter W. Groen, Universiteit Amsterdam

slide-14
SLIDE 14

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Streamline-based Techniques

Stream-{lines | tubes | ribbons | polygons |…}

14

Hans-Georg Pagendarm, DLR Göttingen Mat Ward WPI Gerris Flow Solver

Stream ribbons

slide-15
SLIDE 15

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Streamline seeding Streamlines on surfaces Illuminated streamlines

15

Greg Turk, Georgia Tech Konrad Polthier, Zuse Institut Berlin Mallo et al., ETH Zurich

Streamline-based Techniques

slide-16
SLIDE 16

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Stream Surfaces

16

Christoph Garth, University of Kaiserslautern Markus Ruetten, DLR Goettingen

slide-17
SLIDE 17

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Mathematical Framework

Differential equation associated with smooth vector field with : trajectory (streamline, orbit) Steady: does not depend on time vs. unsteady (“time-dependent”, “transient”) Initial conditions:

17

⌃ v : I ⊆ I R × Mn → TMn

x : I R → Mn

x(0) = x0

dx dt = ⇧ v(t, x)

⇥ v

x(0) = x0

⌅ v : I ⊆ I R × I Rn → I Rn

x : I R → I Rn

slide-18
SLIDE 18

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Mathematical Framework

Flow of a vector field tells us where a particle ends up after a certain time given a particular starting point. Existence and uniqueness if is smooth (“Lipschitz continuity”)

18

⌅⇥(x, t) ⌅t

t=τ = ⌥

v(x, )

⇥ v

⌅⇥(x, t) ⌅t

t=τ = ⌥

v(x, )

⇥ v

φ : U ⊆ I Rn × I ⊆ I R → I Rn

slide-19
SLIDE 19

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Streamline Computation

Requires solution (integration) of an ordinary differential equation (ODE): Closed form solutions (analytic) do not exist in general (linear vector fields are a special case) Numerical ODE solvers

19

x(t) = x0 + Z t ~ v(x(u))du

slide-20
SLIDE 20

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Euler Method

Simplest method Fast, inaccurate, unstable

20

(x0, t0) (x1, t1) (x2, t2) (x3, t3) (x4, t4)

xn+1 = xn + h⌃ v(xn, tn) + O(h2)

(x0, t0) (x1, t1) (x2, t2) (x3, t3) (x4, t4)

slide-21
SLIDE 21

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Runge Kutta 2 (RK2)

Use Euler as trial step

21

⌃ k1 = h⌃ v(xn, tn) ⌃ k2 = h⌃ v(1 2 ⌃ k1, tn + 1 2h) xn+1 = xn + ⌅ k2 + O(h3)

(x0, t0) (x1, t1) (x2, t2) (x3, t3)

⌃ k1 = h⌃ v(xn, tn) xn+1 = xn + ⌅ k2 + O(h3)

(x0, t0) (x1, t1) (x2, t2) (x3, t3)

~ k2 = h~ v(xn + 1 2 ~ k1, tn + 1 2h)

slide-22
SLIDE 22

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Runge Kutta 4 (RK4)

Additional Euler steps to increase order

22

⌃ k3 = h⌃ v(xn + 1 2 ⌃ k2, tn + 1 2h) ⌃ k3 = h⌃ v(xn + 1 2 ⌃ k2, tn + 1 2h) ⌃ k1 = h⌃ v(xn, tn)

⌃ k3 = h⌃ v(xn + 1 2 ⌃ k2, tn + 1 2h)

⌃ k1 = h⌃ v(xn, tn)

⇧ xn+1 = ⇧ xn + 1 6 ⇧ k1 + 1 3 ⇧ k2 + 1 3 ⇧ k3 + 1 6 ⇧ k4 + O(h5) ~ k2 = h~ v(xn + 1 2 ~ k1, tn + 1 2h)

~ k4 = h~ v(xn + ~ k3, tn + h)

slide-23
SLIDE 23

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Runge Kutta 4

Increased order does not imply increased accuracy!

RK4 requires 4 evaluations of RK2 requires only 2 RK4 more “accurate” if same accuracy can be achieved with double step size (at least)

In most practical cases RK4 outperforms RK2

23

⇧ v(t, ⇧ x)

slide-24
SLIDE 24

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Adaptive Step Size

Objectives

Reduce computational effort Increase accuracy

Adapt step size h to achieve required accuracy Compare several integration steps to estimate actual accuracy

24

slide-25
SLIDE 25

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Adaptive Step Size

Step doubling method (with RK4)

1 step with double step size 2h 2 steps with size h Error estimate Increased order

25

⌥ x(t + 2h) = ⌥ k1 + (2h)5⌥ + O(h6) ⌥ x(t + 2h) = ⌥ k2 + 2(h)5⌥ + O(h6) ⇥ ∆ = ⇥ k2 − ⇥ k1 ⌃ x(t + 2h) = ⌃ k2 + ⌃ ∆ 15 + O(h6)

slide-26
SLIDE 26

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Runge Kutta 4/5 (RK45)

Embedded Runge-Kutta formulas

Different combinations of same 6 function evaluations yield 4th and 5th order formulas

26

x∗

n+1 = xn + c∗ 1k1 + c∗ 2k2 + c∗ 3k3 + c∗ 4k4 + c∗ 5k5 + c∗ 6k6 + O(h5)

slide-27
SLIDE 27

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Runge Kutta 4/5

Embedded Runge-Kutta formulas

27

slide-28
SLIDE 28

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Runge-Kutta 4/5

Dormand/Prince (DOPRI45): dense output

28

slide-29
SLIDE 29

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Runge Kutta 4/5

Embedded Runge-Kutta formulas

Error evaluation For a desired accuracy , required step size Used to adjust step size

29

∆ = xn+1 − x∗

n+1 = 6

  • i=1

(ci − c∗

i )ki = O(h5)

∆0

h0 = h1

  • ∆0

∆1

  • 1

5

slide-30
SLIDE 30

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Definitions

Streamline

trajectory of massless particle in a steady flow or path of a particle in a frozen unsteady field (non-physical)

Pathline

trajectory of massless particle in an unsteady flow

Timeline

connect particles released simultaneously at discrete time-steps

Streakline

continuously inject particles at a fixed point in the flow, connect consecutive particles

30

slide-31
SLIDE 31

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Streamlines

31

  • Basic idea: visualizing the flow directions by

releasing particles and calculating a series of particle positions based on the vector field

slide-32
SLIDE 32

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Streamlines

32

  • Displaying streamlines is a local technique because you

can only visualize the flow directions initiated from one

  • r a few particles (sparse / discrete flow sampling)
  • When the number of streamlines is increased, the scene

becomes cluttered

  • User needs to know where to drop the

seed particles (seeding strategy)

slide-33
SLIDE 33

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Streamlines

Many streamlines can give an overall / global view of the vector field

33

slide-34
SLIDE 34

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Rakes = multiple streamlines

34

Rake: geometric primitive (typically a line) along which multiple streamlines are seeded at regular interval.

slide-35
SLIDE 35

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Pathlines

35

  • Extension of streamlines for time-varying data

(unsteady flows) Pathlines:

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

Pathline: Trajectory of a given particle. This is generated by injecting a dye into the fluid and following its path by photography or other means

slide-36
SLIDE 36

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Timelines

36

  • Extension of streamlines for time-varying data

(unsteady flows)

T = 1 T = 2 T = 3 timeline

Timeline is generated by drawing a line through adjacent particles in flow at any instant of time

slide-37
SLIDE 37

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Streaklines

37

b.t. =5 b.t. =4 b.t. =3 b.t. =2 b.t. =1

Streakline concentrates on fluid particles that have gone through a fixed station or point. At some instant of time the position of all these particles are marked and a line is drawn through them. Such a line is called a streakline.

  • Extension of streamlines for time-varying data

(unsteady flows)

slide-38
SLIDE 38

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advection methods comparison

38

slide-39
SLIDE 39

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Stream-ribbon

Basic idea:

Need a means of visualizing swirling flow behavior (vortices) A point primitive or an icon can hardly convey this Idea: advect neighboring particles and connect them with polygons Shade those polygons appropriately and one will detect twists

39

slide-40
SLIDE 40

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Stream-ribbon

Problem - when flow diverges Solution: Just trace one streamline and a constant size vector with it:

40

slide-41
SLIDE 41

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Ribbons

Ribbons can be constructed using 2 or 3 particle advections per segment.

41

slide-42
SLIDE 42

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Illuminated Streamlines

Remember Phong lighting model:

42

θ θ

γ

L R V N I = Ia + Id + Is = ka + kd L · N + ks (V · R)n

slide-43
SLIDE 43

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Illuminated Streamlines

Model requires normal vector but curves have an entire normal plane

Rewrite with Hence Similarly

43

T

  • L

L = LT + LN

LT = L · T

L · N = |LN| = p 1 − |LT |2 = p 1 − (L · T)2

V · R = (L · T)(V · T)−

p 1 − (L · T)2p 1 − (V · T)2

slide-44
SLIDE 44

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Illuminated Streamlines

These quantities can be computed efficiently by the graphics hardware using texture mapping.

44

Interactive visualization of 3D-vector fields using illuminated stream lines. Zöckler, Stalling, Hege, IEEE Vis 1996

slide-45
SLIDE 45

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Illuminated Streamlines

45

Illuminated Streamlines Revisited. Mallo, Peikert, Sigg, Sadlo, IEEE Vis 2005

slide-46
SLIDE 46

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Streamline Seeding

Isolated streamlines provide poor picture of the flow continuum Large number of streamlines create visual clutter Seeding strategy is important to effectively use streamlines in visualization

46

slide-47
SLIDE 47

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Turk & Banks ‘96

Mimic hand-drawn flows Use multi-scale analysis to determine position/ density Minimize energy function Rules for adding/removing/moving streamlines

47

slide-48
SLIDE 48

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Hand Drawn Flows

48

slide-49
SLIDE 49

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Automated Results

49

slide-50
SLIDE 50

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Approach: Image-based

50

slide-51
SLIDE 51

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Comparison

51

Evenly sampled “Optimized”

slide-52
SLIDE 52

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Streamline Seeding

Streamline Placement

52

slide-53
SLIDE 53

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Farthest Point Seeding

Motivations

Speed up Turk and Banks algorithm (x200!) Achieve better results by mitigating issue of short streamlines

53

Mebarki et al., Farthest point seeding for efficient placement of streamlines. IEEE Visualization 2005

slide-54
SLIDE 54

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Farthest Point Seeding

Seed next streamline at point furthest away from existing streamlines

Streamlines are approximated by discrete set of points Points are Delaunay triangulated Empty circumscribed circle of triangles used to determine largest empty regions

54 Mebarki et al., Farthest point seeding for efficient placement of streamlines. IEEE Visualization 2005

slide-55
SLIDE 55

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Farthest Point Seeding

Seed next streamline at point furthest away from existing streamlines

55 Mebarki et al., Farthest point seeding for efficient placement of streamlines. IEEE Visualization 2005

streamlines are approximated by discrete set of points points are Delaunay triangulated Empty circumscribed circle of triangles used to determine largest empty regions

slide-56
SLIDE 56

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Stream Surface

Surface spanned by union of infinitely many streamlines integrated from a curve

Rake, polygonal line, closed curve, … Remark: circle ⇒ “stream tube”

Everywhere tangential to the flow “Natural” extension of streamlines in 3D

Capture volumes, shading, depth cues

56

slide-57
SLIDE 57

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Stream Surface

57

slide-58
SLIDE 58

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Definition

Natural parameterization [s x t]

Starting curve (→ front) Along the flow (integration parameter, time)

Constant s: streamline Constant t: time line

58

t s

slide-59
SLIDE 59

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

(Naïve) Implementation

Sparse set of streamlines integrated independently Ribbons connecting neighboring streamlines Corresponds to a triangulation in parameter space Extremely inaccurate and/or inefficient

59

slide-60
SLIDE 60

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front (Hultquist)

Advance a discrete front iteratively Triangulate during integration

Ensure well-shaped triangles Local heuristic Handle shearing effects

Dynamically adapt front resolution to account for divergence / convergence

60

slide-61
SLIDE 61

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Front is stored as a double-linked list of streamlines

61

i i-1 i+1

slide-62
SLIDE 62

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

A streamline on the front is locally advanced w.r.t. two neighboring streamlines

62

slide-63
SLIDE 63

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Objective: maintain front locally

  • rthogonal to flow direction

63

i i-1 i+1

slide-64
SLIDE 64

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Objective: maintain front locally orthogonal to flow direction Triangulation heuristic creates shortest diagonal (greedy algo.)

64

i i-1 i+1

slide-65
SLIDE 65

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

i i-1 i+1

Advancing Front

Triangulation implicitly determines which streamlines must be advanced next

65

slide-66
SLIDE 66

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Triangulation locally determines which streamline must be advanced next

66

i i-1 i+1

slide-67
SLIDE 67

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Triangulation locally determines which streamline must be advanced next

67

i i-1 i+1

slide-68
SLIDE 68

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Once a streamline has been advanced, its neighbors must be advanced too, if required Local decision propagates along the front to ensure orthogonality to the flow Active point moves back and forth Iteration complete when all neighboring streamlines have roughly the same size

68

slide-69
SLIDE 69

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Front resolution (=distance between neighboring streamlines) varies during integration (convergence/ divergence) Ensure constant resolution by inserting or removing additional streamlines when necessary Requires to advance all streamlines simultaneously

69

slide-70
SLIDE 70

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Hultquist’s criterion for splitting: relative width / length of current quadrilateral exceeds factor 2

70

slide-71
SLIDE 71

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Hultquist’s criterion for merging: 3 neighboring points are coplanar and close Required to speed up computation and decrease complexity of generated surface Both merging and splitting criteria must be evaluated at each step

71

slide-72
SLIDE 72

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Ripping is necessary if stream surface encounters an obstacle

72

slide-73
SLIDE 73

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Improvements of original method

Higher integration accuracy (RK 45) Integration step controlled by arc length

73

integration parameter arc length

  • C. Garth et al., Surface Techniques for Vortex Visualization

Joint Eurographics - IEEE TCVG Symposium on Visualization

slide-74
SLIDE 74

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Possible improvements of original method

Curvature control in refinement criterion

Avoids creases on surface Properly handle folding behavior (vortex)

74

segment size only inter-segment angle

slide-75
SLIDE 75

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Possible improvements of original method

Topological information

Front resolution control Ripping criterion

75

slide-76
SLIDE 76

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Examples

76

slide-77
SLIDE 77

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Examples

77

slide-78
SLIDE 78

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Advancing Front

Examples

78

slide-79
SLIDE 79

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Path Surface

79

  • C. Garth et al., Generation of Accurate Integral Surfaces

in Time-Dependent Vector Fields. IEEE Visualization 2008

slide-80
SLIDE 80

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Path Surface

80

slide-81
SLIDE 81

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Path Surface

81

slide-82
SLIDE 82

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Path Surface

Integral surfaces have natural 2d-parameterization (s,t)

Lend themselves well to texture mapping

earlier work on this by Löffelmann et al., 1997 animated textures to convey temporal flow behavior

82

t → s →

slide-83
SLIDE 83

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Path Surface

83

slide-84
SLIDE 84

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Path Surface

83

slide-85
SLIDE 85

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Path Surface

83

slide-86
SLIDE 86

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Texture Mapping on Path

Vortex formation behind an ellipsoid (2.6e6 cells, 400 timesteps)

84

slide-87
SLIDE 87

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Texture Mapping on Path

Vortex formation behind an ellipsoid (2.6e6 cells, 400 timesteps)

84

slide-88
SLIDE 88

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Texture Mapping

Vortex formation behind an ellipsoid (2.6e6 cells, 400 timesteps)

85

slide-89
SLIDE 89

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Texture Mapping

Vortex formation behind an ellipsoid (2.6e6 cells, 400 timesteps)

85

slide-90
SLIDE 90

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Texture Mapping

Vortex formation behind an ellipsoid (2.6e6 cells, 400 timesteps)

86

  • C. Garth et al., Generation of Accurate Integral Surfaces

in Time-Dependent Vector Fields. IEEE Visualization 2008

slide-91
SLIDE 91

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020 87

  • C. Garth et al., Generation of Accurate Integral Surfaces

in Time-Dependent Vector Fields. IEEE Visualization 2008

slide-92
SLIDE 92

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020 87

  • C. Garth et al., Generation of Accurate Integral Surfaces

in Time-Dependent Vector Fields. IEEE Visualization 2008

slide-93
SLIDE 93

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Streak and Time

Similar adaptive front refinement principle

88

  • H. Krishnan et al., Time and Streak Surfaces for Flow Visualization

in Large Time-Varying Data Sets. IEEE Visualization 2009

slide-94
SLIDE 94

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Integration on Surfaces

  • Integration must be carried out on smooth

surfaces (tangent bundle of manifold)

  • Problems
  • polygonal surfaces are not smooth
  • Tangent plane undefined at edges and vertices
  • Global parameterization (i.e. invertible mapping from the

plane to the surface) of surface may not be available or not exist

89

slide-95
SLIDE 95

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Integration on Surfaces

  • Quick and dirty
  • integrate in surrounding (3D) flow
  • Control distance to surface
  • Successive projections for a posteriori

corrections

90

slide-96
SLIDE 96

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Integration on Surfaces

  • Cell-wise integration
  • Use well-defined (smooth) cell-wise

tangent plane to carry out integration over projected vector field in each cell

  • Use analytic formulas (triangles) or RK
  • Iterative computation from edge to edge

91

slide-97
SLIDE 97

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Integration on Surfaces

  • Cell-wise integration
  • Problem: possible inconsistencies of cell-

wise vector field projections at edges

92

slide-98
SLIDE 98

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Integration on Surfaces

  • Use discrete geodesics defined on

polygonal surfaces

  • Geodesics in continuous setting
  • Extension of straight lines to curved surfaces
  • Shortest path between two points
  • Smooth curve is geodesics iff it is not curved within

the surface

93

slide-99
SLIDE 99

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Integration on Surfaces

  • Geodesics on polygonal surfaces

94

  • K. Polthier, M. Schmies, Straightest Geodesics on Polyhedral Surfaces,

Mathematical Visualization, H.C. Hege, K. Polthier (eds.), Springer Verlag, 1998

slide-100
SLIDE 100

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Integration on Surfaces

  • Parallel transport of vectors

95

  • K. Polthier, M. Schmies, Straightest Geodesics on Polyhedral Surfaces,

Mathematical Visualization, H.C. Hege, K. Polthier (eds.), Springer Verlag, 1998

slide-101
SLIDE 101

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

: Parallel transport

along

Integration on Surfaces

  • Geodesic Runge-Kutta method

96

: Geodesic path

  • K. Polthier, M. Schmies, Straightest Geodesics on Polyhedral Surfaces,

Mathematical Visualization, H.C. Hege, K. Polthier (eds.), Springer Verlag, 1998

⇧ yi+1 = (h, yi, ⇧ yi)

δ π|δ

δ

slide-102
SLIDE 102

CS530 / Spring 2020 : Introduction to Scientific Visualization. Streamlines and Stream Surfaces Feb 20, 2020

Integration on Surfaces

  • Geodesic Runge-Kutta method

97

: Parallel transport

along : Geodesic path

⇧ yi+1 = (h, yi, ⇧ yi)

δ π|δ

δ

  • K. Polthier, M. Schmies, Straightest Geodesics on Polyhedral Surfaces,

Mathematical Visualization, H.C. Hege, K. Polthier (eds.), Springer Verlag, 1998