INVERZE MATIC

PROBLÉM
Určení matice X. inverzní k čtvercové matici A., tedy nalezení řešení maticové rovnice A.*X.=X.*A.=E., kde E. je jednotková matice a * značí násobení matic.

ALGORITMUS
Inverzní matici určíme sloupec po sloupci pomocí programových jednotek LUDCMP a LUBKSB. Celkový počet operací násobení je N ** 3

IMPLEMENTACE
Jednotka: fragment programu
 
Vazby: LUDCMP a LUBKSB
 
Výsledek: Matice X. je inverzní maticí k zadané matici A.
 

/* čti prvky čtvercové matice A. řádu N */
...
call LUDCMP N
do J = 1 to N
  B. = 0; B.J = 1; call LUBKSB N
  do I = 1 to N; X.I.J = B.I; end
end

 

PŘÍKLAD

N = 3
A.1.1 = 1; A.1.2 = -4; A.1.3 = -3
A.2.1 = 1; A.2.2 = -5; A.2.3 = -3
A.3.1 = -1; A.3.2 = 6; A.3.3 = 4
/* LUDCMP matici A. zničí */
do I = 1 to N
  do J = 1 to N
    Y.I.J = A.I.J
  end
end
call LUDCMP N
do J = 1 to N
  B. = 0; B.J = 1; call LUBKSB N
  do I = 1 to N; X.I.J = B.I; end
end

/* X. je inverzní maticí k původní matici A., důkaz?
   X.*A.=Jednotková matice
*/
do I = 1 to N
  Row = ""
  do K = 1 to N
    C.I.K = 0
    do J = 1 to N
      C.I.K = C.I.K + Y.I.J * X.J.K
    end
    Row = Row C.I.K
  end
  say Row
end
exit
...

 

SOUVISLOSTI
Soustava lineárních rovnic
     Determinant matice
     LU rozklad
     Řešení soustavy lineárních rovnic
     Násobení matic

Literatura
Press W.H., Teukolsky S.A., Vetterling W.T., Flannery B.P. Numerical Recipes in C : the art of scientific computing
- 2nd ed. University Press, Cambridge, 1992
Faddejev A.K., Sominskij J.S. Sbornik zadač po vyššej algebre
Nauka, Moskva 1964


Obálka Obsah Index Hlavní stránka

změněno 1. srpna 2001
Copyright © 2000-2001 Vladimír Zábrodský, RNDr.