テンソル

Dr. SSS 2023/01/26 - 10:19:12 833 線形代数とベクトル解析
はじめに


keywords: 線形代数, テンソル, ベクトル解析

内容

テンソルの定義

ベクトル空間$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)という。


参考文献