Lemma
수학, 거꾸로
도입 · 중력의 서명

중력은 왜 매번 포물선을 그릴까?

공을 던진다. 공기저항은 무시. 가로 방향 운동은 시간을 그대로 간다 — 영원히 같은 속력. 세로 방향 운동은 에 진다 — 올라갈 때 느려지고, 내려올 때 빨라진다. 서로의 존재를 모르는 두 수직 이야기, 그 둘이 함께 그리는 자취가 . 포물선이 특별해서가 아니라, 그것이 _레시피_여서. 등속이 등가속과 만나면, 그 합쳐진 그림은 이차식이 된다.

위젯에서 각도·속력·중력을 끌어보자. 경로는 늘 지면으로 다시 닫힌다. 정점은 늘 가운데. 갈색 vₓ 화살표는 길이가 일정하고 파란 v_y 화살표는 정점에서 0이 되었다가 내려오며 뒤집힌다. 이게 그림의 전부다.

위젯 — 발사
range = 40.8 my_max = 10.2 m
t_정점1.44 s
t_착지2.89 s
vₓ (일정)14.14 m/s
v_y (현재)-0.00 m/s
t 슬라이더를 끌어보면 갈색 vₓ 화살표는 길이가 일정한데 파란 v_y 화살표는 정점에서 0이 되었다가 그 뒤로 아래로 뒤집힌다. 가로 방향 운동은 중력을 알지 못하고, 세로 방향 운동은 가로 속도를 알지 못한다. 서로 독립인 두 이야기 — 가로는 등속, 세로는 등가속 — 는 그림에서만 만나고, 그 그림이 포물선이다.
흐름
1

두 운동, 공 하나

공이 손을 떠나면 그 위에 작용하는 힘은 하나 — 곧장 아래로 당긴다. 가로 방향으로는 미는 힘이 없다. 그러니 가로로는 던질 때의 그대로 — 등속, 영원히, 착지할 때까지. 세로로는 중력이 올라갈 때 속도를 깎고, 정점에서 잠깐 멈추고, 내려올 때 다시 붙인다. 가로 운동은 중력이 있는 줄도 모른다. 세로 운동은 가로 속도가 있는 줄도 모른다. 각각은 1차원 문제. 둘을 나란히 푼 다음 합치면 2차원 그림이 된다.

2

운동 방정식

발사 속도를 성분으로 나누자: vx=v0cosθvₓ = v₀ \cos θ, vy=v0sinθv_y = v₀ \sin θ. 가로 성분은 일정. 세로 성분은 매초 gg씩 줄어든다 — 아래로 향하는 일정한 의 몫: vy(t)=v0sinθgtv_y(t) = v₀ \sin θ − g·t. 한 번 적분하면 위치:

x(t) = v₀ cos θ · t
y(t) = v₀ sin θ · t − ½ g t²

이 한 쌍이 매개변수 곡선 — 시간 매개변수 tt를 공유하는 두 함수. 이 곡선의 이미지는 운동장 위에 그려진 모양, 매개변수화는 시간상의 실제 운동. 같은 이미지를 여러 매개변수화가 칠해낼 수 있다 — 곧 본다.

“한 번 적분하면 위치”라는 문구가 여기서 진짜 일을 하고 있다. 중력이 가속도를 준다. 가속도를 적분하면 속도가 되고, 속도를 적분하면 위치가 된다. 포물선은 마술이 아니다 — 변화가 두 번 쌓인 결과다. 적분 상수는 초기 조건이 정한다 — t=0t = 0에서 속도는 발사 속도 (아직 떨어지지 않았으니), 위치는 발사점 (아직 움직이지 않았으니). 두 번의 적분, 두 개의 상수, 닫힌 형식의 궤적 하나.

import math

# Two motions, independent. The horizontal one ignores gravity;
# the vertical one ignores horizontal velocity.
def position(t, v0, theta_deg, g):
    th = math.radians(theta_deg)
    x = v0 * math.cos(th) * t           # uniform velocity → linear in t
    y = v0 * math.sin(th) * t - 0.5 * g * t**2  # constant accel → quadratic
    return x, y

def velocity(t, v0, theta_deg, g):
    th = math.radians(theta_deg)
    return v0 * math.cos(th), v0 * math.sin(th) - g * t

position(0.0, 20, 45, 9.8)   # → (0.0, 0.0)         start
position(1.0, 20, 45, 9.8)   # → (14.14, 9.24)
velocity(1.0, 20, 45, 9.8)   # → (14.14, 4.34)      vy decreased
3

시간을 지우면 포물선이 보인다

x(t)=v0cosθtx(t) = v₀ \cos θ · ttt에 대해 풀면 t=x/(v0cosθ)t = x / (v₀ \cos θ). 이걸 y(t)y(t)에 넣자:

y(x) = (tan θ) · x  −  g · x² / (2 v₀² cos²θ)

이게 xx에 대한 이차식. tt에 대한 독립적인 두 선형 과정의 자취는 필연적으로 xx에 대한 이차식이 되고, 이차식의 그래프는 . 포물선은 이 운동의 이미지, 운동은 매개변수화. 이미지는 시간 축을 지운다 — 모양은 읽을 수 있지만, 공이 그 자리까지 얼마나 빠르게 갔는지는 알 수 없다.

# Eliminate t. Substitute t = x / (v0 cos θ) into y(t):
#   y = (tan θ) · x  −  g · x² / (2 v0² cos²θ)
# That's a quadratic in x — a parabola. The motion's image, with
# the time-axis collapsed.
def trajectory(x, v0, theta_deg, g):
    th = math.radians(theta_deg)
    a = -g / (2 * v0**2 * math.cos(th)**2)
    b = math.tan(th)
    return a * x**2 + b * x

trajectory(14.14, 20, 45, 9.8)  # → 9.24   (matches y from arc2 — same image)
4

아무 것도 풀지 않고 읽히는 것

식에서 네 가지가 떨어진다.

  • 정점까지의 시간. 세로 속도 vy(t)=v0sinθgtv_y(t) = v₀ \sin θ − g·t가 0이 되는 시점: t정점=v0sinθ/gt_{\text{정점}} = v_0 \sin θ / g. 이때 공이 최고점.
  • 착지까지의 시간. 대칭으로 내려오는 길은 올라간 길의 거울: t착지=2t정점t_{\text{착지}} = 2 · t_{\text{정점}}. 위젯의 통계 줄이 보여준다.
  • 사거리. R=v0cosθt착지=v02sin(2θ)/gR = v_0 \cos θ · t_{\text{착지}} = v_0^2 \sin(2θ) / g. 2θ=90°2θ = 90°, 즉 발사각 θ=45°θ = 45°에서 최대. 가장 멀리 가는 던지기는 위로 가는 힘과 앞으로 가는 힘이 정확히 반씩 나뉜 던지기.
  • 대칭. 정점은 x=R/2x = R/2. 착지 속력은 발사 속력과 같다 (같은 vxvₓ, 부호만 뒤집힌 같은 크기의 vyv_y). 공기저항이 없으면 공기에게 에너지를 잃지 않는다.
# Standard closed forms — read off the parabola without solving anything.
def t_peak(v0, theta_deg, g):
    return v0 * math.sin(math.radians(theta_deg)) / g

def t_land(v0, theta_deg, g):
    return 2 * t_peak(v0, theta_deg, g)        # symmetric flight

def range_(v0, theta_deg, g):
    return v0**2 * math.sin(math.radians(2 * theta_deg)) / g

def y_max(v0, theta_deg, g):
    return v0**2 * math.sin(math.radians(theta_deg))**2 / (2 * g)

range_(20, 45, 9.8)   # → 40.82  (max range at 45° on a flat field)
y_max(20, 45, 9.8)    # → 10.20
5

같은 이미지, 다른 운동

매개변수 곡선 모듈이 정밀하게 만든 이미지 vs 매개변수화 구분이 여기서도 그대로 적용된다. y(x)=(tanθ)xgx2/(2v02cos2θ)y(x) = (\tan θ) x − g x² / (2 v₀² \cos²θ)를 보자: 포물선 모양은 θθ와 비율 g/v02g/v₀²에만 의존한다. v0v₀gg를 알맞은 배율로 함께 키우면 같은 포물선을 다른 시간에 걸쳐 지나간다. 알맞은 속력으로 달에서 던지면 지구에서 던질 때와 모양은 똑같지만 더 느리게 — 같은 모양을 그리는 데 달의 시계는 다르게 흐르니까.

베지에 곡선, 그리고 모듈이 된 매개변수 곡선 스파이크와 똑같은 교훈: 그림은 그림이고, 그것을 칠하는 움직임은 또 다른 것. 두 매개변수화가 세세한 부분에서 모두 달라도 만들어내는 이미지는 같을 수 있다.

이제 깨봐

포물선은 공기를 무시할 때 나오는 궤적이다. 40 m/s로 던진 야구공의 레이놀즈 수는 ~10⁵; 항력은 작은 보정 정도가 아니다. 145 g 공에 2차 항력 Fd=12ρCdAv2F_d = \tfrac{1}{2} ρ C_d A v²를 넣고 같은 식을 풀면, **θ = 45°**에서 사거리가 ~163 m (진공)에서 ~98 m (공기)로 줄고, 최적 각도도 **45°**에서 **~38°**로 옮겨간다. 깔끔한 포물선은 진공에서나 나오는 모양. 실제 야외의 궤적은 그것과 닮긴 했지만, 비대칭이고, 짧게 끊긴다.

가로는 시간을 그대로 간다. 세로는 중력에 진다. 등속과 등가속이 만나 만든 두 독립된 이야기의 자취가 포물선. 모양은 레시피, 움직임은 이야기.

exercises · 손으로 풀기
1정점까지의 시간계산기 없이

공이 v0=20m/sv₀ = 20 m/s, θ=30°θ = 30°, g=10m/s2g = 10 m/s²로 발사된다. t정점t_{\text{정점}}과 최고 높이를 구하라. sin30°=1/2\sin 30° = 1/2 사용.

2사거리 공식 유도

x(t착지)=v0cosθt착지x(t_{\text{착지}}) = v_0 \cos θ · t_{\text{착지}}t착지=2v0sinθ/gt_{\text{착지}} = 2 v_0 \sin θ / g에서 R=v02sin(2θ)/gR = v₀² \sin(2θ) / g를 유도하라. 위젯에서 θ=45°θ = 45°일 때 사거리가 최대인지 확인.

3같은 이미지, 다른 시간

두 던지기가 같은 발사각 θ=45°θ = 45°를 가진다. 하나는 (v0,g)=(20,10)(v₀, g) = (20, 10), 다른 하나는 (v0,g)=(40,40)(v₀, g) = (40, 40). 둘이 같은 포물선 y(x)y(x)를 그리지만 두 번째가 시간상 더 빠르다는 것을 보여라. 어느 양이 이미지를 결정하고, 어느 양이 운동을 결정하는가?

4착지 속력

시간 계산을 전혀 하지 않고, 착지 시 공의 속력이 발사 속력 v0v₀와 같음을 논증하라. (같은 높이, 공기저항 무시.) 착지 순간 속도 벡터가 지면과 이루는 각은?

왜 교과서는 이렇게 안 가르치나

물리 입문서 대부분은 “발사된 물체는 포물선을 그린다”로 연다 — 두 가정 (공기 무시, g 상수)의 결과가 아니라 자연의 사실인 것처럼. 독자는 무엇을 내어주고 “포물선”을 얻었는지 모른 채 그 단어만 챙긴다. Lemma는 두 운동 — 수평 등속, 수직 자유낙하 — 을 끝까지 분리해 둔다. 그래서 포물선이 구호가 아니라 정리의 모습으로 도착한다. 그리고 위 counterexample이 분명히 말한다: 야외에서는 포물선이 이미 틀린 그림이다.

용어집 · 이 페이지에서 쓰임 · 4
gravity·중력
지표면 근처의 모든 물체에 작용하는 아래 방향 가속도, 질량과 무관. 해수면에서 크기는 `g ≈ 9.81 m/s²`이고, 산 위에서는 약간 작고 극지방에서는 약간 크다. 포물선 운동의 맥락에서 "중력"은 "지구 중심을 향하지만 짧은 비행에서는 *수직 아래*로 근사하는, 일정한 가속도 벡터"를 줄여 부르는 말. 질량 독립성 덕분에 진공에서 깃털과 망치가 함께 떨어지며, 이 사실이 일반 상대성이론의 실험적 씨앗.
parabola·포물선
이차방정식 `y = ax² + bx + c` (`a ≠ 0`)으로 주어지는 곡선, 또는 동치로 한 고정점 (초점)과 한 고정직선 (준선)에서 같은 거리에 있는 점들의 집합. 어떤 양이 다른 양의 *제곱*에 따라 변하는 모든 곳에 나타난다 — 포물선 운동에서는 일정한 가로 속도와 일정한 세로 가속도가 만나는 자취, 광학에서는 평행광을 한 점에 모으는 단면, 기초 대수에서는 모든 이차함수의 그래프. 포물선은 _이미지_ — 다양한 움직임이 같은 포물선을 칠할 수 있다.
velocity·속도
위치의 변화율. 벡터 — 크기 (속력)와 방향을 모두 가진다. 1차원에서 `v = dx/dt`, 2차원에서는 속도 벡터가 `(dx/dt, dy/dt)` 성분을 갖는다. 시간에 따라 변하지 않는 속도는 *균일*하다고 하며, 그때 위치는 시간에 선형. 속도가 변한다는 건 가속도가 0이 아니라는 뜻. _속력_ (수)과 _속도_ (벡터) 의 구분은 "빠르다"와 "어느 방향으로 빠르다"의 차이다.
acceleration·가속도
속도의 변화율. 역시 벡터. 1차원에서 `a = dv/dt = d²x/dt²`. 가속도가 일정하면 속도는 시간에 선형, 위치는 이차. 뉴턴의 제2법칙 `F = ma`는 힘과 가속도가 비례한다고 말하며, 질량이 변환 상수. 지표면 근처에서 자유낙하하는 _어떤_ 물체든 가속도는 거의 일정하고, 그 값은 *물체의 질량과 무관*하다 — 한 숫자로 다 대신할 수 있다.