You are on page 1of 24

MATLAB DACB

Curso de Capacitacion de MatLab

1 MatLab
MATLAB es el nombre abreviado de 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-, con cadenas de caracteres y con otras estructuras de informacin ms complejas. Una de las capacidades ms atractivas es la de realizar una amplia variedad de gr cos en dos y tres dimensiones. MATLAB tiene tambin un lenguaje de programacin propio.

Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab

2 El Entorno de Trabajo de MatLab


Los componentes ms importantes del entorno de trabajo de MATLAB son los siguientes: (1) El Escritorio de Matlab (Matlab Desktop), que es la ventana o contenedor de mximo nivel en la que se pueden situar (to dock) las dems componentes (2) Los componentes individuales, orientados a tareas concretas, entre los que se puede citar: (a) La ventana de comandos (Command Window) (b) La ventana histrica de comandos (Command History Browser) (c) El espacio de trabajo (Workspace Browser) (d) El directorio actual (Current Directory Browser) (e) La ventana de ayuda (Help Browser) (f) El editor de vectores y matrices (Array Editor). Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab 2.1 EL ESCRITORIO DE MATLAB (MATLAB DESKTOP) El Matlab Desktop es la ventana ms general de la aplicacin. El resto de las ventanas o componentes citadas pueden alojarse en la Matlab Desktop o ejecutarse como ventanas independientes. 2.2 COMMAND WINDOW sta es la ventana en la que se ejecutan interactivamente las instrucciones de MATLAB y en donde se muestran los resultados correspondientes. 2.3 COMMAND HISTORY BROWSER

El Command History Browser ofrece acceso a las sentencias que se han ejecutado anteriormente en la Command Window. Estan ventana facilita mucho el tener una visin ms general de lo hecho anteriormente y seleccionar lo que realmente se desea repetir.

Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab 2.4 CURRENT DIRECTORY BROWSER El concepto de directorio activo o directorio actual es muy importante en MATLAB. Los programas de MATLAB se encuentran en chero con la extensin *.m. Para que un chero *.m se pueda ejecutar es necesario que se cumpla una de las dos condiciones siguientes:

(1) Que est en el directorio actual. MATLAB mantiene en todo momento un nico directorio con esta condicin. (2) Que est en uno de los directorios indicados en el Path de MATLAB. El Path es una lista ordenada de directorios en los que el programa busca los cheros o las funciones que ha de ejecutar.

Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab 2.5 EL EDITOR DE MATRICES Y VECTORES

El Array Editor no slo permite ver los valores de los elementos de cualquier matriz o vector de nido en el programa: es tambin posible modi car estos valores clicando sobre la celda correspondiente. La ventana del Array Editor incluye una lista desplegable en la que se puede elegir el formato en el que se desea ver los datos.

Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab 2.6 Formato de los nmeros

Respecto a los formatos numricos con que MATLAB muestra los resultados, las posibilidades existentes son las siguientes: short coma ja con 4 decimales (defecto) long hex bank short e rat coma ja con 15 decimales cifras hexadecimales nmeros con dos cifras decimales notacin cient ca con 4 decimales expresa los nmeros racionales como cocientes de enteros

Estos formatos se pueden cambiar tambin desde la lnea de comandos anteponiendo la palabra format. Por ejemplo, para ver las matrices en formato long habr que ejecutar el comando:

>> format long


Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab

3 OPERACIONES CON MATRICES Y VECTORES


MATLAB es fundamentalmente un programa para clculo matricial. Inicialmente se utilizar MATLAB como programa interactivo, en el que se irn de niendo las matrices, los vectores y las expresiones que los combinan y obteniendo los resultados sobre la marcha. 3.1 De nicin de vectores y matrices desde teclado Como en casi todos los lenguajes de programacin, en MATLAB las matrices y vectores son variables que tienen nombres Se sugiere que se utilicen letras maysculas para matrices y minsculas para vectores y escalares Para de nir un vector o una matriz no hace falta establecer de antemano su tamao Una la es una secuencia de nmeros separados por espacios en blancos o Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab comas y encerrados entre corchetes Las matrices se de nen por las; las las estn separadas por pulsaciones intro o por caracteres punto y coma (;) El siguiente comando de ne un vector de 4 elementos

>> x=[2 4 6 8] La respuesta del programa es la siguiente x= 2 4 6 8 El siguiente comando de ne una matriz A de dimensin (3x3): >> A=[1 2 3; 4 5 6; 7 8 9] La respuesta del programa es la siguiente: A=

Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab

10

1 2 3 4 5 6 7 8 9
3.2 Como acceder a los elementos de un vector o matriz En MATLAB se accede a los elementos de un vector poniendo el ndice entre parntesis, por ejemplo para acceder al tercer elemento del vector x escribimos

>>x(3) ans 6 Los elementos de las matrices se acceden poniendo los dos ndices entre parntesis, separados por una coma, por ejemplo para acceder al elemento que esta en la la 1 y columna 2 de la matriz A escribimos >>A(1,2) Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab ans 2 podemos aadir una la a la matriz A con la siguiente orden

11

>>A=[A;[1 1 1]] A = 1 2 3 4 5 6 7 8 9 1 1 1 la la a aadir debe tener el mismo nmero de columnas


3.3 Operaciones con matrices MATLAB puede operar con matrices por medio de operadores y por medio de funciones Los operadores matriciales de MATLAB son los siguientes: Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab + * ' ^ adicin o suma sustraccin o resta multiplicacin traspuesta potenciacin divisin-izquierda divisin-derecha producto elemento a elemento elevar a una potencia elemento a elemento

12

n
/ .* .^

Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab 3.4 Ejemplos Particulares Elevar al cuadrado cada elemento de un vector o una matriz

13

>>C=[2 3;1 4] C= 2 3 1 4 >>C.^2 ans 4 9 1 16 Multiplicar dos matrices elemento a elemento >>A=[2 1;-1 3] A=
Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab

14

2 1 1 3 >>B=[-1 2;1 2] B= 1 2 1 3 >>A: B ans 2 2 1 9

Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab 3.5 TIPOS DE MATRICES PREDEFINIDOS

15

Existen en MATLAB varias funciones orientadas a de nir con gran facilidad matrices de tipos particulares. Algunas de estas funciones son las siguientes: eye(4) forma la matriz identidad de orden 4 4 zeros(3,5) zeros(4) ones(3) ones(2,4) forma una matriz de ceros de tamao 3 dem de tamao 4 idem de tamao 2

5 3

4 4

forma una matriz de unos de tamao 3

3.6 FORMACIN DE UNA MATRIZ A PARTIR DE OTRAS MATLAB ofrece tambin la posibilidad de crear una matriz a partir de matrices previas ya de nidas, por varios posibles caminos: recibiendo alguna de sus propiedades (como por ejemplo el tamao) por composicin de varias submatrices ms pequeas Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab modi cndola de alguna forma

16

A continuacin se describen algunas de las funciones que crean una nueva matriz a partir de otra o de otras. [m,n]=size(A) devuelve el nmero de las y de columnas de la matriz A n=length(x) calcula el nmero de elementos de un vector x zeros(size(A)) forma una matriz de ceros del mismo tamao que una matriz A previamente creada ones(size(A)) dem con unos A=diag(x) forma una matriz diagonal A cuyos elementos diagonales son los elementos de un vector ya existente x x=diag(A) forma un vector x a partir de los elementos de la diagonal de una matriz ya existente A diag(diag(A)) matriz A crea una matriz diagonal a partir de la diagonal de la

Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab triu(A) A tril(A)

17

forma una matriz triangular superior a partir de una matriz dem con una matriz triangular inferior

3.7 OPERADOR DOS PUNTOS (:) Este operador es muy importante en MATLAB y puede usarse de varias formas de namos un vector con elementos del 1 al 6

>>x=1:6 x = 1 2 3 4 5 6 un vector con elemnetos entre 3 y 10 que se incrementan de 2 en 2 >>x=3:2:10 x = 3 5 7 9


Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab

18

>>y=3:1.5:8 y = 3.0000 4.5000 6.0000 7.5000 El operador dos puntos (:) es an ms til y potente y tambin ms complicado con matrices A continuacin se va a de nir una matriz A de tamao 4 4 y despus se realizarn diversas operaciones sobre ella con el operador (:) >>A=[1 2 3 4;-1 -2 -3 -4; 5 6 7 8;-5 -6 -7 -8] A = 1 2 3 4 1 2 3 4 5 6 7 8 5 6 7 8 Vamos a extraer elementos de una matriz
Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab

19

>>A(2,:) ans = -1 -2 -3 -4 El 2, indica la la 2 y los dos puntos aislados -despus de la comarepresentan "todos los elementos". >>A(3,2:4) ans = 6 7 8 El 3, indica la la 3 y 2:4 indica que seran extraidas desde la columna 2 hasta la 4 El siguiente comando extrae todos los elementos de las las 2,3 y 4: >>A(2:4,:) ans =
Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab

20

1 2 3 4 5 6 7 8 5 6 7 8 3.8 Funciones que actan sobre vectores


Las siguientes funciones slo actan sobre vectores (no sobre matrices, ni sobre escalares): [xm,im]=max(x) mximo elemento de un vector. Devuelve el valor mximo xm y la posicin que ocupa im min(x) sum(x) prod(x) mnimo elemento de un vector. suma de los elementos de un vector producto de los elementos de un vector

[y,i]=sort(x) ordenacin de menor a mayor de los elementos de un vector x. Devuelve el vector ordenado y, y un vector i con las posiciones Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab iniciales en x de los elementos en el vector ordenado y 3.9 Funciones que actan sobre matrices

21

Las siguientes funciones exigen que el/los argumento/s sean matrices. En este grupo aparecen algunas de las funciones ms tiles y potentes de MATLAB B = A' calcula la traspuesta (conjugada) de la matriz A t = trace(A) devuelve la traza t (suma de los elementos de la diagonal) de una matriz cuadrada A [m,n] = size(A) devuelve el nmero de las m y de columnas n de una matriz rectangular A n = size(A) devuelve el tamao de una matriz cuadrada A [X,D] =eig(A) valores propios (diagonal de D) y vectores propios (columnas de X) de una matriz cuadrada A. Con frecuencia el resultado es Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab complejo (si A no es simtrica) norm(x) norm(x,2). norma-2 norma eucldea; equivale al mdulo o

22

3.10 Funciones para clculos con polinomios Para MATLAB un polinomio se puede de nir mediante un vector de coe cientes. Por ejemplo, el polinomio:

x4

8x2 + 6x

10 = 0

se puede representar mediante el vector [1, 0, -8, 6, -10]. MATLAB puede realizar diversas operaciones sobre l, como por ejemplo evaluarlo para un determinado valor de x (funcin polyval()) y calcular las races (funcin roots()):

>> pol=[1 0 -8 6 -10] pol =


Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab 1 0 -8 6 -10

23

>>roots(pol) ans = -3.2800 2.6748 0.3026 + 1.0238i 0.3026 - 1.0238i >> polyval(pol,1) ans = -11 Algunas funciones orientadas al clculo con polinomios son las siguientes: poly(A) polinomio caracterstico de la matriz A
roots(pol) races del polinomio pol Departamento Acadmico de Ciencias Bsicas

Curso de Capacitacion de MatLab

24

polyval(pol,x) evaluacin del polinomio pol para el valor de x. Si x es un vector, pol se evala para cada elemento de x conv(p1,p2) producto de convolucin de dos polinomios p1 y p2 [c,r]=deconv(p,q) divisin del polinomio p por el polinomio q. En c se devuelve el cociente y en r el resto de la divisin

Departamento Acadmico de Ciencias Bsicas

You might also like