Here is the plot showing the height versus time for a free-falling object from a height of 50 cm. As expected, the height decreases as time progresses, following the quadratic relationship defined by the kinematic equations of motion.
import numpy as np
import matplotlib.pyplot as plt
# Constants
g = 9.81 # acceleration due to gravity (m/s^2)
h_initial = 0.50 # initial height (m)
# Time array (0 to the time it takes to reach the ground)
t = np.linspace(0, np.sqrt(2 * h_initial / g), 100)
# Calculate height as a function of time (y = h_initial - 1/2 * g * t^2)
h = h_initial - 0.5 * g * t**2
# Plotting the results
plt.figure(figsize=(8, 6))
plt.plot(t, h, label='Height vs Time', color='b')
plt.xlabel('Time (s)')
plt.ylabel('Height (m)')
plt.title('Free Fall: Time vs Height from 0 to 50 cm')
plt.grid(True)
plt.legend()
plt.show()
Here is the plot showing the relationship between height and time squared for a free-falling object from a height of 50 cm.
The plot demonstrates a linear relationship between time squared and height, as expected from the kinematic equation:
# Calculate time squared (t^2)
t_squared = t**2
# Plotting the results
plt.figure(figsize=(8, 6))
plt.plot(t_squared, h, label='Height vs Time Squared', color='g')
plt.xlabel('Time Squared (s^2)')
plt.ylabel('Height (m)')
plt.title('Free Fall: Time Squared vs Height from 0 to 50 cm')
plt.grid(True)
plt.legend()
plt.show()
Here is the plot showing the height versus time for a free-falling object from 50 cm with air resistance included. As you can see, the object takes longer to reach the ground compared to free fall without air resistance, and the motion is no longer purely quadratic. The effect of drag becomes more noticeable as the object speeds up, causing it to fall more slowly over time. This model demonstrates how air resistance affects the free-fall motion, especially for small, lightweight objects.
# Constants for air resistance
C_d = 0.47 # drag coefficient for a spherical object
rho = 1.225 # air density in kg/m^3 (at sea level)
A = 0.0014 # cross-sectional area in m^2 (assuming a small ball of ~4.5 cm diameter)
m = 0.005 # mass of the object in kg (5 grams)
# Time array for simulation
t_air = np.linspace(0, 2, 1000) # longer time array for more realistic simulation with air resistance
dt = t_air[1] - t_air[0] # time step
# Initialize arrays for velocity and height
v = np.zeros_like(t_air) # velocity
h_air = np.zeros_like(t_air) # height
h_air[0] = h_initial # starting height
# Simulate free fall with air resistance
for i in range(1, len(t_air)):
F_gravity = m * g
F_drag = 0.5 * C_d * rho * A * v[i-1]**2
net_force = F_gravity - F_drag
a = net_force / m
v[i] = v[i-1] + a * dt
h_air[i] = h_air[i-1] - v[i] * dt
if h_air[i] <= 0: # stop simulation when object hits the ground
h_air[i] = 0
break
# Plotting the results with air resistance
plt.figure(figsize=(8, 6))
plt.plot(t_air, h_air, label='Height vs Time (with air resistance)', color='r')
plt.xlabel('Time (s)')
plt.ylabel('Height (m)')
plt.title('Free Fall with Air Resistance: Time vs Height from 0 to 50 cm')
plt.grid(True)
plt.legend()
plt.show()
The terminal velocity of an object in free fall is the constant speed it reaches when the force of air resistance (drag) equals the gravitational force, and there is no further acceleration. At this point, the object falls at a constant speed.
The terminal velocity can be calculated using the following formula:
Where:
vt is the terminal velocity,
m is the mass of the object,
g is the acceleration due to gravity (9.81 m/s²),
ρ is the air density (about 1.225 kg/m³ at sea level),
Cd is the drag coefficient (depends on the shape of the object, e.g., 0.47 for a sphere),
A is the cross-sectional area of the object.
Determine the parameters:
Mass of the object (m).
Cross-sectional area (A) can be calculated for a sphere using the formula A=πr², where r is the sphere's radius.
Drag coefficient (Cd) depends on the shape. For a sphere, Cd is typically around 0.47.
Air density (ρ) is about 1.225 kg/m³ at sea level.
Use the terminal velocity formula: Plug these values into the formula to calculate the terminal velocity.
Let me calculate the terminal velocity for the object we used in the previous simulation (5 g mass, 4.5 cm diameter sphere):
The calculated terminal velocity for the 5g spherical object (with a 4.5 cm diameter) is approximately 10.35 m/s. This means that once the object reaches this speed during free fall, the force of air resistance will balance the gravitational force, and the object will fall at this constant velocity.
# Parameters for the terminal velocity calculation
r = 0.045 / 2 # radius of the sphere in meters (4.5 cm diameter)
A_sphere = np.pi * r**2 # cross-sectional area of the sphere
# Calculate terminal velocity
v_terminal = np.sqrt((2 * m * g) / (rho * C_d * A_sphere))
v_terminal