Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Practica1 matlII 2016 17

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 6

Practica 1 Matlab

Matlab es un programa pensado para realizar calculos numéricos con vectores y ma-
trices. Una de las capacidades más atractivas es la facilidad para la representación de
gráficos. Además MATLAB tiene un lenguaje propio de programación.

1. Objetivos
- Definir vectores y matrices, operaciones con matrices, algunos comandos básicos
(transpose, rank, det, inv, diag, eye, zeros, ones, size,...) acceso y modificación de
partes de una matriz.

- Resolución de ecuaciones lineales Ax = b

a) x = A\b para sistemas compatibles determinados.


b) Con el comando rref([A,b])
c) Con el comando solve(’ecuacion1’,’ecuacion2’......,’x,y,z.....’)

Observación: Es recomendable guardar la sesión en un archivo con el comando diary.

2. Vectores y matrices

Los vectores se introducen entre corchetes y separando sus componentes por espacio
en blanco o por coma.

Para definir una matriz basta con introducir los vectores filas separados por punto y
coma o por cambio de linea.

El vector o matriz lo podemos asignar a una variable, Matlab distingue entre mayúscu-
las y minúsculas para los nombres de las variables. Los nombres de las variables pueden
contener letras y números pero siempre debemos comenzar el nombre de una variable por
una letra.

La sintaxis para un vector es:

vector=[a b c · · · n]

vector=[a, b, c, · · · ,n]

La sintaxis para una matriz es:

Matriz=[a11 a12 a13 · · · a1n ; a21 a22 a23 · · · a2n ; · · · ;am1 am2 am3 · · · amn ]

Grado I.Electrónica Curso 2016/17 1 Matemáticas II


A(i,j) nos indica el elemento aij de la matriz A.

Con A(i,:) obtenemos los elementos de la fila i de la matriz A.

Con A([i1 , i2 , · · · , in ], [j1 , j2 , · · · , jm ]) obtenemos submatriz formada por los elementos


de las filas i1 , i2 , · · · , in y de las columnas j1 , j2 , · · · , jm de la matriz A. Si las colum-
nas o filas de la submatriz que queremos generar son consecutivas prodriamos sustituir
[i1 , i2 , · · · , in ] por [i1 : in ] o [j1 , j2 , · · · , jm ] por [j1 , : jm ].

Si queremos modificar toda una fila o columna de una matriz por una combinación
lineal de otras, lo indicamos A(i, :) = A(j, :) + αA(k, :) transforma la fila i por la fila j
mas α veces la fila k, analogamente lo podemos realizar con columnas.

3. Operaciones con matrices

Algunas operaciones con matrices son:

+ Suma matrices del mismo orden.

∗ Nos permite multiplicar una matriz por un escalar o realizar el producto de dos
matrices.

transpose(A) Traspuesta de una matriz. Para matrices reales esta expresión es


equivalente a A′ o A.′ , en el caso de matrices complejas A.′ obtiene la matriz traspuesta
y con A′ obtenemos la conjugada traspuesta.

\ división por la izquierda (A\B = A−1 ∗ B)

/ división por la derecha (A/B = A ∗ B −1 )

inv(A) inversa de una matriz cuadrada, es equivalente a A−1

det(A) determinante de una matriz cuadrada.

rank(A) determina el rango de la matriz A.

eye(n) crea la matriz identidad de orden n . eye(m,n) crea la matriz identidad de


orden m × n

zeros(n) crea la matriz nula de orden n. zeros(m,n) crea la matriz nula de orden
m×n

ones(n) crea la matriz cuyos elementos son todos unos de orden n. zeros(m,n) crea
la matriz cuyos elementos son todos unos de orden m × n

diag(A) Extrae los elementos de la diagonal de A.

size(A) Indica el número de filas y columnas de la matriz A.

Grado I.Electrónica Curso 2016/17 2 Matemáticas II


3.1 Ejercicios de vectores y matrices

[V,D]=eig(A) autovalores y autovectores de la matriz. Guarda los autovalores en D


y los autovectores en V.

length(x) Longitud del vector x, número de coordenadas del vector x.

[A B] Crea una nueva matriz escribiendo la matriz B a continuación de la matriz A.

[A;B] Crea una nueva matriz escribiendo la matriz B debajo de la matriz A

3.1. Ejercicios de vectores y matrices


1. Escribir el vector (1,2,3)
( )
1 2 3
2. Escribir la matriz A =
4 5 6

a) Escribir el elemento A11 , obtener la fila primera, obtener la columna 1 y 3


 
1 2 3 4
3. Escribir la matriz B =  5 6 7 8 
9 10 11 12
Obtener:

a) La submatriz de B formada por los elementos de la fila 1 y 3 y de las columnas


2,3 y 4.
b) La submatriz formada por los elementos de las tres filas y de las columnas 2,
3y4
c) La matriz que rsulta de cambiar en la matriz B la fila 2 por fila 2 menos 5
veces la fila 1.
( ) ( )
1 2 5 6
4. Dadas las matrices A = yB=
3 4 7 8
Calcular

a) A + B, 2A, A ∗ B
b) A2 , A.2 , A. ∗ B, A.B
( ) ( )
1 2 1+i 2−i
5. Dadas las matrices A = yC=
3 4 4 8 + 5i
Calcular transpose(A), A′ , A.′ transpose(C), C ′ , C.′ ,

Grado I.Electrónica Curso 2016/17 3 Matemáticas II


4. Resolución de sistemas de ecuaciones

En esta sección veremos como podemos resolver sistemas de ecuaciones lineales para
ello plantearemos dos sistemas uno compatible determinado y otro compatible indeter-
minado.

Resolver los siguientes sistemas de ecuaciones lineales:


{
x + 2y = 3
1.
2x − 5y = 4
{
x + 2y − 3z = 3
2.
2x − 5y + z = 2

 x + 2y − 3z = 3
3. 2x − 5y + z = 2

5x − 8y − z = 1

En el ejercicio 1, en primer lugar escribiremos la matriz A(matriz del sistema) y


b(término independiente). Para resolverlo podemos ejecutar:

• A\ b,

• rref([A b])

• solve(’ecuacion1’,’ecuacion2’,.....,’x,y,....’)

A\ b para sistemas de ecuaciones determinados de n ecuaciones con n incognitas, da


directamente los resultados de x e y

A\b

ans = x=7 ; y= -2

rref([A b]), produce una matriz donde ha obtenido el resultado de aplicar transfor-
maciones elementales en el sistema hasta transformar la matriz A en la identidad.

A=[1 2;2 5]
( )
1 2
A=
2 5

b=[3; 4]
( )
3
b=
4

rref([A b])

ans =

Grado I.Electrónica Curso 2016/17 4 Matemáticas II


( )
1 0 7
A=
0 1 −2
Tambien podemos resolver dicho sistema usando el comando solve.

Para ello tenemos que definir previamente las variables x, y en simbólico.

syms x y

[x,y]= solve(’x+2y=3’,’2x-5y=4’,’x,y’)

x=7

y = -2

Tambien lo podemos hacer ejecutando

s=solve(’x+2*y=3’,’2*x+5*y=4’,’x,y’)

s=

x: [1x1 sym]

y: [1x1 sym]

x=s.x

x=7

Análogamente para la variable y.

En el segundo ejercicio no podemos aplicar la instrucción A\b, porque la matriz del


sistema no es cuadrada y no posee inversa.

Es conveniente calcular los rangos de la matriz del sistema y de la matriz ampliada


para estudiar la compatibilidad del sistema.

El tercer ejercicio es un sistema incompatible, para averiguarlo procederemos de la


siguiente forma:

A=[ 1 2 -3;2 -5 1;5 -8 -1]


 
1 2 −3
A=  2 −5 1 
5 −8 −1

b=[3;2;1]
 
3
b= 2 
1

Grado I.Electrónica Curso 2016/17 5 Matemáticas II


rank(A)

ans = 2

rank([A b])

ans = 3

rref([A b])

ans =
 
1,0000 0 −1,4444 0
[A b] =  0 1,0000 −0,7778 0 
0 0 0 1,0000
Si lo hacemos usando el comando solve nos aparece la siguiente resolución:

syms x y z

s=solve(’x+2*y-3*z=3’,’2*x-5*y+z=2’,’5*x-8*y-z=1’,’x,y,z’)

Warning: Explicit solution could not be found.

In solve at 81

s = [ empty sym ]

Grado I.Electrónica Curso 2016/17 6 Matemáticas II

También podría gustarte