parallel and domain decomposed marching method for poisson equation 大氣五 b94209002 簡睦樺

Post on 17-Jan-2016

243 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Parallel and Domain Decomposed Marching Method

for Poisson Equation大氣五 b94209002 簡睦樺

Outline

• Basic Marching Method for elliptic problem.• Domain Decomposed Algorithm• Analysis and Operation Counts for this

Algorithm• Results

Model Problem

• A given open domain of Rn satisfies the following equation

for n=1,2,3, f and g are given, and

ugu

openufu n

,

,

2

2

ix

Finite difference approach

22

11

2

2 ,,,,2,,,,xO

x

zyxuzyxuzyxu

x

zyxu kjikjikjikji

With above approach, we can rewrite equation

2

,,2

2

,,2

,1,,,2

,1, 2z

u

x

uuufyu kjikji

kjikjiijkkji

Note that derivative of x and z also use above approach. For i,j,k=0,1,…,N+1, i,j,k=0, N+1 are the boundary condition given.

Approach Idea

• If we have the exact solution u and plug into the approach formula, then it should satisfy the equation but there will emerge error with O(δx2).

• On the other words, if there exist a data satisfies the plug into the formula, then there must have error at each point.

Testing Result

Whether these error comes from a basis?

The answer is true.

How to solve these error?

• If there exist enough exact data, then the behavior must be control. That is to say, we use the boundary data and have an initial guess next to the boundary points; thus, the error should only exist at the point which comes form the formula marching.

Write down the formula of error

2

,2

1,,1,

,,,

2

ˆ

x

eeee

euu

jijijiji

jijiji

u i,j is the exact solution, e is the error.

Error system

• We can write the system of error, since they march independently.

• Collect each error result at the end of point, we can correct the error by boundary condition of another side.

Solve this system, we can get the initial error and correct the marching data by exact solution next to boundary.

Domain Decomposed Algorithm

• Although the above method is prefect in idea case, the condition number of the system may easily blow up.

• We need another method to solve the problem.

Idea of Domain Decomposed

We can find that if we have the marching value at same point, then it must have same value.

The relationship between two initial value

rrll eueu ˆˆ

System of Error

Analysis for AlgorithmBasic Algorithm

1. Data march all domain O(NX*NY*NZ)2. Error march all domain O(NX^2*NZ^2*NY)3. Compute difference of boundary value

O(NX*NZ)4. Solve the system O((NX*NZ)^3)5. Data march again O(NX*NY*NZ)

An efficient Idea

Solve the system, and save the inverse matrix.We need only to take the matrix product when need it. The following is the operation count:

1. Data march all domain O(NX*NY*NZ)2. Take matrix product O((NX*NZ)^2)3. Data march again O(NX*NY*NZ)The algorithm has a upper bound O(N^4).

Domain Decomposed Case

Unfortunately, domain decomposed case require to solve a larger system than before.Although we prove that the domain decomposed case has a same upper bound compared to usually problem, but the lower bound is rather small than before. i.e.

Analysis

1. Data march all domain O(NX*NY*NZ)2. Error march all domain O(NX^2*NZ^2*NY)3. Compute difference of boundary value

O(NX*NZ*NY)4. Solve the system O((NX*NY*NZ)^3)5. Data march again O(NX*NY*NZ)

This step is relative to size of sub-domain.

The efficient solver

1. Data march all domain O(NX*NY*NZ)2. Take matrix product O((NX*NY*NZ)^2)3. Data march again O(NX*NY*NZ)The algorithm has a upper bound O(N^6).Remark. NY>>NB

Result for 3D equation

Convergent table and log-log plotMesh size Error Ratio Observed order

0.5 1.062e-3 NaN NaN

0.25 4.685e-4 2.27 1.18

0.125 1.532e-4 3.06 1.61

0.0625 4.385e-5 3.49 1.80

Least squares fit gives E(h) = 0.003 * h^1.54

24*24*24 CaseNodes Time(Total) Step1 Step2 Step3

1 49.78 0.17 49.32 0.22

2 33.25 0.08 32 0.18

4 17.25 0.04 17 0.9

Least squares fit gives E(h) = 18.0 * h^0.8

Thank you

top related