Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

Post on 31-Dec-2015

23 views 1 download

description

Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation. Amir Torjeman Nitay Shiran. Poisson’s Equation. The Fourier coefficients for function Φ:. Solving the Equation by DFT. Perform 2D DFT on both sides of the equation becomes:. The DFT. - PowerPoint PPT Presentation

Transcript of Parallel Processing Final Project Parallel FFT using to solve Poisson’s Equation

Parallel ProcessingParallel ProcessingFinal ProjectFinal Project

Parallel FFT using to solve Parallel FFT using to solve Poisson’s EquationPoisson’s Equation

Parallel ProcessingParallel ProcessingFinal ProjectFinal Project

Parallel FFT using to solve Parallel FFT using to solve Poisson’s EquationPoisson’s Equation

Amir TorjemanAmir Torjeman

Nitay ShiranNitay Shiran

Poisson’s EquationPoisson’s Equation

j k

kj ikyijxyx 2exp2exp, ,

The Fourier coefficients for function Φ:

Solving the Equation by DFTSolving the Equation by DFT

Perform 2D DFT on both sides of the equation becomes:

2222

,,

,

,2222

2exp2exp

2exp2exp

kj

f

ikyijxf

ikyijxkj

kjkj

j kkj

j kkj

The DFTThe DFTThe DFTThe DFT

fWg kl

1

0

2expN

k N

klikflg

The problem: huge number of The problem: huge number of calculations: O(Ncalculations: O(N^2)^2)

The solution: FFT: Fast DFT algorithmThe solution: FFT: Fast DFT algorithm

FFT: Decimation in time: FFT: Decimation in time: RADIX2RADIX2

Assume: N=2^d

Use: Recursive formula:

1- divide series into 2 series: fodd,feven

2- perform FFT to each serie.(recursive part)

3- F= Feven+Fodd*exp(-2πi k/N) *(-1)^kd-1

FFT:FFT: cont.cont.

The Butterfly:The Butterfly:

2D DFT2D DFT2D DFT2D DFT

2 dimensional transform:2 dimensional transform:

1) Transform each row

2) Replace each row with its transform

3) Transform each column

4) Replace each column with its transform

2D DFT example2D DFT example

FFT

Square cube sinc

Parallel 2D DFTParallel 2D DFT::

Process 0

Process 1

Process 2

Process 3

.

.

.

.

.

.

Step 1: transform rows:

Divide rows to num

of process

Parallel 2D DFT: contParallel 2D DFT: cont..

Pro

cess

0

Pro

cess

1

Pro

cess

2

Pro

cess

3

. . . . . .

Step 2: transform columns:

Divide columns to num

of process

Our WorkOur WorkOur WorkOur Work

1) Syntsize the source function f(x,y) in Matlab, and save in file.

2) Perform 2D parallel FFT in MPI on the source file.

Find the solution to Poisson’s equation.

save solution in file.

3) Load file in MATLAB and display solution.

Syntsize MATLAB

Parallel ComputingMPI

DisplayMATLAB

2D FFT example2D FFT example::Before:After:

THANK YOU!THANK YOU!

ANY ANY QUESTIONSQUESTIONS

??