회전하는 공은 왜 휘어지는가 — 마그누스 효과와 순환
스핀 하나가 공의 궤적을 바꾸는 원리를 순환으로 푼다
1742년, 영국의 벤저민 로빈스는 이상한 것을 보고 있었다. 머스킷 총알이 곧게 날아가지 않았다. 같은 총, 같은 화약, 같은 조준인데 어떤 탄은 왼쪽으로, 어떤 탄은 오른쪽으로 휘었다. 그는 총구를 빠져나온 둥근 탄이 제멋대로 회전하고 있다는 데 주목했다. 회전과 휘어짐. 두 현상은 짝지어 나타났다.
이 관찰은 100년 뒤 독일 물리학자 구스타프 마그누스의 실험으로 정리된다. 회전하는 물체가 유동 속에서 옆으로 밀리는 현상. 오늘은 그 옆 방향 힘이 어디서 나오는지를 순환(circulation)이라는 하나의 양으로 따라간다.
휘어지는 포탄이라는 오래된 골칫거리#
로빈스 이전에도 포병들은 알고 있었다. 대포알은 표적을 비껴간다. 바람 탓만은 아니었다. 주조 공정의 공차 때문에 포신과 포환 사이에 틈(당시 용어로 windage)이 있었고, 발사 순간 포환은 포신 벽을 튕기며 예측 불가능한 회전을 얻었다. 그 회전이 비행 중 궤적을 휘게 했다.
문제는 심각했다. 탄도학은 국가의 생존이 걸린 계산이었다. 뉴턴은 『프린키피아』에서 포물선 궤적을 유도했지만, 실제 탄은 포물선을 벗어났다. 로빈스는 그 이탈의 일부가 공기저항이고, 일부는 회전임을 실험으로 갈라냈다.
핵심 질문은 이것이다. 왜 회전이 옆 방향 힘을 만드는가.
옆으로 미는 힘은 순환에서 나온다#
먼저 힘의 크기부터 보자. 회전하는 원통이 속도 의 균일류 안에 놓였을 때, 단위 길이당 받는 옆 방향 힘은 놀랍도록 단순하다.
여기서 는 유체 밀도, 는 자유류 속도, 는 순환이다. 이 관계를 쿠타–주코프스키 정리(Kutta–Joukowski theorem)라 부른다. 양력은 오직 순환에만 비례한다. 물체 모양은 순환을 얼마나 만드느냐로만 개입한다.
순환은 닫힌 경로를 따라 속도를 적분한 양이다.
는 유속, 은 경로 접선 방향 미소 벡터다. 순환이 0이 아니면 물체 주위를 도는 알짜 회전 흐름이 있다는 뜻이다. 회전하는 반지름 , 각속도 의 원통은 표면이 유체를 끌어 이 알짜 흐름을 만든다.
방향은 벡터곱으로 정해진다.
는 회전 각속도 벡터다. 이 식이 뒤에서 강선의 비밀을 풀 열쇠가 된다.
회전이 순환을 만드는 진짜 이유#
순환은 왜 생기나. 답은 점성과 점착 조건(no-slip condition, 벽에서 유체 속도가 벽 속도와 같아짐)에 있다.
회전하는 공의 한쪽 면은 유동과 같은 방향으로 돌고, 반대쪽 면은 유동을 거슬러 돈다. 유동과 같이 도는 쪽에서는 표면이 경계층을 밀어줘 흐름이 더 늦게 떨어진다(박리 지연). 거슬러 도는 쪽에서는 흐름이 일찍 떨어진다. 결과적으로 후류가 한쪽으로 휜다.
후류가 아래로 휘면, 유체는 아래 방향 운동량을 얻는다. 반작용으로 공은 위로 밀린다. 이것이 마그누스 힘의 본질이다. 공이 흐름을 한쪽으로 꺾고, 그 대가로 반대쪽 힘을 받는다.
아래 시뮬레이션에서 직접 파라미터를 조작해보자.
스핀을 0에서 백스핀 쪽으로 올리면 위아래 유선이 비대칭이 된다. 위쪽 유선이 촘촘해지고(빨라지고) 정체점이 아래로 밀려 내려간다. 이때 마그누스 힘 화살표가 위를 향한다. 스핀을 반대로 뒤집으면 힘도 뒤집힌다.
얼마나 휘느냐는 스핀 비가 정한다#
레이놀즈 수는 잠시 접어두자. 마그누스 효과의 세기를 지배하는 무차원수는 스핀 비(spin ratio)다.
분자는 표면 속도, 분모는 자유류 속도다. 는 "공 표면이 바람보다 몇 배 빠르게 도는가"를 뜻한다. 가 커질수록 순환이 커지고 양력계수도 커진다. 야구 커브볼은 대략 , 축구 무회전킥의 반대편인 강한 감아차기는 그보다 높다.
간단한 2차원 비행을 적분해 궤적을 그려보자. 항력과 마그누스 힘만 넣는다.
import numpy as np
def magnus_trajectory(u0, spin, cm=0.16, cd=0.006, dt=0.012, steps=900):
# 위에서 내려다본 평면. x는 전진, y는 옆 방향.
pos = np.array([0.0, 0.0])
vel = np.array([u0, 0.0]) # 처음엔 곧게 발사
path = [pos.copy()]
for _ in range(steps):
sp = np.hypot(*vel) + 1e-9
# 마그누스: 속도에 수직 (-vy, vx), 부호는 스핀이 결정
a_magnus = cm * spin * np.array([-vel[1], vel[0]])
a_drag = -cd * sp * vel # 항력: 속도 반대 방향
vel = vel + (a_magnus + a_drag) * dt
pos = pos + vel * dt
path.append(pos.copy())
if pos[0] > 30:
break
return np.array(path)
for s in (0.0, 1.0, 2.0):
p = magnus_trajectory(14.0, s)
print(f"spin={s}: 옆 방향 이탈 = {p[-1, 1]:6.2f} m")
# spin=0.0: 옆 방향 이탈 = 0.00 m
# spin=1.0: 옆 방향 이탈 = 3.71 m
# spin=2.0: 옆 방향 이탈 = 6.90 m스핀이 2배가 되어도 이탈이 정확히 2배는 아니다. 궤적이 휘면 속도 방향이 바뀌고, 그러면 힘의 방향도 계속 회전하기 때문이다. 비선형이다.
아래에서 스핀을 좌우로 쓸어보자.
스핀을 왼쪽 끝에서 오른쪽 끝으로 옮기면 파란 궤적이 점선(무회전 기준선)을 기준으로 반대편으로 뒤집힌다. 발사 속도를 낮추면 같은 스핀에서도 더 크게 휜다. 표면 속도가 상대적으로 커져 가 오르기 때문이다.
강선이라는 거꾸로 된 해법#
여기서 역설이 등장한다. 로빈스가 찾은 해법은 회전을 없애는 게 아니라, 회전을 통제하는 것이었다. 총신 안에 나선 홈(강선, rifling)을 파서 탄이 비행 방향 축을 중심으로 돌게 만든다.
왜 이게 통하나. 마그누스 힘은 에 비례한다. 강선이 주는 회전축은 비행 방향, 즉 가 와 나란하다. 두 벡터가 평행하면 벡터곱은 0이다. 옆 방향 힘이 사라진다.
동시에 이 축 회전은 팽이처럼 자이로스코프 안정성을 준다. 탄이 제멋대로 뒤집히며 얻던 무작위 스핀을 하나의 정해진 축으로 묶어버린다. 무작위 마그누스가 사라지고 탄은 곧게 난다. 회전을 없애서가 아니라, 회전을 옆 방향 힘이 0이 되는 각도로 정렬해서 이긴 것이다.
현상이 말해주는 것#
마그누스 효과의 본질은 한 줄로 줄어든다. 회전이 흐름을 한쪽으로 꺾고, 꺾인 운동량의 반작용이 옆 방향 힘이 된다. 양력은 물체 모양이 아니라 순환이 만든다.
기억을 실험실 노트로 옮긴다면 세 가지다. 첫째, — 옆 힘은 순환에만 비례한다. 둘째, 세기는 레이놀즈가 아니라 스핀 비 가 정한다. 셋째, 가 0이 되는 정렬(강선)은 바로 그 힘을 지운다. 로빈스가 총알에서 본 것과 축구공이 골문 앞에서 휘는 것은 같은 방정식의 두 얼굴이다.
도움이 됐다면 공유해주세요.