Laboratorio di MatLab
Algebra lineare e Geometria
Alessandro Benfenati
Ph.D. StudentDepartments of Mathematics - University of Ferrara
1 / 41
Sommario
1 IntroduzioneOrganizzazionePerche i sistemi lineari?
2 Algebra LineareDeterminanteRangoMatrice Inversa
3 Sistemi lineariMatrici e sistemiGraficaSistemi indeterminati
4 Spazi vettorialiCombinazioni lineariBasiMatrici e Basi
2 / 41
Introduzione Organizzazione
Organizzazione ed Esercizi
Date delle lezioni
07/04/2014 : 1 lezione
14/04/2014 : 2 lezione
28/04/2014 : 3 lezione Che si fa??
05/05/2014 : 4 lezione
12/05/2014 : 5 lezione
19/05/2014 : simulazione di esame
3 / 41
Introduzione Organizzazione
Organizzazione ed Esercizi
Date delle lezioni
07/04/2014 : 1 lezione
14/04/2014 : 2 lezione
28/04/2014 : 3 lezione Che si fa??
05/05/2014 : 4 lezione
12/05/2014 : 5 lezione
19/05/2014 : simulazione di esame
Esercizi.
4 / 41
Introduzione Perche i sistemi lineari?
Tariffe telefoniche
Supponiamo di dover scegliere fra due tariffe per il cellulare: con la primaabbiamo un costo di 0.16 e al minuto senza scatto alla risposta, mentre con laseconda abbiamo un costo di 0.12 e al minuti con 0.12 e di scatto allarisposta. Si vuole capire quale delle due e piu conveniente.Se indichiamo con x il tempo di chiamata e con y il costo della stessachiamata, allora posso scrivere
$
&
%
y � 0.16x
y � 0.12x � 0.12
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Minuti
Cos
to
y = 0.16xy=0.12x+0.12
(x*,y*)=(3,0.48)
Le componenti px�, y�q della soluzione del sistema rappresentano la duratadella chiamata (x�) per cui il costo (y�) della stessa e uguale,indipendentemente dalla tariffa scelta. Quindi, per decidere quale tariffaapplicare, e necessario vedere la durata media delle chiamate effettuate.
5 / 41
Introduzione Perche i sistemi lineari?
Masse
Supponiamo di avere una leva, di estremi A e B. Si desidera porre il baricentronel punto M, di coordinate date. Si vogliono trovare le masse da porre in A ein B per fare in modo che il baricentro sia nella posizione voluta.
A BM
Ricordando la formula del baricentro in due dimensioni, possiamo scrivere
$
&
%
1Mtot
pMAxA �MBxBq � xM
1Mtot
pMAyA �MByBq � yM
dove MA e MB sono le masse da porre nei punti A e B, mentre Mtot e la massatotale.Ad esempio, se A � p2, 3q, B � p8, 3q, M � p3, 3q e Mtot � 1, allora il sistemada risolvere e
$
&
%
2MA � 8MB � 3
3MA � 3MB � 3
6 / 41
Introduzione Perche i sistemi lineari?
Traiettoria parabolica
Siamo interessati a calcolare i coefficienti della traiettoria parabolica1 dellapalla in figura.
x
y
100 200 300 400 500 600
50
100
150
200
250
300
350
400
1http://commons.wikimedia.org/wiki/File:Bouncing_ball_strobe_edit.jpg7 / 41
Introduzione Perche i sistemi lineari?
Traiettoria parabolica
Siamo interessati a calcolare i coefficienti della traiettoria parabolica1 dellapalla in figura.
x
y
100 200 300 400 500 600
50
100
150
200
250
300
350
400L’equazione della parabola e
y � ax2� bx � c
quindi si scelgono tre punti e si imponeil passaggio per questi tre punti:
A � p150, 256q
B � p250, 363q
C � p360, 143q
Si ottiene il sistema$
'
'
'
'
&
'
'
'
'
%
22500a � 150b � c � 256
62500a � 250b � c � 363
129600a � 360b � c � 143
1http://commons.wikimedia.org/wiki/File:Bouncing_ball_strobe_edit.jpg8 / 41
Introduzione Perche i sistemi lineari?
Traiettoria parabolica
Siamo interessati a calcolare i coefficienti della traiettoria parabolica1 dellapalla in figura.
x
y
100 200 300 400 500 600
50
100
150
200
250
300
350
400L’equazione della parabola e
y � ax2� bx � c
quindi si scelgono tre punti e si imponeil passaggio per questi tre punti:
A � p150, 256q
B � p250, 363q
C � p360, 143q
Si ottiene il sistema$
'
'
'
'
&
'
'
'
'
%
22500a � 150b � c � 256
62500a � 250b � c � 363
129600a � 360b � c � 143
1http://commons.wikimedia.org/wiki/File:Bouncing_ball_strobe_edit.jpg9 / 41
Introduzione Perche i sistemi lineari?
Traiettoria parabolica
Siamo interessati a calcolare i coefficienti della traiettoria parabolica2 dellapalla in figura.
x
y
100 200 300 400 500 600
50
100
150
200
250
300
350
400L’equazione della parabola e
y � ax2� bx � c
quindi si scelgono tre punti e si imponeil passaggio per questi tre punti:
A � p382, 56q
B � p479, 265q
C � p590, 52q
Si ottiene il sistema$
'
'
'
'
&
'
'
'
'
%
145924a � 382b � c � 56
229441a � 479b � c � 265
348100a � 590b � c � 52
2http://commons.wikimedia.org/wiki/File:Bouncing_ball_strobe_edit.jpg10 / 41
Algebra Lineare Determinante
Algebra lineare: richiami.
Per poter risolvere adeguatamente i sistemi lineari, e necessario avere qualchestrumento dall’algebra lineare. Si comincia con i determinanti.
Def.
Determinante Il determinante di una matrice A PM1�1pRq � c P R e c stesso.Il determinante di una matrice A PM2�2pRq e definito nella maniera seguente:
det
�
a bc d
� ad � bc
Per poter definire il determinante di matrici di ordine superiore, si necessita dialtre definizioni.
Achtung!!
Il determinante si puo calcolare solo per matrice quadrate!
11 / 41
Algebra Lineare Determinante
Algebra lineare: richiami.
Def.
Minore complementare Data una matrice A PMn�npRq si definisce minore
complementare dell’elemento di posto i , j (e si indica con Mij) ildeterminante della matrice che si ottiene eliminando da A l’i-esima riga e laj-esima colonna
Ad esempio, se si volesse calcolare M21 della seguente matrice si avrebbe�
�
1 3 00 3 09 2 1
�
ñ M21 � det
�
3 02 1
� 3 � 1� 2 � 0 � 3
Def.
Complemento algerico Si definisce complemento algebrico dell’elemento di
posto i , j (e si indica con Cij) il termine p�1qi�jMij , dove Mij e il rispettivominore complementare.
Nell’esempio precedente:
C21 � p�1q2�1� 3 � �3
12 / 41
Algebra Lineare Determinante
Algebra lineare: determinante.
Def. (Determinante, Laplace)
Il Determinante di una matrice A PMn�npRq e dato dalla somma deglielementi di una qualunque riga (o colonna) moltiplicati per i rispettivicomplementi algebrici.
Se si volesse calcolare il determinante di una matrice A rispetto alla riga i siavrebbe
detpAq � ai1Ci1 � ai2Ci2 � � � � � ainCin
rispetto alla colonna j invece
detpAq � a1jC1j � a2jC2j � � � � � anjCnj
Remark
Il determinante non dipende dalla particolare riga o colonna rispetto a cui sisviluppa, inoltre svilupparlo per righe o per colonne e indifferente.
13 / 41
Algebra Lineare Determinante
Algebra lineare: determinante.
Ad esempio, se
A �
�
�
1 3 00 3 09 2 1
�
allora, sviluppando secondo la prima colonna
detpAq � 1C11 � 0C21 � 9C31
� p�1q2det
�
3 02 1
� 9p�1q4det
�
3 03 0
�
� 3� 0 � 3
Secondo la seconda riga
detpAq � 0C21 � 3C22 � 0C23
� 3p�1q4det
�
1 09 1
�
� 3
14 / 41
Algebra Lineare Determinante
Proprieta del determinante
Il determinante di una matrice quadrata gode delle seguenti proprieta:
se due colonne (o righe) sono uguali allora il determinante e nullo;
Il valore del determinante rimane immutato se si aggiunge ad una tiga(colonna) un’altra riga (colonna) moltiplicata per uno scalare;
se si scambiano due righe (colonne) il determinante cambia di segno;
detpAq � detpAtq
detpABq � detpAqdetpBq
Curiosita
Il valore assoluto del determinante di unamatrice bidimensionale e l’area del pa-rallelogramma che ha per lati le colonnedella matrice.
A �
�
1 32 1.5
A � |detpAq| � 4.5 x
y
p1, 2q
p3, 1.5q
Il risultato si generalizza a n dimensioni.
15 / 41
Algebra Lineare Determinante
Determinante, Matlab
Per fortuna MatLab ci viene in aiuto e ci consente di calcolare il determinantein maniera comoda:
A �
�
�
1 3 00 3 09 2 1
�
>> A = [1 3 0; 0 3 0; 9 2 1 ]A =
1 3 00 3 09 2 1
>> det (A)ans =
3
Achtung!
Attenzione alle matrici di determinante prossimo allo zero.
A �
�
�
1 2 34 5 67 8 9
�
>> A = [1 2 3; 4 5 6; 7 8 9]A =
1 2 34 5 67 8 9
>> det (A)ans =
6.6613e -16
16 / 41
Algebra Lineare Rango
Algebra Lineare: rango.
Def. (rango)
Si definisce rango di una matrice A PMn�npRq l’ordine del minore piu altodiverso da zero estraibile dalla matrice A.
A �
�
�
1 3 00 3 09 2 1
�
B �
�
�
1 3 00 0 09 2 1
�
A ha rango 3 mentre B ha rango 2.
Theorem
Una matrice A PMn�npRq ha rango n se e soltanto se det(A) � 0
In MatLab il rango si calcola con il comando rank:
>> A = [1 3 0; 0 0 0; 9 2 1 ];>> rank(A)ans =
2
17 / 41
Algebra Lineare Matrice Inversa
Algebra Lineare: matrice inversa.
Def. (Matrice inversa)
Data A PMn�npRq si definisce la matrice inversa una matrice B PMn�npRq
tale che BA � In, e si scrive B � A�1.
Si ha che A�1A � AA�1� I .
Theorem
A PMn�npRq ammette inversa A�1 se e soltanto se detpAq � 0. In tal caso
A�1�
M t
detpAq
dove M t e la trasposta della matrice dei complementi algebrici.
In MatLab non e necessario calcolare tutti i complementi algebrici ne ildeterminante, basta usare i comandi inv(A) oppure A^(-1).
18 / 41
Sistemi lineari Matrici e sistemi
Matrici e sistemi lineari
Esaminiamo il seguente sistema lineare:$
'
'
'
'
&
'
'
'
'
%
x1 � 2x2 � 3x3 � 0
4x1 � 2x3 � 6
x1 � x2 � x3 � 1
Indicando
A �
�
�
1 2 �34 0 21 �1 1
�
x �
�
�
x1x2x3
�
b �
�
�
061
�
allora e possibile scrivere il sistema lineare in forma matriciale e compatta
Ax � b
La prima equazione nel dettaglio:
A1, x ¡ � b1
p1, 2,�3qt , px1, x2, x3qt¡ � 0
x1 � 2x2 � 3x3 � 0
19 / 41
Sistemi lineari Matrici e sistemi
Matrici e sistemi lineari: Gauss-Jordan
Per risolvere questo sistema applichiamo il metodo di Gauss-Jordan:Matrice completa del sistema pA|bq.
�
�
1 2 �3 04 0 2 61 �1 1 1
�
T = [A,b];
III riga - I riga�
�
1 2 �3 04 0 2 60 �3 4 1
�
T(3,:) = T(3,:)-T(1 ,:);
Scambio della II riga e della III�
�
1 2 �3 00 �3 4 14 0 2 6
�
T([3 2],:) = T([2 ,3] ,:);
20 / 41
Sistemi lineari Matrici e sistemi
Matrici e sistemi lineari: Gauss-Jordan
riga III - 4(riga I)
�
�
1 2 �3 00 �3 4 10 �8 14 6
�
T(3,:) = T(3,:)-4* T(1 ,:);
III riga - 83(II riga)
�
�
1 2 �3 00 �3 4 10 0 10
3103
�
T(3,:) = T(3 ,:) -8/3* T(1 ,:);
E ora si puo procedere con la sostituzione all’indietro. Banalmente, x3 � 1dall’ultima riga. Per la seconda equazione
�3x2 � 4 � 1 � 1ñ x2 � 1T(2,:) = T(2 ,:)/ T(2 ,2);T(2,:) = [0 1 0 T(2,4)-T(2 ,3)];
E si procede nello stesso modo per la prima equazione.
21 / 41
Sistemi lineari Matrici e sistemi
Matrici e sistemi lineari: Gauss-Jordan
Questo metodo pero non pare essere molto comodo, sopratutto quando sidevono risolvere sistemi lineari con ben piu di 3 equazioni e 3 incognite. InMatLab e implementato questo algoritmo appena descritto utilizzandol’operatore di backslash \:
>> A\bans =
111
il risultato dell’operazione e la soluzionedel sistema.
Un altro metodo e l’utilizzo del comando rref:
>> rref ([A,b])ans =
1 0 0 10 1 0 10 0 1 1
Come input del comando e necessarioporre la matrice dei coefficienti con lacolonna dei termini noti. Nel caso presoin esempio, A P M3pRq, quindi pA|bq PM3�4pRq. Il risultato del comando rref
e una matrice 4�3 dove l’ultima colonnarappresenta la soluzione del sistema.
22 / 41
Sistemi lineari Matrici e sistemi
Matrici: operatori backslash e slash
Il comando A\B quando A e B sono matrici restituisce una matrice le cuicolonne sono le soluzioni dei sistemi lineari con vettore dei termini noti ugualialle colonne di B. Ad esempio:
>> A = [3 ,4; 7 8]A =
3 47 8
>> B = [1 2 ; 6 9]B =
1 26 9
>> A\Bans =
4.0000 5.0000-2.7500 -3.2500
>> A\B(:,1)ans =
4.0000-2.7500
Equivale quindi a calcolare A�1B.
23 / 41
Sistemi lineari Matrici e sistemi
Matrici: operatori backslash e slash
Il comando A/B invece calcola BA�1
A/Bans =
-1.0000 0.6667-5.0000 2.0000
Equivale quindi a calcolare (B’\A’)’.
Per capire ed avere maggiori informazioni sugli operatori aritmetici, digitare adesempio doc \ nella shell e navigare nel help browser di MatLab.
24 / 41
Sistemi lineari Matrici e sistemi
Matrici e sistemi lineari: Cramer
Nel caso in cui si abbia un sistema quadrato (cioe a n equazioni in n incognite)si puo decidere di utilizzare il metodo di Cramer, dove la componente xi delvettore delle soluzioni e data da
xi �det�
A1,A2
, . . .Ai�1, b,Ai�1
. . .An�
detpAq
ma non e molto conveniente computazionalmente parlando, in quanto richiede
il calcolo di n � 1 determinanti, molto costosi da calcolare.Ad esempio,
�
1 24 5
�
x1x2
�
�
02
percio
x1 �
det
�
0 22 5
det
�
1 24 5
�
4
3x2 �
det
�
1 04 2
det
�
1 24 5
� �
2
3
25 / 41
Sistemi lineari Matrici e sistemi
Matrici e sistemi lineari: inversa
Un’altra idea (malsana) potrebbe essere ispirata dalla scrittura Ax � b: sedetpAq � 0, allora possiamo calcolare l’inversa A�1 e scrivere la soluzione
x � A�1b
dato che Ax � b � A�1Ax � A�1b � Ix � A�1b
In effetti, concettualmente parlando non e niente di diverso da risolvereun’equazioni di primo grado come 7x � 14, dove moltiplichiamo a destra e asinistra per l’inverso di 7 e otteniamo x � 2.
Il problema risiede nel fatto che il calcolo dell’inversa della matrice e moltodispendioso: infatti il tempo impiegato per risolvere il sistema Ax � btramite il comando inv(A)*b e due o tre volte superiore rispetto al tempo
impiegato da A\b.
A = rand (1000);b = rand (1000 ,1);ticinv (A)*b;tocticA\b;toc
Si crea la matrice quadrata con1000�1000 elementi, e un vettore bdi 1000 elementi. Si risolve il sistemaAx � b prima con il metodo A�1b, poicon A\b e si confrontano i tempi con tic
e toc.
26 / 41
Sistemi lineari Grafica
Grafica 2D
Supponiamo di voler plottare la funzione y � f pxq nel piano cartesiano, dove
f pxq � x sinpxq
In MatLab e presente l’istruzione plot che ci consente di creare graficibidimensionali. Ricordando la sintassi vettoriale di MatLab, abbiamo:
>> x = -20*pi :0.1:20* pi;>> y = x.*sin (x);>> plot(x,y)
−80 −60 −40 −20 0 20 40 60 80−80
−60
−40
−20
0
20
40
60
MatLab collega con una linea i punti [x(i),y(i)] e [x(i+1),y(i+1)]: piupunti di discretizzazione creiamo, migliore qualita visiva avra il grafico.
27 / 41
Sistemi lineari Grafica
Grafica 2D
E possibile personalizzare in vari modi il grafico:
x = -20*pi :0.1:20* pi;y = x.*sin (x);plot(x,y)hold onplot(x,-x,’r--’,’Linewidth ’,2)plot(x,x,’k:’,’Linewidth ’ ,3)axis ([-60 60 -60 60])box offh = legend (’$y=x\sin (x)$’ ,...
’y=-x’ ,...’y=x’ ,...’Location ’,’North ’);
set (h ,...’Interpreter ’,’Latex ’)
−60 −40 −20 0 20 40 60−60
−40
−20
0
20
40
60
y = x sin(x)y=-xy=x
Ignoriamo il comando set(h,’Interpreter’,’Latex’).
I tre puntini ... consentono di scrivere un’istruzione MatLab su piu righe, mail programma legge l’intera istruzione come se fosse su di una riga unica.
28 / 41
Sistemi lineari Grafica
Grafica 2D
Vediamo nel dettaglio i vari comandi.
� Linewidth consente di specificare lo spessore della linea. Di default e 1.
� dopo aver dichiarato la variabile indipendente (x) e quella indipendente(y), si possono specificare i colori, lo stile e i marker dei punti.
le lettere r,b,k,c,y,m identificano i colori della linea: red, blue, black,cyan, yellow, magenta;
le scritture -, .-, :, -- identificano lo stile della linea: continuo,punto-linea, punteggiata, tratteggiata.
le scritture o,+,h,... identificano lo stile dei markers: tondo, +, esagonali,etc...
E possibile inserire tutte queste opzioni in un’unica chiamata: ad esempio’sm.-’ disegna una linea di color magenta, con markers quadrati e unalinea punteggiata e tratteggiata.
� axis([x1 x2 y1 y2]) consente di limitare la visualizzazione tra x1 e x2
per l’asse delle ascisse e fra y1 e y2 per l’asse delle ordinate;
� legend consente di disegnare la legenda del grafico, mettendo fra apici ledescrizione delle linee del grafico nell’ordine in cui son state plottate.
� box off consente di eliminare la scatola che appare attorno al grafico
29 / 41
Sistemi lineari Grafica
Sistemi lineari: interpretazione grafica
Nel caso in cui dovessimo risolvere il seguente sistema lineare"
3x � 4y � 2x � y � 5
Ñ
"
y � �
34x � 1
2
y � x � 5
i comandi MatLab sono i seguenti:
x = -10:0.1:10;y1 = -3/4*x+0.5;y2 = x -5;hold onplot(x,y1 ,’r’)plot(x,y2 ,’b’)
A = [3 4 ; 1 -1];b = [2 ;5];
sol = A\b;
plot(sol (1), sol (2), ’or’,’Markersize ’,5, ’Markerfacecolor’,’b’)legend (’y= -0.75 x+0.5’,’y=x-5’,’sol ’)xlabel (’x’) % Per dare un ’etichetta all ’asse xylabel (’y’) % Per dare un ’etichetta all ’asse ytitle (’Soluzione grafica ’) % Per dare un titolo al grafico
30 / 41
Sistemi lineari Sistemi indeterminati
Sistemi con soluzione NON unica
Non si puo essere sempre fortunati:$
'
'
'
'
&
'
'
'
'
%
3x � 4y � z � 2
x � y � z � 3
6x � 8y � 2z � 4
Ñ
$
&
%
3x � 4y � z � 2
x � y � z � 3
che ha quindi come soluzione
$
'
'
&
'
'
%
x � 2�3
7z
y � 1�4
7z
Possibili soluzioni sono quindi triplette come p2, 1, 0q,
�
�
17
7,3
7, 1
, . . . : cioe
del tipo�
2�3
7z , 1�
4
7z , z
, z P R
31 / 41
Sistemi lineari Sistemi indeterminati
Sistemi con soluzione NON unica in MatLab
Come si puo risolvere un problema del genere in MatLab? Nel seguente modo:
>> A = [3 -4 -1; 1 1 1; 6 -8 -2];>> b = [2; 3; 4];>> R =rref ([A,b])R =
1.0000 0 0.4286 2.00000 1.0000 0.5714 1.00000 0 0 0
La matrice R equivalealla scrittura:$
&
%
x � 0y � 0.4286z � 20x � y � 0.5714z � 10x � 0y � 0z � 0
Per poter dire a MatLab di considerare z come un parametro utilizziamo ilcomando syms. ı
>> syms x3>> x_temp = [-x3*R(1:2 ,3)+R(1:2 ,4)];>> sol = [x_temp ;x3];
In questo modo il calcolatore vede x3 non come una variabile numerica macome una variabile simbolica.Per calcolare una particolare soluzione (i.e. dare ad x3 un particolare valore) siutilizza il comando subs:
subs(sol ,x3 ,0)ans =
210
32 / 41
Sistemi lineari Sistemi indeterminati
Teoremi sull’esistenza delle soluzioni di un sistema
Theorem
Un sistema lineare Ax � b, con A PMn�npRq, ha un’unica soluzione se esoltanto se detpAq � 0
Theorem (Rouche-Capelli)
Un sistema lineare Ax � b con A PMm�npRq ha soluzioni se e soltanto serankpAq � rankpA|bq. In caso esistano soluzioni, allora esse formano unosottospazio affine di dimensione n � rankpAq.
In MatLab possiamo verificare l’esistenza di soluzioni (uniche o meno)utilizzando questi due teoremi e i comandi det e rank.
A = [3 -4 -1; 1 -4/3 -1/3; 6 -8 -2];b = [2; 3; 4];rankA = rank(A);rankAb = rank ([A,b]);if rankA == rankAb
fprintf (’Il sistema Ax=b ha soluzione \n’);else
fprintf (’Il sistema Ax=b non ha soluzione \n’);end
33 / 41
Spazi vettoriali Combinazioni lineari
Spazi vettoriali: alcune definizioni fondamentali
Def.
Dati v1, . . . , vq vettori una loro combinazione lineare e un’espressione del tipo
a1v1 � . . . aqvq
dove ai P R.I vettori w1, . . . ,wq si dicono linearmente indipendenti se
q
i�1
aiwi � 0ñ ai � 0 �i � 1, . . . , q
In caso contrario si dicono linearmente dipendenti.
I vettori p2, 1q e p�16,�8q sono linearmente dipendenti in quanto
1p�16, 8q � 8p2, 1q � p0, 0q
34 / 41
Spazi vettoriali Combinazioni lineari
Combinazioni lineari e matrici
Osserviamo in dettaglio il prodotto matrice vettore Ax � y :
�
�
4 6 22 3 31 2 1
�
�
�
232
�
�
�
�
301910
�
Il vettore y e una combinazione lineare delle colonne della matrice A:�
�
301910
�
� 2
�
�
421
�
� 3
�
�
632
�
� 2
�
�
231
�
Indicando con Aj la colonna j-esima della matrice A e con xi la componentei-esima del vettore x , possiamo scrivere
y � x1A1� x2A
2� x3A
3
35 / 41
Spazi vettoriali Basi
Spazi vettoriali: alcune definizioni fondamentali
Ricordando la definizione di spazio vettoriale, si riportano le seguenti
Def.
Un sottoinsieme U di uno spazio vettoriale V prende il nome di sottospaziovettoriale se son verificate le seguenti condizioni:
1 0 P U
2�u1, u2 P U, u1 � u2 P U
3�α P R,�u P U αu P R
Def.
Una base di uno spazio vettoriale e un insieme di generatori linearmente
indipendenti. Il numero dei vettori appartenenti alla base prende il nome didimensione dello spazio vettoriale.
Uno spazio vettoriale puo avere piu basi, ma avran tutte la stessa dimensione.Data una base, un vettore e esprimibile in un unico modo in quella determinatabase.
36 / 41
Spazi vettoriali Basi
Spazi vettoriali: basi
Ad esempio, R2 puo avere le seguenti due basi: B � tp1, 0q, p0, 1qu eB1 � tp1, 1q, p1,�1qu. Il vettore p2, 2q ha coordinate in base B (2,2), mentre inbase B1 ha coordinate p2, 0q:
−3 −2 −1 0 1 2 3−3
−2
−1
0
1
2
3
(0,1)
(1,0)(0,0)
(2,2)
x
y
−3 −2 −1 0 1 2 3−3
−2
−1
0
1
2
3
(1,1)
(1,−1)
(0,0)
(2,2)
x
y
A sinistra sono plottati i vettori della base B, mentre a destra i vettori dellabase B1. In rosso sono rappresentati i percorsi da fare nei due casi perraggiungere il vettore (2,2).
37 / 41
Spazi vettoriali Basi
Matrici e basi
Def.
Lo spazio delle colonne, o RpAq, di una matrice A PMm�npRq e dato da tutti ipossibili prodotti del tipo Ax, con x di dimensioni opportune.
Un sistema lineare Ax � b ha soluzione se e soltanto se b P RpAq.
Ricordando che il prodotto Ax e una combinazione lineare delle colonne dellamatrice A, possiamo dire che le colonne di A sono linearmente indipendenti
se e soltanto se il sistema Ax � 0 ha come unica soluzione x � 0, ossia il
vettore nullo.
Def.
Il nucleo, o kernel, di A e dato da tutti i vettori x per cui Ax � 0:
NpAq � tx P Rm|Ax � 0u
Quindi, se NpAq � t0u, i.e. e costituito da solo il vettore nullo, allora lecolonne di A sono l.i.; altrimenti, cioe se esistono vettori y diversi da quellonullo per cui Ay � 0, sono l.d.
38 / 41
Spazi vettoriali Matrici e Basi
Matrici e basi, esempio
Supponiamo di avere i seguenti vettori: v1 � p1, 4, 0, 1q, v2 � p2, 2, 3, 0q,v3 � p�1,�1, 2,�1q, v4 � p1,�2, 1,�4q. Si vuole capire se sono linearmenteindipendenti o meno. Per farlo, si scrive
xv1 � yv2 � zv3 � tv4 � 0 x , y , z , t P R
Si cercano x , y , z , t per cui l’uguaglianza e verificata. Nel caso in cuipx , y , z , tq � p0, 0, 0, 0q, allora i vi sono linearmente indipendenti, altrimentisono linearmente dipendenti. Quindi:
x
�
�
�
�
1401
�
Æ
Æ
� y
�
�
�
�
2230
�
Æ
Æ
� z
�
�
�
�
�1�12
�1
�
Æ
Æ
� t
�
�
�
�
1�21
�4
�
Æ
Æ
�
�
�
�
�
0000
�
Æ
Æ
che equivale a dover risolvere$
'
'
'
'
'
'
'
'
&
'
'
'
'
'
'
'
'
%
x � 2y � z � t � 0
4x � 2y � z � 2t � 0
3y � 2z � 1t � 0
x � z � 4t � 0
39 / 41
Spazi vettoriali Matrici e Basi
Matrici e basi, esempio. Un altro.
Supponiamo di avere i seguenti vettori: v1 � p1, 4, 0, 1q, v2 � p2, 2, 3, 0q,v3 � p�1,�1, 2,�1q. Si vuole capire se sono linearmente indipendenti o meno.Per farlo, si scrive
xv1 � yv2 � zv3 � 0 x , y , z P R
Si cercano x , y , z per cui l’uguaglianza e verificata. Nel caso in cuipx , y , z ,� p0, 0, 0q, allora i vi sono linearmente indipendenti, altrimenti sonolinearmente dipendenti. Quindi:
x
�
�
�
�
1401
�
Æ
Æ
� y
�
�
�
�
2230
�
Æ
Æ
� z
�
�
�
�
�1�12
�1
�
Æ
Æ
�
�
�
�
�
0000
�
Æ
Æ
che equivale a dover risolvere$
'
'
'
'
'
'
'
'
&
'
'
'
'
'
'
'
'
%
x � 2y � z � 0
4x � 2y � z � 0
3y � 2z � 0
x � z � 0
40 / 41
Spazi vettoriali Matrici e Basi
Lineare indipendenza e rango
Remark
Il rango di una matrice corrisponde al numero di colonne (o righe) linearmenteindipendenti della matrice stessa.
A
d esempio, se si dovesse verificare quale dei seguenti vettori sono linearmenteindipendenti, si considerano come colonne di una matrice A e se ne calcola ilrango.v1 � p1, 1, 1q, v2 � p3, 6, 1q, v3 � p1, 2, 1q, v4 � p6, 12, 2q, v5 � p�2,�2,�2q.
>> A = [1 1 13 6 11 2 16 12 2-2 -2 -2]’;
>> rank(A) % o anche rref(A)
41 / 41