Eksponenta macierzy – funkcja macierzowa zdefiniowana dla macierzy kwadratowych analogicznie jak klasyczna funkcja wykładnicza. Eksponentą macierzy rzeczywistej lub zespolonej
wymiaru
jest macierz wymiaru
oznaczana jako
albo
zadana przez szereg potęgowy:
![{\displaystyle e^{X}=\sum _{k=0}^{\infty }{\frac {1}{k!}}\,X^{k},}](https://wikimedia.org/api/rest_v1/media/math/render/svg/ef88e251a2e151f4af4940fdc817b1f8848d4388)
przy czym przyjmuje się:
![{\displaystyle X^{0}=I,}](https://wikimedia.org/api/rest_v1/media/math/render/svg/023f6cc22171ac9b980d8f38210306fa87a9effc)
- w szczególności
![{\displaystyle 0^{0}=I,}](https://wikimedia.org/api/rest_v1/media/math/render/svg/524477b77da5092d4ccd8071ed5ae13bd8f6829c)
gdzie:
– macierz jednostkowa ![{\displaystyle n\times n,}](https://wikimedia.org/api/rest_v1/media/math/render/svg/4a68d7fc9dff865aeb1cddec80356fb18755a251)
– macierz zerowa ![{\displaystyle n\times n.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/5305052ad745ebdfd6be18c4340624c2490251ae)
Twierdzenia I
Oznaczenia:
– dowolne macierze zespolone ![{\displaystyle n\times n}](https://wikimedia.org/api/rest_v1/media/math/render/svg/59d2b4cb72e304526cf5b5887147729ea259da78)
– dowolne liczby zespolone
Twierdzenia:
- (1)
![{\displaystyle e^{0}=I}](https://wikimedia.org/api/rest_v1/media/math/render/svg/5eda52efff4d3e2e48aacfbd32d5e8390219b284)
- (2)
![{\displaystyle e^{X^{T}}=(e^{X})^{T}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/14688bb0cde251f487df5c7ceef404fbf609760f)
- gdzie
– macierz transponowana macierzy ![{\displaystyle X}](https://wikimedia.org/api/rest_v1/media/math/render/svg/68baa052181f707c662844a465bfeeb135e82bab)
- (3)
![{\displaystyle e^{X^{\dagger }}=(e^{X})^{\dagger }}](https://wikimedia.org/api/rest_v1/media/math/render/svg/a1080b00a07c5b68d50f18697b4c7a0ec7c2fadb)
- gdzie
– macierz hermitowsko sprzężona do macierzy ![{\displaystyle X}](https://wikimedia.org/api/rest_v1/media/math/render/svg/68baa052181f707c662844a465bfeeb135e82bab)
- (4) Jeżeli macierz
jest odwracalna, to ![{\displaystyle e^{YXY^{-1}}=Ye^{X}Y^{-1}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/30a1263f1d4e742a629aa73aeb9e751f4c48433e)
- (5) Jeżeli macierze
i
komutują (tzn. ich mnożenie jest przemienne,
), to ![{\displaystyle e^{X}e^{Y}=e^{X+Y}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/613aaf6f80251e7b95e48edb2da3fe9f0e408988)
Z tw. (5) wynika, że
- (6)
![{\displaystyle e^{X}e^{-X}=e^{0}=I}](https://wikimedia.org/api/rest_v1/media/math/render/svg/df3729dec167a6a3d02315377f2741c868a9c965)
- (7)
![{\displaystyle e^{aX}e^{bX}=e^{(a+b)X}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/ef6b4f6dfab0bf8a11a6aa30ba9306606b1fc207)
Twierdzenia II
- (8) Jeżeli
jest macierzą symetryczną, to
jest macierzą symetryczną. - (9) Jeżeli
jest macierzą antysymetryczną, to
jest macierzą ortogonalną. - (10) Jeżeli
jest macierzą hermitowską, to
jest macierzą hermitowską. - (11) Jeżeli
jest macierzą antyhermitowską, to
jest macierzą unitarną.
Obliczanie eksponenty macierzy
Macierz diagonalna
Jeżeli macierz jest diagonalna
![{\displaystyle D={\begin{bmatrix}d_{1}&0&\ldots &0\\0&d_{2}&\ldots &0\\\vdots &\vdots &\ddots &\vdots \\0&0&\ldots &d_{n}\end{bmatrix}},}](https://wikimedia.org/api/rest_v1/media/math/render/svg/d0c35bca265acc0aeb58eab1dda8b7d4b743822e)
to
![{\displaystyle e^{D}={\begin{bmatrix}e^{d_{1}}&0&\ldots &0\\0&e^{d_{2}}&\ldots &0\\\vdots &\vdots &\ddots &\vdots \\0&0&\ldots &e^{d_{n}}\end{bmatrix}}.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/79309d50a0381113cea93b55d41afd25a2bd0ff3)
Macierz diagonalizowalna
Jeżeli macierz
można przedstawić w postaci
![{\displaystyle X=YDY^{-1},}](https://wikimedia.org/api/rest_v1/media/math/render/svg/4e53e3466b756d878f46fe28624cb2856541ae50)
gdzie
– macierz diagonalna, to z tw. (4) wynika, że
![{\displaystyle e^{X}=Ye^{D}Y^{-1}.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/c55bc974999e655446b927c1f7963ca87b11cf6f)
Tw. Liego o eksponencie sumy macierzy
Jeżeli
oraz
nie komutują, to można obliczyć eksponentę sumy tych macierzy, posługując się twierdzeniem Liego
![{\displaystyle e^{X+Y}=\lim _{k\to \infty }\left(e^{{\frac {1}{k}}X}e^{{\frac {1}{k}}Y}\right)^{k}.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/d18015701a6684fc059b396cd816d4f8bb75b65d)
Jeżeli użyje się dostatecznie dużej wartości
(np.
), to otrzyma się dokładne przybliżenie, często używane w numerycznego obliczania ewolucji w czasie jednowymiarowych układów kwantowych o wielu cząstkach, gdyż wtedy
![{\displaystyle e^{X+Y}\approx \left(e^{{\frac {1}{k}}X}e^{{\frac {1}{k}}Y}\right)^{k}.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/62e1f5a3c60163db699c7fa200b826d64148682a)
Tw. Bakera-Campbelli-Hausdorffa
Gdy
oraz
są dostatecznie małe i niekoniecznie komutują, to
![{\displaystyle e^{X}\cdot e^{Y}=e^{Z},}](https://wikimedia.org/api/rest_v1/media/math/render/svg/93de013838eb0a09a52ea0278913f4d51d223be9)
gdzie
jest nieskończonym szeregiem komutatorów, utworzonych z macierzy
oraz
zgodnie z tw. Bakera-Campbella-Hausdorffa(inne języki)
![{\displaystyle Z=X+Y+{\frac {1}{2}}[X,Y]+{\frac {1}{12}}{\big [}X,[X,Y]{\big ]}-{\frac {1}{12}}{\big [}Y,[X,Y]{\big ]}+\ldots ,}](https://wikimedia.org/api/rest_v1/media/math/render/svg/399e666a1330c917bf78db3845e567a7d938cee9)
gdzie
itp. Pozostałe składniki szeregu stanowią bardziej złożone komutatory, zawierające
oraz
Jeżeli
oraz
komutują, tj.
to wszystkie inne komutatory zerują się i otrzymuje się prosty wzór
![{\displaystyle e^{X}\cdot e^{Y}=e^{X+Y}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/1cae3c99d32fb7aa892bba253bec31ae7ceed17f)
Numeryczne liczenie eksponenty macierzy
Obliczanie eksponenty macierzy w ogólnym przypadku nie jest proste. Poniżej podano kod w języku python, służący do numerycznego obliczenia eksponenty macierzy, korzystający z biblioteki NumPy, dedykowanej do obliczeń na macierzach. NumPy zawiera funkcję expm
, która oblicza eksponentę macierzy. Program można uruchomić, korzystając np. z darmowego notatnika colab google online, przy czym macierz do obliczeń zadaje się w linii 4 programu, podając kolejne jej wiersze. Poniższy kod liczy eksponentę macierzy
ale łatwo go zmodyfikować do liczenia eksponenty macierzy
Np. X = np. array([[1, 1, 1], [2, 1, 0], [3, 0,1]]) – macierz
z zapisanymi kolejnymi wierszami, zaczynając od wiersza 1-go.
import numpy as np
from scipy.linalg import expm
X = np. array([[1, 0], [0, 1]])
expX = expm(X)
print(expX)
# Wynik
# [[2.71828183 0. ]
# [0. 2.71828183]]
Przykłady
Macierze niekomutujące
Niech będą dane macierze
![{\displaystyle X={\begin{bmatrix}1&0\\0&2\end{bmatrix}},\quad Y={\begin{bmatrix}0&1\\0&0\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/0bb7511eb5ac6e59dbad81c2b2b643a4c62ee19c)
Macierze te nie komutują ze sobą, gdyż:
![{\displaystyle XY-YX={\begin{bmatrix}0&-1\\0&0\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/80469e18166e7e77da7eab9867362709d7d0fabe)
Nie są więc spełnione założenia Tw. (5). Obliczając eksponenty
oraz
(np. korzystając z kodu w python, podanego wyżej), a następnie mnożąc otrzymane macierze
przez siebie otrzyma się:
![{\displaystyle e^{X}e^{Y}={\begin{bmatrix}2{,}71828183&2{,}71828183\\0&7{,}3890561\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/40fd35f0c2a26b7c005c9d77ca39bdfb1baf034a)
zaś
![{\displaystyle e^{X+Y}={\begin{bmatrix}2{,}71828183&4{,}67077427\\0&7{,}3890561\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8039426471319658767e2063dd403c4bee2bc318)
Widać, że tym wypadku
Macierze komutujące
Niech będą dane macierze (tzw. macierze obrotu)
![{\displaystyle X={\begin{bmatrix}\cos x&-\sin x\\\sin x&\cos x\end{bmatrix}},\quad Y={\begin{bmatrix}\cos y&-\sin y\\\sin y&\cos y\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8d6f025e32b59285785fe16920b5f10d5a2d751a)
Macierze te komutują ze sobą dla dowolnych kątów
tj. zawsze mamy:
![{\displaystyle XY-YX={\begin{bmatrix}1&0\\0&1\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/a8dd06a14d29a649e26a91a63509f3127028896b)
Z tw. (5) wynika, że w tym wypadku jest prawdą, że
Przykładowo, dla
mamy
![{\displaystyle X={\begin{bmatrix}0&-1\\1&0\end{bmatrix}},\quad Y={\frac {1}{\sqrt {2}}}{\begin{bmatrix}1&-1\\1&1\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f164ce543c3b40a0294699686e26bb33ffcf8df8)
Obliczając eksponenty
oraz
(np. korzystając z kodu w python, podanego wyżej), a następnie mnożąc otrzymane macierze
przez siebie, otrzymuje się:
![{\displaystyle e^{X}\cdot e^{Y}={\begin{bmatrix}-0{,}27559796&-2{,}0093024\\-2{,}0093024&-0{,}27559796\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/28f550b7776557f02c05e63892f7ab7ead35584e)
Obliczając macierz
a następnie jej eksponentę, otrzymuje się
![{\displaystyle e^{X+Y}={\begin{bmatrix}-0{,}27559796&-2{,}0093024\\-2{,}0093024&-0{,}27559796\end{bmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/338022985e96b1fd6b1806688cb0d00419fdaeeb)
Widać, iż teraz
Zobacz też
Bibliografia
- Bellman R.E., Introduction to Matrix Analysis, 2nd ed., New York: McGraw-Hill, 1970.
- Moler C., van Loan C., „Nineteen Dubious Ways to Compute the Exponential of a Matrix, Twenty-Five Years Later”, SIAM Rev. 45, 3-49, 2003.
- Cohen-Tannoudji Claude, Diu Bernard, Laloe Frank, Quantum Mechanics 1, Wiley J., 2006, ISBN 978-0471569527.
Linki zewnętrzne
- Eric W.E.W. Weisstein Eric W.E.W., Matrix Exponential, [w:] MathWorld, Wolfram Research (ang.). [dostęp 2024-04-11].