a brief introduction to the (standard) lattice-boltzmann ...€¦ · a brief introduction to the...

29
A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI approach Markus Geveler Dirk Ribbrock Fakult¨ at f¨ ur Mathematik Fakult¨ at f¨ ur Informatik TU Dortmund April 9, 2009 1 / 29

Upload: others

Post on 21-Jul-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

A brief introduction to the (standard)Lattice-Boltzmann Method and the HONEI

approach

Markus Geveler Dirk Ribbrock

Fakultat fur MathematikFakultat fur Informatik

TU Dortmund

April 9, 2009

1 / 29

Page 2: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

IntroductionOverview

Overview

Part one: Introduction to LBM research

LBM basicsSolving flow problemsTypical algorithm

Part two: Implementation and the HONEI approach

What is this bee again? - Introduction to HONEIThe HONEI LBM frameworkOptimisationsFirst results

Conclusion

2 / 29

Page 3: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Overview

Part I: Introduction to LBM research

3 / 29

Page 4: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchLBM basics

Cellular automata

regular arrangements of cellsof the same kind

each cell has a finite numberof states

cells are updatedsimultanously bydeterministic rules

only a local neighbourhood istaken into account

example: Conway’s Game ofLife (1970)

4 / 29

Page 5: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchLBM basics

Cellular automata

Figure: source: Wolf-Gladrow 2005

despite simple update rules:complex behaviour

easy to implement

well suited for massively parallelcomputers (local updating)

but:

conservative?propagation of physicalquantities?

5 / 29

Page 6: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchLBM basics

From CAs to Lattice Gas Cellular Automata

idea: split update into twosteps

collision of particles, whichreflects the microdynamics ofmolecules

streaming of particles overpredefined trajectories givenby the lattice

6 / 29

Page 7: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchLBM basics

Lattice Gas Cellular Automata

still simple update rules

propagation of quantities

streaming is deterministic butwith statistical noise ⇒averaging is needed

7 / 29

Page 8: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchLBM basics

From LGCAs to LBM: The ’Boltzmann’ in Lattice-Boltzmann

In LGCAs, the particle balance equation for particle N in direction α canbe written as

Nα(x + eα∆t, t + ∆t) = Nα(x, t) + Ωα[N(x, t)]

8 / 29

Page 9: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchLBM basics

From LGCAs to LBM: The ’Boltzmann’ in Lattice-Boltzmann

Expanding the left hand side of the equation gives

Nα(x + eα∆t, t + ∆t) = Nα(x, t) + Ωα[N(x, t)]

⇔ Nα(x, t) + ∆t∂Nα

∂t+ eα∆t∇Nα +O((∆t)2) = Nα(x, t) + Ωα[N(x, t)]

⇔ ∂Nα

∂t+ eα∇Nα =

1

∆tΩα[N(x, t)]

Which is similar to the Boltzmann equation

∂f

∂t+ v∇f︸ ︷︷ ︸

transport term

= Q︸︷︷︸collision integral

9 / 29

Page 10: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchLBM basics

From LGCAs to LBM: The ’Boltzmann’ in Lattice-Boltzmann

The final step to LBM: replace the boolean fields by distributionfunctions to get rid of the statistical noise

Nα(x+ eα∆t, t +∆t) = Nα(x, t)+Ωα[N(x, t)]

→ fα(x+eα∆t, t +∆t) = fα(x, t)+Ωα[f (x, t)]

⇔fα(x + eα∆t, t + ∆t)− fα(x, t) = Ωα[f (x, t)]︸ ︷︷ ︸

Lattice Boltzmann Equation

⇒ Still yielding all advantages of LGCA

10 / 29

Page 11: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchLBM basics

DxQy what? - The ’Lattice’ in Lattice-Boltzmann

11 / 29

Page 12: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchLBM basics

The collision operator: LBGK models

in general, Ωα is a matrix describing the microscopic dynamics

until early 1990s: non-linear collision operator (evaluationdemanding)

later: linearisation and substitution by the single relaxation timemodel after the collision model by Bhatnagar, Gross, Krook

Ωα = − 1τ (fα − f eq

α )

which leads to the most common form of the Lattice-Boltzmann equation

fα(x + eα∆t, t + ∆t)− fα(x, t) = − 1τ (fα − f eq

α )

12 / 29

Page 13: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchSolving flow problems

Local Equilibrium distribution functions: SWE for D2Q9

Ut + F (U)x + G (U)y = S(U),(x , y) ∈ Ω, t ≥ 0,

U = (h hu1 hu2)T

13 / 29

Page 14: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchSolving flow problems

Local Equilibrium distribution functions: SWE for D2Q9

f eqα =

h − 5gh2

6e2 − 2h3e2 uiui α = 0

gh2

6e2 + h3e2 eαiui + h

2e4 eαjuiuj − h6e2 uiui α = 1, 3, 5, 7

gh2

24e2 + h12e2 eαiui + h

8e4 eαjuiuj − h24e2 uiui α = 2, 4, 6, 8

14 / 29

Page 15: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Introduction to LBM researchTypical algorithm

Bringing everything together

Extract physical quantities:

h(x, t) =∑

α fα(x, t),

ui (x, t) = 1h(x,t)

∑α eαi fα

15 / 29

Page 16: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Overview

Part II: Implementation and the HONEI approach

16 / 29

Page 17: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachWhat is this bee again? - Introduction to HONEI

Hardware Oriented Numerics Efficiently Implemented - overview

17 / 29

Page 18: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachThe HONEI LBM framework

General

Implementations of all modules for all backends + infrastructure

Extensions to the LBM approach for SWE

External forces do not influence collision ⇒ add force terms todistribution

fα(x + eα∆t, t + ∆t)− fα(x, t) = − 1τ (fα − f eq

α ) + ∆t6e2 eαiFi

Numerical evaluation: semi implicit centered scheme (Zhou 2004):

Fi = Fi (x + 12eαi∆t, t)

18 / 29

Page 19: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachThe HONEI LBM framework

Force terms for SWE

Example: still water above uneven bed: bed slope Fi = −gh ∂zb

∂xi

19 / 29

Page 20: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachArbitrary geometry

HONEI LBM grid: arbitrary geometry

Rasterization to create obstacle matrix: Preprocessed boundaryinformation

20 / 29

Page 21: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachOptimisation

HONEI LBM grid: streaming directions

no obstacles(solid cells)present incomputation

supports SIMDin all directions

21 / 29

Page 22: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachOptimisation

HONEI LBM grid: partitioning

enables simple1D partitioning

22 / 29

Page 23: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachResults

AccuracyDriven cavity, Re = 100, ux , mid vertical line, relative,||u − uref||2 = 0.0002

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

0 0.2 0.4 0.6 0.8 1

u/U

y [lattice]

HuebnerHONEI LBM

23 / 29

Page 24: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachResults

Single precision performance

0

10

20

30

40

50

60

70

80

1002 2502 5002 8002 11002 15002

MLU

P/s

Problem size

CUDAMPI 5(3)

SSE 2 threadsSSE

24 / 29

Page 25: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachResults

HONEI LBM (SWE) showcases

25 / 29

Page 26: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachResults

HONEI LBM (SWE) showcases

26 / 29

Page 27: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Implementation and the HONEI approachResults

HONEI LBM (SWE) showcases

0.8*exp(-5*(x-1)*(x-1)-50*(y-0.5)*(y-0.5))

27 / 29

Page 28: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Conclusion and future work

The LBM

strongly related to the most general equation for gas-dynamic flowprocesses

efficient

easy to implement, particularly for complicated boundary schemes

basic algorithms in 2D quite accurate

28 / 29

Page 29: A brief introduction to the (standard) Lattice-Boltzmann ...€¦ · A brief introduction to the (standard) Lattice-Boltzmann Method and the HONEI ... Cellular automata regular arrangements

Conclusion and future work

The next steps

provide all modules for all backends

higher order boundary scheme

adaptivity

to the limits of real-time

Thank you for your attention

www.honei.org

29 / 29