1.1.2 — 구속조건과 배위공간: 拘束 의 식이 잘라낸 새 무대

단진자의 추는 R3\mathbb R^3 안에 자유롭게 살지 않는다. 길이 \ell 인 원 위에 갇혀 있다. 拘束 의 식이 R3N\mathbb R^{3N} 의 어떤 부분집합 — 배위공간 — 을 잘라내는가, 그리고 그 부분집합 위에서 좌표는 어떻게 잡히는가.

본문이 말하는 것

원서 1.1.2 절은 구속조건 (拘束条件) 이 있는 계의 무대를 다음과 같이 설정한다. NN 개 질점의 위치 (x1,,xN)R3N(\mathbf{x}_1, \dots, \mathbf{x}_N) \in \mathbb R^{3N} 중, kk 개의 식

fα(x1,,xN,t)=0(α=1,,k)f_\alpha(\mathbf{x}_1, \dots, \mathbf{x}_N, t) = 0 \quad (\alpha = 1, \dots, k)

을 동시에 만족하는 점들만 운동의 후보다. 이 식들을 만족하는 점들의 집합이 배위공간 (配位空間) QQR3N\mathbb R^{3N}(3Nk)(3N-k) 차원 부분다양체다. n:=3Nkn := 3N - k 는 계의 자유도 (degrees of freedom).

배위공간 위의 한 점을 nn 개의 실수로 표현하는 좌표 q1,,qnq^1, \dots, q^n일반화 좌표 라 한다. 즉

xi=xi(q1,,qn,t)\mathbf{x}_i = \mathbf{x}_i(q^1, \dots, q^n, t)

이 사상이 QQ 의 한 점을 R3N\mathbb R^{3N} 의 한 점으로 옮긴다.

구속조건은 두 종류로 나뉜다.

  • 홀로노믹 (holonomic): 식이 좌표·시간만의 함수, 위처럼 fα(x,t)=0f_\alpha(\mathbf{x}, t) = 0 의 꼴.
  • 비홀로노믹 (non-holonomic): 속도 x˙i\dot{\mathbf{x}}_i 도 식에 들어가는 꼴 (1.1.2 의 범위 밖).

또 시간 의존 여부로 다시 두 종류 — 스클레로노믹 (scleronomic, 시간 무관) 과 레오노믹 (rheonomic, 시간 의존). 본 절은 두 경우 모두 다룬다.

한 번 더, 천천히

세 가지 예시로 배위공간이 무엇인지 손에 잡아 두자.

(a) 단진자. 길이 \ell 의 막대 끝에 질점 1 개. R3\mathbb R^3 의 좌표로 적으면 x=(x,y,z)\mathbf{x} = (x, y, z). 구속조건은

f(x)=x2+y2+z22=0f(\mathbf{x}) = x^2 + y^2 + z^2 - \ell^2 = 0

(피벗을 원점에 둠.) 또한 평면 운동을 가정하면 z=0z = 0 한 식 더. 두 식 → k=2k = 2, n=32=1n = 3 - 2 = 1. 배위공간은 S1S^1 한 개. 일반화 좌표는 각도 θ\theta 하나, x(θ)=(sinθ,cosθ,0)\mathbf{x}(\theta) = (\ell \sin\theta, -\ell \cos\theta, 0).

(b) 이중진자. 추 2 개, 각 추가 길이 1\ell_1, 2\ell_2 의 막대에 매달림. 평면운동. 구속조건 4 개 (각 추마다 거리 1, z=0z=0 1). N=2N = 2, k=4k = 4, n=64=2n = 6 - 4 = 2. 배위공간은 두 각도 (θ1,θ2)(\theta_1, \theta_2) 가 사는 원환면 T2=S1×S1T^2 = S^1 \times S^1.

(c) 비드 on a wire. 곡선 γ\gammaR3\mathbb R^3 안에 박혀 있고, 비드는 그 위에서만 움직임. 구속조건은 곡선 자체 (2 개의 식 — 곡선이 R3\mathbb R^3 의 2-codim). n=32=1n = 3 - 2 = 1. 배위공간은 곡선 그 자체 — 호의 길이 ss 가 일반화 좌표.

세 경우 모두 R3N\mathbb R^{3N}모든 점이 가능한 것이 아니라, 낮은 차원의 부드러운 부분집합 만이 허용된다. 그 부분집합이 가진 모양 — 원이냐, 원환면이냐, 곡선이냐 — 이 운동방정식이 살아갈 무대다.

배위공간이 평면이 아니라는 사실은 1.1.4 의 형식적 결과로도, 1.2 의 곡면 해석으로도, 1.4 의 다양체 정의로도 다시 등장한다. 1.1.2 는 그 출발점만 박는다.

파이썬으로 확인 — 단진자의 배위공간 한 점에서

이 코드의 메시지는 단순하다: 일반화 좌표 θ\theta 하나만으로 R3\mathbb R^3 의 어디에 추가 있는지 완전히 결정된다 — 그리고 그 점은 항상 구속조건을 만족한다. 즉 일반화 좌표 위에서 사는 한, fα=0f_\alpha = 0 을 따로 강제할 필요가 없다.

# 단진자의 배위공간: 원 S^1, 일반화 좌표 theta 하나
# 임의의 theta 들에서 R^3 의 위치를 계산하고, 구속조건 f = |x|^2 - ell^2 가 자동으로 0 임을 본다.
import numpy as np

ell = 1.0
thetas = np.linspace(0, 2 * np.pi, 100, endpoint=False)

x = ell * np.sin(thetas)
y = -ell * np.cos(thetas)
z = np.zeros_like(thetas)

# 구속조건 f = x^2 + y^2 + z^2 - ell^2
f = x**2 + y**2 + z**2 - ell**2

print(f"theta 의 점 수: {len(thetas)}")
print(f"max |f| = {np.max(np.abs(f)):.2e}")  # 기계 엡실론 (~1e-16)
print(f"R^3 차원: 3, 구속식 수: 2 (|x|=ell, z=0), 자유도 n = 3 - 2 = 1")

이 결과는 일반화 좌표가 주어졌을 때, 그 좌표를 통해 얻은 R3\mathbb R^3 점이 구속을 자동 만족함을 보인다. 운동방정식을 일반화 좌표로 다시 적으면 구속식 fαf_\alpha 가 더 이상 식의 일부 가 아니다 — 1.1.4 의 핵심 결과를 미리 맛본 셈이다.

다음 절(1.1.3)로 가는 다리

구속조건은 모양 (배위공간) 만 정의하지 않는다. 단진자가 원 위에 머물러 있으려면 어떤 힘 이 막대를 통해 추에 작용해야 한다 — 그 힘이 얼마인지는 풀어야 할 미지수다. 이 미지의 힘이 1.1.3 의 구속력 이다. 다랑베르의 영리한 처방은 그것을 직접 풀지 않고 우회한다.