Referencia könyv a matlabon
A sajátérték-probléma az egyenletek rendszerének nem triviális megoldásainak a megtalálásából áll, amelyeket a hagyományos differenciálegyenletek rendszerének algebrai egyenértékével értelmezhetünk explicit Cauchy formában:
ahol A a n sorrendű négyzetes mátrix;
r egy 1x n méretű oszlopvektor, a sajátvektor;
l egy skalár, amit sajátértéknek neveznek.
A d = eig (A) függvény kiszámítja az A. mátrix sajátértékét.
Funkció [R, D] = eig (A) kiszámítja a diagonális mátrix sajátértékei D és a mátrix jobb sajátvektorai közül R kielégítő kapcsolatban A * R = R * D. Ezek a vektorok normalizáltuk úgy, hogy a norma mindegyikük egyenlő egységét.
A bal oldali sajátvektorok a következőképpen találhatók:
[L, D] = eig (A ');
Mátrix A sajátértékei D A és A „tartalmazza ugyanazt a sajátértékek, bár szekvencia variálható. A bal oldali sajátvektorai alkotják mátrix megfelel egy kapcsolatban A „* L = L * D. koordinátarendszerek talált függetlenül jobb és bal sajátvektorai elhagyta vektor rendszer kell normalizáljuk, hogy megfelelnek a feltételek L * R = szem (n, n).
Funkció [R, D] = cdf2rdf (R, D) átalakítja a komplex kimenetek eig működni érvényes, a komplex sajátértékek alakítjuk blokkméret 2 x 2, és a komplex mátrixának jobb sajátvektorai közül R alakítjuk egy igazi amelynek oszlopait megfelelő érvényes a sajátértékek megmaradnak, és a megfelelő komplexek két részre vannak felosztva: [Re (ri) Im (ri)].
A 3. sor mátrixát egy valós és egy pár komplex konjugált sajátértékkel vesszük figyelembe, és komplex mátrixokkal számoljuk a számításokat.
A cdf2rdf függvény használatával ugyanazok a számítások csak valós mátrixok alkalmazásával valósíthatók meg, ami gazdaságosabbá teszi a memóriát.
Az [R, D] = eig (A, 'nobalance') függvény kiszámítja a sajátértékeket és a sajátvektorokat anélkül, hogy a mátrixot elsőként skálázná. Általában a skálázás javítja a mátrix-kondicionálást, ezzel biztosítva a számítások nagyobb pontosságát. Ha azonban a mátrix nagyon kicsi elemeket tartalmaz, amelyek a kerekítési hibákon belül vannak, akkor a skálázás más mátrixelemekkel összehasonlíthatóvá teheti őket, ami hibás eredményhez vezethet.
Tekintsünk egy 4. sorrendet, amely a kerekítési hibákhoz hasonló elemeket tartalmaz.
normál (B * RN-RN * DN) = 0,9957e-015
A példából következik, hogy a sajátértékek mindkét esetben helyesen lettek kiszámítva, de a maradék sebessége nagyon jelentősen különbözik, ami azt jelzi, hogy az első esetben a sajátvektorok nem számítottak helyesen.
Az általánosított sajátérték-probléma az egyenletek rendszerének nem-megoldásos megoldásainak megtalálását jelenti
ahol A és B n rendű négyzetes mátrix;
r egy 1 x n méretű oszlopvektor, az általánosított sajátvektor;
l egy skalár, amelyet általánosított sajátértéknek neveznek.
Komplex mátrixokat használó számítások:
Csak valós mátrixokat használó számítások:
Ha B - nem-szinguláris mátrix, a rendszer tekinthető egyenértékűnek algebrai rendszer közönséges differenciálegyenletek az implicit formájában a Cauchy, és a probléma csökkenthető a szokásos problémája sajátértékek
Abban az esetben, ha B degenerált mátrix, az egyenletek rendszere differenciális és algebrai egyenletek vegyes rendszere, és speciális módszereket kell alkalmazni annak megoldására.
A d = eig (A, B) függvény kiszámítja az A. mátrix általánosított sajátértékét.
Funkció [R, D] = eig (A, B) kiszámít egy diagonális mátrix D generalizált sajátértékei mátrix R és jobbra generalizált sajátvektorai kielégítő kapcsolatban A * R = B * R * D. Ezek a vektorok normalizáltuk úgy, hogy a norma az egyes egyenlő egy.
Valódi mátrixoknál az eig (A) függvény az EISPACK csomag [1-2] következő moduljait használja: egyensúly, balbak, orthes, ortran és hqr2. Az egyensúly és a balbak modulok skálázási és helyreállítási műveletekhez kapcsolódnak; az orthes modul a mátrixot orthogonális hasonló transzformációk segítségével hordozza a Hessenberg formába; az ortran modul emlékezik minden átalakításra; hqr2 modul kiszámítja sajátvektor és sajátérték a mátrix felső Hessenberg űrlapot QR-Francis és Kublanovskaya algoritmust [3].
EIG (A, B) függvény más modulok EISPACK csomag [1-2]: qzhes, qzit, qzval, és qzvec, QZ-alapú algoritmus.
Komplex mátrixok esetén a (eig) (A) függvény a QZ algoritmust használja, a problémát eig (A, eye (A)) formájában megoldva.
Ha 30 * n iteráción belül nem találunk önértékeket, akkor üzenet jelenik meg
A megoldás nem konvergál.
A megoldás nem konvergál.
1. Smith B. T. Boyle, J. M. Dongarra J. J. Garbów B. S. Ikebe Y. Klema V. Moler C. B. Matrix Eigensystem rutinok - EISPACK // útmutató. Számítástudományi előadások. Berlin, 1976. kötet. 6.
2. Garbow B. S. Boyle J. M. Dongarra J. J. Moler C. B. Mátrix Eigensystem Rutinok - EISPACK Guide Extension // Számítástudományi előadások. Berlin, 1977. kötet. 51.
3. Wilkinson, Reinsch. Az algoritmusok könyvtára az ALGOL nyelvben. Lineáris algebra: Per. angolul. M. Mashinostroenie, 1976. 390 p.
4. Moler C. B. Stewart G. W. Algoritmus a generalizált mátrix sajátérték-problémákhoz // SIAM J. Numer. Anal. N 2. kötet. 10.