experiences using 2decomp&fft to solve partial differential...
TRANSCRIPT
![Page 1: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/1.jpg)
Experiences using 2decomp&fft to solvePartial Differential Equations using Fourier
Spectral Methods
Sudarshan Balakrishnan, Abdullah H. Bargash, Gong Chen,Brandon Cloutier, Ning Li, Dave Malicke, Benson Muite,Michael Quell, Paul Rigge, Damian San Roman AlerigiMamdouh Solimani, Andre Souza, Abdulaziz S.Thiban,
Mark Van Moer, Jeremy West
Tartu [email protected]
http://math.ut.ee/˜bensonhttp:
//en.wikibooks.org/wiki/Parallel_Spectral_Numerical_Methods
14 July 2014
![Page 2: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/2.jpg)
Outline
Project AimFourier SeriesThe Heat EquationThe Allen Cahn EquationThe Gray-Scott EquationsNonlinear Schrodinger EquationNavier-Stokes EquationMaxwell’s EquationsPossible Further Work
![Page 3: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/3.jpg)
Project Aim
Teaching tool for use in mathematics and computer sciencecourses from 1st year undergraduate to postgraduate levelResearch tool: investigate partial differential equations,investigate computer performanceHelp paper reproducibility and verifiabilityReduce coding timeRely on 2decomp&fft for MPI parallelization(http://2decomp.org)Material has been tested in a course on Multivariablecalculus and on an introduction to partial differentialequations
![Page 4: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/4.jpg)
Fourier series: Separation of Variables 1
dydt
= y (1)
dyy
= dt (2)∫dyy
=
∫dt (3)
ln y + a = t + b (4)eln y+a = et+b (5)eln yea = eteb (6)
y =eb
ea et (7)
y(t) = cet . (8)
![Page 5: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/5.jpg)
Fourier series: Separation of Variables 2
ut = uxx (9)
Suppose u = X (x)T (t)
dTdt (t)T (t)
=d2Xdx2 (x)
X (x)= −C, (10)
Solving each of these separately and then using linearitywe get a general solution
∑n
αn exp(−Cnt) sin(√
Cnx) + βn exp(−Cnt) cos(√
Cnx)
(11)
![Page 6: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/6.jpg)
Fourier series: Separation of Variables 3
How do we find a particular solution?Suppose u(x , t = 0) = f (x)
Suppose u(0, t) = u(2π, t) and ux (0, t) = ux (2π, t) thenrecall
∫ 2π
0sin(nx) sin(mx) =
{π m = n0 m 6= n
, (12)∫ 2π
0cos(nx) cos(mx) =
{π m = n0 m 6= n
, (13)∫ 2π
0cos(nx) sin(mx) = 0. (14)
![Page 7: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/7.jpg)
Fourier series: Separation of Variables 4
So iff (x) =
∑n
αn sin(nx) + βn cos(nx). (15)
then
αn =
∫ 2π0 f (x) sin(nx)dx∫ 2π
0 sin2(nx)dx(16)
βn =
∫ 2π0 f (x) cos(nx)dx∫ 2π
0 cos2(nx)dx. (17)
and
u(x , t) =∑
n
exp(−n2t) [αn sin(nx) + βn cos(nx)] (18)
The Fast Fourier Transform allows one to find goodapproximations to αn and βn when the solution is found ata finite number of evenly spaced grid points
![Page 8: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/8.jpg)
The 1D Heat Equation: Finding derivatives andtimestepping
Letu(x) =
∑k
uk exp(ikx) (19)
thendνudxν
=∑
(ik)ν uk . (20)
Consider ut = uxx , which is approximated by
∂uk
∂t= α(ik)2uk (21)
un+1k − un
kh
= α(ik)2un+1k (22)
un+1k (1− αh(ik)2) = un
k (23)
un+1k =
unk
(1− αh(ik)2). (24)
![Page 9: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/9.jpg)
The 2D Allen Cahn Equation
Consider ut = ε(uxx + uyy ) + u − u3, which is approximatedby
∂u∂t
= ε[(ikx )2 + (iky )2
]u + u − u3 (25)
un+1 − un
h= ε
[(ikx )2 + (iky )2
]ˆun+1 + un − ˆ(un)3(26)
![Page 10: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/10.jpg)
The 3D Gray-Scott Equations
∂u∂t
= Du∆u + α (1− u)− uv2, (27)
∂v∂t
= Dv ∆v − βv + uv2. (28)
Solved using a splitting method (More information onsplitting for this athttp://arxiv.org/abs/1310.3901)http://web.student.tuwien.ac.at/˜e1226394/
![Page 11: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/11.jpg)
The 2D nonlinear Schrodinger Equation
iψt + ψxx + ψyy = |ψ|2ψ
Solved using Fast Fourier Transform and splitting
![Page 12: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/12.jpg)
The 2D nonlinear Schrodinger Equation
Table: Computation times in seconds for 20 time steps of 10−5 for aFourier split step method for the cubic nonlinear Schrodingerequation on [−5π,5π]2.
Grid GPU GPU GPU Xeon Phi CPUSize (Cuf) (Cuda) (OpenACC) (61 cores) (1 core)2562 0.00802 0.0116 0.0130 0.0122 0.4425122 0.0234 0.0315 0.0369 0.0291 1.94
10242 0.0851 0.105 0.132 0.118 12.720482 0.334 0.415 0.527 0.422 57.240962 1.49 2.02 2.30 1.626 329
![Page 13: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/13.jpg)
The Real Cubic Klein-Gordon Equation
utt −∆u + u = |u|2u (29)
E(u,ut ) =
∫12|ut |2 +
12|u|2 +
12|∇u|2 − 1
4|u|4 dx (30)
un+1 − 2un + un−1
(δt)2 −∆un+1 + 2un + un−1
4+
un+1 + 2un + un−1
4(31)
= ±∣∣un∣∣2 un (32)
Parallelization done using 2decomp library for FFT andprocessing independent loopsOther time stepping algorithms possible, including splitting
![Page 14: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/14.jpg)
Simulations and Videos by Brian Leu, Albert Liu, andParth Sheth
104 105 106
Number of Cores
100
101
102
Computation Tim
e (s)
MeasuredIdeal
Figure: Strong scaling on Mira for a 40963 discretization.
http://www-personal.umich.edu/˜alberliu/http://www-personal.umich.edu/˜brianleu/http://www-personal.umich.edu/˜pssheth/
![Page 15: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/15.jpg)
The 2D and 3D Navier Stokes Equation
Consider incompressible case only
ρ
(∂u∂t
+ u · ∇u)
= −∇p + µ∆u (33)
∇ · u = 0. (34)
p pressure, µ viscosity, ρ, density2D u(x , y) = (u(x , y), v(x , y))
3D u(x , y , z) = (u(x , y , z), v(x , y , z),w(x , y , z))
![Page 16: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/16.jpg)
2D Vorticity-Streamfunction Formulation
ω = ∇× u =∂v∂x− ∂u∂y
= −∆ψ
ρ
(∂ω
∂t+ u
∂ω
∂x+ v
∂ω
∂y
)= µ∆ω (35)
and
∆ψ = −ω. (36)
![Page 17: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/17.jpg)
Time Discretization
ρ
[ωn+1,k+1 − ωn
δt(37)
+12
(un+1,k ∂ω
n+1,k
∂x+ vn+1,k ∂ω
n+1,k
∂y+ un ∂ω
n
∂x+ vn ∂ω
n
∂y
)]=µ
2∆(ωn+1,k+1 + ωn
),
and
∆ψn+1,k+1 = −ωn+1,k+1, (38)
un+1,k+1 =∂ψn+1,k+1
∂y, vn+1,k+1 = −∂ψ
n+1,k+1
∂x. (39)
Fixed point iteration used to obtain nonlinear terms
![Page 18: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/18.jpg)
Example Videos
http://www-personal.umich.edu/˜cloutbra/research.html
Simulations on a single NVIDIA Fermi GPU about 20 timesfaster than a 16 core CPU
![Page 19: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/19.jpg)
3D Equivalent Formulation
Simplification of equation with periodic boundaryconditions
ρ(∂u∂t + u · ∇u
)= −∇p + µ∆u (40)
∇ · u = 0 (41)so
∇ ·[ρ(∂u∂t + u · ∇u
)]= ∇ · [−∇p + µ∆u] (42)
ρ∇ · (u · ∇u) = −∆p (43)p = ∆−1 [∇ · (u · ∇u)] (44)
soρ(∂u∂t + u · ∇u
)= −ρ∇
(∆−1 [∇ · (u · ∇u)]
)+ µ∆u (45)
![Page 20: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/20.jpg)
3D Equivalent Formulation - Implicit Midpoint TimeDiscretization
ρ
[un+1,j+1 − un
δt+
un+1,j + un
2· ∇(
un+1,j + un
2
)]= ρ∇[∆−1 (∇ · [(un+1,j + un) · ∇(un+1,j + un)
])]4
+ µ∆un+1,j+1 + un
2,
Video of Taylor Green Vortexhttp://vimeo.com/87981782
![Page 21: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/21.jpg)
3D Equivalent Formulation - Carpenter-KennedyDiscretization
1: procedure RUNGE–KUTTA(u)2: h = 03: u = un
4: for k = 1→ 5 do5: h← g(u) + βkh6: µ = 0.5δt(αk+1 − αk )7: v− µl(v) = u + γkδth + µl(u)8: u← v9: end for
10: un+1 = u11: end procedure
![Page 22: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/22.jpg)
Performance
δt = 0.005 for 5123 and δt = 0.01 for 2563 grid points.For IMR scheme, fixed point iteration procedure wasstopped once the difference between two successiveiterates was less than 10−10 in l∞ norm of velocity fields.
Method Grid Size Cores Time Steps Time (s) Core HoursTimestep
IMR 2563 512 1000 4060 0.578IMR 5123 1024 500 9899 5.68CK 5123 4096 2000 7040 4.0
Table: Performance of Fourier pseudospectral code on Shaheen.IMR is an abbreviation for implicit midpoint rule and CK is anabbreviation for Carpenter–Kennedy.
![Page 23: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/23.jpg)
Kinetic Energy Evolution
0 2 4 6 8 10
0.08
0.09
0.1
0.11
0.12
0.13
Time
Ener
gy
Kinetic Energy
IMR 256IMR 512CK 512Reference
Figure: KE of solutions are so close they are almost indistinguishable
![Page 24: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/24.jpg)
Kinetic Energy Dissipation Rate
0 2 4 6 8 100
0.002
0.004
0.006
0.008
0.01
0.012
0.014
Time
Ener
gy D
issi
patio
n R
ate
Kinetic Energy Dissipation Rate
IMR 256IMR 512CK 512Reference
Figure: Plot during the initial stage, where flow is essentially inviscidand laminar. Fully developed turbulent flow is observed aroundtmax ≈ 8.
![Page 25: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/25.jpg)
Kinetic Energy Dissipation Rate
0 2 4 6 8 10−5
0
5
10
15 x 10−4
Time
Ener
gy D
issi
patio
n R
ate
Kinetic Energy Dissipation Rate
IMR 256 − ReferenceIMR 512 − ReferenceCK 512 − Reference
Figure: Difference in kinetic energy dissipation rates between thecurrent discretizations and the reference solution.
![Page 26: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/26.jpg)
Vorticity
Figure: Square of the vorticity in the plane centered at (π,0,0) withnormal vector (1,0,0).
![Page 27: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/27.jpg)
Discrete energy equality for midpoint rule
‖u(t = T )‖2l2 − ‖u(t = 0)‖2l2 = −µ∫ T
0‖∇u‖2l2dt
‖uN‖2l2 − ‖u0‖2l2 = −µ
4
N−1∑n=0
∥∥∥∇(Un + Un+1)∥∥∥2
l2δt .
![Page 28: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/28.jpg)
Conclusion on Navier Stokes Equations
At almost the same computational cost, both 2nd-orderaccurate IMR and 4th-order Carpenter-Kennedy timestepping method, capture same amount of detail of theflow for 5123.Simulations with 2563 grid points resulted in poor spatialconvergences.
![Page 29: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/29.jpg)
The 3D Maxwell’s Equations
~Dt −∇× ~H = 0
~Bt +∇× ~E = 0
with the relation between the electromagnetic componentsgiven by the constitutive relations:
~D = εo(x , y , z)~E
~B = µo(x , y , z)~H
Maxwell Simulation http://vimeo.com/71822380
![Page 30: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/30.jpg)
Further Work
Integration with other codes or simple examples for otherspatial discretizations (one other examplehttps://code.google.com/p/incompact3d/)Uniform interface for users with no programmingbackground“Use MPI” vs. “Include mpif.h”C/C++ examplesBetter archiving and documentation procedure – currentlywikibooks + githubIntegration with acceleratorsIntegration with visualization toolsMagnetohydrodynamics
![Page 31: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/31.jpg)
Conclusion
Easy to program numerical method which can be used tostudy semilinear partial differential equationsMethod parallelizes well on hardware with goodcommunications so a good tool to introduce parallelprogramming ideasResearch tool to investigate and provide conjectures forbehavior of solutions to partial differential equationsResearch tool to investigate computer hardwareperformance and correctnessBetter user interface and integration with visualizationwould help make it easier for those without strongprogramming backgrounds
![Page 32: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/32.jpg)
Acknowledgements
This research used resources of the Oak RidgeLeadership Computing Facility at the Oak Ridge NationalLaboratory, which is supported by the Office of Science ofthe U.S. Department of Energy under Contract No.DE-AC05-00OR22725.This research used the resources of the SupercomputingLaboratory at King Abdullah University of Science andTechnology.This research used resources of the Keeneland ComputingFacility at the Georgia Institute of Technology, which issupported by the National Science Foundation underContract OCI-0910735.This material is based upon work supported by theNational Science Foundation under Grant Number1137097 and by the University of Tennessee through theBeacon Project.
![Page 33: Experiences using 2decomp&fft to solve Partial Differential …pdesoft.uni-hd.de/slides/slides2.4.pdf · 2018-02-07 · Experiences using 2decomp&fft to solve Partial Differential](https://reader030.vdocuments.net/reader030/viewer/2022040919/5e95693cd9edee62fa7bc41e/html5/thumbnails/33.jpg)
Acknowledgements and References
W. Auzinger, O. Batrashev, K. Hillewaert, D. Ketcheson, O. Koch, B.Leu, A. Liu, B. Palen, M. Parsani, W. Schlag, P. Sheth, M. Warnez
The Blue Waters Undergraduate Petascale Education Programadministered by the Shodor foundation
The Division of Literature, Sciences and Arts at the University ofMichigan
Carpenter M.H. and Kennedy C. A. “Fourth-Order 2N-StorageRunge–Kutta schemes” NASA Langley Research Center TechnicalMemorandum 109112, (1994).
http://en.wikibooks.org/wiki/Parallel_Spectral_Numerical_Methods
http://2decomp.org
Beamer https://en.wikipedia.org/wiki/Beamer_(LaTeX)