テンソルの定義
ベクトル空間$V$上の線形関数もまたベクトル空間を構成し,それを$V$の双線形空間と呼ぶのであった。
また,ベクトル空間$U$と$V$の元,$u,u'\in U$,$v,v'\in V$に対し
- $B(ax+bx',y)=aB(x,y)+bB(x',y)$
- $B(x,ay+by')=aB(x,y)+bB(x,y')$
を満たす$V\times U$上の線形関数(双線形関数)の全体も,ベクトル空間を構成するのであった。
これの引数の数を任意の数に一般化したものを多重線形関数(multilinear function)という。
多重線形関数の重要な例として,次のような量を導入できる:
定義:
\label{def:covariant_tensor}
ベクトル空間$V$の$r$個のベクトルから実数を与える多重線形関数
\begin{equation}
T:
\underbrace{V\times V \times \cdots \times V}_{r} \to R
\end{equation}
を,$r$階の共変テンソル(covariant tensor of rank $r$)という。
また,これが形成するベクトル空間を
\begin{equation}
\underbrace{V^* \otimes V^* \otimes \cdots \otimes V^*}_{r}
\end{equation}
のように記し,双対空間$V^*$のテンソル積(tensor product)と呼ぶ。
同じものを,$V^{(0,r)}$や$\otimes^r V^*$や$L^r(V)$のように記すこともある。
このとき,ベクトル空間$V$の次元を$n$とすると,$n^r$個のテンソル積
\begin{equation}
\bm{e}^{i_1} \otimes \cdots \otimes \bm{e}^{i_r}
\
(1\leq i_1,i_2...i_r\leq n)
\end{equation}
が,このベクトル空間の基底を作る。
単純な例として,$V^*$の2つの元$\alpha,\beta \in V^*$から
\begin{equation}
\alpha \otimes \beta (\bm{u},\bm{v})
\equiv
\alpha (\bm{u})\beta (\bm{v})
\end{equation}
によって2階の共変テンソル$\alpha \otimes \beta$を作ることができる。
議論を逆戻りすれば,$R$上のベクトル空間$V$の双対空間$V^*$の元である共変ベクトルは,1つのベクトルを実数に写すから1階の共変テンソルである。
テンソルの成分
$V$上で基底$\{ \bm{e}_i \}_{i=1}^n$が定まっている場合,$r$階の共変テンソル$T$は
\begin{equation}
\label{eq:r-tensor_operation}
\begin{split}
T(\underbrace{\bm{u},\bm{v},...,\bm{w}}_{r})
=&
T(u^{i}\bm{e}_{i},v^{j}\bm{e}_{j},...,w^{k}\bm{e}_{k}) \\
=&
u^{i}v^{j}...w^{k}
T(\bm{e}_{i},\bm{e}_{j},...,\bm{e}_{k})
\end{split}
\end{equation}
となる。
ここで,$T$の成分についても,ベクトルの場合の自然な拡張として
\begin{equation}
T_{i,j,...,k}
\equiv
T(\bm{e}_i,\bm{e}_j,...,\bm{e}_k)
\end{equation}
と定義すると(\ref{eq:r-tensor_operation})は
\begin{equation}
\label{eq:r-tensor_operation2}
T(\bm{u},\bm{v},...,\bm{w})
=
T_{ij,...,k}u^i v^j,...,w^k
\end{equation}
と表現できる。
$T_{ij,...,k}$は基底の取り方に依存するが,(\ref{eq:r-tensor_operation2})の左辺はスカラー(実数)であり,基底によらない。
例:
実Euclid空間における内積とは
\begin{equation}
g(\bm{x},\bm{y})=\bm{x}\cdot\bm{y} \in R
\end{equation}
のように,2つのベクトルから実数を与える双線形関数$g:V\times V \to R$ことであった。
したがってこれは,2階の共変テンソルとみなすこともできる。
基底$\{\bm{e}_i\}$上では
\begin{equation}
g_{ij} =g(\bm{e}_i,\bm{e}_j)=\bm{e}_i\cdot\bm{e}_j
\end{equation}
である。
ベクトル空間の次元を$n$とした場合,これらの成分は$n\times n$の対称行列となる。
このテンソルを,計量テンソル(metric tensor)という。
Euclid空間上では
\begin{equation}
\label{eq:Euclid_metric}
\bm{e}_i\cdot\bm{e}_j=\delta_{ij}
\end{equation}
であったが,一般にはそうではない。
計量(\ref{eq:Euclid_metric})を,Euclid計量といい,Euclid空間とは,Euclid計量を持つベクトル空間のことであるといいなおすことが出来る。
反変テンソルと混合テンソル
$V\times V\times \cdots \times V$から$R$への線形関数として共変テンソルが定義できるのと同様に,$V^*\times V^*\times \cdots \times V^*$から$R$への線形関数も定義できる:
定義:
\label{def:contravariant_tensor}
$s$個の共変ベクトルから実数を与える多重線形関数
\begin{equation}
T:
\underbrace{V^*\times V^* \times \cdots \times V^*}_{s} \to R
\end{equation}
を,$s$階の反変テンソル(contravariant tensor of rank $s$)という。
そしてさらに,次のようなより一般的なものも定義できる。
定義:
\label{def:mixed_tensor}
$r$個の反変ベクトルと$s$個の共変ベクトルから実数を与える多重線形関数
\begin{equation}
T:
\underbrace{V\otimes V \otimes \cdots \otimes V}_{r}
\otimes
\underbrace{V^*\otimes V^* \otimes \cdots \otimes V^*}_{s} \to R
\end{equation}
を,$(r,s)$型の混合テンソル(mixed tensor of type $(r,s)$)という。
$(r,s)$型のテンソルが作るベクトル空間は
\begin{equation}
\bm{e}^{i_1} \otimes \cdots \otimes \bm{e}^{i_r}
\otimes
\bm{e}_{j_1} \otimes \cdots \otimes \bm{e}_{j_s}
\end{equation}
が基底を張る
\begin{equation}
V^{(s,r)}
=\underbrace{V^*\times V^* \times \cdots \times V^*}_{r}
\times
\underbrace{V\times V \times \cdots \times V}_{s}
\end{equation}
である。
$(r,s)$型のテンソルは,$m+p=r$および$n+q=s$となる$(m,n)$型のテンソル$R$と$(p,q)$型のテンソル$S$から
\begin{equation}
T\otimes S
\end{equation}
によって作ることができる。
振り返れば,共変テンソルおよび反変テンソルの定義は,混合テンソルの定義の特別な場合とみなせるから,$r$階の共変テンソルおよび$s$階の反変テンソルはそれぞれ$(r,0)$型テンソルおよび$(0,s)$型テンソルとも呼ばれる。
テンソルの変換則
$(r,s)$型テンソルの成分は
\begin{equation}
T^{i,...,j}_{\quad \quad k,...,l}
\equiv
T(\bm{e}^i,...,\bm{e}^j,\bm{e}_k,...,\bm{e}_l)
\end{equation}
で与えられる。
ここで基底の変換$\bm{e}'_{j'}=\Lambda^i_{\ j'} \bm{e}_i$および${\bm{e}'}^{j'}=\Lambda^{j'}_{\ i} \bm{e}^i$を行うと,テンソルの線形性から
\begin{equation}
\begin{split}
{T'}^{i',...,j'}_{\quad \quad k',...,l'}
=&
T(\Lambda^{i'}_{\ i}\bm{e}^i,...,\Lambda^{j'}_{\ j}\bm{e}^j,
\Lambda^k_{\ k'}\bm{e}_k,...,\Lambda^l_{\ l'}\bm{e}_l) \\
=&
\Lambda^{i'}_{\ i}...\Lambda^{j'}_{\ j}
\Lambda^k_{\ k'}...\Lambda^l_{\ l'}
T^{i,...,j}_{\quad \quad k,...,l}
\end{split}
\end{equation}
と変換される。
縮約
テンソル積により,高階のテンソルを作り出せることを見た。
今度は,その反対で,テンソルの階数を下げる操作について考える。
反変ベクトル$v$と共変ベクトル$\omega$のテンソル積$v\otimes \omega$は,$(1,1)$型テンソルである。
これに,添え字を揃えて基底ベクトルを与えると
\begin{equation}
\begin{split}
v\otimes \omega(\bm{e}^i,\bm{e}_i)
=&
v(\bm{e}^i)\omega(\bm{e}_i) \\
=&
v^i \omega_i \\
=& v^1\omega_1
+ v^2\omega_2
+ \cdots
+ v^n\omega_n
\end{split}
\end{equation}
となり,$(0,0)$型テンソル,すなわちスカラーが得られる。
一般の$(1,1)$型テンソル$T=T^i_{\ j}\bm{e}_i \otimes \bm{e}^j$についても同様に
\begin{equation}
C^1_1(T)
=T(\bm{e}^i,\bm{e}_i)
=T(\bm{e}^1,\bm{e}_1)
+\cdots
+T(\bm{e}^n,\bm{e}_n)
\end{equation}
となり,成分で見ると
\begin{equation}
C^1_1(T)
=T^i_{\ i}
=
T^1_{\ 1}+T^2_{\ 2}+\cdots T^n_{\ n}
\end{equation}
となる。
この操作を縮約(contraction)という。
基底を$\bm{e}'_{j'}=\Lambda^i_{\ j'}\bm{e}_i$および${\bm{e}'}^{j'}=\Lambda^{j'}_{\ i}\bm{e}^i$のように変換すると
\begin{equation}
\begin{split}
C^1_1(T)
=& T({\bm{e}'^{j'}},\bm{e}'_{j'}) \\
%
=& \Lambda^{j'}_{\ i}\Lambda^k_{\ j'}T(\bm{e}^i,\bm{e}_k) \\
%
=& \delta^k_{\ i}T(\bm{e}^i,\bm{e}_k) \\
=& T(\bm{e}^i,\bm{e}_i)
\end{split}
\end{equation}
となる。
したがって,縮約は基底の取り方によらない。
より一般的には,$(r,s)$型テンソルに対し,$1\leq p \leq r$,$1\leq q\leq s$となる$(p,q)$である数について,$(r-1,s-1)$型テンソル
\begin{equation}
\begin{split}
C^p_q(T)
=
T^{i_1...i_{p-1}ki_{p+1},...i_{r}}_{\hspace{6.5em} j_1...j_{q-1}kj_{q+1}...j_s} \\
\bm{e}_{i_1}\otimes\cdots\otimes\bm{e}_{i_{p-1}}\otimes\bm{e}_{i_{p+1}}\otimes\cdots\bm{e}_{i_r}
\otimes \\
\bm{e}^{j_1}\otimes\cdots\otimes\bm{e}^{j_{q-1}}\otimes\bm{e}^{j_{q+1}}\otimes\cdots\bm{e}^{j_s}
\end{split}
\end{equation}
を与える操作を,$(p,q)$-縮約と呼ぶ。
添え字の上げ下げ
計量テンソルは,2つの反変ベクトル$u,v$から実数を与える線形関数であった:
\begin{equation}
g(u,v)
= g_{ij}u^i v^j
\in R
\end{equation}
これは,2階の共変テンソル$g$と,2つの1階の反変テンソル$u$と$v$からなるテンソルの縮約
\begin{equation}
g_{ij}u^i v^j
=C^1_1 C^2_2 (g\otimes u \otimes v)
\end{equation}
であると理解できる。
また,計量と反変ベクトル1つとの縮約は,反変ベクトルを実数に写す線形関数,すなわち共変ベクトルを与える。
成分で書けば
\begin{equation}
\label{eq:contra_to_co}
u_i
= g_{ij}u^j
\end{equation}
である。
この操作を,添え字の下げ(lowering the index)という。
内積の非退化性(Sec.~\ref{sec:bilinear})より,$u_i$と$u^i$は一対一に対応付けられる。
したがって,$g_{ij}$には
\begin{equation}
g^{ij}g_{jk}=\delta^i_{\ k}
\end{equation}
となる逆行列$g^{ij}$が存在する。
これを用いると,(\ref{eq:contra_to_co})とは反対の操作
\begin{equation}
u^i = g^{ij}u_j
\end{equation}
により,共変ベクトルから対応する反変ベクトルが得られる。
これを,添え字の上げ(raising the index)という。