Eksponenta macierzy
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:
przy czym przyjmuje się:
- w szczególności
gdzie:
- – macierz jednostkowa
- – macierz zerowa
Twierdzenia I
Oznaczenia:
- – dowolne macierze zespolone
- – dowolne liczby zespolone
Twierdzenia:
- (1)
- (2)
- gdzie – macierz transponowana macierzy
- (3)
- gdzie – macierz hermitowsko sprzężona do macierzy
- (4) Jeżeli macierz jest odwracalna, to
- (5) Jeżeli macierze i komutują (tzn. ich mnożenie jest przemienne, ), to
Z tw. (5) wynika, że
- (6)
- (7)
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
to
Macierz diagonalizowalna
Jeżeli macierz można przedstawić w postaci
gdzie – macierz diagonalna, to z tw. (4) wynika, że
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
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
Tw. Bakera-Campbelli-Hausdorffa
Gdy oraz są dostatecznie małe i niekoniecznie komutują, to
gdzie jest nieskończonym szeregiem komutatorów, utworzonych z macierzy oraz zgodnie z tw. Bakera-Campbella-Hausdorffa
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
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
Macierze te nie komutują ze sobą, gdyż:
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ę:
zaś
Widać, że tym wypadku
Macierze komutujące
Niech będą dane macierze (tzw. macierze obrotu)
Macierze te komutują ze sobą dla dowolnych kątów tj. zawsze mamy:
Z tw. (5) wynika, że w tym wypadku jest prawdą, że
Przykładowo, dla mamy
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ę:
Obliczając macierz a następnie jej eksponentę, otrzymuje się
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. Weisstein , Matrix Exponential, [w:] MathWorld, Wolfram Research (ang.). [dostęp 2024-04-11].