Тензорная алгебра

Пусть VVnn-мерное линейное пространство над полем KK. VV^* — сопряжённое пространство к VV.

Тензор

Пусть заданы два числа p,qN0p, q \in \NN_0.

Тензором типа (p,q)(p, q) над пространством VV называется полилинейная функция

T ⁣:V×V××Vp штук×V×V××Vq штук\TTT \colon \underbrace{V \times V \times \dotsb \times V}_{p ~\text{штук}} \times \underbrace{V^* \times V^* \times \dotsb \times V^*}_{q ~\text{штук}}

Число m=p+qm = p + q называется рангом тензора T\TTT. Я буду записывать этот факт как Tm\TTT^{\circled{m}}, или, подробно, Tp,q\TTT^{\circled{p, \- q}}.

Тензор (в каком-то базисе) представляет собой массив размерности p+qp+q, в котором находится np+q=nmn^{p+q} = n^m элементов. Каждый элемент тензора Tm\TTT^{\circled{m}} можно записать, выделив его индексы

Ti1,i2,,imm\TTT^{\circled{m}}_{i_1, \- i_2, \- \dotsc, \- i_m}

Тензор является полилинейной функцией. По этому его, как и обычные функции, можно вызывать, передавая аргументы. В результате мы получаем какой-то скаляр.

Если Tp,q\TTT^{\circled{p, \- q}} — тензор, то его вызов как функции от аргументов (v1,v2,,vp;ω1,ω2,,ωq)(v_1, v_2, \dotsc, v_p; \omega_1, \omega_2, \dotsc, \omega_q) называется действием тензора на pp векторов v1,v2,,vpv_1, v_2, \dotsc, v_p и на qq ковекторов ω1,ω2,,ωq\omega_1, \omega_2, \dotsc, \omega_q. Обозначается не круглыми скобками, а косыми:

Tp,qv1,v2,,vp;ω1,ω2,,ωq\TTT^{\circled{p, q}} \lgroup v_1, v_2, \dotsc, v_p; \omega_1, \omega_2, \dotsc, \omega_q \rgroup

Тензорное произведение

Нам нужно научиться строить тензоры высших рангов из тензоров низших рангов.

Тензорное произведение

Пусть Ap,qA^{\circled{p, \- q}} и Br,sB^{\circled{r, \- s}} — два тензора над пространством VV, действующие на аргументы

Ap,q действует на аргументы v1,v2,,vpV и ω1,ω2,,ωqVBr,s действует на аргументы u1,u2,,urV и η1,η2,,ηsV\align{ A^{\circled{p, \- q}} &~\text{действует на аргументы}~ v_1, v_2, \dotsc, v_p \in V ~\text{и}~ \omega_1, \omega_2, \dotsc, \omega_q \in V^* \\ B^{\circled{r, \- s}} &~\text{действует на аргументы}~ u_1, u_2, \dotsc, u_r \in V ~\text{и}~ \eta_1, \eta_2, \dotsc, \eta_s \in V^* }

Тензорное произведение двух тензоров Ap,qA^{\circled{p, \- q}} и Br,sB^{\circled{r, \- s}} — тензор (AB)p+r,q+s(A \otimes B)^{\circled{p+r, \- q+s}}, определяемый как

(AB)p+r,q+sv1,v2,,vp,u1,u2,,ur;ω1,ω2,,ωq,η1,η2,,ηs==Ap,qv1,v2,,vp;ω1,ω2,,ωqBr,su1,u2,,ur;η1,η2,,ηs\align{ (A \otimes B)^{\circled{p+r, \- q+s}} & \lgroup v_1, v_2, \dotsc, v_p, u_1, u_2, \dotsc, u_r; \omega_1, \omega_2, \dotsc, \omega_q, \eta_1, \eta_2, \dotsc, \eta_s \rgroup = \\ &= A^{\circled{p, \- q}} \lgroup v_1, v_2, \dotsc, v_p; \omega_1, \omega_2, \dotsc, \omega_q \rgroup \cdot B^{\circled{r, \- s}} \lgroup u_1, u_2, \dotsc, u_r; \eta_1, \eta_2, \dotsc, \eta_s \rgroup }

То есть тензорное произведение независимо применяет AA и BB к своим аргументам, а затем перемножает результаты как элементы поля KK.

Пространство тензоров

Множество всех тензоров ранга (p,q)(p, q) над пространством VV само образует линейное пространство над полем KK. Сложение тензоров и умножение на скаляр определяются покомпонентно (поточечно):

(Sp,q+Tp,q)=Sp,q+Tp,q(S^{\circled{p, \- q}} + T^{\circled{p, \- q}}) \lgroup \cdots \rgroup = S^{\circled{p, \- q}} \lgroup \cdots \rgroup + T^{\circled{p, \- q}} \lgroup \cdots \rgroup
(λSp,q)=λSp,q(\lambda \cdot S^{\circled{p, q}}) \lgroup \cdots \rgroup = \lambda \cdot S^{\circled{p, q}} \lgroup \cdots \rgroup

Чтобы работать с тензорами как с массивами чисел (компонентами), необходимо ввести базис.

Пусть {e1,e2,,en}\{e_1, e_2, \dotsc, e_n\} — базис в пространстве VV, и {ε1,ε2,,εn}\{\varepsilon_1, \varepsilon_2, \dotsc, \varepsilon_n\} — базис в сопряжённом пространстве VV^*, определяемый условием εi(ej)=[i=j]\varepsilon_i (e_j) = [i = j] для всех 1i,jn1 \le i, j \le n.

Тогда базис в пространстве тензоров ранга (p,q)(p, q) над пространством VV образуют тензоры вида

εi1εi2εip  ej1ej2ejq\varepsilon_{i_1} \otimes \varepsilon_{i_2} \otimes \dotsb \otimes \varepsilon_{i_p} ~\otimes~ e_{j_1} \otimes e_{j_2} \otimes \dotsb \otimes e_{j_q}

Посмотрим на то, как этот базисный тензор действует на pp векторов v1,v2,,vpv_1, v_2, \dotsc, v_p и на qq ковекторов ω1,ω2,,ωq\omega_1, \omega_2, \dotsc, \omega_q:

(εi1εi2εip  ej1ej2ejq)v1,v2,,vp;ω1,ω2,,ωq==εi1v1εi2v2εipvp  ej1ω1ej2ω2ejqωq==v1;i1v2;i2vp;ip  ω1;j1ω2;j2ωq;jq\align{ (\varepsilon_{i_1} \otimes \varepsilon_{i_2} \otimes \dotsb \otimes \varepsilon_{i_p} ~\otimes~ e_{j_1} \otimes e_{j_2} \otimes \dotsb \otimes e_{j_q}) \lgroup v_1, v_2, \dotsc, v_p ; \omega_1, \omega_2, \dotsc, \omega_q \rgroup = \\ = \varepsilon_{i_1} \lgroup v_1 \rgroup \cdot \varepsilon_{i_2} \lgroup v_2 \rgroup \dotsm \varepsilon_{i_p} \lgroup v_p \rgroup ~\cdot~ e_{j_1} \lgroup \omega_1 \rgroup \cdot e_{j_2} \lgroup \omega_2 \rgroup \dotsm e_{j_q} \lgroup \omega_q \rgroup = \\ = v_{1; \- i_1} \cdot v_{2; \- i_2} \dotsm v_{p; \- i_p} ~\cdot~ \omega_{1; \- j_1} \cdot \omega_{2; \- j_2} \dotsm \omega_{q; \- j_q} }

Получается, что любой тензор Tp,q\TTT^{\circled{p, \- q}} из этого пространства тензоров можно разложить по этому базису. Чтобы найти коэффициенты разложения, нужно вычислить действие этого тензора на всех наборах базисных векторов и ковекторов. А именно. определим компоненты как

Ti1,i2,,ip;j1,j2,,jqp,q   ⁣=def   ⁣Tp,qei1,ei2,,eip;εj1,εj2,,εjq\TTT^{\circled{p, \- q}}_{i_1, \- i_2, \- \dotsc, \- i_p; \- j_1, \- j_2, \- \dotsc, \- j_q} \defeq \TTT^{\circled{p, \- q}} \lgroup e_{i_1}, e_{i_2}, \dotsc, e_{i_p}; \varepsilon_{j_1}, \varepsilon_{j_2}, \dotsc, \varepsilon_{j_q} \rgroup

Тогда разложение тензора Tp,q\TTT^{\circled{p, \- q}} в этом базисе примет вид

Tp,q=1i1,i2,,ipn1j1,j2,,jqnTi1,i2,,ip;j1,j2,,jqp,q  εi1εi2εip  ej1ej2ejq\TTT^{\circled{p, \- q}} = \sum\limits_{\substack{1 \;\! \le \;\! i_1, \- i_2, \- \dotsc, i_p \le n\\[0.4em]1 \le j_1, \- j_2, \- \dotsc, \- j_q \le n}} \TTT^{\circled{p, \- q}}_{i_1, \- i_2, \- \dotsc, \- i_p; \- j_1, \- j_2, \- \dotsc, \- j_q} ~\cdot~ \varepsilon_{i_1} \otimes \varepsilon_{i_2} \otimes \dotsb \otimes \varepsilon_{i_p} ~\otimes~ e_{j_1} \otimes e_{j_2} \otimes \dotsb \otimes e_{j_q}

Прямой подстановкой можно проверить, что это действительно базис.

В компонентной записи все действия над тензорами выполняются покомпонентно, то есть

(Sp,q+Tp,q)i1,i2,,ip;j1,j2,,jq=Si1,i2,,ip;j1,j2,,jqp,q+Ti1,i2,,ip;j1,j2,,jqp,q\bigl( S^{\circled{p, \- q}} + T^{\circled{p, \- q}} \bigr) _{i_1, \- i_2, \- \dotsc, \- i_p; \- j_1, \- j_2, \- \dotsc, \- j_q} = S^{\circled{p, \- q}}_{i_1, \- i_2, \- \dotsc, \- i_p; \- j_1, \- j_2, \- \dotsc, \- j_q} + T^{\circled{p, \- q}}_{i_1, \- i_2, \- \dotsc, \- i_p; \- j_1, \- j_2, \- \dotsc, \- j_q}
(λSp,q)i1,i2,,ip;j1,j2,,jq=λSi1,i2,,ip;j1,j2,,jqp,q\bigl( \lambda \cdot S^{\circled{p, \- q}} \bigr) _{i_1, \- i_2, \- \dotsc, \- i_p; \- j_1, \- j_2, \- \dotsc, \- j_q} = \lambda \cdot S^{\circled{p, \- q}}_{i_1, \- i_2, \- \dotsc, \- i_p; \- j_1, \- j_2, \- \dotsc, \- j_q}

При пребразовании базиса тензора