Macierzowa reprezentacja tensorów – forma reprezentacji tensorów z wykorzystaniem macierzy. Podstawowa zasada macierzowej reprezentacji tensorów brzmi: każdy indeks górny tensora musi być związany z jakąś kolumną, każdy indeks dolny musi być związany z jakimś wierszem.
Tensor I rzędu, czyli wektor
standardowo jest wyrażony z wykorzystaniem współrzędnych kowariantnych (jako wektor wierszowy, z dolnymi indeksami)
![{\displaystyle {\vec {v}}=[v_{i}]={\begin{bmatrix}v_{1}&v_{2}&\dots &v_{n}\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/1e437a8b9ea1df07d0ab9fe23ccff57fa810d671)
lub kontrawariantnych (jako wektor kolumnowy, z górnymi indeksem)
![{\displaystyle {\vec {v}}=[v^{i}]={\begin{bmatrix}v^{1}\\v^{2}\\\vdots \\v^{n}\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/05b3683f841f3859a023507e09bb3a4e16c628b7)
Dla ortogonalnych układów współrzędnych zachodzi równość współrzędnych ko- i kontrawairantnych, tj.
i w związku z tym w takich układach zwykle stosuje się tylko dolne indeksy.
Ponieważ w układzie ortogonalnym mamy równość współrzędnych ko- i kontrawariantnych, zatem tensor II rzędu zapisujemy, korzystając tylko z dolnych indeksów, a jego postać macierzowa może być następująca
![{\displaystyle T=[T_{ij}]={\begin{bmatrix}T_{11}&T_{12}&\dots &T_{1n}\\T_{21}&T_{22}&\dots &T_{2n}\\\vdots \\T_{n1}&T_{n2}&\dots &T_{nn}\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c82d7253b98df582b9b33720728c8f8a538364b0)
Jeżeli układ współrzędnych nie jest ortogonalny, to nie można zastosować formy macierzowej dla układów ortogonalnych, ponieważ taka forma zapisu tensora „gubi” informację dotyczącą wariancji – co obrazuje poniższy przykład[1]:
Weźmy tensor metryczny (występujący w teorii względności)
i wykonajmy iloczyn wewnętrzny z wektorem kontrawariantny
Z własności tensora metrycznego wynika, że powinniśmy otrzymać wektor wierszowy (kowariantny – czyli z indeksem dolnym
). Korzystając z notacji sumacyjnej i definicji iloczynu wewnętrznego tensorów, w zapisie wskaźnikowym mamy
![{\displaystyle \eta _{ij}\cdot v^{j}=v_{i},}](https://wikimedia.org/api/rest_v1/media/math/render/svg/ad75a442988988fada56c9c6012ff341707a541b)
zatem po prawej stronie równości dostajemy oczekiwany wektor kowariantny (wierszowy, czyli z dolnym indeksem). Natomiast zobaczmy, co się stanie, gdy użyjemy zapisu macierzowego używanego w układach ortogonalnych
![{\displaystyle \eta \cdot {\vec {v}}=[\eta _{ij}]\cdot [v^{j}]{\begin{bmatrix}-1&0&0&0\\0&1&0&0\\0&0&1&0\\0&0&0&1\end{bmatrix}}\cdot {\begin{bmatrix}t\\x\\y\\z\end{bmatrix}}={\begin{bmatrix}-t\\x\\y\\z\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/a6a4f92aa758c7dc62dab140a8417908ef1624f1)
Dostaliśmy wektor kolumnowy jako rezultat, a powinien wyjść wierszowy. Zatem powyższy zapis macierzowy wraz z działaniem mnożenia macierzy nie odwzorował prawidłowo działania iloczynu wewnętrznego tensorów, gdyż „zagubił” informacje o wariancji wektora wynikowego. Zatem taka forma macierzowa tensora
nie jest prawidłowa.
W literaturze często nie uwzględnia się wyżej opisanego problemu i stosuje dla układów nieortogonalnych błędną reprezentację tensora II rzędu w formie macierzy. Niemniej jednak w nieortogonalnych układach można przedstawić ów tensor prawidłowo, używając notacji macierzowej w taki sposób, aby mnożenie macierzy z wektorem prawidłowo odwzorowywało iloczyn wewnętrzny tensorów. Mianowicie:
- tensor z dwoma indeksami kowariantnymi (dolnymi) zapiszmy jako jednowierszową macierz której elementami są wektory wierszowe
![{\displaystyle [T_{ij}]=[~~[T_{1j}]~~[T_{2j}]~~\dots ~~[T_{nj}]~~]=[~~[T_{11}~T_{12}~\dots ~T_{1n}]~~[T_{21}~T_{22}~\dots ~T_{2n}]~~\dots ~~[T_{n1}~T_{n2}~\dots ~T_{nn}]~~]}](https://wikimedia.org/api/rest_v1/media/math/render/svg/3deb084b5278dbae1e1eac0626361e596f728dfa)
- nie należy mylić takiego indeksowania ze standardowym indeksowaniem macierzowym, bo choć mamy tutaj dwa indeksy dolne, to jednak lewy dolny indeks nie dotyczy numeru wiersza (gdyż macierz jest jednowierszowa).
Detale
|
- Iloczyn wewnętrzny
zwracający wektor kowariantny (wierszowy) zgadza się z wynikiem mnożenia macierzowego dla tak przyjętej postaci tensora (czyli wektor wierszowy którego elementem są wektory wierszowe)
![{\displaystyle T\cdot v=[T_{ij}]\cdot [v^{i}]=[T_{1j}]v^{1}+[T_{2j}]v^{2}+\ldots +[T_{nj}]v^{n}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/7057443a2b03d05d2c7012618291382e3241fe25)
![{\displaystyle ={\begin{bmatrix}(v^{1}T_{11}+v^{2}T_{21}+\ldots +v^{n}T_{n1})&(v^{1}T_{12}+v^{2}T_{22}+\ldots +v^{n}T_{n2})&\dots &(v^{1}T_{1n}+v^{2}T_{2n}+\ldots +v^{n}T_{nn})\end{bmatrix}}=[P_{j}]}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8189103dbd952a8676bd3ada411797f6cf4c0bee)
|
- tensor mieszany zapiszmy jako macierz, w której wiersze odpowiadają indeksowi kowariantnemu (dolnemu), a kolumny odpowiadają indeksowi kontrawariantemu (górnemu)
![{\displaystyle [T_{i}^{j}]={\begin{bmatrix}T_{1}^{1}&T_{2}^{1}&\dots &T_{n}^{1}\\T_{1}^{2}&T_{2}^{2}&\dots &T_{n}^{2}\\\vdots \\T_{1}^{n}&T_{2}^{n}&\dots &T_{n}^{n}\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/b35dca2bd7692d47bd726e178ec8da63d622e33f)
- nie należy tego indeksowania mylić z konwencjonalnym indeksowaniem macierzy, w którym lewy dolny indeks oznacza wiersz, a prawy dolny kolumnę – gdyż tutaj dolny oznacza kolumnę, górny oznacza wiersz, a prawy dolny w ogóle nie istnieje.
Detale
|
Tensor mieszany można przedstawić również na inne sposoby
- wektor kolumnowy którego elementy to wektory wierszowe
![{\displaystyle [T_{i}^{j}]={\begin{bmatrix}{[T_{i}^{1}]}\\{[T_{i}^{2}]}\\\vdots \\{[T_{i}^{n}]}\end{bmatrix}}={\begin{bmatrix}{[T_{1}^{1}~T_{2}^{1}~\dots ~T_{n}^{1}]}\\{[T_{1}^{2}~T_{2}^{2}~\dots ~T_{n}^{2}]}\\\vdots \\{[T_{1}^{n}~T_{2}^{n}~\dots ~T_{n}^{n}]}\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/972cba3c3bcfa147fc7cc78c3145f09922fad590)
- wektor wierszowy którego elementy to wektory kolumnowe
![{\displaystyle [T_{i}^{j}]=[~~[T_{1}^{j}]~~[T_{2}^{j}]~~\dots ~~[T_{n}^{j}]~~]={\begin{bmatrix}{\begin{bmatrix}T_{1}^{1}\\T_{1}^{2}\\\vdots \\T_{1}^{n}\end{bmatrix}}&{\begin{bmatrix}T_{2}^{1}\\T_{2}^{2}\\\vdots \\T_{2}^{n}\end{bmatrix}}&\dots &{\begin{bmatrix}T_{n}^{1}\\T_{n}^{2}\\\vdots \\T_{n}^{n}\end{bmatrix}}\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/92d7895e30a1070f7288abb5410dc1e15bf35b15)
Jednak zwykle nie są one używane, gdyż zawierają nadmiarową informację (dotyczącej wierszowej/kolumnowej struktury elementów)
|
- tensor z dwoma indeksami kontrawariantnymi (górnymi) zapiszmy jako jednokolumnową macierz, której elementami są wektory kolumnowe
![{\displaystyle [T^{ij}]={\begin{bmatrix}{\begin{bmatrix}T^{11}\\T^{12}\\\vdots \\T^{1n}\end{bmatrix}}\\{\begin{bmatrix}T^{21}\\T^{22}\\\vdots \\T^{2n}\end{bmatrix}}\\\vdots \\{\begin{bmatrix}T^{n1}\\T^{n2}\\\vdots \\T^{nn}\end{bmatrix}}\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/d301de2b40c97eae73bc00114b227ddc563a6fe6)
Detale
|
- Iloczyn wewnętrzny
zwracający wektor kontrawariantny (kolumnowy) zgadza się z wynikiem mnożenia macierzowego (zauważmy, że aby je wykonać, musimy mnożyć przez wektor wierszowy z lewej strony)
![{\displaystyle v\cdot T=[v_{i}]\cdot [T^{ij}]=v_{1}\cdot [T^{1j}]+v_{2}\cdot [T^{2j}]+\ldots +v_{n}\cdot [T^{nj}]}](https://wikimedia.org/api/rest_v1/media/math/render/svg/638eaac73f3b5b56f226715f9a2de130efcf765f)
![{\displaystyle ={\begin{bmatrix}v_{1}T^{11}+v_{2}T^{21}+\ldots +v_{n}T^{n1}\\v_{1}T^{12}+v_{2}T^{22}+\ldots +v_{n}T^{n2}\\\vdots \\v_{1}T^{1n}+v_{2}T^{2n}+\ldots +v_{n}T^{nn}\end{bmatrix}}=[P^{j}]}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f3ffd0ef12de5062b2650c4179cebd7d3e8eadb5)
|
W podobny sposób można reprezentować tensory wyższych rzędów. Zwróćmy też uwagę, że iloczyn wewnętrzny tensorów zawiera w sobie operację kontrakcji, która zezwala na sumowanie tylko po indeksach o przeciwnej wariancji (co współgra z działaniem mnożenia macierzy, tj. macierz może być wymnożona tylko lewostronnie przez wektor wierszowy, a tylko prawostronnie przez wektor kolumnowy).
Dla wspomnianego wcześniej tensora metrycznego
i zastosowaniu powyższej notacji dostajemy
![{\displaystyle \eta \cdot {\vec {v}}={\begin{bmatrix}{\begin{bmatrix}-1&0&0&0\end{bmatrix}}&{\begin{bmatrix}0&1&0&0\end{bmatrix}}&{\begin{bmatrix}0&0&1&0\end{bmatrix}}&{\begin{bmatrix}0&0&0&1\end{bmatrix}}\end{bmatrix}}\cdot {\begin{bmatrix}t\\x\\y\\z\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/61b931f8a6892871cd9ed97643aa8bf14a501041)
![{\displaystyle =t{\begin{bmatrix}-1&0&0&0\end{bmatrix}}+x{\begin{bmatrix}0&1&0&0\end{bmatrix}}+y{\begin{bmatrix}0&0&1&0\end{bmatrix}}+z{\begin{bmatrix}0&0&0&1\end{bmatrix}}={\begin{bmatrix}-t&x&y&z\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/49705bfa6cee6d9338ee0438564a760e11991616)
jak widać teraz dostaliśmy oczekiwany wektor wierszowy.
W ten sposób możemy zapisać tensory wyższych rzędów, zachowując informację o wariancji ich indeksów, np.
- dla symbol Christoffela drugiego rodzaju
postacią będzie macierz której elementami są wektory wierszowe
![{\displaystyle {\begin{bmatrix}[\Gamma _{00}^{0}~\Gamma _{01}^{0}~\Gamma _{02}^{0}~\Gamma _{03}^{0}]&[\Gamma _{10}^{0}~\Gamma _{11}^{0}~\Gamma _{12}^{0}~\Gamma _{13}^{0}]&[\Gamma _{20}^{0}~\Gamma _{21}^{0}~\Gamma _{22}^{0}~\Gamma _{23}^{0}]&[\Gamma _{30}^{0}~\Gamma _{31}^{0}~\Gamma _{32}^{0}~\Gamma _{33}^{0}]\\[][\Gamma _{00}^{1}~\Gamma _{01}^{1}~\Gamma _{02}^{1}~\Gamma _{03}^{1}]&[\Gamma _{10}^{1}~\Gamma _{11}^{1}~\Gamma _{12}^{1}~\Gamma _{13}^{1}]&[\Gamma _{20}^{1}~\Gamma _{21}^{1}~\Gamma _{22}^{1}~\Gamma _{23}^{1}]&[\Gamma _{30}^{1}~\Gamma _{31}^{1}~\Gamma _{32}^{1}~\Gamma _{33}^{1}]\\[][\Gamma _{00}^{2}~\Gamma _{01}^{2}~\Gamma _{02}^{2}~\Gamma _{03}^{2}]&[\Gamma _{10}^{2}~\Gamma _{11}^{2}~\Gamma _{12}^{2}~\Gamma _{13}^{2}]&[\Gamma _{20}^{2}~\Gamma _{21}^{2}~\Gamma _{22}^{2}~\Gamma _{23}^{2}]&[\Gamma _{30}^{2}~\Gamma _{31}^{2}~\Gamma _{32}^{2}~\Gamma _{33}^{2}]\\[][\Gamma _{00}^{3}~\Gamma _{01}^{3}~\Gamma _{02}^{3}~\Gamma _{03}^{3}]&[\Gamma _{10}^{3}~\Gamma _{11}^{3}~\Gamma _{12}^{3}~\Gamma _{13}^{3}]&[\Gamma _{20}^{3}~\Gamma _{21}^{3}~\Gamma _{22}^{3}~\Gamma _{23}^{3}]&[\Gamma _{30}^{3}~\Gamma _{31}^{3}~\Gamma _{32}^{3}~\Gamma _{33}^{3}]\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/710016854c334ee0ee00935ab5658c40e03fe204)
- dla symbolu Leviego-Civity
postacią będzie wektor wierszowy, którego elementy to wektory wierszowe, których elementami są wektory wierszowe
![{\displaystyle \epsilon _{ijk}=[~~~~[[0,0,0],[0,0,1],[0,-1,0]],~~~~[[0,0,-1],[0,0,0],[1,0,0]],~~~~[[0,1,0],[-1,0,0],[0,0,0]]~~~~]}](https://wikimedia.org/api/rest_v1/media/math/render/svg/899fef7f799978824d0cf4dd1877682a952de4ef)