6.126 텐서 표기법과 아인슈타인 합산 규약
1. 개요
텐서 해석에서 표기법(notation)의 선택은 수식의 간결성과 가독성에 결정적 영향을 미친다. 아인슈타인 합산 규약(Einstein summation convention)은 반복 지표에 대한 합산 기호를 생략함으로써 텐서 표현을 대폭 간소화한다. 본 절에서는 텐서 지표 표기법의 기본 규칙과 아인슈타인 합산 규약을 엄밀히 서술하고, 로봇공학에서 자주 등장하는 수식에의 적용을 다룬다.
2. 지표 표기법의 기본 규칙
2.1 상첨자와 하첨자
텐서 해석에서 지표의 위치는 텐서의 유형을 결정한다.
- 상첨자(superscript): 반변(contravariant) 지표를 나타낸다.
- 하첨자(subscript): 공변(covariant) 지표를 나타낸다.
예를 들어, 반변 벡터는 v^i, 공변 벡터는 w_i, 혼합 텐서는 T^i{}_j로 표기한다.
2.2 자유 지표와 더미 지표
자유 지표(free index): 등식의 양변에 동일하게 나타나는 지표로, 해당 지표의 가능한 모든 값에 대해 등식이 성립함을 의미한다.
a^i = T^i{}_j \, b^j
위 식에서 i는 자유 지표이다. n차원 공간에서 이 식은 n개의 방정식을 나타낸다.
더미 지표(dummy index): 합산이 수행되는 지표로, 한 항 내에서 상첨자와 하첨자 각각 한 번씩 나타난다. 더미 지표의 문자는 임의로 바꿀 수 있다.
T^i{}_j \, b^j = T^i{}_k \, b^k
2.3 지표 표기법의 규칙 요약
| 규칙 | 설명 |
|---|---|
| 자유 지표 균형 | 등식의 모든 항에서 자유 지표는 동일한 위치(상/하)에 동일한 문자로 나타나야 한다 |
| 더미 지표 쌍 | 더미 지표는 반드시 하나는 상첨자, 하나는 하첨자로 나타나야 한다 |
| 지표 반복 제한 | 한 항에서 동일 지표가 3번 이상 나타날 수 없다 |
| 문자 치환 | 더미 지표의 문자는 자유 지표 및 다른 더미 지표와 충돌하지 않는 한 자유롭게 변경할 수 있다 |
3. 아인슈타인 합산 규약
3.1 정의
아인슈타인 합산 규약은 다음과 같다.
한 항 내에서 동일한 지표가 상첨자와 하첨자에 각각 한 번씩 나타나면, 해당 지표에 대해 전체 범위의 합산이 수행되는 것으로 간주한다.
즉, 합산 기호 \sum을 생략한다.
a_i b^i \equiv \sum_{i=1}^{n} a_i b^i
3.2 예시
내적(inner product):
합산 규약 적용 전:
\mathbf{a} \cdot \mathbf{b} = \sum_{i=1}^{n} a_i b^i
합산 규약 적용 후:
\mathbf{a} \cdot \mathbf{b} = a_i b^i
행렬-벡터 곱:
c^i = A^i{}_j \, b^j
이는 다음과 동치이다.
c^i = \sum_{j=1}^{n} A^i{}_j \, b^j
행렬 곱:
C^i{}_j = A^i{}_k \, B^k{}_j
이는 다음과 동치이다.
C^i{}_j = \sum_{k=1}^{n} A^i{}_k \, B^k{}_j
대각합(trace):
\text{tr}(A) = A^i{}_i = \sum_{i=1}^{n} A^i{}_i
4. 로봇공학 수식에의 적용
4.1 운동 에너지
로봇의 운동 에너지를 지표 표기법으로 나타내면 다음과 같다.
K = \frac{1}{2} M_{ij} \, \dot{q}^i \, \dot{q}^j
여기서 M_{ij}는 질량 행렬(관성 행렬)의 (i,j) 성분이고, \dot{q}^i는 일반화 속도의 i번째 성분이다. 합산 규약에 의해 i와 j 모두에 대해 합산이 수행된다.
4.2 오일러-라그랑주 방정식
M_{ij} \, \ddot{q}^j + \Gamma_{ijk} \, \dot{q}^j \, \dot{q}^k + g_i = \tau_i
여기서 \Gamma_{ijk}는 크리스토펠 기호(Christoffel symbol)로, 다음과 같이 정의된다.
\Gamma_{ijk} = \frac{1}{2}\left(\frac{\partial M_{ij}}{\partial q^k} + \frac{\partial M_{ik}}{\partial q^j} - \frac{\partial M_{jk}}{\partial q^i}\right)
합산 규약에 의해 j와 k에 대한 이중 합산이 수행되며, i는 자유 지표이다.
4.3 관성 텐서의 변환
물체 좌표계에서 공간 좌표계로의 관성 텐서 변환은 다음과 같다.
I'^{ij} = R^i{}_k \, R^j{}_l \, I^{kl}
여기서 R^i{}_j는 회전 행렬의 성분이고, k와 l은 더미 지표이다.
4.4 교차곱과 레비-치비타 기호
벡터의 교차곱은 레비-치비타 기호 \epsilon_{ijk}를 사용하여 다음과 같이 표현된다.
(\mathbf{a} \times \mathbf{b})^i = \epsilon^i{}_{jk} \, a^j \, b^k
이 표현에서 j와 k는 더미 지표이며, 이중 합산이 수행된다.
5. 크로네커 델타와 합산 규약
크로네커 델타 \delta^i{}_j는 합산 규약과 결합하여 지표 치환의 역할을 한다.
\delta^i{}_j \, v^j = v^i
\delta^i{}_j \, T^{jk} = T^{ik}
이 성질은 항등 행렬의 작용과 동일하다.
6. 합산 규약 사용 시 주의사항
6.1 지표 충돌
서로 다른 합산이 동일한 문자를 사용하면 지표 충돌(index clash)이 발생한다. 이 경우 더미 지표의 문자를 바꾸어야 한다.
잘못된 표현:
A^i{}_j \, B^j{}_k \, C^j{}_l \quad (\text{지표 } j \text{가 3번 등장})
올바른 표현:
A^i{}_j \, B^j{}_k \, C^m{}_l
6.2 유클리드 공간에서의 단순화
직교 좌표계의 유클리드 공간에서는 g_{ij} = \delta_{ij}이므로 반변/공변의 구분이 불필요하다. 이 경우 모든 지표를 하첨자로 통일하여 사용할 수 있다.
a_i b_i = \sum_{i=1}^{n} a_i b_i
로봇공학의 대다수 응용에서는 유클리드 공간과 직교 좌표계를 사용하므로, 이 단순화가 빈번히 적용된다. 다만 일반 좌표계나 곡면 위의 운동을 다룰 때에는 엄밀한 반변/공변 구분이 필요하다.
6.3 행렬 표기법과의 대응
지표 표기법과 행렬 표기법의 대응 관계를 정리하면 다음과 같다.
| 지표 표기법 | 행렬 표기법 | 의미 |
|---|---|---|
| a_i b^i | \mathbf{a}^T \mathbf{b} | 내적 |
| A^i{}_j b^j | \mathbf{A}\mathbf{b} | 행렬-벡터 곱 |
| A^i{}_k B^k{}_j | \mathbf{A}\mathbf{B} | 행렬 곱 |
| A^i{}_i | \text{tr}(\mathbf{A}) | 대각합 |
| a^i b_j | \mathbf{a}\mathbf{b}^T | 외적(outer product) |
| A^i{}_j B^j{}_i | \text{tr}(\mathbf{A}\mathbf{B}) | 프로베니우스 내적 |
7. 참고 문헌
- Borisenko, A. I., & Tarapov, I. E. (1968). Vector and Tensor Analysis with Applications. Dover Publications.
- Simmonds, J. G. (1994). A Brief on Tensor Analysis. 2nd ed., Springer.
- Goldstein, H., Poole, C., & Safko, J. (2002). Classical Mechanics. 3rd ed., Addison-Wesley.
- Featherstone, R. (2008). Rigid Body Dynamics Algorithms. Springer.
- Itskov, M. (2013). Tensor Algebra and Tensor Analysis for Engineers. 4th ed., Springer.
v 0.1