GalaxSee

From Earlham Cluster Department

(Difference between revisions)
Jump to: navigation, search
m (Galaxy)
(Parameters)
 
Line 9: Line 9:
* -t - the number of ticks or time steps to run, infinite by default
* -t - the number of ticks or time steps to run, infinite by default
* -x - a flag that suppresses the graphical (X) display
* -x - a flag that suppresses the graphical (X) display
 +
* -v - a flag that enables debug messages to be output
== Classes ==
== Classes ==

Latest revision as of 20:58, 8 July 2009

Contents

Problem description

GalaxSee is a simulation of the n-body problem. A galaxy of stars (or point-masses) is generated with random positions and velocities, spun, and updated as the stars exert forces on each other.

Parameters

GalaxSee is run with the following command line: mpirun -np NUMPROCS [-m M] [-t T] [-x] STARS

Classes

Point

A single body. A point has position, velocity, and acceleration, all in <x,y,z> coordinates.

Galaxy

The galaxy contains a points array. It initializes the points with random positions and velocities, spins the points around the center, and thereafter makes updates to the points' positions, velocities, and accelerations based on their gravitational interactions with each other.

RunManager

This creates two separate threads. It receives the following commands and executes them accordingly:

World

This is an object-oriented handle to an MPI_Comm. It spawns processes and distributes the work load across them.

Job

World uses Job to distribute the workload, i.e. on which chunk of points each process should do calculations. Job also performs the MPI calls to move the points array in between all of the processes.

Physics Assumptions

Personal tools
Namespaces
Variants
Actions
websites
wiki
this semester
Toolbox