Está en la página 1de 34

MODULO I INTRODUCCIN A MATLAB

Rodrigo garcia Hoyos E-mail:Rodrigogarciahyos@gmail.com Twitter @raxielh Facebook:raxielh

INTRODUCCIN

Qu es Matlab?, MATrix LABoratory MATLAB es un programa para realizar clculos numricos con vectores y matrices. Como caso particular puede tambin trabajar con nmeros escalares, tanto reales como complejos. Una de las capacidades ms atractivas es la de realizar una amplia variedad de grficos en dos y tres dimensiones. MATLAB.

INTERFACE

ELEMENTOS BSICOS EN MATLAB


Matriz vector (fila y columna) Fila a = [ 1,2,3,4,5] o a = [ 1 2 3 4 5]; a=1:5; Columna a = [ 1;2;3;4;5]; a=[1:5]; Matriz 2x3 b = [1 2 3;4 5 6]; Matriz 3x2 c = [1 2;3 4;5 6];

La notacin para las operaciones matemticas elementales es: ^ exponenciacin * multiplicacin / divisin + suma - resta
La siguiente tabla contiene algunas funciones elementales: sin tan asin atan csc exp sqrt seno cos tangente seno inverso acos tangente inverso cosecante cot exponencial log raz cuadrada abs coseno sec secante coseno inverso cotangente logaritmo natural valor absoluto

EJEMPLO

Suma, Resta, Multiplicacin, Divisin Suma y Resta a = [ 1 2;3 4] ; b = [1 1; 1 1]; c= a + b; d = a b; La estructura de las matrices debe ser igual size(c) = size (a) = size (b) = [2 2]

Multiplicacin y Divisin a = [1 2;4 5;7 8]; n = size(a); funcion: ones(filas,columnas) : genera una matriz de unos b = 2*ones(n(2),n(1)); m = size(b); Regla de Multiplicacin de Matrices n(1) x n(2) x m(1) x m(2) donde n(2) = m(1) c = a*b

ones(filas, columnas): Define una matriz de filas por columna.

manzanas =4 >> platanos=6, melones=2; >> fruta=manzanas+platanos+melones >> coste=manzanas*25+platanos*22+melones*99 coste =430 >>coste_medio=coste/fruta coste_medio =35.8333 >>who

>>a=1; b=4; c=13; >>x1=(-b+sqrt(b^2-4*a*c))/(2*a) x1 =-2.0000 + 3.0000i >>x2=(-b-sqrt(b^2-4*a*c))/(2*a) x2 =-2.0000 - 3.0000i >> a*x1^2+b*x1+c % Sustituimos x1 para comprobar la respuesta. ans =0 >> a*x2^2+b*x2+c % Sustituimos x2 para comprobar la respuesta. ans =0

>> c1=1-2i % Con j en lugar de i tambin funciona. c1 = 1.0000 - 2.0000i >>c2=3*(2-sqrt(-1)*3); c3=sqrt(-2); c4=6+sin(.5)*j c4 = 6.0000 + 0.4794i >>c5=(c1+c2)/c3 c5 = -7.7782 - 4.9497i

>> c1=1-2i % Con j en lugar de i tambin funciona. c1 = 1.0000 - 2.0000i >>c2=3*(2-sqrt(-1)*3); c3=sqrt(-2); c4=6+sin(.5)*j c4 = 6.0000 + 0.4794i >>c5=(c1+c2)/c3 c5 = -7.7782 - 4.9497i

>> C = [5 7 8 9; 12 14 16 18] C= 5 7 8 9 12 14 16 18 Trasposicin de una matriz >> D=C'D = 5 12 7 14 8 16 9 18

Conversin de un vector fila en un vector columna >> B'ans = 5 7 8 9

Producto de dos matrices >> C*B ans = 219 448

Invertir una matriz cuadrada >> inv(C*C')ans = 1.1856 -0.5773 -0.5773 0.2822

Matlab permite, asimismo, realizar operaciones sobre cada elemento de la matriz. Por ejemplo,Suma de un escalar a cada elemento de la matriz >> C>> C = 5 7 8 9 12 14 16 18 >> C+2 ans = 7 9 10 11 14 16 18 20

Multiplicar cada elemento por un escalar >> C*Aans = 65 91 104 117 156 182 208 234

Realizar operaciones lgicas sobre cada elemento de la matriz >> C >= 0ans = 1 1 1 1 1 1 1 1 Este resultado indica que todos los elementos de la matriz son no negativos. No obstante, podemos cambiar la comparacin y cambiar el resultado

>> C >10 ans = 0 0 0 0 1 1 1 1 ya que slo la segunda fila de la matriz C presenta valores superiores a 10.

Multiplicar dos matrices (de las mismas dimensiones) elemento a elemento >> F = [1 2 4 9; 9 3 6 0]F = 1 2 4 9 9 3 6 0 >> C.*F ans = 5 14 32 81 108 42 96 0 Observe que hemos antepuesto un "punto" al signo de la multiplicacin. Este punto hace que las operaciones sean realizadas elemento a elemento.

Elevar los elementos de una matriz a una cierta potencia. Por ejemplo, compare los resultados obtenidos haciendo >> (C*C')^2ans = 248665 510272 510272 1047104 respecto de>> (C*C').^2 ans = 47961 200704 200704 846400 En el primer caso hemos multiplicado una matriz cuadrada (el resultado de C*C') por ella misma. En el segundo, hemos elevado al cuadrado cada elemento de la matriz cuadrada C*C'.

Matlab dispone tambin de una potente semntica para poder indexar elementos dentro de las matrices de una forma rpida y eficiente. Algunos ejemplos ilustrarn esta forma de indexacin. Podemos referirnos a cada elemento de una matriz como >> CC = 5 7 8 9 12 14 16 18 >> C(1,3) ans = 8

Asismo, podemos extraer una submatriz de C, consistente en la primera fila y todas las columnas de C >> C(1,:) ans = 5 7 8 9 O bien la tercera columna y todas las filas >> C(:,3) ans = 8 16

Asismo, podemos extraer una submatriz de C, consistente en la primera fila y todas las columnas de C >> C(1,:) ans = 5 7 8 9 O bien la tercera columna y todas las filas >> C(:,3) ans = 8 16

O bien las dos primeras filas y las tres primeras columnas >> C(1:2,1:3) ans = 5 7 8 12 14 16

O bien las dos primeras filas y las columnas de 2 a 4 >> C(1:2,2:4) ans = 7 8 9 14 16 18

La funcin format cambia la precisin de los datos de salida

Cmo presentar datos con Matlab.


Las posibilidades de Matlab son muy grandes. Se indica a continuacin cmo realizar grficos sencillos. Para ms informacin, o para conocer la versatilidad de Matlab: captulo Handle Graphics Object del Help Desk, el manual Using MATLAB Graphics o la ayuda en lnea help graph2d. Veamos cmo se puede representar la funcin seno entre 0 y 10. Para empezar creemos una variable x que vaya de cero a 10: x=0:0.1:10;

y a continuacin, calculemos sin(x) almacenando el resultado en la variable y: y=sin(x); Para trazar el grfico, se emplea la funcin plot: plot(x,y) y se obtiene en otra ventana el grfico: