You are on page 1of 26

Manejo de Vectores y Matrices

en Matlab
Definición de un vector
Vector fila: elementos separados con comas (,) o con espacios:
Vector columna: elementos separados con punto y coma (;) :

Fila a columna y viceversa: con la transpuesta ( ´ )

Ejemplos a) desde línea de comandos, b) prog.:

Vector fila Vector columna
El operador (:)
El operador (:) es utilizado para
especificar rangos, su forma de empleo
es muy simple y sus beneficios inmensos.
Forma de empleo:
<vector>=[val_ini : paso : val_fin];

Ejemplo:
Definición de matrices
Las matrices se definen por filas, los
elementos de la fila se separan por espacios o
comas (,) mientras que las filas van separadas
por punto y coma (;)

Ejemplos: Se ve en pantalla:
A=[1,2,3; 4,5,6; 7,8,9]
ó
A=[1 2 3; 4 5 6; 7 8 9]
Definición de matrices
Observación 1
Una vez definida la matriz esta pasa a su
espacio de trabajo (Workspace) y estará
disponible para realizarce cualquier
operación.
Ejemplo:
Definición de matrices
Observación 2
MatLab introduce por defecto una
variable llamada (ans) de “answer”
sobre la cual también se puede operar.

Ejemplo:
Definición de matrices
Observación 3
En MatLab se permite la creación de
matrices vacías.

Ejemplo:
¿Cómo acceder a los valores?
Los elementos de una matriz se acceden
poniendo los 2 índices entre paréntesis
separados por coma (Ej. A(1,2)).
Ejemplo: A(1,2)
¿Cómo acceder a los valores?
Observación 1
Si estamos trabajando con vectores
bastaría colocar un solo índice.

Ejemplo:
Operaciones

Operaciones con escalares: VECTORES:
A+B=[a1+b1 a2+b2 ... an+bn]
v+k adición o suma
v-k sustracción o resta A-B =[a1-b1 a2-b2 ... an-bn]
v*k multiplicación
v/k divide por k cada elemento
de v A .* B=[a1.b1 a2.b2 ... an.bn]
k./v divide k por cada elemento A y B deben ser horizontales o verticales.
de v
v.^k potenciación cada Si A=[fila] y B=[Columna]: Producto punto = A*B
componente de v esta
elevado a k
k.^v potenciación k elevado A./ B=[a1/b1 a2/b2 ... an/bn]
cada componente de v A .^ n1=[a1^n1 a2^n1... an^n1 ]

MATRICES: sin el punto A*B A/ B A ^ n1
Operaciones
Ejemplo:
Matrices predefinidas
eye(n) Matriz unitaria (n x n)
zeros(n) Matriz de ceros (n x n)
zeros(n,m) Matriz de ceros (n x m)
ones(n) Matriz de unos (n x n)
ones(n,m) Matriz de unos (n x m)
rand(n) Matriz de números aleatorios entre 0 y 1 (n x n)
rand(n,m) Matriz de números aleatorios entre 0 y 1 (n x m)
linspace Genera un vector con n valores entre x1 y x2
(x1,x2,n) igualmente espaciados
matriz mágica (n x n): 1 hasta N^2 con sumas
magic(n)
iguales en filas, columnas y diagonales.
Operaciones con matrices
Ejemplos:
El operador (:)

El operador (:) se muestra mucho más
potente cuando se trabaja con matrices.
El operador (:)
Extracción de submatrices.
El operador (:)
Extracción de una columna.
El operador (:)
Extracción de una fila (end = última).
El operador (:)
Eliminación de una columna.
La función (cat)

La función (cat) se emplea para
concatenar matrices a lo largo de una
dimensión especificada.
Al igual que el operador (:) es de una
gran utilidad cuando se trabaja con
matrices.
La función (cat)
Ejemplo (1: abajo; 2: a la derecha):

B

C
Operadores relacionales

< Menor que
<= Menor o igual a
> Mayor que
>= Mayor o igual a
== Igual a
~= Distinto de
Operadores lógicos

&& Conjunción
|| Disyunción
~ Negación
xor Disyunción exclusiva
Ejemplo de repaso:
%Definición vector
A=(1:2:11),B=(1:6) %Operaciones con matrices
X=[3;6;7;12;1;5],Y=B'
sum=I+J
%operaciones con escalares mult=I*M
C=A-2 pot=M^2
D=3*Y-1 T=I.'
deter=det(M)
%operaciones entre vectores
E=2*A+B %Sistema de ecuaciones
F=A.*B
G=Y./X %Regla de Cramer
H=X.^2 Q=[1 2 3;2 3 4; 4 2 5]
R=[4;5;1]
%definición de matrices D1=[R Q]
I=[1 2 3 4;5 6 7 8;9 10 11 12] D1=[4 2 3;5 3 4;1 2 5];
J=[5:8;8:11;11:14] D2=[1 4 3;2 5 4;4 1 5];
K=zeros(4) D3=[1 2 4;2 3 5;4 2 1];
L=ones(2,4) S=[det(D1),det(D2),det(D3)]/det(Q)
M=rand(4,4)
%Inversa
%Manipulación de matrices Q_inv=inv(Q)
N=I(2,3) %obtiene valor de la F2, C3 sol=Q_inv*R
O=I(1:2,2:3) %extrae las primeras 2F y las cols 2 y 3 de I
col1=I(:,1) % extrae la primera columna de la matriz
union1=[L;K], union2=[I J] % unión de matrices