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:

  1. Utilitzar funcions bàsiques de matrius.
  2. Aplicar funcions per a la manipulació de matrius.
  3. Resoldre problemes comuns utilitzant funcions de matrius.

Funcions Bàsiques de Matrius

  1. Transposició de Matrius

La transposició d'una matriu intercanvia les seves files i columnes. En MATLAB, això es fa amb l'operador '.

A = [1, 2, 3; 4, 5, 6];
A_transpose = A';

Explicació:

  • A és una matriu de 2x3.
  • A' és la transposició de A, resultant en una matriu de 3x2.

  1. 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.

B = [1, 2; 3, 4];
B_inverse = inv(B);

Explicació:

  • B és una matriu de 2x2.
  • inv(B) calcula la inversa de B.

  1. Determinant d'una Matriu

El determinant és un valor escalar que es pot calcular per a matrius quadrades. MATLAB utilitza la funció det.

C = [1, 2; 3, 4];
det_C = det(C);

Explicació:

  • C és una matriu de 2x2.
  • det(C) calcula el determinant de C.

  1. 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.

D = [1, 2, 3; 4, 5, 6; 7, 8, 9];
trace_D = trace(D);

Explicació:

  • D és una matriu de 3x3.
  • trace(D) calcula la traça de D.

Funcions per a la Manipulació de Matrius

  1. Reshape

La funció reshape canvia la mida d'una matriu sense alterar les seves dades.

E = [1, 2, 3, 4, 5, 6];
E_reshaped = reshape(E, [2, 3]);

Explicació:

  • E és un vector de 1x6.
  • reshape(E, [2, 3]) reconfigura E en una matriu de 2x3.

  1. 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 i F2 són matrius de 2x2.
  • [F1, F2] concatena F1 i F2 horitzontalment, resultant en una matriu de 2x4.
  • [F1; F2] concatena F1 i F2 verticalment, resultant en una matriu de 4x2.

  1. Suma i Producte de Matrius

MATLAB permet sumar i multiplicar matrius directament utilitzant els operadors + i *.

G1 = [1, 2; 3, 4];
G2 = [5, 6; 7, 8];
G_sum = G1 + G2;
G_product = G1 * G2;

Explicació:

  • G1 i G2 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.

© Copyright 2024. Tots els drets reservats