물리 · 회전하는 고리 속 공

고리를 돌려도 왜 아무것도 바뀌지 않을까

규칙

공들이 점점 넓어지는 틈이 있는 회전 고리 안에서 튀어요. 회전은 틈을 실어 나를 뿐이에요.

클릭하면 YouTube에서 재생돼요.

Bouncing Balls in a Spinning Circle Which One Escapes First?

왜 이렇게 될까

공들이 틈이 있는 고리 안에서 중력을 받으며 튀고, 고리는 돌아요. 회전이 공을 휘둘러 던질 것 같지만, 마찰 없는 회전 고리는 정지한 고리와 똑같이 공을 튕겨요. 회전이 하는 일은 틈을 공 옆으로 지나가게 하는 것뿐이에요.

튕김: v → v − 2·(v · n)·n벽은 t ⊥ n 방향으로 움직이므로 (v · n)은 회전과 무관

직접 만들기

Python 3 · numpy · matplotlib

중력을 받는 공 하나가, 18° 틈이 4초에 한 바퀴씩 도는 고리 안에서 빠져나갈 때까지.

spinning-ring.py
"""A ball under gravity in a ring with a gap that spins; the bounces are elastic and without friction.
Run: python spinning-ring.py   (needs: pip install numpy matplotlib)
"""
import numpy as np
import matplotlib.pyplot as plt

plt.style.use("dark_background")

R, ball, g = 1.0, 0.05, 9.81  # ring radius (m), ball radius, gravity
gap, spin = np.radians(18), 2 * np.pi / 4  # an 18 degree gap, one turn every 4 seconds
p, v = np.array([0.3, 0.2]), np.array([1.8, 0.7])
dt, t, track = 0.0005, 0.0, []

while t < 60:
    v[1] -= g * dt
    p = p + v * dt
    t += dt
    track.append(p.copy())
    r = np.linalg.norm(p)
    if r > R - ball:  # the ball touches the wall, or is at the gap
        angle = np.arctan2(p[1], p[0])
        centre = -np.pi / 2 + spin * t  # where the gap is now
        off = abs((angle - centre + np.pi) % (2 * np.pi) - np.pi)
        if off < gap / 2 - ball / R:  # all of the ball fits through: out
            break
        normal = p / r
        v = v - 2 * np.dot(v, normal) * normal  # the bounce: the spin plays no part in it
        p = normal * (R - ball)

track = np.array(track)
print(f"escaped after {t:.1f} s" if t < 60 else "still inside after 60 s")
plt.figure(figsize=(6, 6))
plt.plot(track[:, 0], track[:, 1], color="#5eead4", linewidth=0.4)
plt.gca().add_patch(plt.Circle((0, 0), R, fill=False, color="white"))
plt.axis("equal")
plt.axis("off")
plt.show()

# Try: spin = 0 and centre = -np.pi / 2 (a still gap at the bottom): the bounces stay the same

해 보기: spin = 0으로 바꾸고 틈을 바닥으로 옮겨 보세요. 튕김은 그대로이고, 빠져나가는 길만 바뀌어요.

이 스크립트를 한 줄씩, 연습 문제와 퀴즈로 배우기 → · Google Colab에서 실행 (영어) →

영상이 들려주는 수학

영상 노트 보기 (YouTube에서, 영어)

Two balls bounce under gravity inside a circle that spins once every four bars of the music. Every bounce is perfectly elastic — no energy is lost, so the balls never calm down. One thing may surprise you: the spinning changes nothing about the bounces.

The wall of a rotating circle only ever moves sideways, along itself, so it cannot push a ball in or out; a frictionless spinning ring bounces exactly like a still one. The only thing the rotation does is carry the hole around — and because gravity keeps the balls near the bottom, their chances come each time the hole sweeps past the floor, once per revolution. The hole widens at the start of each round (8°, 12°, then 18°), and a ball only gets out if the whole of it fits through the gap at the moment it arrives.

The run you are watching was chosen from 500 simulated starting conditions for one reason: the first escape lands in the final seconds, and the other ball is still inside when the music ends.

출처: 다음 영상의 설명 Bouncing Balls in a Spinning Circle (영어).

Shorts

출처