Introduction to Scientific Computing II Overview Michael Bader.

Post on 18-Jan-2016

213 views 0 download

Tags:

transcript

Introduction to Scientific

Computing II

Overview

Michael Bader

Recall: Scientific Computing “Pipeline”

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

???

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

Prerequisites

• discretisation of PDEs

• linear algebra

• Gaussian elimination

• basics on iterative solvers

• Jacobi, Gauss-Seidel, SOR, MG

• matlab

Organization

• lecture (90 min/week)

– theory

– methods

– simple examples

• tutorials (45 min/week)

– more examples

– make your own experiences

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

Course Material

• slides (short, only headwords)

• exercise sheets

make your own lecture notes!

find your own solutions!

solutions presented in the tutorials

Contact

• for questions contact us after the lectures

• or fix a date per email

Michael Bader:

bader@in.tum.de

Wolfgang Eckhardt:

eckhardw@in.tum.de

Introduction to Scientific

Computing II

From Gaussian Elimination to Multigrid – A Recapitulation

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!!!

two-dimensional Poisson equation

heat equation diffusion membranes …

Example Equation

21;0 in fu

vvvvvvvvvvvvvvv

grid +

finite differences

bAuh

Typical SLE

sparse

band structure

411

1411

11411

1141

114

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

Gaussian Elimination (LU)

411

1411

141

1411

11411

1141

141

1141

114

1

1

1

1

1

1

1

1

1

Gaussian Elimination (LU)

411

1411

141

1411

11411

****

141

****

114

1

1

1

1

1

1*

1

1*

1

Gaussian Elimination (LU)

411

1411

141

1411

*****

****

****

****

114

1

1

1

1

1*

1**

1*

1*

1

Gaussian Elimination (LU)

411

1411

141

****

****

****

****

****

114

1

1

1

1*

1**

1***

1*

1*

1

Gaussian Elimination (LU)

411

1411

****

****

****

****

****

****

114

1

1

1*

1**

1***

1***

1*

1*

1

Gaussian Elimination (LU)

411

****

***

****

****

****

****

****

114

1

1*

1**

1***

1***

1***

1*

1*

1

Gaussian Elimination (LU)

***

***

***

****

****

****

****

****

114

1*

1**

1***

1***

1***

1***

1*

1*

1

Gaussian Elimination (LU)

**

**

***

****

****

****

****

****

114

1**

1***

1***

1***

1***

1***

1*

1*

1

Gaussian Elimination (LU)

*

**

***

****

****

****

****

****

114

1***

1***

1***

1***

1***

1***

1*

1*

1

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

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

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

Iterative Solvers – Principle

series of approximations

costs per iteration? convergence? stopping criterion?

hMh

Mhhh uuuuu with10

Relaxation Methods

problem: order an amount of peas on a straight line

(corresponds to solving uxx=0)

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

sequentially place peas on the line between two neighbours

Relaxation Methods – Gauss-Seidel

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

Relaxation Methods

problem: order an amount of peas on a straight line

(corresponds to solving uxx=0)

Relaxation Methods – Jacobi

place peas on the line between two neighbours in parallel

Relaxation Methods – Jacobi

place peas on the line between two neighbours in parallel

Relaxation Methods – Jacobi

place peas on the line between two neighbours in parallel

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

Relaxation Methods

problem: order an amount of peas on a straight line

(corresponds to solving uxx=0)

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

Relaxation Methods – SOR

sequentially correct location of peas a little more than

to the line between two neighbours

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

Relaxation Methods

problem: order an amount of peas on a straight line

(corresponds to solving uxx=0)

Relaxation Methods – Hierarchical

place peas on the line between two neighbours in parallel,

but in a hierarchical way from coarse to smooth

Relaxation Methods – Hierarchical

place peas on the line between two neighbours in parallel,

but in a hierarchical way from coarse to smooth

Relaxation Methods – Hierarchical

place peas on the line between two neighbours in parallel,

but in a hierarchical way from coarse to smooth

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