Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Friction and Real-World Forces | Forces and Energy
Python for Physics Students

bookFriction and Real-World Forces

Friction is a force that resists the motion of objects sliding or rolling across surfaces. There are two primary types of friction you will encounter in physics problems: static friction and kinetic friction.

  • Static friction acts between two surfaces that are not moving relative to each other. It prevents an object from starting to move and can adjust up to a maximum value depending on the materials and the normal force;
  • Kinetic friction (also called sliding friction) acts when an object is already moving across a surface. It is generally constant for a given pair of surfaces and is usually less than the maximum static friction.

When modeling friction in physics problems, you use different coefficients for static (μ_s) and kinetic (μ_k) friction. The frictional force is always directed opposite to the direction of motion (or intended motion) and depends on the normal force between the object and the surface.

1234567891011121314151617181920212223242526272829303132
import numpy as np # Parameters mass = 2.0 # kg mu_k = 0.3 # coefficient of kinetic friction g = 9.81 # m/s^2 initial_velocity = 5.0 # m/s dt = 0.05 # time step (s) position = 0.0 velocity = initial_velocity # Lists to store simulation results positions = [position] velocities = [velocity] times = [0] # Simulate until the object stops t = 0 while velocity > 0: friction_force = mu_k * mass * g acceleration = -friction_force / mass velocity += acceleration * dt if velocity < 0: velocity = 0 position += velocity * dt t += dt positions.append(position) velocities.append(velocity) times.append(t) # Print final position and time print(f"Stopped after {t:.2f} seconds at position {position:.2f} meters.")
copy

In this simulation, you calculate the frictional force using the equation:

F_friction = μ_k × N

where μ_k is the coefficient of kinetic friction and N is the normal force (which equals mass × g for a flat surface). The frictional force always acts opposite to the direction of motion, causing a negative acceleration. The object's velocity is updated each time step by applying this acceleration, and its position is updated based on the current velocity. When the velocity drops to zero or below, the object has stopped moving—this is how friction gradually slows and eventually stops the object.

123456789
import matplotlib.pyplot as plt plt.figure(figsize=(8, 4)) plt.plot(times, velocities, marker='o') plt.xlabel('Time (s)') plt.ylabel('Velocity (m/s)') plt.title('Velocity vs. Time with Friction') plt.grid(True) plt.show()
copy

1. How does increasing the coefficient of friction affect the object's motion in the simulation?

2. What is the difference between static and kinetic friction?

3. Why does the object eventually stop moving in the simulation with friction?

question mark

How does increasing the coefficient of friction affect the object's motion in the simulation?

Select the correct answer

question mark

What is the difference between static and kinetic friction?

Select the correct answer

question mark

Why does the object eventually stop moving in the simulation with friction?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 6

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

bookFriction and Real-World Forces

Свайпніть щоб показати меню

Friction is a force that resists the motion of objects sliding or rolling across surfaces. There are two primary types of friction you will encounter in physics problems: static friction and kinetic friction.

  • Static friction acts between two surfaces that are not moving relative to each other. It prevents an object from starting to move and can adjust up to a maximum value depending on the materials and the normal force;
  • Kinetic friction (also called sliding friction) acts when an object is already moving across a surface. It is generally constant for a given pair of surfaces and is usually less than the maximum static friction.

When modeling friction in physics problems, you use different coefficients for static (μ_s) and kinetic (μ_k) friction. The frictional force is always directed opposite to the direction of motion (or intended motion) and depends on the normal force between the object and the surface.

1234567891011121314151617181920212223242526272829303132
import numpy as np # Parameters mass = 2.0 # kg mu_k = 0.3 # coefficient of kinetic friction g = 9.81 # m/s^2 initial_velocity = 5.0 # m/s dt = 0.05 # time step (s) position = 0.0 velocity = initial_velocity # Lists to store simulation results positions = [position] velocities = [velocity] times = [0] # Simulate until the object stops t = 0 while velocity > 0: friction_force = mu_k * mass * g acceleration = -friction_force / mass velocity += acceleration * dt if velocity < 0: velocity = 0 position += velocity * dt t += dt positions.append(position) velocities.append(velocity) times.append(t) # Print final position and time print(f"Stopped after {t:.2f} seconds at position {position:.2f} meters.")
copy

In this simulation, you calculate the frictional force using the equation:

F_friction = μ_k × N

where μ_k is the coefficient of kinetic friction and N is the normal force (which equals mass × g for a flat surface). The frictional force always acts opposite to the direction of motion, causing a negative acceleration. The object's velocity is updated each time step by applying this acceleration, and its position is updated based on the current velocity. When the velocity drops to zero or below, the object has stopped moving—this is how friction gradually slows and eventually stops the object.

123456789
import matplotlib.pyplot as plt plt.figure(figsize=(8, 4)) plt.plot(times, velocities, marker='o') plt.xlabel('Time (s)') plt.ylabel('Velocity (m/s)') plt.title('Velocity vs. Time with Friction') plt.grid(True) plt.show()
copy

1. How does increasing the coefficient of friction affect the object's motion in the simulation?

2. What is the difference between static and kinetic friction?

3. Why does the object eventually stop moving in the simulation with friction?

question mark

How does increasing the coefficient of friction affect the object's motion in the simulation?

Select the correct answer

question mark

What is the difference between static and kinetic friction?

Select the correct answer

question mark

Why does the object eventually stop moving in the simulation with friction?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 6
some-alt