Title: Lucifers Hammer
1Lucifers Hammer
A Computer Simulation of Asteroid Trajectories
- Derek Mehlhorn
- William Pearl
- Adrienne Upah
Team 34 Albuquerque Academy
2Project Objective
- To model and observe Near Earth Objects
(asteroids which come within 1.3 Au of the Sun)
by simulating orbital motion using N-body
gravitational interactions as well as Kepler and
Newtons laws of motion
3Presentation Summary
- Uses and Definitions
- Planetary Setup and Mathematical Model
- Asteroid Generation
- Code Implementation
- Error Analysis
- Results and Conclusions
4Uses
- Evaluating the probability of a space borne
entity becoming a threat - Plotting the course of satellites and probes
(including slingshot maneuvers) - Modeling comet and asteroid trajectories
5Definitions
- 2-Body calculations determining gravitational
forces assuming that the sun is the only body
interacting with a given body - N-Body calculations determining gravitational
interactions between N objects
6The Asteroid Belt
- A large concentration of asteroids mainly located
between the orbits of Mars and Jupiter - Contains over 10,000 recorded asteroids over 1
km in radius - Contains as many as half a million asteroids over
1/2 km in radius
7Diagram of Initial Asteroid Distribution
8Presentation Summary
- Uses and Definitions
- Planetary Setup and Mathematical Model
- Asteroid Generation
- Code Implementation
- Error Analysis
- Results and Conclusions
9Planetary Motion and Initialization
- Mathematical model1 used to accurately predict
planetary positions on any given day - Derive initial velocities from change in
positions - Motion determined by calculating acceleration due
to sum of the gravitational forces - Integration of acceleration to find velocity and
then position
1Courtesy of NASA
10Presentation Summary
- Uses and Definitions
- Planetary Setup and Mathematical Model
- Asteroid Generation
- Code Implementation
- Error Analysis
- Results and Conclusions
11Asteroid Positions
- User defines total number of asteroid desired
- Random distance from the Sun determined
- Random angle between 0 and 360 degrees determined
- X and Y coordinates calculated from mean distance
from to sun and angle xrcosø yrsinø - Z coordinate calculated using random angle of
inclination or declination (/- 5 deg) from the
plane of the ecliptic zxtanø0
12Asteroid Velocities
- From asteroids mean distance from sun determine
the period of rotation by Keplers law P2 a3 - From period and distance an average orbital
velocity can be derived Vave 2?a/P - Orbital velocity is divided into x, y components
- Divide velocity into components, thus producing
spherical to mildly elliptic orbits - Randomly perturb velocity components varied by
/- 10 proportionally to create highly
eccentric and abnormal orbits
13A Mixed Plot of Stable and Unstable Asteroids
14Other Asteroid Characteristics
- Random radius determined between 1 and 500 km
- Measured density of Eros 2.5 gm/cm3 /- .8
- Asteroids assigned a density between 1.7 and 3.3
gm/cm3 - Volume determined assuming asteroids are perfect
spheres V4/3 ? r3 - Mass derived from volume and density
15We generate a realistic range of densities that
result in a distribution of asteroid masses
16As per empirical data, our asteroid belt
possesses a high ratio of small to large asteroids
17Event Checking and Handling
- Asteroid positions are checked at each time step
- Collisions with planets result in asteroid node
deletions - Collisions between asteroids are considered
purely elastic - New velocities are determined assuming that
momentum and kinetic energy are conserved - Distance from Sun checked and flags marked
accordingly - Asteroids flags are checked and position
information output accordingly - Planet information printed every time step
18Presentation Summary
- Uses and Definitions
- Planetary Setup and Mathematical Model
- Asteroid Generation
- Code Implementation
- Error Analysis
- Results and Conclusions
19The Code Modules
- The Parameter Class para.h
- Uses mathematical model to obtain realistic
initial positions and velocities for each planet - The Planet Class planet.h
- Creates orbital objects (planets and asteroids)
whose motion is determined through N-body
calculations - starter.cpp
- Used to test the parameter class
- main.cpp (parallelized using MPI)
- Implements the Planet class to create and run the
simulation
20Master Node Operations
- Implements a mathematical model for predicting
planetary positions and starting variables - Determines planetary positions through N-body
calculations - Writes positions to output files
- Broadcasts planetary positions to slave nodes
21Slave Node Operations
- Randomly generate a specified number of asteroids
on each node that are stored within a linked
list. - Receive and use planetary data to determine
individual asteroid motion through N-body
calculations (relative to the planets) - Check (on node) asteroid positions for
collisions and interesting orbital characteristics
22Parallel Implementation
- Two processor tests run on Pi
- Scalability tested through 5 nodes using the Blue
Mountain Super Computer - A number of limited time (100 years) large
asteroid population (10000) completed - Several larger runs (10000 years) attempted but
limited by storage space - runs completed using 20 processors
23- The Inner Solar System
- Mercury - Mars
24- The Outer Solar System
- Jupiter - Neptune
25An eccentric yet stable Near Earth Asteroid
26Presentation Summary
- Uses and Definitions
- Planetary Setup and Mathematical Model
- Asteroid Generation
- Code Implementation
- Error Analysis
- Results and Conclusions
27Integration Method
- Leap frog method
- positions and forces centered on time step
- velocities centered on 1/2 time step
- Method conserves energy
- Resolution convergence confirmed (vary e)
- Future work compare to trapezoidal Simpsons
Ref Feynman Lectures on Physics
28Error analysis
Time Step Length 1 Day 1/2 Day 1/4 Day 1/8 Day
Average X Error .000313884 .000246115 .000229601 .
000225648
Average Y Error .000322463 .000254278 .00023773 .0
00233772
Average Z Error .00000069587 .00000069703 .0000006
97618 .000000697913
-Average Error above Computed in Aus from 10
years of data for the Earth
N-body integrator stable and accurate over
thousands of years
29The System Conserves Energy (Kinetic potential
energies anti-correlated)
30Inter-asteroid forces can for the most part be
ignored
31Presentation Summary
- Uses and Definitions
- Planetary Setup and Mathematical Model
- Asteroid Generation
- Code Implementation
- Error Analysis
- Results and Conclusions
32Near Earth Asteroids do not possess significantly
different total energy levels than stable
asteroids
33Stable Asteroids are harmless because they have
spherical orbits which are difficult to perturb
34Near Earth Asteroids are dangerous because of
they have eccentric orbits which can be easily
perturbed
35Real space plot of an eccentric and perturbed
Near Earth Asteroid
36Conclusions
- Although NEOs have eccentric orbits that are
easily perturbed, they are not less bound to the
Solar System - Regular asteroids pose little or no threat to the
earth because of their spherical and predictable
orbits - Near Earth Objects present a large threat of
collision because of their eccentricity and their
susceptibility to perturbations