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.).

These exercises are all about building a Space Elevator as shown in the diagram below, and analyzing the forces within the Space Elevator. For an instructor who might consider doing this activity in their class, please see the **CLASS SLIDES THAT ARE INCLUDED UNDER THE "CODE" TAB AS "ADDITIONAL RESOURCES".** These slides provide a background description of what a space elevator is, and motivate how and why we are going to analyze the Space Elevator.
![](images/spaceelevator/SpaceElevatorDiagram.png "")
**EXERCISE 1: Generating the algorithm**
Consider a vertical stack of N = 3 blocks. In small groups, draw a free body diagram for each of these three blocks on a whiteboard. Start at the top of the stack, and label the blocks as n = 0: topmost block. n = 1: middle block. n = 2 bottommost block. Label the force on the bottom surface of each block as F$_0$ and F$_1$ and F$_2$.
Then consider a stack of N blocks, where N is any integer > 1. Write a bit of pseudocode that will compute the force on the bottom surface of every block in the stack, and will plot the force F$_n$ versus the height y$_n$. (For the height, use the center of each block.)
Some questions to keep in mind for your pseudocode include:
- What parameters will you need?
- What arrays will you need?
- Do you need any loops? If so, what needs to happen inside the loop?
- In what order do things need to happen?
**EXERCISE 2: Computing and plotting force vs. height**
Create a function that will compute the forces on each block in a stack of N blocks.
The function should take 4 things as input:
1. The total height of the stack of blocks
2. the number of blocks
3. the horizontal area of each block, and
4. the density of the material that was used to make the blocks.
The function should compute the value of the force that is being exerted on the bottom of each block. **To start with, just use the equation W = mg for the weight of each block.**
The function should return two arrays (each of length N):
1. y = the height (above the ground) to the middle of each block.
2. F = the value of the force being exerted on the bottom of each block.
Run your function, and plot the results for different values of N, including large values of N. **Every plot that you make for this assignment will be force, F, versus height, y.**
Make sure that the results make sense. (Make sure you are able to observe “convergence” as N gets larger and larger.)
Note, when N becomes large, we can switch from thinking of this as a stack of separate blocks, and start to think of this as a single column – which will become our space elevator. What you are doing is calculating the forces within this column at different values of height.
**EXERCISE 3: Incorporating Universal Gravitation**
Now modify your code to use Newton’s Law of Universal Gravitation when you compute the weight of each block. (The distance from the center of the earth will be r = R + y.)
Run your function using a large value of N (at least N = 1000) and using different values of H (the total height of the stack of blocks). Plot your results, and discuss how Newton’s Law of Universal Gravitation affects your results. (Tip: Try very large values of H.)
**EXERCISE 4: Incorporating the centrifugal force (for a realistic model)**
Incorporate the “centrifugal force” into your equations.
> *Disclaimer: If you look at the earth as a spinning object, the “centrifugal force” does not exist. However, from the perspective of someone on earth, the spinning appears to result in an upward force called the “centrifugal force”. This is a handy trick that allows us to treat the stack of blocks as a 1D problem (with this extra force), rather than a (more complicated) 2D problem with the entire stack moving in 2D circular motion.*
The table below shows the density of a few different (strong) materials. For your computations below, consider a tower made of steel.
![](images/spaceelevator/table_of_materials_.png "")
Run your function using a large value of N (at least N = 1000), and using a few different (large) values of H (the total height of the stack of blocks). Specifically, run your function using H = 1,000 km, and then H = 10,000 km, and then H = 100,000 km. (Tip, use scientific notation.) Discuss the shape of the plot for each of these different value of H, and discuss why these results make sense. (Tip: In class we discussed the meaning of “compression” vs. “tension”.)
**EXERCISE 5: Analyzing the stress within the tower**
According to the article “

The physics of the space elevator”, a tower will be “free standing” if it has a height of H = 144,000 km. Using this value of H, compute and plot the force in the tower versus y. Discuss your results. What is “special” about the results when you use this specific value of H?
For this “free standing” tower, what is the maximum value of force that occurs within the tower? (You can use the “max” function, or if it is negative, use the “min” function.)
Compute the maximum value of the “stress” within your tower. (See notes from class.)
Based on your results, would this tower be strong enough if made of steel?
Run your function again (to compute and plot results), this time using carbon nanotubes. Would this tower be strong enough if made of carbon nanotubes? Discuss…
**EXERCISE 6 (OPTIONAL EXTENSION): Process of building the space elevator**
To actually build a space elevator, you could start from a satellite that it orbiting in a geosynchronous orbit, and build out from the original satellite going both up (away from the Earth) and down (toward the Earth), one block at a time. Write some computer code to determine the order in which blocks need to be added to the satellite to create the space elevator. The condition that you need to satisfy is that the net force on the space elevator needs be zero (within the spinning frame of the Earth) so that it neither falls down nor flies out.