<< Chapter < Page | Chapter >> Page > |
Screen output
The text shown in Figure 13 should appear in the browser window when you open the html file in the browser.
Figure 13 . Screen output for Listing #5. |
---|
Start Script
On EarthArrow is at 89.9 feet at 1.00 seconds
Arrow is at 89.9 feet at 5.21 secondsOn the Moon
Arrow is at 89.9 feet at 0.86 secondsArrow is at 89.9 feet at 36.33 seconds
End Script |
A function named getRoots
The quadratic formula isn't very complicated, but it is fairly tedious and easy to type incorrectly. Therefore, I decided to encapsulate it in afunction that we can copy into future scripts saving us the need to type it correctly in the future.
Listing 5 begins with the definition of a function named getRoots that receives the parameters a, b, and c, and returns the roots of the quadraticequation in a two-element array.
Real or imaginary roots
The roots of a quadratic equation can be either real or imaginary. If the roots are imaginary, this function simply returns NaN (not a number) for eachroot.
The parameters of the problem
Following the definition of the getRoots function, Listing 5 declares and initializes several variables to establish the parameters of the problem, such as the accelerationof gravity on the earth and moon, the initial velocity of the arrow, etc.
The computed height versus the target height
The target height for the problem is 89.9 feet. Note that the variable named d contains that value less the initial height of 6 feet. Thus, the script willfind the time at which the arrow has traveled 83.9 feet on the way up, and the time that it has traveled that same distance on the way back down.
Establish quadratic coefficients
The next three lines of code use the problem parameters to establish values for the standard coefficients of a quadratic equation, a, b, and c, as described above . Note that at this point in the script, the coefficient named a is based on the acceleration of gravity on earth. (Later, it will be changed to reflect the acceleration ofgravity on the moon.)
Get the roots of the quadratic equation
Then the script calls the getRoots function, passing a, b, and c as parameters, and stores the returned array containing the roots in the variablenamed roots .
Following that, the script extracts the roots from the array and displays them as shown by the text in the upper half of Figure 13 .
Repeat the process for the moon
Then Listing 5 sets the value of the coefficient named a to reflect theacceleration of gravity on the moon, repeats the process, and displays the results in the lower half of Figure 13 .
Note that the arrow reaches the target height somewhat quicker on the moon due to the lower acceleration of gravity, and takes much longer to arrive at thesame height on the way back down to the surface of the moon. Were we to create a chart similar to Figure 4 for the moon, we would see that the arrow goes much higher before turning around and falling back to the surface of the moon.
You have learned how to use the following equation to solve various physics problems involving motion in a straight line with uniform acceleration so far inthis module.
Notification Switch
Would you like to follow the 'Accessible physics concepts for blind students' conversation and receive update notifications?