Blok matrix

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 25. april 2019; checks kræver 3 redigeringer .

Blok (celle) matrix  - repræsentation af matrixen , hvor den er skåret af lodrette og vandrette linjer i rektangulære dele - blokke ( celler ):

,

hvor blok har størrelse til og

Eksempel

Matrix størrelse 4×4

kan repræsenteres som en blokmatrix af fire 2x2 blokke hver.

Ved næste blokdefinition

Blokmatricen kan skrives som følger:

Operationer

Formelt udføres operationer med blokmatricer efter de samme regler, som hvis der var numeriske elementer i stedet for blokke. For gennemførligheden af ​​operationer er passende matchning af blokstørrelser nødvendig. Når man for eksempel multiplicerer blokmatricer, kræves det, at de vandrette dimensioner af blokkene af den første faktor falder sammen med de tilsvarende vertikale dimensioner af den anden faktor [1] .

Direkte sum

Den direkte sum af to kvadratiske matricer og størrelser og er defineret som en blokmatrix af følgende form:

hvor angiver nulblokken (nultypematrix over og under). Denne operation er ikke -kommutativ , men associativ [2] .

Typer af blokmatricer

Mange typer af matricer kan repræsenteres i blokform. I dette tilfælde tilføjes præfikset blok eller blok til navnet, og operationer på elementer omdannes til operationer på blokke.

Blok-diagonal (kvasi-diagonal) matrix

For en blokdiagonal matrix er alle blokke, undtagen dem, der er placeret på hoveddiagonalen, nulmatricer.

Matrixen ser ud

hvor hvert element er en matrix, der ikke er nul.

Determinanten af ​​en kvadratisk kvasidiagonal matrix er lig med produktet af determinanterne af de diagonale celler.

Kvasi-trekant matrix

Kvasi-trekant er en kvadratisk blokmatrix, hvis blokke er ved (eller ):

.

Determinanten af ​​en kvasi-trekant matrix er lig med produktet af determinanterne af de diagonale blokke. Det er let at se, at en blokdiagonal matrix er et specialtilfælde af en kvasi-trekantet [3] .

Bloker tridiagonal matrix

Se også tridiagonal matrix .

Bloker Toeplitz matrix

Se også Toeplitz matrix .

Blokmultiplikation af matricer

For at øge effektiviteten ved at bruge CPU- cachehukommelsen er der en algoritme til blokmatrixmultiplikation

,

hvori den resulterende matrix

dannes blok for blok ved hjælp af den velkendte formel

eller dets hurtigere analoger, og størrelsen af ​​de behandlede data ved hver iteration overstiger ikke cachehukommelsens kapacitet. Blokstørrelsen afhænger direkte af computersystemets arkitektur og bestemmer multiplikationsudførelsestiden [4] . En lignende tilgang bruges i GPU -baseret matrixmultiplikation med optimering af begrænset brug af delt hukommelse [5] [6] .

Formler

Frobenius formel

For at invertere en ikke-degenereret blokmatrix kan Frobenius -formlen bruges :

hvor  er en ikke-singular kvadratisk matrix af størrelse ,  er en kvadratisk matrix af størrelse og .

Denne formel giver os mulighed for at reducere inversionen af ​​størrelsesmatrixen til inversionen af ​​to mindre matricer og og operationerne med multiplikation og addition af matricer af størrelser , , , [7] .

Noter

  1. Gantmakher, 2004 , s. 53-54.
  2. Ilyin, Poznyak, 2007 , s. atten.
  3. Gantmakher, 2004 , s. 55.
  4. Vatutin E.I., Martynov I.A., Titov V.S.   Evaluering af den reelle ydeevne af moderne processorer i problemet med matrixmultiplikation for en enkelt-trådet softwareimplementering Arkiveret 11. januar 2015 på Wayback Machine // Proceedings of the Southwestern State University . Serie: Ledelse, computerteknologi, informatik. Medicinsk instrumentering. 2013. nr. 4. - S. 11-20.
  5. Vatutin E. I., Martynov I. A., Titov V. S.   Estimering af den reelle ydeevne af moderne videokort med CUDA-teknologistøtte i problemet med matrixmultiplikation Arkiveret 11. januar 2015 på Wayback Machine // Proceedings of the Southwestern State University . Serie: Ledelse, computerteknologi, informatik. Medicinsk instrumentering. 2014. nr. 2. - S. 8-17.
  6. Parallel databehandling på GPU'en. Arkitektur og softwaremodel af CUDA / Boreskov A. V., Kharlamov A. A. Markovsky N. D. et al. - M . : Izd-vo Mosk. un-ta, 2012. - 336 s.
  7. Gantmakher, 2004 , s. 57-58.

Litteratur