Homework 2 (Due 12 Sep)#

Due at midnight
Total points: 100

Practicalities about homeworks and projects

  1. You can work in pairs or by yourself. If you work as a pair you can hand in one answer only if you wish. Remember to write your name(s)! You may collaborate with others (optimal group size 3-4).

  2. Homeworks are available approximately ten days before the deadline. You should anticipate this work.

  3. How do I(we) hand in? You can hand in the paper and pencil exercises as a single scanned PDF document. For this homework this applies to exercises 1-5. Your jupyter notebook file should be converted to a PDF file, attached to the same PDF file as for the pencil and paper exercises. All files should be uploaded to Gradescope.

  4. For any exercise marked Complete Individually, you must do so as these are reflective exercises for you.

Instructions for submitting to Gradescope.

Exercise 1 (10 pt), How do we talk about scientific efforts?#

Conner's book A People’s History of Science Conner's book The Tragedy of American Science: From Truman to Trump

Complete Individually

Learning about how science has been done and the stories that we tell ourselves about it are important.

You are likely familiar with the statement “Standing on the Shoulders of Giants” – a quote that has been attributed to a number of different people including Newton and Pascal. It’s so famous, that Stephen Hawking has written a book with the title, Google Scholar uses the phrase as its tagline, and the band Oasis even has an album with the name.

However, have you ever considered that phrase critically?

Have you considered how that statement frames science as the accomplishments of single individuals or brilliant thinkers? Or how that “Shoulders of Giants” framing erases the many contributions of everyday people and even learned contributors to science?

This framing suggests a specific way that science came about: through the heroic efforts of singular individuals. This framing doesn’t acknowledge the contributions of many people including those who could not/cannot read or write, those who were not part of privileged classes, or dominant cultures, and even scientists who were fortunate to become known in their own right.

For this exercise, we ask that you read this interview with Dr. Clifford D. Conner, author of A People’s History of Science and The Tragedy of American Science: From Truman to Trump, and then respond to the questions below.

📂 Source for interview: https://selections.rockefeller.edu/wp-content/uploads/2012/07/ns-03-2006.pdf

Why are we reading this?

This interview and its contents might challenge your vision of science and the world. That is ok, you don’t have to agree with Dr. Conner’s views, but it is important for you to learn about these other perspectives.

It is also ok if the history raised or the words used are unfamiliar to you; learning this history and the unfamiliar words is part of learning about science.

And if you have questions, just ask.

Complete Individually

  • 1a (3pt) In 250 words, summarize the interview, what you learned from it, and what you have more questions about.

  • 1b (3pt) In 250 words, how does Conner frame the development of science? What evidence does Conner use to do this?

  • 1c (4pt) In 250 words, what do you think about Conner’s framing of the development of science? How does it align or conflict with your current (or prior) understanding of the development of science?

Any genuine and complete response will receive full credit.

Exercise 2 (10 pt), Forces, discussion questions, test your intuition#

These questions expect not only an answer, but an explanation of your reasoning.

To receive full credit, these answers should include both the underlying physics that explains your answer, but how you feel about that answer (i.e. are you confident? do you like this answer? do it unsettle you? it’s ok to feel uncomfortable right now with these ideas; physics intuition is developed and often has to be resolved with our everyday experiences).

  • 2a (2pt) Single force. Can an object affected only by a single force have zero acceleration?

  • 2b (2pt) Zero velocity. If you throw a ball vertically it has zero velocity at its maximum point. Does it also have zero acceleration at this point?

  • 2c (3pt) Acceleration of gravity. You measure the acceleration of gravity in an elevator moving at a velocity of 9.8m/s downwards. What will you measure?

  • 2d (3pt) Air resistance. You throw a ball straight up and measure the velocity as it passes you on its way down. Will the velocity be larger, the same, or smaller if you did the same experiment in vacuum?

Exercise 3 (10 pt), setting up forces, Newton’s second law#

Useful material here to read is

  1. Taylor chapters 1.3 and 1.4 and

  2. Malthe-Sørenssen chapters 5.1, 5.2 and 5.3

A person jumps from an airplane, falling freely for several seconds before the person pulls the cord of the parachute and the parachute unfolds.

  • 3a (3pt) Identify the forces acting on the parachuter and draw a free-body diagram of the parachuter before the person has pulled the cord. Include a brief discussion of any assumptions you make, motivate and justify your choices.

  • 3b (3pt) Identify the forces acting on the parachuter and draw a free-body diagram of the parachuter after the person has pulled the cord. Include a brief discussion of any assumptions you make, motivate and justify your choices.

  • 3c (4pt) Sketch the net force acting on the parachuter as a function of time, F(t). Your sketch should be qualitatively correct, indicate the axes, and show clearly which forces are acting on the parachuter before and after the person has pulled the cord. Ensure that the sign of your forces makes sense for your choice of coordinate direction.

Exercise 4 (10 pt), Space shuttle with air resistance#

Useful material here to read is: Malthe-Sørenssen chapters 5.1, 5.2 and 5.3

During lift-off of the space shuttle the engines provide a force of \(35\times 10^{6}\) N. The mass of the shuttle is approximately \(2\times 10^6\) kg.

  • 4a (2pt) Draw a free-body diagram of the space shuttle immediately after lift-off.

  • 4b (2pt) Find an expression for the acceleration of the space shuttle immediately after lift-off.

Let us assume that the force from the engines is constant, and that the mass of the space shuttle does not change significantly over the first 20 s.

  • 4c (3pt) Find the velocity and position of the space shuttle after 20 s if you ignore air resistance.

  • 4d (3pt) Estimate a “drag” coefficient for the space shuttle (i.e., \(c\) in \(cv^2\)). How did you get that number? What are its units? You might need to do some research on the equation of motion we derived and the real measurements used to compute drag properties.

Exercise 5 (15 pt), Hitting a golf ball#

Useful material here to read is

  • Taylor chapters 1.3-1.6 and

  • Malthe-Sørenssen chapter 6.3-6.4 and 7.1-7.3

Do Taylor exercise 1.35. The formulae you obtain here will be useful for the numerical exercises below (see exercise 6 below).

Repeated below consistent with fair use practices

A golf ball is hit from ground level with a speed \(v_0\) in a direction due east that is at an angle \(\theta\) above the horizontal.

  • 5a (5 pt) Neglecting air resistance, use Newton’s second law to find the position as a function of time, using the coordinates \(x\) measured east, \(y\) measured north, and \(z\) measured up.

  • 5b (5 pt) Find the time the golf ball is in the air and how far it travels in that time.

Reflect on the form of your answer.

  • 5c (5 pt) Your answers should depend on \(v_0\) and \(\theta\). What can you say about the dependence of the time the golf ball is in the air and the distance it travels on these two variables? How can we believe this functional form of your answer? How can we check it? Propose a check and check that your answer is consistent with this check.

Exercise 6 (15 pt), ball thrown along a sloped ramp#

Taylor exercise 1.39. Make sure to draw your setup clearly, show your free-body diagram, and explain any assumptions you make to solve the problem.

Repeated below consistent with fair use practices

A ball is thrown with initial speed \(v_0\) up an inclined plane. The plane is inclined at an angle \(\phi\) above the horizontal, and the ball’s initial velocity is at an angle \(\theta\) above the plane. Choose axes with \(x\) measured up the slope, \(y\) normal to the slope, and \(z\) across it.

  • 6a (5 pt) Write down Newton’s second law using these axes and find the ball’s position as a function of time. Make sure to include the FBD and any assumptions you make.

  • 6b (5 pt) Show that the ball lands a distance

\[R=2v_0^2\dfrac{\sin\theta\cos\left(\theta + \phi\right)}{g \cos^2 \phi}\]

from its launch point. This is measured up the ramp (i.e., along it).

  • 6c (5 pt) Show that for given \(v_0\) and \(\phi\), the maximum range up the inclined plane is:

\[R_{\text{max}}=\dfrac{v_0^2}{g(1+\sin\phi)}\]
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits import mplot3d
%matplotlib inline

Exercise 7 (30pt), Numerical elements, moving to more than one dimension#

This exercise should be handed in as a PDF. Remember to write your name(s).

Last week we:

  1. Analytically mapped 1D motion over some time

  2. Gained practice with functions

  3. Reviewed vectors and matrices in Python

This week we will:

  1. Practice using Python syntax and variable manipulation

  2. Utilize analytical solutions to create more refined functions

  3. Work in two, three or even higher dimensions

This material will then serve as background for the numerical part of homework 3. The first part is a simple warm-up, with hints and suggestions you can use for the code to write below. Run that code to see what different terms mean in the exercise.

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits import mplot3d
%matplotlib inline

Arrays#

In class (the falling baseball example) we used an analytical expression for the height of a falling ball. In the first homework we used instead the position from experiment (Usain Bolt’s 100m record run) and stored this information with one-dimensional arrays in Python.

Let us get some practice with this.

The cell below creates two arrays, one containing the times to be analyzed (t) and the other containing the \(x\) and \(y\) components of the position vector at each point in time (p). Notice that p is a two-dimensional object. The second array is initially empty.

Then we define the initial position to be \(x=2\) and \(y=1\). Take a look at the code and comments to get an understanding of what is happening. Feel free to play around with it.

tf = 4 #length of value to be analyzed
dt = .001 # step sizes
t = np.arange(0.0,tf,dt) # Creates an evenly spaced time array going from 0 to 3.999, with step sizes .001
p = np.zeros((len(t), 2)) # Creates an empty array of [x,y] arrays (our vectors). Array size is same as the one for time.
p[0] = [2.0,1.0] # This sets the inital position to be x = 2 and y = 1

Slicing Arrays#

Below we are printing specific values of our array to see what is being stored where. The first number in the array \(r[]\) represents which array iteration we are looking at, while the number after the represents which listed number in the array iteration we are getting back. This kind of manipulation is often called “slicing” arrays, like bread in 1D, or some hyper-pastry in other dimensions.

print(p[0]) # Prints the first array
print(p[0,:]) # Same as above, these commands are interchangeable
[2. 1.]
[2. 1.]
print(p[3999]) # Prints the 4000th array
[0. 0.]
print(p[0,0]) # Prints the first value of the first array
2.0
print(p[0,1]) # Prints the second value of first array
print(p[:,0]) # Prints the first value of all the arrays
1.0
[2. 0. 0. ... 0. 0. 0.]

Then try running this cell. Notice how it gives an error since we did not implement a third dimension into our arrays. You will need to uncomment the line to see the error.

#print(p[:,2])

Array Maniuplation#

In the cell below we want to manipulate the arrays. In this example we make each vector’s \(x\) component valued the same as their respective vector’s position in the iteration and the \(y\) value will be twice that value, except for the first vector, which we have already set. That is we have \(p[0] = [2,1], p[1] = [1,2], p[2] = [2,4], p[3] = [3,6], ...\)

Here we set up an array for \(x\) and \(y\) values.

for i in range(1,3999):
    p[i] = [i,2*i]
# Checker cell to make sure your code is performing correctly
c = 0
for i in range(0,3999):
    if i == 0:
        if p[i,0] != 2.0:
            c += 1
        if p[i,1] != 1.0:
            c += 1
    else:
        if p[i,0] != 1.0*i:
            c += 1
        if p[i,1] != 2.0*i:
            c += 1

if c == 0:
    print("Success!")
else:
    print("There is an error in your code")
Success!

You could also think of an alternative way of storing the above information. Feel free to explore how to store multidimensional objects.

Last week we studied Usain Bolt’s 100m run and in class we studied a falling ball. We made plots of the baseball moving in one dimension. This week we will be working with a three-dimensional variant. This will be useful for our next homeworks and your numerical projects.

Assume we have a soccer ball moving in three dimensions with the following trajectory:

  1. \(x(t) = 10t\cos{45^{\circ}} \)

  2. \(y(t) = 10t\sin{45^{\circ}} \)

  3. \(z(t) = 10t - \dfrac{9.81}{2}t^2\)

Now let us create a three-dimensional (3D) plot using these equations. In the cell below we write the equations into their respective labels. We fix a final time in the code below.

Code Help

numpy comes with many mathematical packages, some of them being the trigonometric functions sine, cosine, tangent. We are going to utilize these this week. Additionally, these functions work with radians, so we will also be using a function from numpy that converts degrees to radians. Learning numpy and its functions will be very useful in future work.

  • 7a (6pt) With a flight time of 2.04s and a time step of 0.1s, create a time array t using numpy functions. Then create an array r that holds the locations of the ball x, y, and z as its columns. At each point in the time array, the array r should have the location of the ball according to the analytical functions above.

### Your Code Here
  • 7b (6pt) Plot the array in 3D using matplotlib to illustrate the trajectory of the ball.

### Your Code Here

Complete Exercise 5 above (Taylor exercise 1.35) before moving further. (Recall that the golf ball was hit due east at an angle \(\theta\) with respect to the horizontal, and the coordinate directions are \(x\) measured east, \(y\) north, and \(z\) vertically up.)

  • 7c (6pt) What is the analytical solution for our theoretical golf ball’s position \(\boldsymbol{r}(t)\) over time from Exercise 5? Also what is the formula for the time \(t_f\) when the golf ball hits the ground? Use this to adapt your program above, to a function (e.g., GolfBall()) that computes and plots our analytical solutions (It would be reasonable and appropriate to use different functions for computing and plotting). This program should take in an initial velocity and the angle \(\theta\) that the golfball was hit with in degrees. It should also produce a 3D graph of the motion. You need also to find the maximum values for \(x\), \(y\) and \(z\).

## Your Code Here
  • 7d (6pt) Given initial values of \(v_i = 90 m/s\), \(\theta = 30^{\circ}\), what would our maximum x, y and z components be? Call your function

## Your Code Here
  • 7e (6pt) Given initial values of \(v_i = 45 m/s\), \(\theta = 45^{\circ}\), what would our maximum x, y and z components be? Call your function.

## Your Code Here