Download presentation
Presentation is loading. Please wait.
Published byMelinda Pitts Modified over 8 years ago
1
Creating 2-D and 3-D models of the Solar System using physics-based geometries in Java. Brian Tubergen
2
Purpose/Subject/Goals Create a working simulation of the Solar System Implement Keplerian/Newtonian models to control planetary motion Users interaction with simulation: ability to add customizable solar bodies (comets, planets, etc.) at a given location and see what reaction of Solar System is Transition 2-D simulation into 3-D
3
Scope of Study Program “action at a distance” gravitation force: F = G*m*M/r^2 Acquire real world position/velocity planetary data or find an equation that can give it to me and compare it with simulation Implement non-coplanar orbits (ie: program a z component of position, velocity, etc.) for 3-D purposes
4
Similar Projects The basic Solar System part of the project is a visual recreation of the Keplerian model of planetary motion Other Solar System simulations exist, but none that I’ve seen allow user interaction to the extent I’d like to with user addition of solar bodies
5
Theory/Design Program written in Java (for now, for 2-D) Create a class that essentially handles the creation and management of the panel itself (Animate01_modified) Create a class that can represent a planet and contains data on that planet’s position, velocity, etc. (Sprite)
6
Theory/Design cont. Update the positions of the planets one at a time and iteratively, where at each step the planet’s acceleration is updated based on the position of each other body a = G*m/r^2 Every solar body’s acceleration is calculated based on every other body, if that makes sense
7
Testing Acquire real world (or equation based) position and velocity data for each planet and compare to my simulation’s output Verify that my simulation runs more or less correctly
8
Testing Cont.
9
Problems thus far Issues with iterative calculation of forces Solved, as far as I’m aware, although Mercury may be incorrect Issues handling how to let each planet know about the other planets/bodies in the system Necessary to calculate accelerations correctly Solved, as far as I’m aware
10
Problems cont. Determining the most intelligent and easiest way to compare position data from my program to position data from NASA Will likely write another java program to do this
11
Timeline 1 st quarter: Get iterative force/acceleration calculations working for multiple bodies interacting 2 nd quarter: Fix bugs with said calculations and resulting motion Verify that the equations actually work based on solar system data 3 rd quarter: Continue writing verification program Implement user interaction with simulation 4 th quarter: Struggle with 3-D
12
Results thus far
13
Results cont. Planets (smaller, multicolored circles) appear to move elliptically, hyperbolically, parabolically, etc. as they should Real initial position/velocity values have been assigned Planetary orbits are mostly circular, although Mercury’s appears to be incorrect right now
14
Results cont. Realized that the way I was planning on doing the data comparisons with OpenOffice Calc was a little dumb Now working on writing a separate program to do it for me
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.