Está en la página 1de 14

UNIVERSIDAD POLITECNICA SALESIANA MARIA GABRIELA VILLAMIL GONZALEZ 4TO NIVEL INGENIERIA AMBIENTAL MATEMATICAS IV MANUAL BASICO DE MATLAB

MATLAB

QU ES Y PARA QU

MATLAB (Matrix Laboratory) es un software desarrollado por MathWorks. Ha contado con una diversa gama de modificaciones desde el primer software hasta el ltimo. De hecho la evolucin del software fue alcanzado con la versin 6 la cual incluye diversos tipos de toolboxes que ms adelante se mencionarn. MATLAB es un software especializado de programacin matemtica idneo para la investigacin cientfica y para diversas aplicaciones en general. Dicho de otra forma MATLAB es un lenguaje de alto nivel para la computacin tcnica, tal y como lo definen sus creadores. Esto integra computacin, visualizacin y una programacin es un medio ambiente de fcil uso donde los problemas y las soluciones son expresadas en una notacin matemtica familiar. Las rutinas de MATLAB son frecuentemente encontradas cuando se quiere trabajar con matrices ya que el lenguaje de programacin que es utilizado por el software es como un tipo de hbrido entre lenguaje C con una orientacin en matrices. La innovacin de las ltimas dos versiones de MATLAB depende ciento por ciento de la incrustacin de una serie de programas preestablecidos denominados toolbox. Los nuevos toolboxes varan dependiendo su uso y abarcan tpicos como los financieros, estadsticos, bases de datos, procesamiento de seales y los modelos GARCH para las series de tiempo. Aunado a estos se encuentran los de siempre, es decir todos los mecanismos para la visualizacin experta de mtodos de clculo y dems funciones matemticas. Ahora bien, comprendiendo que es MATLAB, es importante saber cuales son sus usos potenciales tanto en la investigacin cientfica como en su utilizacin en las ciencias aplicadas. Veamos solo algunos ejemplos citados ya en diversas bibliografas. MATLAB es el software idneo cuando se estudia y se trabaja con anlisis numrico y mtodos numricos. En el clculo diferencial e integral y sus aplicaciones se pueden suponer varios usos cuando se quiere estudiar sta rea de la matemtica en un sentido numrico no analtico, ejemplos de

esto puede ser la simple aproximacin numrica de una derivada o una integral hasta el clculo numrico aproximado de una ecuacin diferencial de algn grado. Tambin se pueden estudiar diversos tipos de funciones desde su perspectiva grfica. En el anlisis numrico es posible implementar rutinas en MATLAB para resolver grandes sistemas de ecuaciones mediante una visin matricial, pudiendo, a travs de funciones preestablecidas, lgebra matricial. En estadstica y probabilidad la utilizacin de MATLAB es impresionante, de hecho programas puramente determinados para labores estadsticos como STATISTICA Y SPSS se quedan cortos debido al nuevo toolbox de estadstica que MATLAB posee. En sta rea es posible estudiar toda la faceta estadstica de un problema comn, es decir desde el planteamiento del problema hasta el modelaje o el pronstico. Se pueden hacer estudios completos de anlisis de regresin contando toda la faceta de verificacin de errores. Se pueden plantear y simular todos o la mayora de los modelos estocsticos como las cadenas de Markov, los procesos Poisson, movimientos Brownianos, etc. En finanzas, los nuevos toolboxes financieros denominados financial, financial time series y financial derivatives permiten hacer estudios adecuados en cuanto al clculo de primas de aseguramiento, tasa de inters, precios de bonos y acciones. Tambin es posible desarrollar un estudio tcnico, utilizar los mecanismos de las series de tiempo financieras y trabajar con los instrumentos financieros ms modernos que son los productos financieros derivados. De hecho el financial derivatives toolbox permite realizar anlisis completos del precio de una opcin a travs del modelo de Black & Scholes. De hecho los modelos ms especializados en series de tiempo, en econometra y simulacin estocstica, tecnolgicamente imposibles de realizar hace unos cuantos aos, se empiezan a desarrollar en distintos lados del urbe que van desde la investigacin cientfica terica hasta la toma de decisiones de planeacin financiera y poltica econmica en instituciones gubernamentales. encontrar las matrices inversas, determinantes, transpuestas, y cada una de los dems resultados en el lgebra lineal y el

Es por esto que es fcil entender porque MATLAB es un software que si bien no es perfecto, si lleva la delantera en comparacin con otros softwares. Ahora bien, reconociendo el uso potencial de MATLAB tambin es necesario comprender que ningn software es perfecto y se necesita el apoyo de otro tipo de programas como son los siguientes: Excel SPSS Statistica Gauss MetaStock Eviews muchos ms PRESENTACIN
DE

base de datos base de datos financieros estadstica estadstica econometra matemticas analticas entre otros finanzas econometra MATLAB

Economtica

Maple y Matemtica

Lo primero que se debe conocer es la visualizacin del programa tal y como lo inicializa windows.

Es importante conocer cada una de las partes del programa. El Launch Pad es el lugar donde se presentan los toolboxes y los demos que la versin de MATLAB contenga. En ste lugar tambin se encuentran las ayudas a los toolboxes.

El Command Window es el lugar de MATLAB donde se corren los programas, es decir en donde se presentan los resultados de los programas, ms no donde se programa. La barra de herramientas tiene diversas funciones las cuales debe ser tarea del alumno conocerlas. La lnea de comandos tiene las mismas funciones que en otros programas. A excepcin de la parte de current directory que hace mencin al directorio que MATLAB est utilizando. Esto es importante mencionarlo ya que una de las dificultades tcnicas que conlleva MATLAB es la confusa idea de que cuando se corra un programa, todas las partes del programa debern estar guardadas en un mismo directorio. Es decir, digamos que estamos calculando el precio de una opcin financiera, se necesitan diversos parmetros como el precio de una accin, su rentabilidad, volatilidad, etc. Todos estos datos debern estar guardados en el mismo directorio en el cual el programa principal est guardado. Antes de adentrarse ms profundamente en esto observemos cual es el mecanismo comn para agregar un directorio. Obsrvese que G:\MATLAB6p5\work viene por default. Hay dos maneras de agregar un nuevo directorio, una directa y otra ms trabajada. La manera directa es que en la lnea de comandos a un lado de current directory aparecen tres puntos suspensivos. Al picarle dentro de esos tres puntos suspensivos se despliega el siguiente cuadro de dilogo.

Lo siguiente es escribir el nombre de la carpeta a crear y hacer clic en crear nueva carpeta. Y entonces fijarse que el nombre de este nuevo directorio aparezca en el current directory de MATLAB. La otra forma de hacer esto y realmente la forma como debe de hacerse es: 1) File 2) Set Path 3) Add folder 4) Y repetir lo anteriormente escrito. Conociendo esto lo que continua es ver donde se programa. En File se hace clic en New y se elige lo que se desea realizar. Supongamos que se quiere realizar un programa normal. Entonces se hace clic en MFile. De hecho todo el programa ser nuestro M-File.

La parte de arriba que dice es el nombre completo del directorio de donde est corriendo el programa G:\DocumentandSettings\Vladimir\Escritorio\TESIS\Simulations

De igual forma hay una tercera visualizacin diferente que es la que se refiere a cualquier grfica desplegada.

Es as como terminamos esta parte de presentacin. Ahora nos debemos de adentrar un poco ms en la programacin de MATLAB. FUNCIONES

BSICAS

A continuacin lo que se pretende es dar a conocer el uso de las funciones ms bsicas en la programacin en MATLAB. Lo primero que se tiene que conocer es que a diferencia del lenguaje C, en MATLAB no es necesario incluir las libreras ya que los toolboxes se leen directamente. Con respecto a esto, lo nico que se tiene que hacer para comenzar una programacin en MATLAB es escribir function y el nombre del programa. Si est bien escrito function se escribir automticamente en azul. Por otra parte, todo aquel comentario que sirva como indicacin al usuario y no se procese en el programa deber llevar antes el signo % quien se escribir automticamente en verde.

Conociendo esto, ahora si se mencionan las funciones ms bsicas. Deber ser labor del estudiante ir conociendo dems funciones por su propia cuenta conforme se vayan necesitando. Declaracin de funciones El signo >> se escribe automticamente en el promp de MATLAB (entindase por promp el command windows) ms no en el M-File Antes que nada recurdese que cada una de las funciones de MATLAB est orientado a ser parte de matrices. Es decir, >> x = 1; el vector x (de dimensin 1x1) se le asigna el valor 1. En MATLAB se escribe ; (punto y coma) como indicacin de que no se quiere desplegar este resultado. Es decir: >> x = 1 x= 1 nada De ahora en adelante se escribir para todas las funciones ; y deber ser tarea del estudiante observar las respuestas de MATLAB. Otros ejemplos seran: >> x = [1,2,3]; numricas 1,2 y 3. >> x = [1;2;3]; % se define el vector x de dimensin 3 x 1 con entradas numricas 1,2 y 3. El signo es una indicacin para que MATLAB calcule la transpuesta de una matriz. Para todos aquellos lectores que no estn familiarizados con los trminos matriciales, una operacin transpuesta significa que los renglones de una matriz sern intercambiados por las columnas de la misma. Vemoslo con un ejemplo sencillo. % se define el vector x de dimensin 1 x 3 con entradas MATLAB despliega MATLAB no despliega >> x = 1;

1 2 3 4 1 5 9 13 5 6 7 8 2 6 10 14 9 10 11 12 = 3 7 11 15 13 14 15 16 4 8 12 16
>> x = [1,2,3,4;5,6,7,8;9,10,11,12;13,14,15,16]; >> x x=

1 2 3 4

5 9 13 6 10 14 7 11 15 8 12 16 1 2

Trabajemos las siguientes funciones con la siguiente matriz 3 4 >> x=(1,2;3,4); >> y = x(2,1) la matriz x y= 3 Se debe entender que en (a,b) a representa al rengln y b a las columnas. En nuestro ejemplo a = 2 y b =1. >> z = x(2,2) z= 4 >> A = x(:,1) A= 1 3 >> B = x(1,:) % la funcin B se define como todo el vector perteneciente al %primer rengln. z= 1 % la funcin A se define como todo el vector perteneciente a la %primera columna. >> z = x(1,1) % definicin de la matriz x % la funcin y se define como la entrada (2,1) de

B= 1 2

Es fcil suponer que pasa con >> C = x(:,2) y >>D=x(2,:) Dos funciones muy tiles al programar, son las referentes a la dimensin de los vectores y matrices. Por ejemplo si estamos programando un modelo financiero y estamos trabajando con una serie de datos pertenecientes al precio de una accin, se necesita saber con cuntos datos trabajamos. En este tipo de problemas es fcil suponer en contar los datos, lo cual resultara bastante intil si hablamos de 1000 datos. Para solucionar este problema existen dos funciones las cuales son: Supngase que trabajamos con una matriz X de dimensin 1000 x 2000 >> y = length(X) % Devuelve el nmero de elementos en el vector de X y= 1000 >> z = size(X) la matriz z= 1000 2000 Ahora veamos algunas operaciones bsicas con matrices. Para un mejor entendimiento se debe de repasar la teora elemental de matrices. Sin embargo a pura manera de ejemplo mencionamos que un espacio vectorial (a partir del cual se define una matriz) solo est definida para la suma y multiplicacin. Veamos estas dos operaciones con un ejemplo: % Devuelve la dimensin del espacio vectorial de

a b e c d + g

f a + e b + f = h c + g d + h

a b e c d g

f ae + bg = h ce + dg

af + bh cf + dh

Deber ser responsabilidad del alumno verificar las restricciones para la cual est definida la multiplicacin. El problema cuando se multiplican matrices puede entenderse con los siguientes ejemplos. Vease que en el primero se est efectuando la

multiplicacin matricial como se defini con anterioridad. El segundo ejemplo no lo hace. >> x = [1,2;3,4]; >> y = [4,3;2,1]; >> x*y ans ans >> x = [1,2;3,4]; >> y = [4,3;2,1]; >> x.*y

8 5 20 13

4 6 6 4

El punto anterior es muy importante entenderlo y se utiliza mucho cuando se trabaja con problemas en donde existen muestreos estadsticos en la programacin. Existen otros tipos de funciones matriciales. Se hace un pequeo resumen a continuacin. El alumno deber revisar la teora. Se define una matriz X cuadrada. >> inv(X); >> det(X); >> eye(n) % despliega la inversa de la matriz X % despliega el determinante de la matriz X % despliega una matriz nula de m x n % despliega una matriz identidad de dimensin n

>> zeros(m,n)

Funciones para graficar En MATLAB es posible realizar todo tipo de graficas. Sin embargo la idea es la misma y solo cambiar una funcin, la cual definir el tipo de graficas que se quiera. Antes que nada se debe de entender lo siguiente: MATLAB es un software que est programado desde una perspectiva matricial. Cuando se grafica no es la excepcin. En este programa es posible presentar en una misma pantalla la cantidad de graficas que se quieran, sin embargo la forma de hacerlo es primero pensar en que cada una de las grficas ser la informacin que exista en cada una de las entradas de la matriz que se define. Vemoslo. Con una informacin anterior, digamos el precio de una accin, su rendimiento y su volumen.

Sea p = precio, r = rendimiento y v = volumen Primero vemos cual es la funcin para desplegar una grfica simple. >> plot(accin) Y MATLAB desplegar

Esta es la forma ms sencilla para graficar. Sin embargo qu pasa si queremos la grfica de la accin y su rendimiento. subplot(2,1,1) plot(accion) subplot(2,1,2) plot(rendimiento) Aqu hay varias cosas que observar, la primera es que este cdigo se escribe en el M-File por lo tanto >> no aparece. Luego el subplot es la indicacin para MATLAB que se desplegarn varias grficas. En nuestro caso se desplegarn 2 grficas en una columna. De hecho de manera general podemos definir el subplot de la siguiente manera: Subplot(m,n,x) donde m y n definen la matriz de graficas y x el lugar de la grfica. Es por esto que en nuestro cdigo el subplot(2,1,1) define la grfica del precio de la accin que ir en la matriz de 2 x 1 en el primer

lugar. Y subplot(2,1,2) define la grfica del rendimiento que ir en el segundo espacio. Despus de este pequeo cdigo MATLAB desplegar.

Otra funcin importante es figure, que sirve para desplegar varias hojas de grficas. Por ejemplo: figure(1) plot(accion) title(accion) figure(2) plot(rendimiento) title(rendimiento) MATLAB desplegar dos pantallas de grficas. La primera ser del precio de la accin y la segunda pantalla del rendimiento de ste. Title es la funcin para agregar un ttulo a la grfica. Existen muchas funciones especiales que dan presentacin a la visualizacin de las grficas y ser tarea del alumno analizarlas. Sin embargo cada una de las funciones pueden ser saltadas en el cdigo del programa y realizarse directamente en la barra de herramientas de las grficas. Es decir en

También podría gustarte