Computational Astrophysics - Solving for Gravity

ValeRio189907 21 views 86 slides Jul 29, 2024
Slide 1
Slide 1 of 86
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68
Slide 69
69
Slide 70
70
Slide 71
71
Slide 72
72
Slide 73
73
Slide 74
74
Slide 75
75
Slide 76
76
Slide 77
77
Slide 78
78
Slide 79
79
Slide 80
80
Slide 81
81
Slide 82
82
Slide 83
83
Slide 84
84
Slide 85
85
Slide 86
86

About This Presentation

Computational Astrophysics - Solving for Gravity

Alexander Knebe, Universidad Autonoma de Madrid


Slide Content

Computational Astrophysics
Solving for GravityAlexander Knebe, Universidad Autonoma de Madrid

Computational Astrophysics
Solving for Gravity
•collisionless matter (e.g. dark matter)
•collisional matter (e.g. gas)

∂ρE()
∂t


+∇⋅ρE+p+
1

B
2
%
&
'
(
)
*
!
v −
1
µ
!
v ⋅
!
B
[]
!
B
,
-
.
/
0
1


∂ρ
!
v ()
∂t

∂ρ
∂t

+∇⋅ρ
!
v ⊗
!
v +p+
1

B
2
&
'
(
)
*
+
"
1 −
1
µ
!
B ⊗
!
B
&
'
(
)
*
+

+∇⋅ρ
!
v ()

=ρ−∇φ()

=0



!
v ⋅−∇φ()+Γ−L()


d
!
x
DM
dt
=
!
v
DM


d
!
v
DM
dt
=−∇φ
!full set of equations
the equations

p=γ−1()ρε

ρε=ρE−
1
2
ρv
2

=4πGρ
tot

Δφ



!
B
∂t
=−∇×
!
v ×
!
B
()
•Poisson’s equation
•Maxwell’s equation
•ideal gas equations

Computational Astrophysics
Solving for Gravity
•collisionless matter (e.g. dark matter)
•collisional matter (e.g. gas)

∂ρE()
∂t


+∇⋅ρE+p+
1

B
2
%
&
'
(
)
*
!
v −
1
µ
!
v ⋅
!
B
[]
!
B
,
-
.
/
0
1


∂ρ
!
v ()
∂t

∂ρ
∂t

+∇⋅ρ
!
v ⊗
!
v +p+
1

B
2
&
'
(
)
*
+
"
1 −
1
µ
!
B ⊗
!
B
&
'
(
)
*
+

+∇⋅ρ
!
v ()

=ρ−∇φ()

=0



!
v ⋅−∇φ()+Γ−L()


d
!
x
DM
dt
=
!
v
DM


d
!
v
DM
dt
=−∇φ
!full set of equations
the equations

p=γ−1()ρε

ρε=ρE−
1
2
ρv
2

=4πGρ
tot

Δφ



!
B
∂t
=−∇×
!
v ×
!
B
()
•Poisson’s equation
•Maxwell’s equation
•ideal gas equations
…and the force

Computational Astrophysics
Solving for Gravity


!
F (
!
x )=−m∇Φ(
!
x )
ΔΦ(
!
x )=4πGρ(
!
x )
Poisson’s Equation
!Poisson’s equation

Computational Astrophysics
Solving for Gravity


!
F (
!
x )=−m∇Φ(
!
x )
ΔΦ(
!
x )=4πGρ(
!
x )
Poisson’s Equation
grid approach


ΔΦ(
!
x
i,j,k
)=4πGρ(
!
x
i,j,k
)
!
F (
!
x
i,j,k
)=−m∇Φ(
!
x
i,j,k
)


(
!
x
i,j,k
=position of centre of grid cell (i,j,k))


!
F (
!
x
i
)=−
Gm
i
m
j
(x
i
−x
j
)
3
(
!
x
i

!
x
j
)
i≠j

particle approach
!Poisson’s equation

Computational Astrophysics
Solving for Gravity


!
F (
!
x )=−m∇Φ(
!
x )
ΔΦ(
!
x )=4πGρ(
!
x )
Poisson’s Equation
grid approach


ΔΦ(
!
x
i,j,k
)=4πGρ(
!
x
i,j,k
)
!
F (
!
x
i,j,k
)=−m∇Φ(
!
x
i,j,k
)


(
!
x
i,j,k
=position of centre of grid cell (i,j,k))


!
F (
!
x
i
)=−
Gm
i
m
j
(x
i
−x
j
)
3
(
!
x
i

!
x
j
)
i≠j

particle approach
!Poisson’s equation
weapon of choice: tree codes

Computational Astrophysics
Solving for Gravity


!
F (
!
x )=−m∇Φ(
!
x )
ΔΦ(
!
x )=4πGρ(
!
x )
Poisson’s Equation
grid approach


ΔΦ(
!
x
i,j,k
)=4πGρ(
!
x
i,j,k
)
!
F (
!
x
i,j,k
)=−m∇Φ(
!
x
i,j,k
)


(
!
x
i,j,k
=position of centre of grid cell (i,j,k))


!
F (
!
x
i
)=−
Gm
i
m
j
(x
i
−x
j
)
3
(
!
x
i

!
x
j
)
i≠j

particle approach
!Poisson’s equation
weapon of choice: AMR codes

Computational Astrophysics
Solving for Gravity
the particle-mesh (PM) method

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)
1. calculate mass density on grid


!
x
i
→ρ(
!
g
k,l,m
)∀i∈N

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)
1. calculate mass density on grid


!
x
i
→ρ(
!
g
k,l,m
)

Φ(
!
g
k,l,m
)
2. solve Poisson’s equation on grid
∀i∈N

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)
1. calculate mass density on grid


!
x
i
→ρ(
!
g
k,l,m
)

Φ(
!
g
k,l,m
)
2. solve Poisson’s equation on grid


!
F (
!
g
k,l,m
)
3. differentiate potential to get forces
∀i∈N

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)
1. calculate mass density on grid


!
x
i
→ρ(
!
g
k,l,m
)

Φ(
!
g
k,l,m
)
2. solve Poisson’s equation on grid


!
F (
!
g
k,l,m
)
3. differentiate potential to get forces


!
F (
!
g
k,l,m
)→
!
F (
!
x
i
)
4. interpolate forces back to particles
∀i∈N
∀i∈N

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation


Φ(
!
g
k,l,m
)
2. solve Poisson’s equation on grid


!
F (
!
g
k,l,m
)
3. differentiate potential to get forces


!
F (
!
g
k,l,m
)→
!
F (
!
x
i
)
4. interpolate forces back to particles
1. calculate mass density on grid


!
x
i
→ρ(
!
g
k,l,m
)
sounds like a waste of time and computer resources,
but exceptionally fastin practice
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation


Φ(
!
g
k,l,m
)
2. solve Poisson’s equation on grid


!
F (
!
g
k,l,m
)
3. differentiate potential to get forces


!
F (
!
g
k,l,m
)→
!
F (
!
x
i
)
4. interpolate forces back to particles
1. calculate mass density on grid


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)

Computational Astrophysics
Solving for Gravity
xaxis
!density assignment schemes


!
x
i
→ρ(
!
g
k,l,m
)
m

M(g
k
)=mW(d)d=x−g
k
ρ(g
k
)=
M(g
k
)
H
H
example:1 particle on 1 dimensional grid
Particle-Mesh Method
!
particle position xgrid point gk

Computational Astrophysics
Solving for Gravity
xaxis
!density assignment schemes


!
x
i
→ρ(
!
g
k,l,m
)
m

M(g
k
)=mW(d)d=x−g
k
ρ(g
k
)=
M(g
k
)
H
H
mass assignment function
example:1 particle on 1 dimensional grid
Particle-Mesh Method
!
particle position xgrid point gk

Computational Astrophysics
Solving for Gravity
xaxis
!density assignment schemes


!
x
i
→ρ(
!
g
k,l,m
)
m
H
example:1 particle on 1 dimensional grid
Particle-Mesh Method
•hierarchy of mass assignment schemes:
!Nearest-Grid-PointNGP
!Could-In-CellCIC
!Triangular-Shaped CloudTSC
!…
particle position xgrid point gk
"

Computational Astrophysics
Solving for Gravity
xaxis
!density assignment schemes
Nearest-Grid-Point (NGP):
m
H


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method
mass assignment function:


W(d)=
1d≤H/2
0otherwise
#
$
%

Computational Astrophysics
Solving for Gravity
xaxis
!density assignment schemes
Nearest-Grid-Point (NGP):
m
H


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method
particle shape:

S(x)=δ(x)
mass assignment function:


W(d)=
1d≤H/2
0otherwise
#
$
%

Computational Astrophysics
Solving for Gravity
xaxis
!density assignment schemes
Cloud-In-Cell (CIC):
m
H


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method
mass assignment function:


W(d)=
1−
d
H
d≤H
0 otherwise
$
%
&
&
'
&
&

Computational Astrophysics
Solving for Gravity
particle shape:


S(x)=
1x≤H/2
0otherwise
#
$
%
xaxis
!density assignment schemes
Cloud-In-Cell (CIC):
m
H


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method
mass assignment function:


W(d)=
1−
d
H
d≤H
0 otherwise
$
%
&
&
'
&
&

Computational Astrophysics
Solving for Gravity
xaxis
!density assignment schemes
Triangular-Shaped-Cloud (TSC):
m
H


W(d)=
3
4

d
H
#
$
%
&
'
(
2
d≤
H
2
1
2
3
2

d
H
#
$
%
&
'
(
2
H
2
≤d≤
3H
2
0 otherwise
*
+
,
,
,
,
-
,
,
,
,


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method
mass assignment function:

Computational Astrophysics
Solving for Gravity
particle shape:


S(x)=
1−
x
H
x≤H
0otherwise
$
%
&
'
&
xaxis
!density assignment schemes
Triangular-Shaped-Cloud (TSC):
m
H


W(d)=
3
4

d
H
#
$
%
&
'
(
2
d≤
H
2
1
2
3
2

d
H
#
$
%
&
'
(
2
H
2
≤d≤
3H
2
0 otherwise
*
+
,
,
,
,
-
,
,
,
,


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method
mass assignment function:

Computational Astrophysics
Solving for Gravity
!density assignment schemes


!
d =
!
x
i

!
g
k,l,m
M(
!
g
k,l,m
)=m
i
W(|d
x
|)W(|d
y
|)W(|d
z
|)
i=1
N

ρ(
!
g
k,l,m
)=
M(
!
g
k,l,m
)
H
3
Nparticles on 3 dimensional grid


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method

Computational Astrophysics
Solving for Gravity
!density assignment schemes


!
d =
!
x
i

!
g
k,l,m
M(
!
g
k,l,m
)=m
i
W(|d
x
|)W(|d
y
|)W(|d
z
|)
i=1
N

ρ(
!
g
k,l,m
)=
M(
!
g
k,l,m
)
H
3
Nparticles on 3 dimensional grid


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method
for every grid point we need to loop over all Nparticles…

Computational Astrophysics
Solving for Gravity
!density assignment schemes -in practice
Particle-Mesh Method


!
x
i
→ρ(
!
g
k,l,m
)
…rather loop over all particles
and
assign them to the appropriate grid points,
because the mapping xi →gkis rather easy

Computational Astrophysics
Solving for Gravity


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method
m
!!
!!
!density assignment schemes -in practice
•example for CIC assignment in 2D:


!
x
i
contributes its mass m
i
to the 4 closest grid points:

Computational Astrophysics
Solving for Gravity
!density assignment schemes -in practice
•example for CIC assignment in 3D:
Particle-Mesh Method


!
x
i
→ρ(
!
g
k,l,m
)


!
x
i
contributes its mass m
i
to the 8 closest grid points:


!
g
k,l,m+1
!
g
k+1,l,m+1
!
g
k,l,m
!
g
k+1,l,m


!
g
k,l+1,m+1
!
g
k+1,l+1,m+1
!
g
k,l+1,m
!
g
k+1,l+1,m

Computational Astrophysics
Solving for Gravity
!density assignment schemes
•which scheme to choose?
NGP = stepwise force(1 grid point)
CIC = continuous piecewise linear force(8 grid points)
TSC = continuous force and first derivative(27 grid points)
Particle-Mesh Method

Computational Astrophysics
Solving for Gravity
!density assignment schemes
•which scheme to choose?
NGP = too crude
CIC = common choice
TSC = pretty smooth
increased smoothing of density field
Particle-Mesh Method

Computational Astrophysics
Solving for Gravity
!density assignment schemes
•which scheme to choose?
NGP = too crude
CIC = common choice
TSC = pretty smooth
smoothing the density field will lead to a “bias” in the forces
but at the same time decrease the “variance”!
increased smoothing of density field
Particle-Mesh Method
bias=!F(!x)−!Ftrue(!x)( )∝εαvar=!F2(!x)−!F(!x)2∝N−β

Computational Astrophysics
Solving for Gravity
!density assignment schemes
•which scheme to choose?
NGP = too crude
CIC = common choice
TSC = pretty smooth
Particle-Mesh Method
(interplay between N and ! : N!3=const.)
smoothing the density field will lead to a “bias” in the forces
but at the same time decrease the “variance”!
bias=!F(!x)−!Ftrue(!x)( )∝εαvar=!F2(!x)−!F(!x)2∝N−β

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation


Φ(
!
g
k,l,m
)
2. solve Poisson’s equation on grid


!
F (
!
g
k,l,m
)
3. differentiate potential to get forces


!
F (
!
g
k,l,m
)→
!
F (
!
x
i
)
4. interpolate forces back to particles
1. calculate mass density on grid


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation

ΔΦ
k,l,m

k,l,m
Particle-Mesh Method
•relaxation technique: applicable and usable for anydifferential equation
•FTT technique: only applicable and usable for linear differential equation

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation

ΔΦ
k,l,m

k,l,m
Particle-Mesh Method
•relaxation technique: applicable and usable for anydifferential equation
•FTT technique: only applicable and usable for linear differential equation

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation

ΔΦ
k,l,m

k,l,m
Particle-Mesh Method
•Green’s function method:
-solve differential equation by Fourier transformation
-applicable and usable for linear differential equations

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation fast fourier transform method
•Green’s function method
Particle-Mesh Method

ΔΦ=ρ


Φ(
!
x )=G(
!
x −
!
$ x )∫∫∫ ρ(
!
$ x )d
3
$ x
;G(!x)=14πx

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation fast fourier transform method
•Green’s function method

ΔΦ=ρ
Particle-Mesh Method


Φ(
!
x )=G(
!
x −
!
$ x )∫∫∫ ρ(
!
$ x )d
3
$ x
;G(!x)=14πx


Φ=ρ⊗G
FFT "convolution becomes multiplication


ˆ
Φ =ˆ ρ
ˆ
G


ˆ
G =−
1
k
2
(with for Poisson’s equation )

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation fast fourier transform method
•Green’s function method

ΔΦ=ρ
Particle-Mesh Method


Φ(
!
x )=G(
!
x −
!
$ x )∫∫∫ ρ(
!
$ x )d
3
$ x
;G(!x)=14πx


Φ=ρ⊗G
FFT "convolution becomes multiplication


ˆ
Φ =ˆ ρ
ˆ
G


ˆ
G =−
1
k
2
(with for Poisson’s equation )
FFT-1

Φ
(FFT demands a regulargrid though!)

Computational Astrophysics
Solving for Gravity


ˆ
G (
!
g
k,l,m
)=−
1
sin
2k
x
2
#
$
%
&
'
( +sin
2
k
y
2
#
$
%
&
'
( +sin
2k
z
2
#
$
%
&
'
(


ˆ
G (
!
g
0,0,0
)=0,k
x
=
2πk
L
,k
y
=
2πl
L
,k
y
=
2πm
L


ˆ
G (
!
k )=−
1
k
2

" → "
Particle-Mesh Method
!numerically integrate Poisson’s equation fast fouriertransform method
•discretized Green’s function
compensates for grid anisotropies...

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation

ΔΦ
k,l,m

k,l,m
Particle-Mesh Method
•relaxation technique: applicable and usable for anydifferential equation
•FTT technique: only applicable and usable for linear differential equation

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation

ΔΦ
k,l,m

k,l,m
Particle-Mesh Method
obtain iterative solver by discretizing differential equation
!numerically integrate Poisson’s equation relaxation technique

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation relaxation technique

ΔΦ
k,l,m

k,l,m
Particle-Mesh Method

ΔΦ
k,l,m
=∇⋅∇Φ
k,l,m
=

∂x

∂y

∂z
'
(
)
)
)
)
)
)
*
+
,
,
,
,
,
,

∂Φ
k,l,m
∂x
∂Φ
k,l,m
∂y
∂Φ
k,l,m
∂z
'
(
)
)
)
)
)
)
*
+
,
,
,
,
,
,
=
1
H

∂x

∂y

∂z
'
(
)
)
)
)
)
)
*
+
,
,
,
,
,
,

Φ
k+
1
2
,l,m
−Φ
k−
1
2
,l,m
Φ
k,l+
1
2
,m
−Φ
k,l−
1
2
,m
Φ
k,l,m+
1
2
−Φ
k,l,m−
1
2
'
(
)
)
)
)
*
+
,
,
,
,
=
1
H
∂Φ
k+
1
2
,l,m
∂x

∂Φ
k−
1
2
,l,m
∂x
+
∂Φ
k,l+
1
2
,m
∂y

∂Φ
k,l−
1
2
,m
∂y
+
∂Φ
k,l,m+
1
2
∂z

∂Φ
k,l,m−
1
2
∂z
'
(
)
)
*
+
,
,
=
1
H
2
Φ
k+1,l,m
−2Φ
k,l,m

k−1,l,m

k,l+1,m
−2Φ
k,l,m

k,l−1,m

k,l,m+1
−2Φ
k,l,m

k,l,m−1
( )
obtain iterative solver by discretizing differential equation

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation relaxation technique
discretized Poisson’s equation

Φ
k,l,m
=
1
6

k+1,l,m

k−1,l,m

k,l+1,m

k,l−1,m

k,l,m+1

k,l,m−1
−ρ
k,l,m
H
2
)

ΔΦ
k,l,m

k,l,m
Particle-Mesh Method
obtain iterative solver by discretizing differential equation

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation relaxation technique
discretized Poisson’s equation

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)

ΔΦ
k,l,m

k,l,m
Particle-Mesh Method
iterative solution:

Φ
k,l,m
i
→Φ
k,l,m
i+1
obtain iterative solver by discretizing differential equation

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)
Particle-Mesh Method
!numerically integrate Poisson’s equation relaxation technique
k,l+1,m
k,l-1,m
k-1,l,mk+1,l,mk,l,m
obtain iterative solver by discretizing differential equation

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)
Particle-Mesh Method
!numerically integrate Poisson’s equation relaxation technique
k,l+1,m
k,l-1,m
k-1,l,mk+1,l,mk,l,m
obtain iterative solver by discretizing differential equation
applicable to grids of
arbitrarygeometry!

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)
Particle-Mesh Method
!numerically integrate Poisson’s equation relaxation technique
•how to sweep through the grid?
k,l+1,m
k,l-1,m
k-1,l,mk+1,l,mk,l,m

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)
Particle-Mesh Method
!numerically integrate Poisson’s equation relaxation technique
•how to sweep through the grid?
?

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)
Particle-Mesh Method
!numerically integrate Poisson’s equation relaxation technique
•how to sweep through the grid?
?

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)
Particle-Mesh Method
k,l+1,m
k,l-1,m
k-1,l,mk+1,l,mk,l,m
!numerically integrate Poisson’s equation relaxation technique
•Gauss-Seidel sweeps:

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation relaxation technique
•Gauss-Seidel sweeps:
•loop over all “black” cells
•loop over all “red” cells
discretized Poisson’s equation
how many iterations iare necessary?
one iteration of the potential

Φ
k,l,m
i
→Φ
k,l,m
i+1
Particle-Mesh Method

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:
discretized Poisson’s equation
Particle-Mesh Method

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)
ΔΦk,l,mi=ρk,l,m

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:
discretized Poisson’s equation
Particle-Mesh Method

ΔΦ
k,l,m
i
−ρ
k,l,m
?
& → & 0

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation
Particle-Mesh Method

ΔΦ
k,l,m
i
−ρ
k,l,m
?
& → & 0

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)
density as given by mass assignment scheme!
density as given by currently best guess for !i !
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation
Particle-Mesh Method

ΔΦ
k,l,m
i
−ρ
k,l,m
?
& → & 0

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)


•=suitable norm

R
i
=ΔΦ
k,l,m
i
−ρ
k,l,m
residual:
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation
Particle-Mesh Method

ΔΦ
k,l,m
i
−ρ
k,l,m
?
& → & 0


•=suitable norm
error estimatetolerance

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)

R
i
=ΔΦ
k,l,m
i
−ρ
k,l,m
≤εΤ
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation
Particle-Mesh Method

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)

R
i
=ΔΦ
k,l,m
i
−ρ
k,l,m
≤εΤ
!truncation error:
error due to discreteness of grid
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation
Particle-Mesh Method
!truncation error:
error due to discreteness of grid
compare solution on actual grid
to solution on coarser grid


estimation
" → " " "

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)

R
i
=ΔΦ
k,l,m
i
−ρ
k,l,m
≤εΤ
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation
Particle-Mesh Method


Τ
k,l,m
=PΔRΦ
k,l,m
i( )[ ]
−ΔΦ
k,l,m
i( )


k,l,m
i

j,n,p
i
ΔRΦk,l,mi( )=ρj,n,pi−1


PΔRΦ
k,l,m
i( )[ ]

k,l,m
i
!truncation error:
restriction to coarser grid
prolongation to finer grid

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)
Ri=ΔΦk,l,mi−ρk,l,m≤εΤ=εTk,l,m
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation
Particle-Mesh Method

=ΔΦ
k,l,m
i
?
!truncation error:


PΔRΦ
k,l,m
i( )[ ]

k,l,m
i

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:


Τ
k,l,m
=PΔRΦ
k,l,m
i( )[ ]
−ΔΦ
k,l,m
i( )


k,l,m
i

j,n,p
i
ΔRΦk,l,mi( )=ρj,n,pi−1
Ri=ΔΦk,l,mi−ρk,l,m≤εΤ=εTk,l,m

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation
Particle-Mesh Method

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)

R
i

i

εT
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:
Ri=ΔΦk,l,mi−ρk,l,m≤εΤ=εTk,l,m

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation
Particle-Mesh Method

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)

R
i

i

εT
faster convergence!?
!numerically integrate Poisson’s equation relaxation technique
•stopping criterion:
Ri=ΔΦk,l,mi−ρk,l,m≤εΤ=εTk,l,m

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation relaxation technique
•convergence:
discretized Poisson’s equation
Particle-Mesh Method
!slow convergence:

R
i+1
≈R
i
large-scale errors in "cannot be “relaxed”
sufficiently fast on the actual grid
=> use coarser grids to speed up convergence…

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)

R
i
=ΔΦ
k,l,m
i
−ρ
k,l,m

Computational Astrophysics
Solving for Gravity
discretized Poisson’s equation
Particle-Mesh Method
!slow convergence:

R
i+1
≈R
i
multi-grid relaxation techniques
=> beyond the scope of this lecture though…

Φ
k,l,m
i+1
=
1
6

k+1,l,m
i

k−1,l,m
i

k,l+1,m
i

k,l−1,m
i

k,l,m+1
i

k,l,m−1
i
−ρ
k,l,m
H
2
)

R
i
=ΔΦ
k,l,m
i
−ρ
k,l,m
!numerically integrate Poisson’s equation relaxation technique
•convergence:

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
accuracy of either
relaxation
or
FFT method
to solve Poisson’s equation?
Particle-Mesh Method

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
pure PM calculation
Particle-Mesh Method

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
pure PM calculation
Particle-Mesh Method
distance measured in grid cells

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
pure PM calculation
Particle-Mesh Method
the force is automatically softened... (cf. tree-code lecture)
distance measured in grid cells

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
pure PM calculation
Particle-Mesh Method
the force is automatically softened...but what if need to resolve smaller scales?
distance measured in grid cells

Computational Astrophysics
Solving for Gravity
pure PM calculation
!numerically integrate Poisson’s equation
introduction of finer grids in high density regions
Particle-Mesh Method
distance measured in grid cells

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
Particle-Mesh Method
Yahagi & Yoshi (2001)
AMR calculation

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
Particle-Mesh Method
Yahagi & Yoshi (2001)
details later…
AMR calculation

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
pure PM calculation
Particle-Mesh Method
…and what are these wiggles?

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
pure PM calculation
Particle-Mesh Method
…and what are these wiggles?

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation
pure PM calculation
Particle-Mesh Method
force anisotropy
…and what are these wiggles?

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation


Φ(
!
g
k,l,m
)
2. solve Poisson’s equation on grid


!
F (
!
g
k,l,m
)
3. differentiate potential to get forces


!
F (
!
g
k,l,m
)→
!
F (
!
x
i
)
4. interpolate forces back to particles
1. calculate mass density on grid


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)

Computational Astrophysics
Solving for Gravity
!obtaining the forces


!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)


F
x
(
!
g
k,l,m
)=−m
Φ(
!
g
k+1,l,m
)−Φ(
!
g
k−1,l,m
)
2H
F
y
(
!
g
k,l,m
)=−m
Φ(
!
g
k,l+1,m
)−Φ(
!
g
k,l−1,m
)
2H
F
z
(
!
g
k,l,m
)=−m
Φ(
!
g
k,l,m+1
)−Φ(
!
g
k,l,m−1
)
2H


H=(current) grid spacing
Particle-Mesh Method
k,l+1,m
k,l-1,m
k-1,l,mk+1,l,mk,l,m

Computational Astrophysics
Solving for Gravity
!numerically integrate Poisson’s equation


Φ(
!
g
k,l,m
)
2. solve Poisson’s equation on grid


!
F (
!
g
k,l,m
)
3. differentiate potential to get forces


!
F (
!
g
k,l,m
)→
!
F (
!
x
i
)
4. interpolate forces back to particles
1. calculate mass density on grid


!
x
i
→ρ(
!
g
k,l,m
)
Particle-Mesh Method


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)

Computational Astrophysics
Solving for Gravity
!interpolating the forces


!
F (
!
g
k,l,m
)→
!
F (
!
r
i
)
Particle-Mesh Method

Computational Astrophysics
Solving for Gravity
!interpolating the forces
in practice the triple sum is “only” over 8 (CIC) or 27 (TSC) cells…
Particle-Mesh Method


!
F (
!
g
k,l,m
)→
!
F (
!
r
i
)
use the inverse of the mass assignment scheme
to insure momentum conservation and minimize force anisotropies
!F(!ri)= !F(!gk,l,m)W(!ri−!gk,l,m)m∑l∑k∑

Computational Astrophysics
Solving for Gravity
!interpolating the forces
Particle-Mesh Method
*check by calculating the total (periodic) force:
!Ftot=!F(!ri)i=1N∑ =i=1N∑ !F(!gk,l,m)W(!ri−!gk,l,m)m∑l∑k∑=...= mimjH3W(!ri−!gk,l,m)G(!gk,l,m−!g#k,#l,#m)W(!rj−!g#k,#l,#m)#k,#l,#m∑k,l,m∑j=1N∑i=1N∑=...=!0


!
F (
!
g
k,l,m
)→
!
F (
!
r
i
)
use the inverse of the mass assignment scheme
to insure momentum conservation and minimize force anisotropies
!F(!ri)= !F(!gk,l,m)W(!ri−!gk,l,m)m∑l∑k∑
Fx(!gk,l,m)=−mΦ(!gk+1,l,m)−Φ(!gk−1,l,m)2HΦ(!gk,l,m)= G#m∑#l∑#k∑ (!gk,l,m−!g#k,#l,#m)ρ(!g#k,#l,#m)ρ(!gk,l,m)=M(!gk,l,m)H3M(!gk,l,m)=miW(!ri−!gk,l,m)i=1N∑
anti-symmetric!
(because of invariance under coordinate inversion)
PM scheme:

Computational Astrophysics
Solving for Gravity
!Particle-Mesh (PM) method
Summary


Φ(
!
g
k,l,m
)
2. solve Poisson’s equation on grid


!
F (
!
g
k,l,m
)
3. differentiate potential to get forces


!
F (
!
g
k,l,m
)→
!
F (
!
x
i
)
4. interpolate forces back to particles
1. calculate mass density on grid


!
x
i
→ρ(
!
g
k,l,m
)


ΔΦ(
!
g
k,l,m
)=4πGρ(
!
g
k,l,m
)
!
F (
!
g
k,l,m
)=−m∇Φ(
!
g
k,l,m
)
anyone fancies to write a PM code as the project?

Computational Astrophysics
Solving for GravityAlexander Knebe, Universidad Autonoma de Madrid
Tags