the particle level set method - university of british...

21
The Particle Level Set Method Ian Mitchell Department of Computer Science The University of British Columbia Joint work with Doug Enright, Ronald Fedkiw & Joel Ferziger (Stanford)

Upload: others

Post on 17-Oct-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

The Particle Level Set Method

Ian MitchellDepartment of Computer ScienceThe University of British Columbia

Joint work withDoug Enright, Ronald Fedkiw & Joel Ferziger (Stanford)

Page 2: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 2

Level Set Methods and Boundaries• Level sets are just one method of tracking interfaces

• Advantages– Geometric information easy to extract

– Handles merging and breaking interfaces– Easy to implement in 3D

• Disadvantages– Volume loss

Page 3: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 3

Characterizing Boundaries• Other ways to model moving boundaries

– Discretization of front with particles (Tryggvason)

– Marker particles (Harlow & Welch, Raad & Chen)– Characteristic function / Volume of Fluid (Noh & Woodward, Hirt &

Nichols, Brackbill, Pilliod & Puckett)

Marker Particle Volume of Fluid

Page 4: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 4

Particle Level Set Method• Passively advected particles detect and correct errors in regions

that the level set solution resolves poorly– [Enright, Fedkiw, Ferziger & Mitchell, JCP 2002]

• Example– 2D rigid body rotation of notched disk [Zalesak, 1979]– 100 x 100 grid, notch width 5, roughly 16 particles per cell

30 35 40 45 50 55 60 65 7055

60

65

70

75

80

85

90

95

x

y

Initial conditions

30 35 40 45 50 55 60 65 7055

60

65

70

75

80

85

90

95

x

y

After one rotation

error in regular level set solution

Page 5: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 5

A Mixture of Particles and Level Sets• For each particle identify

– Side of interface (inside or outside)

– Distance to interface (radius)

• If no error, level set and particles are moved independently– Particle radii adjust, subject to maximum and

minimum

• If a particle is on the wrong side of the interface– Adjust nearest node’s level set value

according to particle’s local circular level set

• If multiple particles are on the wrong side– First, check particles from the same side and

choose deepest node value

– Second, check particles from opposite sides and choose shallowest node value

inside particleinside level set

outside particleinside level set

Page 6: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 6

Massless Marker Particles

• Two sets of particles placed near interface– Positive particles with sssspppp = +1 in φ > 0– Negative particles with sssspppp = -1 in φ > 0

• Particles move with dxdxdxdxpppp/dtdtdtdt = uuuu(xxxxpppp)• Each particle has a variable radius rrrrpppp ∈ [∆xxxx/10, ∆xxxx/2]

• Particles used to enhance interface resolution

Three Non-Overlapping Circles

Six Overlapping Circles

Page 7: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 7

30 35 40 45 50 55 60 65 7055

60

65

70

75

80

85

90

95

x

y

• Particles of both signs are initially randomly placed within a user defined band of the interface { xxxx | φ(xxxx) < 3 ∆xxxx }

• Number of particles per cell used is dimension dependent, we use 4 per dimension (4 in 1D, 16 in 2D, 64 in 3D, etc)

Initialization of Particles

Page 8: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 8

Particle Attraction• Need to move particles to the appropriate side of interface• Direction of shortest path to interface given by NNNN(xxxxpppp)

30 35 40 45 50 55 60 65 7055

60

65

70

75

80

85

90

95

x

y

Page 9: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 9

Coupling I: Identifying Errors• Error detected if particle is on wrong side of interface

• First order errors in level sets, so only need first order movement of and fix by particles

0>φ

0≤φpr

Page 10: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 10

• Spheres associated with particles are generators of locally defined level set functions, φpppp(xxxx)

• φpppp(xxxx) is defined only on the corners of the cell which contains particle pppp

Coupling II: Quantifying Errors

Page 11: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 11

Coupling III: Reducing the Errors• Use escaped particles to form reduced-error representation of φ

φ −0φ =

0φ ≤

E −

Page 12: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 12

Sample Computational Cycle

3rd order R-K evolution of particles and level set

Particle Correction

Reinitialization of φ

Particle Correction

Repeat as requiredRadii Adjustment

Page 13: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 13

Notched Sphere• 3D version of Zalesak’s disk

• 1003 grid, notch width 5, roughly 64 particles per cell

Level Set Only Particle Level Set

Rendering by Sou Cheng Choi

Page 14: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 14

Page 15: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 15

Page 16: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 16

Pushing the Limits• Fully 3D vortex stretch of sphere (vortex in x-y and x-z planes)

– 1003 grid, error is evaluated by time reversing the flow

– [LeVeque, 1996]

Level Set Only Particle Level Set

Rendering by Sou Cheng Choi

Page 17: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 17

Page 18: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 18

Page 19: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 19

Application: Animating Fluids• [Enright, Marschner, & Fedkiw, Siggraph 2002]

– Coupled particle level set with ghost fluid method to track complex free surface evolution

– Animation demands computation speed and physical plausibility

Page 20: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 20

Page 21: The Particle Level Set Method - University of British Columbiamitchell/Class/CS542D.2006W2/Talks/pls.pdf · Particle Level Set Method • Passively advected particles detect and correct

14 Jan 07 Ian Mitchell (UBC Computer Science) 21

What About Shocks?• Level set regularizes regions of high curvature

– An error for rigid body rotations and other pure advections

– Correct behavior around shocks

• Particle level set assumes that particles are correct• Example: square moving inward with unit normal speed