```Research Proposal
1. Name: Tara Aida
2. Mentor/Co-Mentor: Professor Sorin Mitran/Michael Malahe
3. Interaction Schedule: I will meet with Professor Mitran and/or Michael individually
on Tuesdays and Thursdays from 3:00 - 3:45 pm. I will also meet with Professor
Mitran and his research group on Mondays from 4:00 - 5:00 pm to go over computer
set-up/coding seminars, including a short tutorial on GPU coding. Finally, I will meet
with the research group on Fridays from 10:00 am - 12:00 pm to share individual
progress through research presentations and learn about other research topics pursued
by the group.
4. Title of Project: GPU Random Walk Method for Hyperbolic Problems
5. Significance of Project: Our goal for this project is to apply the random walk method
(RWM) to solve partial differential equations (PDEs) and analyze how successful this
is. Specifically, I will consider hyperbolic PDEs. Traditional numerical techniques for
solving PDEs include grid-based methods like the finite element method or the finite
volume element method. RWM differs in that: 1) unlike global grid-based methods,
RWM allows one to solve for the solution of a PDE directly at specific points instead
of first finding a field solution and then using this to calculate the solution at
particular points. 2) The RWM method is easily parallelized with low communication
and thus, is well suited to GPU implementation. 3) The parallel code necessary for
RWM is much simpler to write than that associated with the grid-based numerical
techniques. Finally, since PDEs show up in many areas of physics (fluid dynamics,
the wave equation, etc.), the ability to solve these equations at specific points, more
quickly and with less computational power, has positive implications for a wide range
of research in computational physics.
6. Outline of Project:
o Start by reading background material on partial differential equations, the
RWM, basics of writing and running parallel code with MPI commands and
CUDA platform. Go through CUDA tutorials. Explore various random walks
in Mathematica. Understand the underlying math behind the random walk
method, which solves the PDE at specific locations by averaging over random
walks.
o Focus in on understanding hyperbolic PDEs. Write parallelized code to solve
the wave equation and the Helmholtz equation in inhomogeneous media.
Continue to develop ability to code in parallel using CUDA for C and Python.
Time-permitting, attempt to “combine” the grid method and the random walk
method to utilize the strengths of each.
o Choose an application of hyperbolic PDEs to focus on. Apply the random
walk method to this and analyze how efficient/successful it is compared to
previous computational methods.
7. Computer Resources:
o For most computation, I will be working on the computer coanda. I have a
profile on this computer and can SSH as [email protected]
This is outside CP 451. It has 4 Intel Xeon at 3 GHz with 16 GB RAM. In
addition it has a Quadro 4000 with 85 cores and 2G VRAM and a Tesla
C1060 with 58 cores and 4 GB VRAM.
o We will also use Subversion to share lab logs, results and keep track of
different versions of our code. I have access to write to http://mitranlab.amath.unc.edu:8081/subversion/CPU-GPU/Hyperbolic.
8. Literature References:
o Chati, M. K., Grigoriu, M. D., Kulkarni, S. S. and Mukherjee, S. (2001),
Random walk method for the two- and three-dimensional Laplace, Poisson
and Helmholtz's equations. Int. J. Numer. Meth. Engng., 51: 1133–1156. doi:
10.1002/nme.178.
o Haberman, Richard. Applied Partial Differential Equations with Fourier
Series and Boundary Value Problems (2nd edn). Pearson: Englewood Cliffs,
NJ, 2012.
o Grigoriu, M.D., Stochastic Calculus. Birkhäuser: Boston, 2002.
```