Next: About this document ...
ASTR415 Fall 2014 TERM PROJECT
Due Dec 5th, 2014
Pick one of the 4 projects below, write a report similar to HW6 and
prepare a 10-15 min presentation to be given in class on Dec 5, Dec 10
or Dec 12 (we will decide the order of the presentations later in
class). The projects are described in some detail in the next pages.
You can work in small groups if you prefer (2-3 people) but each of
you have to produce an independent report and presentation (or a
section of a longer report/presentation). If you work in a group you
are expected to produce a commensurately larger amount of work than
if you work on your own (the grade will reflect the level of effort).
- Project 1: Your first cosmological simulation of a black hole!
- Project 2: Parallelization of an N-BODY code using OPENMP
- Project 3: Parallelization of an N-BODY code using CUDA
- Project 4: 3D volume rendering
PROJECT 1: YOUR FIRST COSMOLOGICAL SIMULATION OF A BLACK HOLE!
Write a report and prepare a class presentation on the results of your
numerical simulations of dark matter accretion around a black hole at
rest in an expanding Universe. This problem is quite difficult for an
undergraduate level course: do not worry too much if your results do
not agree with the expected solution!
(also known as secondary infall problem)
In order to solve this problem you need to generalize the integration
package you wrote for PS5 so that it can solve the -body problem in
an expanding Universe assuming spherical geometry and fixed time steps.
The following ODEs should be integrated in order to solve the
problem (see also my handwritten notes):
This equations describe the motion of spherical shells of dark matter
around the black hole in comoving coordinates: is the
peculiar velocity of a shell at comoving distance from the black
is the difference
between the mass within at time and the original mass at time
when the Universe was homogeneous (constant density). To
convert the distances in physical units use the formula: , where the redshift depends on time as
and where Gyr is the age of the
Universe. The Hubble parameter in a flat matter dominated Universe is:
, where km/s.
Alternatively you can integrate the equation as a function of redshift
rather than time (it may be easier). Using the
relationship you get the following equation:
Assume initial conditions as follows: start the simulation at redshift
and assume that the dark matter has constant density
g/cm. Remember to place a black hole
of mass M at . If I failed to provide enough
explanations to solve the problem feel free to ask me. Have fun!
Hints: The dark matter should create a spherical halo around the
black hole with mass
and have a total mass
within the halo radius that increases with decreasing redshift as
PROJECT 2: PARALLELIZATION OF N-BODY CODE USING OPENMP
Parallelize using OPENMP the N-body code you wrote for HW6. Use the
N-body code to simulate an interesting astrophysical problem: a
globular cluster of stars, a collision between two galaxies, collapse
of dark matter in an expanding universe, etc. Plot the execution time
as a function of the number of particles and as a function of the
number of OPENMP threads (for a fixed N). Produce a movie of the
PROJECT 3: PARALLELIZATION OF N-BODY CODE USING CUDA
Rewrite part or all the PP N-body code you wrote for HW6 to be run on
GPUs. You can use CUDA programming language (Nvidia GPUs) or any other
programming language for GPUs. Repeat PS6 and compare the performance
of CPU and GPU as you increase the number of N-body particles. The
essential part of the code that needs to run on GPU is the PP part
(direct summation of particle forces).
PROJECT 4: 3D RENDERING OF VOLUMES
Learn how to use a visualization program like YT, Visit, ParaView,
etc. Obtain a 3D data set from a simulation (from me or visualize
your own simulation) and produce different types of visualization:
slices, volume rendering, 3D contour plots. Produce a movie of a fly
trough the simulation or rotate the volume slowly.
Next: About this document ...