Supercomputer Applications
UNIT #5 - Computer Simulation
Why Use Computer Simulation?
When scientists are trying to test some product or else
create a new machine or piece of equipment,
it is usually not cost effective to build a large number of the prototypes
without knowing before hand how effective various designs will be. With
the advent of high performance computing, however, scientists are now able
to create computer models of their designs, test them out, and then choose
the best one for final construction.
There are often situations that happen so slowly that a computer model can be used to speed up the process. Scientists can then use their models
for situations such as weather prediction, global warming, or hazardous waste
control.
We use many such computer models now for such predictions,
although they are often simplifications of the actual situations.
The alternative of
waiting until after some catastrophic event has happened and just observing
the results is not prudent, though.
In other situations, there are often things that we would like to investigate
that are so small or happen so quickly that they cannot be observed by the
human eye. We can
use computer models to study such things and even make discoveries or
predictions. Computer models can be used to study molecular dynamics, and
even build smaller yet better computers.
Computer models such as these are often very computationally intensive, so
therefore supercomputers are typically used to run them so that results
can be obtained in a shorter time period. Below you will find a general
introduction to computer simulation and supercomputing.
Computer Simulation Techniques
The following techniques are just a few of the possible simulation approaches
one can use.
-
Time Step Model -
Trajectory Simulation
This is a step by step development of a physics simulation depicting the
trajectory of a simple projectile. It progresses from a simple time-step
model, through a supercomputer visualization of the full parameter range.
-
Finite State Automaton -
Gypsy Moth Simulation
This model uses a finte state automaton approach to study the evolution
of a gypsy moth population over time.
-
Random Walk and Discrete Limited Aggregation
This uses a technique of allowing a particle to randomly move in an
environment, and then sticking it to some surface. It is commonly
used to study phenomena such as crystal growth.
-
Event Driven Simulation
This technique allows for more accurate control of the time clock in
a computer simulation. A priority queue is used to hold a list of
"next events", and for each action, the system clock is updated and
results recorded.
Assignments - UNIT #5
- Simple Simulation
Create a simple simulation in OpenGL that will demonstrate some physical
system. The model can be a modification of the trajectory example, or
some other approach depending upon your particular interest.
Be sure to demonstrate that you have
validated your model.
- Multi-User Simulations Using UNIX Sockets
For those students who want to create more advanced simulations that
might involve multiple users on remote systems, check out the following
page that introduces the topic of
UNIX Sockets.
- My ThinkQuest
Get a My ThinkQuest Account. This
will allow us to participate in the new Internet2 and Tele-immersion
projects in a pilot project where we will be exploring possibilities
with broadband access for K-12.
- The Physics Toolbox
For our school's involvement with Imagining the Future, we will
encourage our students to work on a project that will incorporate computer
simulation techniques and 3D graphics.
We hope we can begin to develop a repository
of interactive physics simulations that can be utilized by students
at many levels.
- Scientific Visualization (Concurrent with
Unit #6)
Expand your simulation to observe the effects of some external stimulus
and display by some visualization technique using a broad range of
parameter values. Significan bonus credit will be given to those
students who utilize either PVM or the Linux Cluster to speed up
their computation.
Submitting Your Work
Please use the following program to submit Unit #5 for a final grade
in this class: