Matrice par blocs

De testwiki
Aller à la navigation Aller à la recherche

Modèle:Sources

Un matrice présente une structure par blocs si l'on peut isoler les termes non nuls dans des sous-matrices (ici la structure « diagonale par blocs » d'une réduite de Jordan).

On appelle matrice par blocs une matrice divisée en blocs à partir d'un groupement quelconque de termes contigus de sa diagonale. Chaque bloc étant indexé comme on indicerait les éléments d'une matrice, la somme et le produit de deux matrices partitionnées suivant les mêmes tailles de bloc, s'obtiennent avec les mêmes règles formelles que celles des composantes et en veillant à l'ordre des facteurs dans les produits matriciels. L'intérêt du partitionnement des matrices en bloc vient de ce que le produit d'un bloc par un bloc dont toutes les composantes sont nulles (sous-matrice nulle) est une matrice nulle. Le partitionnement des matrices permet de distribuer les calculs matriciels entre plusieurs processeurs travaillant concurremment : c'est l'un des principes de base du calcul parallèle.

Définition

En théorie des matrices, une matrice par blocs ou matrice partitionnée est une matrice divisée en sous-matrices rectangulaires à partir d'une division de sa diagonale : ces sous-matrices sont appelées blocs[1]. On peut dire également que la matrice est écrite en termes de sous-matrices mises côte à côte. Une matrice par blocs doit se conformer à une manière cohérente de division des lignes et des colonnes :

  • on groupe les lignes en « groupes » adjacents, et les colonnes de la même manière ;
  • on convient que les blocs diagonaux sont des sous-matrices carrées.

La partition se fait dans les rectangles décrits par un groupe de lignes adjacentes croisant un groupe de colonnes adjacentes. En d'autres termes, la matrice est divisée par certaines des lignes horizontales et verticales la traversant.

Exemple

La matrice

𝐏=[1122211222334443344433444]

peut être partitionnée en quatre blocs

𝐏11=[1111],𝐏12=[222222],𝐏21=[333333],𝐏22=[444444444].

On peut alors écrire la matrice par bloc comme :

𝐏partitionnee=[𝐏11𝐏12𝐏21𝐏22].

Multiplication de matrices par blocs

Sous certaines conditions d'homogénéité du partitionnement en blocs, un produit de matrices peut être effectué par blocs, c'est-à-dire en considérant seulement des opérations sur les sous-matrices[1]. Étant donné une matrice Modèle:Math Modèle:Math avec Modèle:Mvar partitions de lignes et Modèle:Mvar de colonnes :

𝐀=[𝐀11𝐀12𝐀1s𝐀21𝐀22𝐀2s𝐀q1𝐀q2𝐀qs]

et une matrice Modèle:Math Modèle:Math avec Modèle:Mvar partitions de lignes et Modèle:Mvar partitions de colonnes :

𝐁=[𝐁11𝐁12𝐁1r𝐁21𝐁22𝐁2r𝐁s1𝐁s2𝐁sr],

et à la condition que le nombre de colonnes de chaque bloc Aij soit égal au nombre de lignes du bloc Bjk, le produit matriciel :

𝐂=𝐀𝐁

peut être effectué par blocs, donnant Modèle:Math, matrice Modèle:Math avec Modèle:Mvar partitions de lignes et Modèle:Mvar partitions de colonnes. Les blocs sous-matrices de Modèle:Math sont calculés de la manière suivante[2] :

𝐂αβ=γ=1s𝐀αγ𝐁γβ,α=1,,q,β=1,,r.
le produit de matrices n'est pas commutatif, donc l'ordre de facteurs ne changera pas.

Matrices par blocs diagonales

Une matrice bloc-diagonale (ou diagonale par blocs) est une matrice carrée qui possède des blocs matrices carrées sur la diagonale principale, tels que les blocs non diagonaux soient des matrices nulles. Une matrice bloc-diagonale Modèle:Math est de forme :

𝐀=[𝐀1000𝐀2000𝐀n]

Modèle:Math est une matrice carrée ; en d'autres termes, c'est la somme directe de Modèle:Math. On peut aussi noter ceci : 𝐀1𝐀2𝐀n ou Modèle:Math, ce dernier étant une expression dans le même formalisme que celui d'une matrice diagonale. Toute matrice carrée peut être de manière triviale considérée comme une matrice bloc-diagonale avec un seul bloc.

Pour le déterminant et la trace, les expressions sont alors :

det(𝐀)=det(𝐀1)det(𝐀n),
trace(𝐀)=trace(𝐀1)++trace(𝐀n).

La transposée sera donnée par:

𝐀T=[𝐀1T000𝐀2T000𝐀nT]


Pour tout entier Modèle:Mvar, on a :

(𝐀1000𝐀2000𝐀n)n=(𝐀1n000𝐀2n000𝐀nn)

L'inverse d'une matrice diagonale par blocs est donc la matrice, diagonale par blocs, des inverses des blocs :

(𝐀1000𝐀2000𝐀n)1=(𝐀11000𝐀21000𝐀n1)

Matrices tridiagonales par blocs

Une matrice tridiagonale par bloc est une autre matrice par bloc spéciale, qui est comparable à la matrice diagonale par blocs, c'est-à-dire une matrice carrée ayant des matrices blocs carrées sur les diagonales principales, inférieure et supérieure, les autres blocs étant des matrices nulles. C'est une matrice tridiagonale essentiellement, mais qui possède des sous-matrices à la place des coefficients scalaires. Une matrice tridiagonale par bloc Modèle:Math a la forme :

𝐀=[𝐁1𝐂10𝐀2𝐁2𝐂2𝐀k𝐁k𝐂k𝐀n1𝐁n1𝐂n10𝐀n𝐁n]

Modèle:Math, Modèle:Math et Modèle:Math sont des sous-matrices carrées sur les diagonales inférieure, principale et supérieure respectivement.

Les matrices tridiagonales par blocs sont parfois rencontrées dans les solutions numériques des problèmes d'ingénierie (Modèle:Ex en calcul de structures et en mécanique des fluides numérique). Les méthodes numériques optimisées pour une factorisation LU sont disponibles ainsi que des algorithmes de résolution de systèmes d'équations avec une matrice tridiagonale par bloc pour matrice de coefficients. Modèle:Refnec

Matrices de Toeplitz par blocs

Une matrice de Toeplitz par bloc est une autre matrice par bloc spéciale, contenant des blocs répétés le long des diagonales de la matrice, comme pour les coefficients d'une matrice de Toeplitz. Une matrice de Toeplitz par bloc Modèle:Math est de la forme :

𝐀=[𝐀(1,1)𝐀(1,2)𝐀(1,n1)𝐀(1,n)𝐀(2,1)𝐀(1,1)𝐀(1,2)𝐀(1,n1)𝐀(2,1)𝐀(1,1)𝐀(1,2)𝐀(n1,1)𝐀(2,1)𝐀(1,1)𝐀(1,2)𝐀(n,1)𝐀(n1,1)𝐀(2,1)𝐀(1,1)]

Somme directe

Pour toutes matrices arbitraires Modèle:Math (de taille Modèle:Math) et Modèle:Math (de taille Modèle:Math), il existe une somme directe de Modèle:Math et Modèle:Math, notée 𝐀𝐁 définie par :

𝐀𝐁=[a11a1n00am1amn0000b11b1q00bp1bpq].

Par exemple,

[132231][1601]=[13200231000001600001].

Cette opération est généralisable naturellement à tous tableaux de dimensions arbitraires (pourvu que Modèle:Math et Modèle:Math aient le même nombre de dimensions).

Notons que tout élément dans la somme directe de deux espaces vectoriels matriciels peut être représentée comme une somme directe de matrices.

Produit direct

Modèle:Article principal De manière similaire à la somme directe, il existe une opération appelée produit direct portant sur les matrices par blocs.

Utilisations et applications

En algèbre linéaire, l'utilisation d'une matrice par bloc correspond à avoir une application linéaire pensée en termes de groupes correspondant à des vecteurs de base. Cela rejoint l'idée d'avoir des décompositions en sommes directes distinctes des ensembles de définitions de départ et d'arrivée. Cela est particulièrement significatif si un bloc est une matrice nulle ; ceci indique qu'un sous-ensemble est linéaire à une sous-somme. Étant donné cette interprétation par des applications linéaires et des sommes directes, il existe un genre spécial de matrice par bloc pour les matrices carrées (où m=n). Dans ce cas, on peut postuler une interprétation de ce type de matrice comme un endomorphisme d'un espace de dimension n V ; la structure par bloc dans lesquels les blocs sont disposés en lignes et colonnes est importante car elle correspond à obtenir une décomposition en somme directe simple (au lieu de deux) sur V. Dans ce cas, par exemple, les blocs diagonaux les plus évidents sont tous carrés. Ce type de structure est nécessaire pour la description de la réduction de Jordan.

Cette technique est utilisée pour alléger les calculs sur les matrices, les développements en colonnes et lignes, et autres applications en informatique, y compris la conception de puce d'intégration à très grande échelle. L'algorithme de Strassen pour des produits matriciels rapides, comme le code de Hamming (7,4) pour la détection d'erreur et la récupération de données dans les transmissions de données.

Elle est utilisée en sciences sociales en analyse des réseaux sociaux et en analyse de similitudes pour la détection des interactions corrélatives[3].

Notes et références

Modèle:Traduction/Référence Modèle:Références

Voir aussi

Article connexe

Déterminant par blocs

Bibliographie

Modèle:Ouvrage

Modèle:Palette

Modèle:Portail