Está en la página 1de 16

UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA

PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO



LABORATORIO DE PROSESAMIENTO DIGITAL DE SEALES N 1 INTRODUCCION AL MATLAB
UNIVERSIDAD NACIONAL DEL ALTIPLANO
PABEL ADERLY CHACON ROSELLO
1.- oparaciones con matrices.
1.1 crear una matriz de nmero reales 2*4:
H = j
u 2 4
u S S

6
7
[

Guardar la variable M en el archivo matriz.mat:
save('matriz.mat')
Limpiar el espacio de trabajo:
clc
Volver a cargar el archivo:

Comprobar que el archivo este en la memoria:
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO


Crear unas nuevas matrices: que contenga la segunda fila:

Crear una nueva matriz que contenga la cuarta columna:

Crear una sub matriz formada por las dos primeras filas y las 2 ultimas columnas:

UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

1.2. Definir las siguientes matrices en matlab:
A = _
1 S
2 6
S 8
S S
4 1
1 8
9 7
u 2
_ B = _
1 9
12 S
S 8
S 9
4 2
u 6
9 74
u S
_ C = j
1 9
1u 2
[
SOLUCION
a= [1 3 5 8;2 6 5 3;4 1 9 7;1 8 0 2]
b= [1 9 5 8;12 5 5 9;4 2 9 74;0 6 0 3]
c= [1 9;10 2]
>> a=[1 3 5 8;2 6 5 3;4 1 9 7;1 8 0 2]
a =
1 3 5 8
2 6 5 3
4 1 9 7
1 8 0 2
>> b=[1 9 5 8;12 5 5 9;4 2 9 74;0 6 0 3]
b =
1 9 5 8
12 5 5 9
4 2 9 74
0 6 0 3
>> c=[1 9;10 2]
c =
1 9
10 2
Realizar los siguientes clculos con las matrices:
3-A
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

>> 3-a
ans =
2 0 -2 -5
1 -3 -2 0
-1 2 -6 -4
2 -5 3 1
A-7
>> a-7
ans =
-6 -4 -2 1
-5 -1 -2 -4
-3 -6 2 0
-6 1 -7 -5
A-B^
>> a-b'
ans =
0 -9 1 8
-7 1 3 -3
-1 -4 0 7
-7 -1 -74 -1
A
-1
:
>> inv(a)
ans =
-0.3411 -0.5305 0.4842 0.4653
0.0084 0.1242 -0.0737 0.0379
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

0.0442 0.4021 -0.1368 -0.3011
0.1368 -0.2316 0.0526 0.1158

:
>> inv(c)
ans =
-0.0227 0.1023
0.1136 -0.0114
Realizar los siguientes clculos siendo
D la submatriz de la A formada por la 1ra y la 3ra fila de la 2da y3ra columna:
>> d=[a(1,2) a(1,3);a(3,2) a(3,3)]
d =
3 5
1 9
E la sub matriz de b formada por la 2da y la 4ta fila y columnas:
e=[b(2,2) b(2,4);b(4,2) b(4,4)]
e =
5 9
6 3
D-E:
>> d-e'
ans =
-2 -1
-8 6
D-C:
>> d-c
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

ans =
2 -4
-9 7
C-E:
>> c-e
ans =
-4 0
4 -1
Resolver la siguiente matriz y explicar su contenido:
>> z=[size(a); size(b); size(c); size(d)]
z =
4 4
4 4
2 2
2 2
Te da el orden de la matriz.
Resolver las siguientes ecuaciones:
1) A*X=B
SOLUCION
A*X=B X=inv(A)*B
>> inv(a)*b
ans =
-4.7705 -1.9621 -0.0000 29.7242
1.2042 0.7768 0 -4.1537
4.3221 0.3284 1.0000 -7.0568
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

-2.4316 0.8737 0.0000 3.2526
2) D*X=C
D*X=CX=inv(D)*C
>> inv(d)*c
ans =
-1.8636 3.2273
1.3182 -0.1364
Siendo g la sub matriz de a formada por las filas 2,3 y 4:
G la sub matriz formada de b formada por las columnas 1,2 y 4 calcular f-g
>> f=a([2 3 4],:)
f =
2 6 5 3
4 1 9 7
1 8 0 2
>> g=b(:,[1 2 4])
g =
1 9 8
12 5 9
4 2 74
0 6 3
>> f-g
??? Error using ==> minus
Matrix dimensions must agree.
>>
Ejecutar cada uno de los comandos y explicar el resultado de ellos.
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

>> y=eye(4)
y =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
>> y=zeros(3)
y =
0 0 0
0 0 0
0 0 0
>> y=zeros(3,5)
y =
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
>> y=ones(2,3)
y =
1 1 1
1 1 1
>> y=diag([4 5 6 7])
y =
4 0 0 0
0 5 0 0
0 0 6 0
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

0 0 0 7
>> y=diag([4 5 6 7],-1)
y =
0 0 0 0 0
4 0 0 0 0
0 5 0 0 0
0 0 6 0 0
0 0 0 7 0
>> y=diag([4 5 6 7],2)
y =
0 0 4 0 0 0
0 0 0 5 0 0
0 0 0 0 6 0
0 0 0 0 0 7
0 0 0 0 0 0
0 0 0 0 0 0
>> y=diag(c)
y =
1
2
>> y=diag(diag(c))
y =
1 0
0 2
1.2 repetir el apartado 1.1 con la siguiente matriz de nmeros compejos:
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

=
1 +
4 + 2

i S
S 9 Si
[
>> n=[i 1+i -i 5;-i 4+2i 3 9-3i]
n =
0 + 1.0000i 1.0000 + 1.0000i 0 - 1.0000i 5.0000
0 - 1.0000i 4.0000 + 2.0000i 3.0000 9.0000 - 3.0000i
Crear unas nuevas matrices que contengan la segunda fila:
>> n(2,:)
ans =
0 - 1.0000i 4.0000 + 2.0000i 3.0000 9.0000 - 3.0000i
Crear unas nuevas matrices que contengan la cuarta columna:
>> n(:,4)
ans =
5.0000
9.0000 - 3.0000i
Crear unas nuevas matrices que contenga las primeras dos filas y las 2 ltimas columnas.
>> n(1:2,3:4)
ans =
0 - 1.0000i 5.0000
3.0000 9.0000 - 3.0000i
Guarde la variable n en un archivo matriz.mat
>> load('E:\mat2\matriz.mat')
Limpiar el espacio de trabajo:
Volver a cargar el archivo:
>> load('E:\mat2\matriz.mat')
Obtener la matriz conjugada de n:
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

>> conj(n)
ans =
0 - 1.0000i 1.0000 - 1.0000i 0 + 1.0000i 5.0000
0 + 1.0000i 4.0000 - 2.0000i 3.0000 9.0000 + 3.0000i
Su representacin de magnitud y angulo.
Magnitud.
>> norm(n)
ans =
11.9807
Angulo.
>> angle(n)
ans =
1.5708 0.7854 -1.5708 0
-1.5708 0.4636 0 -0.3218
Y sus componentes reales:
>> real(n)
ans =
0 1 0 5
0 4 3 9
Imaginarias:
>> imag(n)
ans =
1 1 -1 0
-1 2 0 -3
Obtener utilizando la funcin linspace, un vector de 20 elementos que recorra el intervalo [0,].
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

>> b=[1 9 5 8;12 5 5 9;4 2 9 74;0 6 0 3]
b =
1 9 5 8
12 5 5 9
4 2 9 74
0 6 0 3
>> x=linspace(0,pi,20)
x =
Columns 1 through 12
0 0.1653 0.3307 0.4960 0.6614 0.8267 0.9921 1.1574 1.3228 1.4881 1.6535
1.8188
Columns 13 through 20
1.9842 2.1495 2.3149 2.4802 2.6456 2.8109 2.9762 3.1416
Generar utilizando la sentencia valor inicial: paso: valor final, un vector de referencia de 1000
puntos que recorra el intervalo [0,10].

2 archivos M y funciones.
2.1utilice el editor de matlab, o un editor externo de texto, para crear un archivo llamado
dsplab.m que contenga las siguientes lneas.
tt=2:0.05:3;
xx=sin(2*pi*0.789*tt);
plot(tt,xx),grid on %dibujo de una sinusoide
title('grafica de una sinusoide')
xlabel('tiempo(seg)')
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO


Guarde su archivo, ejecute y explique los siguientes comandos.
Type dsplab
Whichdsplab
tt=2:0.05:3;
xx=sin(2*pi*0.789*tt);
plot(tt,xx),grid on %dibujo de una sinusoide
title('grafica de una sinusoide')
xlabel('tiempo(seg)')
type dsplab
which dsplab
E:\mat2\dsplab.m
Aada lineas a cu codigo para que el mismo grafico se muestre una seal coseno de igual
frecuencia a la seal seno.
yy=cos(2*pi*0.789*tt);
plot(tt,yy),grid on
title('grafica de coseno')
xlabel('tiempo(seg)')


UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO


2.2 el siguiente ejercicio le enseara como escribir funciones en matlab, aunque estos ejercicios
contienen errores, les enseara la correcta sintaxis para crear funciones.
Encuentre el error de las siguientes funciones.
Funcin no corregida.

Funcin corregida.

Funcin no corregida.

UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO

Funcin corregida.

2.3 crear una archivo M que sea una secuencia aleatoria uniforme (rand) de amplitud mxima la
unidad, el vector debe de tener 250 puntos. Encontrar:
Aquellos componentes del vector cuyo valor sea mayor que 0.9
Aquellas componentes del vector cuyo valor sea menor o igual a 0.15.
y=rand(250,1);
x=[];
z=[];
for i=1:250,
if y([i:i],1)>0.9
A=y(i,:);
x=[A;x]
end
end
for i=1:250,
if y([i:i],1)>0.9
B=y(i,:);
y=[B;y]
end
end
UNIVERSIDAD NACIONAL DEL ALTIPLANO INGENIERIA ELECTRONICA


PROSESAMIENTO DIGITAL DE SEALES CON MATLAB PABEL ADERLY CHACN ROSELLO