Moltiplicazione di matrici

Da Wikipedia, l'enciclopedia libera.
Vai a: navigazione, cerca
Il disegno mostra il caso in cui A è 4 × 2 e B è 2 × 3, e si voglia calcolare l'elemento (C)12 = (AB)12 della matrice prodotto C = A x B, di dimensioni 4 x 3:
(C)_{12} = (AB)_{12} = \sum_{r=1}^2 a_{1r}b_{r2} = a_{11}b_{12}+a_{12}b_{22}

In matematica, e più precisamente in algebra lineare, la moltiplicazione di matrici è il prodotto righe per colonne tra due matrici, possibile sotto certe condizioni, che dà luogo ad un'altra matrice. Se una matrice rappresenta una applicazione lineare, il prodotto fra matrici è la traduzione della composizione di due applicazioni lineari. Quindi se due matrici 2 x 2 rappresentano ad esempio due rotazioni nel piano di angoli α e β, il loro prodotto è definito in modo tale da rappresentare una rotazione di angolo α + β.

Indice

[modifica] Definizione

Sia K un campo. Siano date una matrice A di dimensione m x n ed una seconda matrice B di dimensioni n x p a valori in K. Siano aij gli elementi di A e bij gli elementi di B. Si definisce il prodotto matriciale di A per B la matrice C = A x B a valori in K e di dimensioni m x p i cui elementi cij sono dati da:[1]

c_{ij} = \sum_{r=1}^n a_{ir}b_{rj} = a_{i1}b_{1j} + a_{i2}b_{2j} + \cdots + a_{in}b_{nj}.

per ogni valore di riga i e di colonna j.

Due matrici possono essere moltiplicate fra loro solo se il numero di colonne della prima è uguale al numero di righe della seconda, ed il prodotto tra due matrici non è commutativo.[2]

Una matrice può essere moltiplicata con se stessa solo se è quadrata. In questo caso, il prodotto  A\times A si denota con A2. Più in generale, la potenza n-esima di una matrice è:

 A^n = \begin{matrix} \underbrace{A\times A\cdots A} \\ n \end{matrix}

dove n è un numero naturale.

Un'altra definizione informale della moltiplicazione matriciale, atta a permetterne una più rapida e immediata memorizzazione, è "moltiplicazione riga per colonna", infatti, per ottenere l'elemento della i-esima riga e j-esima colonna della matrice prodotto basta porre un indice sulla riga i della prima matrice, l'altro sulla colonna j della seconda e moltiplicare gli elementi indicati, quindi scorrere di un posto con le dita e moltiplicare, fino a raggiungere la fine della colonna e della riga, infine sommare i vari prodotti ottenuti.

[modifica] Proprietà

  • La moltiplicazione fra matrici è generalmente non commutativa (in altre parole, AB e BA sono due matrici diverse).
  • La moltiplicazione fra matrici è distributiva rispetto alla somma. In altre parole,
A(B + C) = AB + AC
(A + B)C = AC + BC
  • Per ogni scalare k vale:
k(AB) = (kA)B = A(kB)
  • La moltiplicazione fra matrici è associativa:
A(BC) = (AB)C
AI = IA = A
  • La matrice nulla 0 con n righe annulla qualsiasi altra matrice. In particolare, se A è quadrata con n righe, abbiamo
0A = A0 = 0
  • Una matrice quadrata A è invertibile se esiste un'altra matrice B tale che AB = BA = I dove I è la matrice identità con lo stesso numero di righe di A. Molte matrici non sono invertibili. In altre parole, anche se l'insieme dei valori di partenza è un campo, le matrici non formano un campo. Ad esempio la matrice seguente non è invertibile.

  \begin{bmatrix}
    0 & 0 \\
    1 & 1 \\
  \end{bmatrix}
  • Algebra delle matrici, alcune proprietà significative del prodotto righe per colonne :
 (AB)^{-1} = B^{-1}A^{-1} \
(AB)^\mathrm{T} = B^\mathrm{T} A^\mathrm{T} \

[modifica] Prodotto di una matrice per un vettore

Una matrice con una sola riga, cioè di dimensione 1 \times n, è un vettore riga. Analogamente, una matrice con una sola colonna, cioè di dimensione m \times 1 è un vettore colonna. Nell'operazione di moltiplicazione questi due oggetti si comportano in modo differente.

Siano A = (aij) è una matrice m \times n e  \mathbf v = \{v_i\} è un vettore colonna n \times 1. Il prodotto di A per il vettore v è il prodotto di matrici:

 A \mathbf v = \mathbf c

Le componenti di c sono:

c_i = \sum_{j=1}^n a_{ij}v_{j} = a_{i1}v_{1} + a_{i2}v_{2} + \cdots + a_{in}v_{n}

[modifica] Algoritmo

Un algoritmo in C per la moltiplicazione Matrice \times vettore è

//Moltiplicazione matrice × vettore

   /* RM = numero di righe della matrice */
   /* CM = numero di colonne della matrice (uguale al numero di righe del vettore) */
   /* M = matrice [RM] × [CM] */
   /* V = vettore [CM]        */
   /* il vettore risultato sarà VR [RM] con stesso numero di righe della matrice */
   /* poniamo VR [RM] sia inizialmente posto con tutti i valori a zero. */
   for (i=0; i<RM; i++)       /* scandisco le righe con l'indice i */
       for (j=0; j<CM; j++)   /* e le colonne con j  */
           VR[i] = VR[i] + M[i][j] * V[j];

Questo prodotto è ampiamente usato in algebra lineare perché descrive una applicazione lineare. Ad esempio, il prodotto


  \begin{bmatrix}
    \cos \alpha & -\sin\alpha  \\
    \sin\alpha & \cos\alpha \\
  \end{bmatrix}
\times
  \begin{bmatrix}
    x \\
    y \\
  \end{bmatrix}
= 
\begin{bmatrix}
    x\cos\alpha - y\sin\alpha\\
    x\sin\alpha + y\cos\alpha\\
  \end{bmatrix}

rappresenta una rotazione di angolo α nel piano cartesiano.

In alcuni casi può essere utile effettuare il prodotto vettore riga \times Matrice: il risultato è un altro vettore riga.

[modifica] Prodotto di una matrice per uno scalare

La moltiplicazione di una matrice A = (ai,j) per uno scalare r, cioè un elemento dell'anello cui appartengono gli ai,j, è ottenuta moltiplicando ogni elemento di A per lo scalare:

 rA = (ra_{i,j}) \

Se l'anello di partenza non è commutativo, questa viene indicata come moltiplicazione sinistra, e può differire dalla moltiplicazione destra:

 Ar = (a_{i,j}r) \

[modifica] Proprietà

Se l'anello di partenza non è commutativo, ad esempio se è l'anello dei quaternioni, le due moltiplicazioni non sono equivalenti. Ad esempio:


  i\begin{bmatrix} 
    i & 0 \\ 
    0 & j \\ 
  \end{bmatrix}
= \begin{bmatrix}
    -1 & 0 \\
     0 & k \\
  \end{bmatrix}
\ne \begin{bmatrix}
    -1 & 0 \\
    0 & -k \\
  \end{bmatrix}
= \begin{bmatrix}
    i & 0 \\
    0 & j \\
  \end{bmatrix}i

[modifica] Costruzioni alternative

Sono stati definiti nel tempo altri tipi di prodotto tra matrici, meno fortunati in quanto a utilizzo dell'usuale prodotto righe per colonne. In particolare si può nominare il prodotto di Hadamard o prodotto puntuale, in cui il prodotto di A = (aij)ij e B = (bij)ij è dato da AB=(a_{ij} \cdot b_{ij})_{ij}. Ad esempio:

\begin{bmatrix}
1 & 2 \\
3 & -1
\end{bmatrix}
\cdot \begin{bmatrix}
-3 & 0 \\
1 & 4
\end{bmatrix}
=\begin{bmatrix}
-3 & 0 \\
3 & -4
\end{bmatrix}.

Un'altra costruzione è data dal prodotto di Kronecker, che trova applicazioni nel calcolo tensoriale, dato da

AB =
  \begin{bmatrix} 
    a_{11}B & a_{12}B & \cdots & a_{1n}B \\ 
    \vdots & \vdots & \ddots & \vdots \\ 
    a_{m1}B & a_{m2}B & \cdots & a_{mn}B
  \end{bmatrix}.

espressa sotto forma di matrice a blocchi, in cui ogni blocco ij-esimo è dato dalla matrice B moltiplicata per lo scalare aij.

[modifica] Esempi

  • Una matrice 2\times 3 moltiplicata per 3 \times 3 dà una matrice 2\times 3

  \begin{bmatrix}
    1 & 1 & 2 \\
    0 & 1 & -3 \\
  \end{bmatrix}
\times
  \begin{bmatrix}
    1 & 1 & 1\\
    2 & 5 & 1\\
    0 & -2 & 1
  \end{bmatrix}
=

1ª riga della matrice risultato:

 C_{11} = [(1 \times 1) + (1 \times 2) + (2 \times 0)] = 3
 C_{12} = [(1 \times 1) + (1 \times 5) + (2 \times -2)] = 2
 C_{13} = [(1 \times 1) + (1 \times 1) + (2 \times 1)] = 4

2ª riga della matrice risultato:

 C_{21} = [(0 \times 1) + (1 \times 2) + (-3 \times 0)] = 2
 C_{22} = [(0 \times 1) + (1 \times 5) + (-3 \times -2)] = 11
 C_{23} = [(0 \times 1) + (1 \times 1) + (-3 \times 1)] = -2


Risultato 2\times 3:


  \begin{bmatrix}
    C_{11} & C_{12} & C_{13} \\
    C_{21} & C_{22} & C_{23} \\
  \end{bmatrix}
=
  \begin{bmatrix}
    3 & 2 & 4\\
    2 & 11 & -2\\
  \end{bmatrix}
  • Si consideri il prodotto:

 \begin{bmatrix}
   1 & 2 & 0 \\
   3 & -1 & 4 \\
  \end{bmatrix}
\times
 \begin{bmatrix}
   1 \\
   0 \\
   -1 \\
 \end{bmatrix}
=
 \begin{bmatrix}
   (1 \times 1 + 2 \times 0 + 0 \times -1) \\
   (3 \times 1 + -1 \times 0 + 4 \times -1) \\
 \end{bmatrix}
=
\begin{bmatrix}
   1 \\
   -1 \\
 \end{bmatrix}

Il risultato di questa operazione è un altro vettore colonna, di tipo m \times 1.

[modifica] Note

  1. ^ Hoffman, Kunze, op. cit., Pag. 17
  2. ^ Hoffman, Kunze, op. cit., Pag. 18

[modifica] Bibliografia

  • Serge Lang, Algebra lineare, Torino, Bollati Boringhieri, 1992. ISBN 88-339-5035-2
  • Kenneth Hoffman; Ray Kunze, Linear Algebra, 2a ed., Englewood Cliffs, New Jersey, Prentice - Hall, inc., 1971. ISBN 01-353-6821-9
  • Marco Abate; Chiara de Fabritiis, Geometria analitica con elementi di algebra lineare, Milano, McGraw-Hill, 2006. ISBN 88-386-6289-4.
  • Edoardo Sernesi, Geometria 1, 2a ed., Torino, Bollati Boringhieri, 1989. ISBN 88-339-5447-1.

[modifica] Voci correlate

[modifica] Altri progetti

[modifica] Collegamenti esterni

matematica Portale Matematica: accedi alle voci di Wikipedia che trattano di matematica
Strumenti personali
Namespace
Varianti
Azioni
Navigazione
Comunità
Stampa/esporta
Strumenti
Altre lingue