1.3.1 — 곡면 위의 벡터: 점마다 자기 벡터공간을 갖는 규칙

R3\mathbb R^3 의 벡터는 어디로 평행이동해도 같다. 곡면의 벡터는 점마다 다른 벡터공간 에 산다. 좌표 변환에서 그 성분이 어떻게 변하는가 — 반변 변환 규칙을 박는 자리.

본문이 말하는 것

곡면 SS 위 점 pp접공간 TpST_p S 는 1.2.1 에서 정의됐다: R3\mathbb R^3 의 벡터 중 ru(p)\mathbf{r}_u(p), rv(p)\mathbf{r}_v(p) 두 벡터의 선형결합 전부. 이 접공간의 원소가 접벡터 다. 점 pp 가 바뀌면 접공간도 바뀐다 — 같은 화살표라도 서로 다른 점에서는 다른 벡터 다.

좌표 (u,v)(u, v) 의 접공간 기저는 {ru,rv}\{\mathbf{r}_u, \mathbf{r}_v\}. 그래서 접벡터 XTpS\mathbf{X} \in T_p S 는 두 성분으로

X=Xuru+Xvrv=Xiri(i{u,v})\mathbf{X} = X^u\, \mathbf{r}_u + X^v\, \mathbf{r}_v = X^i\, \mathbf{r}_i \quad (i \in \{u, v\})

(아인슈타인 합 규약.) 위 첨자 XiX^i반변 (contravariant) 성분.

좌표를 (u,v)(u', v') 로 바꾸면 새 기저는 ri=r/ui\mathbf{r}_{i'} = \partial \mathbf{r} / \partial u^{i'}. 연쇄율로

ri=ujuirj\mathbf{r}_{i'} = \frac{\partial u^j}{\partial u^{i'}}\, \mathbf{r}_j

같은 벡터 X\mathbf{X} 가 두 좌표계에서 같은 기하학적 대상이어야 하므로 Xiri=XiriX^i \mathbf{r}_i = X^{i'} \mathbf{r}_{i'}. 위 식을 대입하면 성분 변환

Xi=uiujXjX^{i'} = \frac{\partial u^{i'}}{\partial u^j}\, X^j

이게 반변 변환 규칙. 기저는 자코비안 uj/ui\partial u^j / \partial u^{i'} 로, 성분은 그 자코비안 ui/uj\partial u^{i'} / \partial u^j 로 변환된다 — 이 역방향 변환이 “반변” 의 이름이다.

한 번 더, 천천히

(1) 점마다 다른 벡터공간이라는 발상. R3\mathbb R^3 안에서는 한 벡터의 평행이동이 자명하다 — 그러나 곡면 위에서는 자명하지 않다. 적도의 동쪽 화살표를 북극으로 가져가면 어느 방향 인가? 1.3.3 의 평행이동 이 그 질문에 답한다. 현재는 점마다의 벡터공간 만 인식한다.

(2) 변환의 수동성. 위 변환식은 좌표를 바꾼 사람 의 시점에서 본 성분 변화다. 벡터 X\mathbf{X} 자체는 변하지 않는다 — 성분의 좌표 표현 만 변한다. 이 차이가 텐서 어휘 (1.3.2) 의 출발점.

(3) 1.4 의 좌표-자유 정의를 위한 준비. 1.4 의 다양체에서는 ru\mathbf{r}_u, rv\mathbf{r}_v접벡터의 정의가 아니라 좌표 기저의 표현이다. 접벡터 자체는 곡선의 동치류 또는 방향미분 작용소 로 정의된다. 1.3.1 의 임베딩-의존 정의는 직관용 발판.

파이썬으로 확인 — 구면의 두 좌표계 사이 반변 변환

이 코드의 메시지는 단순하다: 구면 적도 위 한 벡터를 (a) 구면좌표 (θ,ϕ)(\theta, \phi) 의 성분, (b) 스테레오 투영 좌표 (X,Y)(X, Y) 의 성분 으로 적었을 때, 두 성분이 정확히 자코비안으로 묶임을 본다.

# 구면 (반지름 1) 위 한 점 p = (1, 0, 0) (적도, φ=0).
# 그 점에서 동쪽 방향 접벡터 X = (0, 1, 0) (즉 ∂/∂φ 방향).
# (a) (θ, φ) 좌표: X = X^θ ∂_θ + X^φ ∂_φ → X^θ = 0, X^φ = 1
# (b) 적도 부근의 스테레오 투영 (북극 기준): u = x/(1-z), v = y/(1-z)
#     p 에서 (u, v) = (1, 0). du/dφ, dv/dφ 자코비안.
import numpy as np

# (b) 좌표 변환 자코비안 (θ=π/2, φ=0 에서)
# x = sin θ cos φ → ∂x/∂φ = -sin θ sin φ = 0 (at φ=0)
# y = sin θ sin φ → ∂y/∂φ = sin θ cos φ = 1
# z = cos θ → ∂z/∂φ = 0
# 그래서 ∂(x, y, z)/∂φ = (0, 1, 0).
# u = x/(1-z), v = y/(1-z) at z=0: u = x, v = y.
# ∂u/∂φ = ∂x/∂φ = 0, ∂v/∂φ = ∂y/∂φ = 1.
# 그래서 변환된 성분 (X^u, X^v) = (0, 1).
print("(θ, φ) 좌표:  X^θ = 0, X^φ = 1")
print("(u, v) 스테레오:  X^u = 0, X^v = 1")

# 검증: ∂(u, v)/∂φ · (X^φ) 가 (X^u, X^v) 와 같은지
Jacobian_phi = np.array([0.0, 1.0])  # ∂(u,v)/∂φ at (π/2, 0)
X_phi_old = np.array([0.0, 1.0])     # 원좌표 성분 (X^θ, X^φ)
# 새 성분 = J · X_old (한 변수만 활성이라 단순화)
X_new = X_phi_old[1] * Jacobian_phi  # X^u, X^v
print(f"자코비안으로 계산:  (X^u, X^v) = {X_new}")

이 결과는 반변 변환 규칙이 단순한 다변수 미적분의 연쇄율 임을 보여 준다. 1.3.2 의 텐서가 이 규칙의 일반화다.

다음 절(1.3.2)로 가는 다리

벡터가 반변 으로 변한다면, 그것의 쌍대 — 1-형식 — 은 공변 으로 변한다. 그리고 둘을 결합한 텐서 는 두 변환 규칙을 동시에 가진다. 1.3.2 는 그 일반화를 한 자리에 정리해, 미터 gijg_{ij} 가 (0, 2)-텐서, 크리스토펠 Γijk\Gamma^k_{ij}텐서가 아니다는 핵심 사실을 박는다.