We had carefully researched every aspect that affected the height to which the rocket would fly. And yet after all of that research, we had no precise way to optimize the performance of the rocket. We had no idea how high it would go, or if we needed to slightly alter wing shape. We had no clue if should add more water or take away water to properly balance the rocket. In fact, we had no idea how the rocket would even fly. If only we could alter the precise rocket design on a computer instead of real life! So began our quest to build the perfect Water Bottle Simulator.
So we began our investigation of the aerodynamics and fluid dynamics behind the motion of our rocket; one that turned out to be an elaborate challenge. Our intention was to provide physics students, like us, the ability to learn about the different factors that affect flight. The flight path of the rocket depends mainly on three factors: the weight of the rocket, the thrust provided by the water, and the drag caused by the surrounding air. However, the weight of the rocket largely depends on the amount of water in the rocket, so everything became very complex. As the rocket expelled water to generate thrust, it also lost weight, increasing the impact of the thrust. To account for which we needed to implement complex calculus equations. In addition, to calculate the rate at which water leaves the rocket, we had to implement several fluid mechanics equations.
To implement these complex equations we had to brush up on our math and physics skills to thoroughly understand the forces behind the launch and flight of the rocket. We found many formulas briefly mentioned in our Physics textbook, but also found that these calculations required the understanding of several calculus concepts. Some of the formulas were so general that we had to derive our own equations such as the change in mass as the rocket is launched. Our textbook said to simply take the integral of the mass with respect to time, however, it gave no formula for rockets. By overcoming these obstacles, we developed a deeper understanding of the underlying physical principles behind the motion of the rocket.
We also faced many setbacks in regards to glitches with the animation. Our animation would lag and would be misplaced on the screen. The moving objects in our original animation would appear to jump across the screen. Because of this, we started to use JavaFX which automatically buffered our animations. This made our rocket animations much cleaner and smoother. Previously for animations we used the generic Java library called Swing but after incorporating JavaFX, we found that JavaFX used a different notation in its code. In order to complete this project, we learned new notation to properly incorporate animations.
After creating this simulation, we developed a deeper understanding of the underlying physical principles behind the motion of the rocket.
Log in or sign up for Devpost to join the conversation.