Tensors

텐서

선형변환은 텐서들과 어떻게 다르며, 왜 선형 대수학에서 배우는 벡터와 행렬과 같은 개념들보다 덜 친숙한가? - Quora.com에 올라온 질문 중에 하나인데, 이 구글링을 통해 알게 되었다. 역시 검색 이유는 우리 아이에게 선형변환을 설명하면서, 폼 잡느라 "네가 텐서를 알아?"라고 하면서 부터다. 수학적 계산으로써의 텐서는 공학에서는 꽤 한다고 생각하는 필자로써는 자존심 상하는 일이었다. 사실 박사과정 시절에 이미 텐서에 대해서는 NASA의 보고서(Kolecki, 2002; 이 논문을 한글로 풀어 설명한 블로그도 있다.)를 읽고 많이 깨우쳤다고 생각했는데 아직 멀었다고 생각한다. 이 글을 적는 이유는 Quora.com에서의 설명이 영어로 되어 있기도 하고, 필자도 정리할 필요가 있어서이다. 

The definition of a tensor: A tensor is any multilinear map from a vector space to a scalar field

텐서란 벡터 공간을 스칼라 장으로 변환하는 모든 다중선형변환이다. 

이 정의는 William Oliver라는 사람의 개인적인 생각이다. 텐서라는 것이 실체적으로 무엇인지 이해하는 관점에서 바라보면 저 표현도 맞다고 할 수 있으며, 필자를 포함하여 많은 이들이 텐서를 쉽게 설명하기 위해서 벡터를 일반화한 것이라고 설명하는 것도 사실이다. 그는 텐서를 변환의 관점에서 보았는데, 실제 고등수학책에서 정의하는 텐서는 보다 광범위하고 간결하다. (수학적으로는 더 자세한 규칙이 따라 붙는데, 개념적으로 어려운 것은 없다.)

텐서란 좌표변환(다중선형변환)이 가능한 모든 양들을 이라고 정의한다. 

이때 필요한 좌표변환의 횟 수만큼 텐서의 계급(rank)이 정해지는데, 0번 필요하면 0차 텐서, 1번이면 1차 텐서, 2번이면 2차 텐서, n번 필요하면 n차 텐서이다. 

텐서가 단순한 행렬이 아닌 이유를 이해하기 위해서는 다이아드(dyad)를 알아야 한지만, 우선은 윌리엄을 설명을 따라가 보자. 그는 벡터 내적공간을 소개하면서 내적은 단순 숫자 배열의 연산이 아닌, 기하학적 연산(a geometrical operation)임을 강조한다. 따라서 텐서에 대한 한 조각의 힌트는 내적연산 자체라는 것이며, 이것이 텐서의 한 예라고 설명한다. 그러면서 내적의 또 다른 이름은 쌍선형사상(bilinear map)이라며, 내적의 분배법칙과 결합법칙을 소개하고, 쌍선형사상의 한 예임을 보인다. 그리고 임의의 두 벡터를 가지고 내적연산을 보여준다.

단위 벡터들을 첨자 형태로 표현하면 메트릭 텐서를 볼 수 있다. 아래와 같은 식이기 때문에, 윌리엄은 텐서가 내적 그 자체라고 말한 듯 하다.

그는 위의 식에서 단위벡터들에 대한 내적을 계산하는 것으로 벡터 x와 y의 내적을 계산할 수 있다고 한다. 만약 단위벡터들의 내적이 1 또는 0 이 아닌 다른 값을 가진다면, 일반 텐서(general tensor)의 내적이다.  벡터의 내적으로도 텐서는 만들어지지만, 벡터와 벡터의 연산으로도 만들어진다. 이것이 텐서를 아는 이들에게 윌리엄의 설명이 혼란스럽게 다가오는 이유이다.  왜냐하면 메트릭 텐서(metric tensor)가 2차 텐서의 대표성을 가진다고 말하기는 어렵기 때문이다. 다이아드  개념을 도입한다면, 두 벡터의 곱으로도 (이때 곱은 내적도 외적도 아닌 곱, dyad product) 2차 텐서를 표현할 수 있다. 이 때는 단위벡터들의 내적이 아닌 새로운 곱으로 표현한다.

여기서 C는 2차 텐서이며, 기저는 두 기저 벡터들의 다이어드 곱이다. 구성성분과 더불어 기저벡터들에도 텐서곱이 적용됨에 유의하자. 기저벡터들이 단위벡터인 경우에는 Cij가 바로 2x2 행렬이 된다. 따라서 벡터의 내적은 텐서의 이중 내적 연산으로 아래와 같이 계산할 수 있다. 이렇게 보면 텐서를 일반화 한게 벡터라는 설명도 언듯 말이 되는듯 하지만, 그 역도 참이 아닐까? 윌리엄도 말했듯이 그의 설명은 하나의 피셜이고, 아직 완결하지는 못했다고 했으므로 ... , 그럼에도 불구하고 필자가 그의 설명을 소개한 이유는 그의 설명이 참신했기 때문이다.

Covariant vs contravariant quantities

Whichever one represents something which physically exists, e.g. the position of a planet, is always considered to be the contravariant tensor,  while whichever one represents an imagined quantity is covariant (e.g. basis vectors. You don’t see basis vectors floating around peoples heads in the real world). 

그래서 

모든 벡터가 텐서는 아니다?