02 matlab pgf funciones simbolicas,vectores y matrices

16
2011 MATLAB SISTEMAS LINEALES Escuela de Ingeniería Sede Valparaíso Ing. Paul Gálvez F. Funciones Simbolicas, Vectores y Matrices

Upload: alejandra-zamora-maric

Post on 13-Oct-2014

204 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

2011

MATLAB

SISTEMAS LINEALES

Escuela de IngenieríaSede Valparaíso

Ing. Paul Gálvez F.

Funciones Simbolicas, Vectores y Matrices

Page 2: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

VARIABLES SIMBÓLICASLas variables simbólicas se utilizan para realizar cálculos donde se requiere conocer la forma general de la solución de un determinado problema, o para trabajo con datos desconocidos.

Para definir variables simbólicas puede usarse el comando sym, para una variable o syms para definir simultáneamente varias variables simbólicas.

Ejemplo 1

1.Hallar el valor de x que cumpla con la ecuación: ax2+bx+c = 0. >>

>>syms x a b c;

>>x =solve(’a*x^2+b*x+c=0’);

>>x1=x(1)

>>x2=x(2)

x1 =

1/2/a*(-b+(b^2-4*a*c)^(1/2))

x2 =

1/2/a*(-b-(b^2-4*a*c)^(1/2))

1P.G.F. 2011

Page 3: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

Ejemplo 2. Derivar la función: f(x) = 5/(y+cos(x). a) respecto a x b) respecto a y.

sym x y;

f = 5/(y+cos(x));

fx = diff(f,x)

fy = diff(f,y)

fx = 5/(y+cos(x))^2*sin(x)

fy = -5/(y+cos(x))^2

Ejemplo 3. integrar la función: f(x) = sqrt(x^2+16)

sym x;

f = x^2+16;

f = int(f)f = 1/3*x^3+16*x

2P.G.F. 2011

Page 4: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

MATRICESCREACIÓN.La definición de una matriz se hace por filas.

Una fila se separa de la siguiente por medio de punto y coma o por medio de cambio de línea.

Los elementos de una misma fila se separan por medio de espacios en blanco o por medio de comas.

Ejemplo

>>M = [2 3 4; 7 8 9;11 12 13; -1 0 1]

>>M = [2,3,4; 7,8,9 ; 11,12,13 ; -1,0,1]

>>M = [2 3 4

7 8 9

11 12 13

-1 0 1]

M =

2 3 4

7 8 9

11 12 13

-1 0 1

3P.G.F. 2011

Page 5: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

TIPOS ESPECIALES DE MATRICES EjemploMatriz de unos de tamaño mxn

ones(m,n)>> ones(2,3) = 1 1 1

1 1 1

Matriz de ceros de tamaño mxn

zeros(m,n)

>> zeros(3,2) = 0 0

0 0

0 0

Matriz aleatoria de tamaño mxn

rand(m,n)

>> rand(3,4) = 0.9501 0.4860 0.4565 0.44470.2311 0.8913 0.0185 0.61540.6068 0.7621 0.8214 0.7919

Matriz identidad de tamaño mxmeye(m)

>> eye(3) = 1 0 00 1 00 0 1

Matriz vacía de tamaño 0x0[ ]

>> M = [ ]

4P.G.F. 2011

Page 6: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

VECTORESCREACIÓN.Los vectores se deben asimilar a matrices de una sola fila (vectores fila) o a matrices de una sola columna (vectores columna).

Ejemplo

VECTOR RESULTADOVector fila>>F = [3 5 1 7]>>F = [3,5,1,7]

F =3 5 1 7

Vector Columna>>C = [3; 5; 1; 7]>>C = [3

517]

C =3517

5P.G.F. 2011

Page 7: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

TIPOS ESPECIALES DE VECTORES EjemploVector con elementos igualmente espaciados

X = XI : ∆X : XFXI = Limite interiorXF = Limite superior∆X = incremento (espacio entre elementos)

>> X = 1:0.5:3

X =

1.0000 1.5000 2.0000 2.5000 3.0000

Vector con N elementos igualmente espaciadosX =linspace( XI ,XF,N)

XI = Limite interiorXF = Limite superiorN = número de elementos de X

>> X = linspace(0,1,5)

X =

0 0.2500 0.5000 0.7500 1.0000

vector fila de ceros de tamaño n

zeros(1,n)

>> VF = zeros(1,4)

VF =

0 0 0 0

vector columna de ceros de tamaño n

zeros(n,1)

>> VC = zeros(4,1)VC =

0000

6P.G.F. 2011

Page 8: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

NOTACIÓN DE ELEMENTOS

⎥⎥⎥⎥

⎢⎢⎢⎢

=

mnmm

n

n

aaa

aaaaaa

A

.........

...

...

.

21

22221

11211

Denota el elemento de la matriz A ubicado en la fila i y en la columna j .

A(i , j)

A(i , :) Denota todos los elementos de la fila i de la matriz A .

A(: , j) Denota todos los elementos de la columna j de la matriz A .

Denota la submatriz de A cuyos elementos están entre las filas r y s y entre las columnas p y q .

A(r : s, p:q)

7P.G.F. 2011

Page 9: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

EJEMPLO 4A = 1 2 3 4

5 6 7 89 10 11 12

B = [2 ,-1, 5 ,1, 0, 3, -9]

>> A(2,3) = 7 >> B(4) = 1

>> A(3,2) = 10 >> B(3:6) = 5 1 0 3

>> A(2,:) = 5 6 7 8 >> B(5) = [ ]B = 2 -1 5 1 3 -9

>> A(:,2) = 26

10

>>B(4) = 0B = 2 -1 5 0 3 -9

>> A(1:3,3:4) = 3 47 8

11 12

>>B(0)Error: "End of Input" expected,

8P.G.F. 2011

Page 10: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

OPERACIONES FUNDAMENTALES

OPERACIÓN DESCRIPCIÓNA + B Suma (A y B matrices del mismo tamaño)

A – B Resta (A y B matrices del mismo tamaño)

A * B Multiplicación (nº columnas de A = nº columnas de B)

k * A Multiplicación por un escalar (k = escalar)

A / B División

A . / B División elemento a elemento (A y B matrices del mismo tamaño)

A’ Traspuesta

cross(V1,V2) producto cruz entre vectores (V1XV2)

A ^ n Potenciación (n = escalar y A matriz cuadrada )

A .^ n Potenciación elemento a elemento (n = escalar )

A .* B Multiplicación elemento a elemento (A y B matrices del mismo tamaño)

9P.G.F. 2011

Page 11: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

FUNCIONES CON MATRICES

La mayoría de las funciones de matLab utilizadas para números reales, se pueden aplicar a matrices.

Ejemplo 5

>>M = sin([0.2 ,1.4 ,0.5])

>>M = [sin(0.2) , sin(1.4) , sin(0.5)]M = 0.1987 0.9854 0.4794

K = 0.2000 1.3997 0.5000>>K = asin([0.1987,0.9854,0.4794])

R = 1.6487 1.0000 2.7183>>R = exp([0.5, 0, 1 ])

P = 0.5000 0 1.0000>>P = log([1.6487, 1.0000, 2.7183])

10P.G.F. 2011

Page 12: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

FUNCIÓN DESCRIPCIÓND = det(A) D = Determinante de A.

i = inv(A) I = Inversa de A.

m = min(A) m = fila de A que contiene el mínimo elemento de toda la matriz.

M = max(A) M = fila de A que contiene el máximo elemento de toda la matriz.

S = sum(A) S = vector fila con la suma de cada columna de la matriz A.

VS = svd(A) VS = Descomposición en valores singulares

[M,N] = size(A) tamaño de la matriz A (M = # filas, N = # columnas)

L = length(V) L = longitud del vector V.

[P,Q] = eig(A) P = Matriz con columnas de vectores propios , Q = Matriz diagonal con valores propios de la matriz A.

11P.G.F. 2011

Page 13: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

SOLUCIÓN DE SISTEMAS DE ECUACIONES LINEALES

nmnmnn

mm

mm

cxaxaxa

cxaxaxacxaxaxa

=+++

=+++=+++

......

......

2211

22222121

11212111

⎥⎥⎥⎥

⎢⎢⎢⎢

=

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

nnmnmm

n

n

c

cc

x

xx

aaa

aaaaaa

.........

................

2

1

2

1

21

22221

11211

A X CA*X = C

X = inv(A)* C

12P.G.F. 2011

Page 14: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

EJEMPLO 6. Solucionar el sistema de ecuaciones:

2021032

1234

321

321

321

=−+−=−−

=−+

xxxxxxxxx

⎥⎥⎥

⎢⎢⎢

−−=

⎥⎥⎥

⎢⎢⎢

⎥⎥⎥

⎢⎢⎢

−−−−

510

12

211132134

3

2

1

xxx

A * X = C>>A = [4 3 –1; 2 –3 –1; 1 1 -2];

>>C = [12 –10 -5]’;

>>X = inv(A)*C

X =

2

3

5

X1 = 2

X2 = 3

X 3= 5

13P.G.F. 2011

Page 15: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

EJEMPLO 7. Envío de mensajes secretos importantes

1-a

2-b

3-c

4-d

5-e

6-f

7-g

8-h

9-i

10-j

11-k

12-l

13-m

14-n

15-ñ

16-o

17-p

18-q

19-r

20-s

21-t

22-u

23-v

24-w

25-x

26-y

27-z

28-[ ]

Mensaje a codificarBúscame mañana

Asignar numero a cada letra y espacio

2-22-20-3-1-13-5-28-13-1-15-1-14-1

⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡1

141

151

13285

131

320

222 Arreglar en forma de

vectores columna

⎥⎦

⎤⎢⎣

⎡−

−=−

21321M⎥

⎤⎢⎣

⎡=

2132

M Escoger una matriz que tenga inversa

⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡1631

1733

1529

6194

2741

2649

4670

Multiplicar cada vector por M

70-46-49-26-41-27-94-61-29-15-33-17-31-16

Mensaje codificado14P.G.F. 2011

Page 16: 02 MATLAB PGF Funciones Simbolicas,Vectores y Matrices

CODIGO EN MATLAB PARA CODIFICAR Y DECODIFICAR UN MENSAJE

%CODIFICACION MENSAJE “BUSCAME MAÑANA”

V=[2,22,20,3,1,13,5,28,13,1,15,1,14,1];

M = [2,3;1,2];

MI = inv(M);

V1=[V(1);V(2)];V2=[V(3);V(4)];V3=[V(5); V(6)];V4=[V(7);V(8)];

V5=[V(9);V(10)];V6=[V(11);V(12)];V7=[V(13);V(14)];

C1=M*V1;C2=M*V2;C3=M*V3;C4=M*V4;C5=M*V5;C6=M*V6;C7=M*V7;

COD = [C1',C2',C3',C4',C5',C6',C7']

%DECODIFICACION

D1=MI*C1;D2=MI*C2;D3=MI*C3;D4=MI*C4; D5=MI*C5;D6=MI*C6;

D7=MI*C7;

DEC = [D1',D2',D3',D4',D5',D6',D7']

15P.G.F. 2011