introduction to scientific computing ii overview michael bader

84
Introduction to Scientific Computing II Overview Michael Bader

Upload: emery-cain

Post on 18-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction to Scientific Computing II Overview Michael Bader

Introduction to Scientific

Computing II

Overview

Michael Bader

Page 2: Introduction to Scientific Computing II Overview Michael Bader

Recall: Scientific Computing “Pipeline”

Page 3: Introduction to Scientific Computing II Overview Michael Bader

Topic #1 – SLE(numerical treatment, implementation)

fu

nn

nn

nn

nn

r

r

r

r

u

u

u

u

,

,1

1,2

1,1

,

,1

1,2

1,1

411

1411

11411

1141

114

???

Page 4: Introduction to Scientific Computing II Overview Michael Bader

Topic #2 – Molecular Dynamics(entire pipeline for one application)

Page 5: Introduction to Scientific Computing II Overview Michael Bader

Prerequisites

• discretisation of PDEs

• linear algebra

• Gaussian elimination

• basics on iterative solvers

• Jacobi, Gauss-Seidel, SOR, MG

• matlab

Page 6: Introduction to Scientific Computing II Overview Michael Bader

Organization

• lecture (90 min/week)

– theory

– methods

– simple examples

• tutorials (45 min/week)

– more examples

– make your own experiences

Page 7: Introduction to Scientific Computing II Overview Michael Bader

What Determines the Grading?

• written exam at the end of the semester

• no weighting of tutorials

however: solving tutorials is essential

- for understanding and remembering subjects

- for your success in the exam

Page 8: Introduction to Scientific Computing II Overview Michael Bader

Course Material

• slides (short, only headwords)

• exercise sheets

make your own lecture notes!

find your own solutions!

solutions presented in the tutorials

Page 9: Introduction to Scientific Computing II Overview Michael Bader

Contact

• for questions contact us after the lectures

• or fix a date per email

Michael Bader:

[email protected]

Wolfgang Eckhardt:

[email protected]

Page 10: Introduction to Scientific Computing II Overview Michael Bader

Introduction to Scientific

Computing II

From Gaussian Elimination to Multigrid – A Recapitulation

Page 11: Introduction to Scientific Computing II Overview Michael Bader

What’s the Problem to be Solved?

0

)(Re1

u

puuuu

T

t

Finite Elements

Finite Differences

(Finite Volumes)

Scientific Computing I

Numerical Programming II

Systems of linear equations

Application

ScenarioModelling

Scientific

Computing I

Partial Differential Equations

bAuh LU, Richardson, Jacobi, Gauss-Seidel,

SOR, MG

Scientific Computing I, Scientific Computing Lab,

Numerical Programming IMore on this!!!

Page 12: Introduction to Scientific Computing II Overview Michael Bader

two-dimensional Poisson equation

heat equation diffusion membranes …

Example Equation

21;0 in fu

vvvvvvvvvvvvvvv

grid +

finite differences

bAuh

Page 13: Introduction to Scientific Computing II Overview Michael Bader

Typical SLE

sparse

band structure

411

1411

11411

1141

114

Page 14: Introduction to Scientific Computing II Overview Michael Bader

Example

]9[

]8[

]7[

]6[

]5[

]4[

]3[

]2[

]1[

]9[

]8[

]7[

]6[

]5[

]4[

]3[

]2[

]1[

410100000

141010000

014001000

100410100

010141010

001014001

000100410

000010141

000001014

f

f

f

f

f

f

f

f

f

u

u

u

u

u

u

u

u

u

Page 15: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination (LU)

411

1411

141

1411

11411

1141

141

1141

114

1

1

1

1

1

1

1

1

1

Page 16: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination (LU)

411

1411

141

1411

11411

****

141

****

114

1

1

1

1

1

1*

1

1*

1

Page 17: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination (LU)

411

1411

141

1411

*****

****

****

****

114

1

1

1

1

1*

1**

1*

1*

1

Page 18: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination (LU)

411

1411

141

****

****

****

****

****

114

1

1

1

1*

1**

1***

1*

1*

1

Page 19: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination (LU)

411

1411

****

****

****

****

****

****

114

1

1

1*

1**

1***

1***

1*

1*

1

Page 20: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination (LU)

411

****

***

****

****

****

****

****

114

1

1*

1**

1***

1***

1***

1*

1*

1

Page 21: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination (LU)

***

***

***

****

****

****

****

****

114

1*

1**

1***

1***

1***

1***

1*

1*

1

Page 22: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination (LU)

**

**

***

****

****

****

****

****

114

1**

1***

1***

1***

1***

1***

1*

1*

1

Page 23: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination (LU)

*

**

***

****

****

****

****

****

114

1***

1***

1***

1***

1***

1***

1*

1*

1

Page 24: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination – Costs

Storage: (for an n-by-n grid)• matrix has N = n2 rows• in L and U: n new non-zeros per row• therefore: O(Nn) = O(n3) bytes

In 3D: • N = n3 rows, n2 new non-zeros• therefore: O(Nn2) = O(n5) bytes

Page 25: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination – Costs

Operations:• matrix has N = n2 rows• for each row, eliminate n non-zeros in column below• addition of rows requ. O(n) operations • therefore: O(Nn2) = O(n4) operations

In 3D: • N = n3 rows, n2 new non-zeros• therefore: O(Nn4) = O(n7) operations

Page 26: Introduction to Scientific Computing II Overview Michael Bader

Gaussian Elimination – Costs

Storage: (for an n-by-n grid)• 2D: O(Nn) = O(n3) bytes• 3D: O(Nn2) = O(n5) bytes

Computation: • 2D: O(Nn2) = O(n4) operations• 3D: O(Nn4) = O(n7) operations

Even for problems of modest size (n = 100-1000) Gaussian Elimination is unfeasible

Page 27: Introduction to Scientific Computing II Overview Michael Bader

Iterative Solvers – Principle

series of approximations

costs per iteration? convergence? stopping criterion?

hMh

Mhhh uuuuu with10

Page 28: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods

problem: order an amount of peas on a straight line

(corresponds to solving uxx=0)

Page 29: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Page 30: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 31: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 32: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 33: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 34: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 35: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 36: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 37: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 38: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 39: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 40: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 41: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 42: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 43: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 44: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 45: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 46: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 47: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 48: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 49: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

Page 50: Introduction to Scientific Computing II Overview Michael Bader

sequentially place peas on the line between two neighbours

we get a smooth curve instead of a straight line global error is locally (almost) invisible

Relaxation Methods – Gauss-Seidel

Page 51: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods

problem: order an amount of peas on a straight line

(corresponds to solving uxx=0)

Page 52: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – Jacobi

place peas on the line between two neighbours in parallel

Page 53: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – Jacobi

place peas on the line between two neighbours in parallel

Page 54: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – Jacobi

place peas on the line between two neighbours in parallel

Page 55: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – Jacobi

place peas on the line between two neighbours in parallel

we get a high plus a low frequency oscillation these fequencies are locally (almost) invisible

Page 56: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods

problem: order an amount of peas on a straight line

(corresponds to solving uxx=0)

Page 57: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 58: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 59: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 60: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 61: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 62: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

Page 63: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 64: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 65: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 66: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 67: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 68: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 69: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 70: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 71: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 72: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 73: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 74: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 75: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 76: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 77: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 78: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Page 79: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

better than GS and J, but still not optimal

Page 80: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods

problem: order an amount of peas on a straight line

(corresponds to solving uxx=0)

Page 81: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – Hierarchical

place peas on the line between two neighbours in parallel,

but in a hierarchical way from coarse to smooth

Page 82: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – Hierarchical

place peas on the line between two neighbours in parallel,

but in a hierarchical way from coarse to smooth

Page 83: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – Hierarchical

place peas on the line between two neighbours in parallel,

but in a hierarchical way from coarse to smooth

Page 84: Introduction to Scientific Computing II Overview Michael Bader

Relaxation Methods – Hierarchical

place peas on the line between two neighbours in parallel,

but in a hierarchical way from coarse to smooth

exact solution in one step unfortunately only in 1D, 2D and 3D: multigrid