Równanie Sylvestera
| Ten artykuł od 2012-10 wymaga uzupełnienia źródeł podanych informacji. Informacje nieweryfikowalne mogą zostać zakwestionowane i usunięte. Aby uczynić artykuł weryfikowalnym, należy podać przypisy do materiałów opublikowanych w wiarygodnych źródłach. |
Równanie Sylvestera - często spotykane w teorii sterowania równanie macierzowe mające postać:
gdzie
to macierze o wymiarach
.
Istnienie i jednoznaczność rozwiązania [edytuj]
Korzystając z notacji iloczynu Kroneckera i operatora wektoryzacji
powyższe równanie może być zapisane w postaci
gdzie
jest macierzą jednostkową o rozmiarach
. W takiej postaci równanie Sylvestera może być interpretowane jako układ liniowy o wymiarze
. (W przypadku poszukiwania rozwiazania numerycznego zapis równania w takiej formie nie jest zalecany ponieważ rozwiązanie równania w wersji układu liniowego jest niewydajne obliczeniowo i źle uwarunkowane).
Jeśli
i
są kanonicznymi formami Jordana macierzy
i
, a
i
są ich wartościami własnymi, można zapisać:
.
Ponieważ
jest górną macierzą trójkątną z elementami na przekątnej
, macierz po lewej stronie jest osobliwa wtedy i tylko wtedy gdy istnieje
i
takie, że
.
W ten sposób dowiedzione zostało, że równanie Sylvestera ma jednoznaczne rozwiązanie wtedy i tylko wtedy macierze
i
nie mają wspólnych wartości własnych.
Rozwiązanie numeryczne [edytuj]
Klasyczny algorytm rozwiązania numerycznego równania Sylvestera to algorytm Bartelsa-Stewarta, na który składa się przekształcenie macierzy
i
do postaci Schura (zob. rozkład Schura) za pomocą algorytmu QR a następnie rozwiązanie układu trójkątnego poprzez podstawienie w tył dla macierzy trójkątnej. Algorytm ten, którego wydajność obliczeniowa wynosi O
operacji arytmetycznych wykorzystywany jest w pakietach oprogramowania LAPACK, Matlab and GNU Octave (w funkcji lyap).


.