En aquest tema, explorarem les funcions de matrius en MATLAB, que són essencials per a la manipulació i l'anàlisi de dades. Les funcions de matrius permeten realitzar operacions complexes de manera eficient i amb codi concís. Aprendrem a utilitzar funcions predefinides per a operacions comunes com la transposició, la inversió, el càlcul de determinats, i més.
Objectius d'Aprenentatge
Al final d'aquest tema, hauràs après a:
- Utilitzar funcions bàsiques de matrius.
- Aplicar funcions per a la manipulació de matrius.
- Resoldre problemes comuns utilitzant funcions de matrius.
Funcions Bàsiques de Matrius
- Transposició de Matrius
La transposició d'una matriu intercanvia les seves files i columnes. En MATLAB, això es fa amb l'operador '
.
Explicació:
A
és una matriu de 2x3.A'
és la transposició deA
, resultant en una matriu de 3x2.
- Inversió de Matrius
La inversió d'una matriu és una operació que només es pot realitzar en matrius quadrades (mateix nombre de files i columnes). MATLAB proporciona la funció inv
per a aquest propòsit.
Explicació:
B
és una matriu de 2x2.inv(B)
calcula la inversa deB
.
- Determinant d'una Matriu
El determinant és un valor escalar que es pot calcular per a matrius quadrades. MATLAB utilitza la funció det
.
Explicació:
C
és una matriu de 2x2.det(C)
calcula el determinant deC
.
- Traça d'una Matriu
La traça d'una matriu és la suma dels elements de la diagonal principal. MATLAB utilitza la funció trace
.
Explicació:
D
és una matriu de 3x3.trace(D)
calcula la traça deD
.
Funcions per a la Manipulació de Matrius
- Reshape
La funció reshape
canvia la mida d'una matriu sense alterar les seves dades.
Explicació:
E
és un vector de 1x6.reshape(E, [2, 3])
reconfiguraE
en una matriu de 2x3.
- Concatenació de Matrius
Les matrius es poden concatenar horitzontalment o verticalment utilitzant les funcions horzcat
i vertcat
, o simplement utilitzant els operadors []
.
F1 = [1, 2; 3, 4]; F2 = [5, 6; 7, 8]; F_horz = [F1, F2]; % Horitzontal F_vert = [F1; F2]; % Vertical
Explicació:
F1
iF2
són matrius de 2x2.[F1, F2]
concatenaF1
iF2
horitzontalment, resultant en una matriu de 2x4.[F1; F2]
concatenaF1
iF2
verticalment, resultant en una matriu de 4x2.
- Suma i Producte de Matrius
MATLAB permet sumar i multiplicar matrius directament utilitzant els operadors +
i *
.
Explicació:
G1
iG2
són matrius de 2x2.G1 + G2
suma les matrius element a element.G1 * G2
realitza el producte matriu.
Exercicis Pràctics
Exercici 1: Transposició i Inversió
Crea una matriu de 3x3, calcula la seva transposició i la seva inversa.
% Solució H = [1, 2, 3; 4, 5, 6; 7, 8, 9]; H_transpose = H'; H_inverse = inv(H); % Nota: Aquesta matriu no té inversa, MATLAB donarà un error.
Exercici 2: Determinant i Traça
Crea una matriu de 4x4 i calcula el seu determinant i la seva traça.
% Solució I = [1, 2, 3, 4; 5, 6, 7, 8; 9, 10, 11, 12; 13, 14, 15, 16]; det_I = det(I); trace_I = trace(I);
Exercici 3: Reshape i Concatenació
Crea un vector de 1x8 i reconfigura'l en una matriu de 2x4. Després, concatena aquesta matriu amb una altra matriu de 2x4.
% Solució J = [1, 2, 3, 4, 5, 6, 7, 8]; J_reshaped = reshape(J, [2, 4]); K = [9, 10, 11, 12; 13, 14, 15, 16]; J_K_concat = [J_reshaped; K];
Resum
En aquest tema, hem après a utilitzar diverses funcions de matrius en MATLAB per a la manipulació i l'anàlisi de dades. Hem cobert funcions bàsiques com la transposició, la inversió, el càlcul de determinants i la traça, així com funcions per a la manipulació de matrius com reshape
i la concatenació. Aquests conceptes són fonamentals per treballar amb matrius de manera eficient en MATLAB.
Curs de Programació en MATLAB
Mòdul 1: Introducció a MATLAB
- Començant amb MATLAB
- Interfície i Entorn de MATLAB
- Comandes i Sintaxi Bàsiques
- Variables i Tipus de Dades
- Operacions i Funcions Bàsiques
Mòdul 2: Vectors i Matrius
- Creació de Vectors i Matrius
- Operacions amb Matrius
- Indexació i Segmentació
- Funcions de Matrius
- Àlgebra Lineal en MATLAB
Mòdul 3: Estructures de Programació
- Flux de Control: if, else, switch
- Bucles: for, while
- Funcions: Definició i Abast
- Scripts vs. Funcions
- Depuració i Gestió d'Errors
Mòdul 4: Visualització de Dades
- Conceptes Bàsics de Gràfics
- Gràfics 2D
- Gràfics 3D
- Personalització de Gràfics
- Tècniques Avançades de Gràfics
Mòdul 5: Anàlisi de Dades i Estadística
- Importació i Exportació de Dades
- Estadístiques Descriptives
- Preprocessament de Dades
- Anàlisi de Regressió
- Proves Estadístiques
Mòdul 6: Temes Avançats
- Entrada/Sortida de Fitxers
- Gestió de Grans Conjunts de Dades
- Tècniques d'Optimització
- Conceptes Bàsics de Simulink
- Computació Paral·lela