+
Projectile Motion: Experiment and Computational Model

Developed by Todd Zimmerman - Published August 2, 2017

Connecting computation to experiment is at the heart of physics. This set of exercises requires students to create a computational model for a ball launched into the air to determine the distance traveled and total time in the air. The students then must perform the experiment by launching the ball with a spring launcher. Data from the experiment must be entered into the computational model and the experimental results are compared to the computer model.
Subject Areas Mechanics and Experimental / Labs First Year Glowscript, IPython/Jupyter Notebook, Sage Worksheet, and Easy Java Simulations * Explain that the time an object is in the air depends only on motion in the y-direction (**Exercise 4**) * Relate the initial velocity of a launched ball to the horizontal velocity when the ball is launched horizontally (**Exercise 2**) * Make use of the fact that horizontal and vertical motion are independent to solve a 2D motion problem by breaking problem up into two 1D problems (**Exercise 1**) * Convert equations of motion into a computational model (program) with discrete time-steps (**Exercise 1**) * Use experimental data as an input into a computational model (**Exercise 6**) * Explain the limitations of computational models in predicting experimental results (**Exercise 6**) 180 min

These exercises are not tied to a specific programming language. Example implementations are provided under the Code tab, but the Exercises can be implemented in whatever platform you wish to use (e.g., Excel, Python, MATLAB, etc.).

### Exercise 1 Create a computational model of ball launched with some velocity in the horizontal direction. Create a visual representation of the motion (either 2D animation or a graph of the 2D trajectory. ![](images/proj_mot/trajectory_graph.png "") Your model should include the mass and size of the ball, the initial horizontal speed, and the initial height of the ball above the floor. The model should stop when the ball hits the floor. The model should return the horizontal distance the ball travels before hitting the floor as well as the total time it is in the air. The equations that model the motion of the ball are $$\frac{d \vec{r}}{dt} = \vec{v}$$ and $$\frac{d \vec{v}}{dt} = \frac{\vec{F}}{m}.$$ These equations involve derivatives but computer models must use time steps that have a finite size (called discrete time steps). In terms of finite differences these two equations can be written as $$\frac{\Delta \vec{r}}{\Delta t} = \vec{v}$$ and $$\frac{\Delta \vec{v}}{\Delta t} = \frac{\vec{F}}{m}.$$ Remember that the $\Delta$ symbol means "change in ..." so $\Delta t$ is the "change in time". Use these equations to find two equations that allow you to update the position and velocity of the particle at each time step. **Hint:** Remember that you have motion along the x-axis and motion along the y-axis. ### Exercise 2 **Predictions** Before you proceed with this part of the exercise make a prediction of how the time the ball takes to hit the floor varies as you increase the initial speed for the case of the ball being launched horizontally. Do you think the ball will be in the air longer, the same, or a smaller time than the initial launch speed? Make another prediction about how the total horizontal distance the ball travels before hitting the ground as you increase the initial launch speed of the horizontally launched ball. Do you think the horizontal distance will increase, remain the same, or decrease as you increase the initial speed. **Run the Model** Once you've made your prediction, run your model with five different initial speeds and record the total horizontal distance and the total time the ball is in the air. Create two graphs from this data, one for horizontal distance vs. initial launch velocity and another graph for total air time vs. initial launch velocity. How do your predictions compare to the output from the computational model? If your predictions differed from the model results explain how your thoughts have changed as a result of viewing the model. ### Exercise 3 Modify your code so you can vary the angle at which the ball is launched in addition to the launch speed. ### Exercise 4 **Predictions** Make your predictions before running the computer model. If you set the launcher to shoot the ball straight up in the air (set $\theta = 90^{\circ}$), predict how the time the ball remains in the air varies as you increase the initial speed. Will the time in the air increase, remain the same, or decrease as you increase the initial speed? **Run the Model** Set the launch angle to $90^{\circ}$ in your computational model and launch the ball with at least five different initial speeds. Record the total time in the air. Plot time in the air vs. initial speed. Explain why we don't need to plot the horizontal distance vs. time graph for this exercise. How does your prediction compare to the results of the computational model? If your prediction differed from the model explain how your thoughts have changed as a result of viewing the model. ### Exercise 5 The goal of the next exercise is to experimentally determine the initial launch velocity of the ball using the equipment provided. Determine your experimental method. If necessary, take multiple measurements to find a good average result. ### Exercise 6 Your instructor will give you an angle to set your launcher to. Before launching the ball input your initial speed and your launch angle into your computational model. Record the total time in the air and the horizontal distance the ball travels. Once you have run your computation, set up your experiment at the specified angle and measure how long the ball is in the air and how far the ball travels horizontally. Repeat the experiment several times and average your data together. Compare your computational model to your experimental results. Explain some reasons why the two results differ. "Human error" is not an acceptable explanation.