Computational Science
COSC1229/1479
Assignment 1
Title: N-body Problem
Due Date : 20/8/2004, 5pm
Due Date : 3/9/2004, 5pm
Assessment : 30%
Overview
The n-body problem is a key problem in computational
science. It takes many forms - including two applications at
opposite ends of the scale spectrum: molecular systems and
cosmological systems. This assignment focuses on molecular
systems - gases in particular.
The assignment has three parts, each worth 10 marks and each
of which requires a report:
-
Perform computational investigations (experiments) of the
velocity and speed distributions of a 2D hard-sphere
particle system with only contact forces. You should
attempt to see if steady state distributions are achieved and
if they are, what distributions they are. Perform the
experiments under various conditions including number of
particles, initial velocities (temperature) and box size.
Make sure you conduct tests to make sure energy is not
being lost in your system.
-
-
The brute force approach to finding collisions is
O(n^2). Investigate whether this scaling relationship
is observed. Predict how long it would take to
simulate a 1e3, 1e4, 1e5 and 1e6 particle system for
1e3, 1e4, 1e5 and 1e6 timesteps.
-
Investigate the performance improvement gained by
using a 'cell subdivision' approach for finding collisions.
-
-
Introduce a so-called 'van Der Waals' interaction
between particles which operates at a distance. The van
Der Waals interaction between two particles can be
described by the 'Lennard-Jones' potential:
where sigma is a length scale and epsilon determines the
interaction strength.
-
Again explore the speed and velocity distribution
for a range of initial conditions and parameter settings.
In particular, explore a low velocity (energy) situation
You may use supplied program code as a basis for your assignment.
Your reports should use MathML for
mathematics. This will be confirmed - it depends on
MathML being configured for the laboratory.
Assessment
Assessment will be based on reports and program code. As a
guide, the reports will be weighted at 2/3 (20 marks) and the
code at 1/3 (10 marks).
Submission
Your assignment submission must include: a tar file containing
your report(s), source code and any necessary data which must be
submitted using turnin. Instructions on how to do this here.
Last modifed: $Date: 2004/07/02 00:43:31$