Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 1 MATLAB
MATLAB es un entorno de computacin tcnica que posibilita la ejecucin de clculo numrico y simblico de forma rpida y precisa, acompaado de caractersticas grficas y de visualizacin avanzadas aptas para el trabajo cientfico e ingeniera. MATLAB es un entorno interactivo para el anlisis y modelado. Por otro lado MATLAB, presenta un lenguaje de programacin de muy alto nivel basado en vectores, arrays y matrices. MATLAB, es un software en continuo crecimiento y muy adaptable a los avances cientficos y al trabajo en laboratorios I+D, que resuelve los problemas que presenta la ingeniera en el desarrollo de productos innovadores. En el campo de Comunicaciones MATLAB permite realizar modelado y diseo de sistemas DSP, trabajar con sistemas conmutados, con telefona fija/mvil y con modelado de canal/emisor receptor. En el campo Aeroespacial/Defensa, MATLAB permite trabajar en sistemas radar, unidades de seguimiento y rastreo, avinica, modelado y control de sistemas de potencia y guiado, y navegacin y control. En el campo de la automocin, MATLAB posibilita aplicaciones para trabajar en la Ingeniera de control, sistemas de suspensin y diseo de bloques de embrague. MATLAB puede ser usado en las Finanzas cuantitativas, pudiendo utilizarse como un entorno de clculo para el anlisis de datos, para la valoracin y anlisis de opciones e instrumentos financieros, para la optimizacin de carteras y anlisis de riesgos y para el desarrollo de modelos y su validacin. Matlab tambin puede trabajar herramientas de Estadstica y pronsticos. MATLAB usando el Simulink, permite disear sistemas dinmicos sencillos o complejos y realizar modelado y simulacin mediante un lenguaje agradable.
Este pequeo modulo ha sido preparado para que te sirva de gua en el presente curso.
Querido alumno, aprender a trabajar en MATLAB te puede abrir las puertas a muchos campos. La profesora del curso. UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE INGENIERIA ANALISIS NUMERICO Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 2
REQUISITOS MINIMOS: El programa exige para el correcto funcionamiento un PC-Compatible con microprocesador Pentium, para trabajar sobre Windows 95,98, Mc,NT, XP o Windows 2000, con tarjeta grfica VGA y monitor color. Som imprescindibles 64 megabytes de memoria RAM (recomendable 128 megabytes), disco duro con un espacio libre de un gigabyte si se va a utilizar todo el sistema(si se utiliza solamente mdulos aislados el propio programa de instalacin indica el espacio en disco necesario como mnimo), un ratn y unidad CD-ROM.
COMENZANDO CON MATLAB EN WINDOWS Para comenzar con MATLAB, basta hacer doble clic en el icono de acceso directo al programa situado en el escritorio de windows, si no existe el icono de acceso directo en el escritorio para ejecutar el programa se debe elegir la opcin Programas del men Inicio de Windows y seleccionar la opcin MATLAB R12. Aparece la siguiente ventana:
Figura 1 UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE INGENIERIA ANALISIS NUMERICO Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 3 ENTORNO DE TRABAJO DE MATLAB La pantalla de entrada de MATLAB (figura1) constituye el marco de trabajo general del programa. Los elementos ms importantes de esta pantalla de inicio de MATLAB son los siguientes: Command Window( Ventana de comandos): Ejecuta las funciones MATLAB. Command History (historial de comandos): Presenta una historia de todas las funciones introducidas en la ventana de comandos y permite copiarlas y ejecutarlas. Lauch Pad: Ejecuta herramientas y documentacin de acceso para todos los productos de Math Works instalados en el computador. Current Directory (Directorio actual): Muestra ficheros MATLAB y ejecuta operaciones de ficheros tales como abrir y buscar contenido. Help (ayuda): Muestra y busca documentacin para la familia completa de productos MATLAB. Workspace(espacio de trabajo): Muestra y realiza cambios en el contenido del espacio de trabajo. Array Editor: Muestra contenido de arrays en formato de tabla y edita sus valores. LA VENTANA DE COMANDOS La ventana de comandos es el camino principal para comunicarse con MATLAB y se utiliza para ejecutar funciones y todo tipo de operaciones. Las entradas a ejecutar se escriben a continuacin del prompt y, una vez completadas se pulsa Enter Ejemplo: Hallar el rea de un crculo de radio igual 5 R = 5, A = pi* R^2 R = 5 A = 78.5398
Ejemplo: Definir un vector de 4 elementos radio = [ 3 4 5 7 ] radio = 3 4 5 7 UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE INGENIERIA ANALISIS NUMERICO Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 4 Ejemplo: Definir una matriz de 3x3 A = [ 1 2 3 ; 4 5 6 ; 7 8 9 ] A = 1 2 3 4 5 6 7 8 9
Ejemplo: Hallar el rea de un crculo de radio 3,4 y 5 radio = [ 3 4 5] , Area = pi* radio.^2
Sobre la ventana de comandos es posible evaluar los ya ejecutados anteriormente. Para ello basta seleccionar la zona de sintaxis a evaluar, hacer clic con el botn derecho del ratn y elegir la opcin Evaluate Selection del men emergente resultante (figura 2)
Fifura2 MATLAB es sensible al uso de maysculas y minsculas. MATLAB tambin permite escribir varias entradas sobre la misma lnea pero separadas por punto y coma. Las entradas se ejecutan secuencialmente segn estn colocadas en la lnea, pero slo se ofrece la salida siempre y cuando no UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE INGENIERIA ANALISIS NUMERICO Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 5 finalice en punto y coma. Cualquier entrada que tenga punto y coma detrs se ejecuta al pulsar Enter pero no se ve su salida. Con la tecla se llama a la ltima instruccin. Las entradas largas que no quepan en una lnea pueden continuarse en la lnea siguiente situando puntos suspensivos al final de la lnea.
La opcin Clear Command Window del men Edit permite limpiar la ventana de comandos. El comando clc tambin realiza esta funcin. De igual manera las opciones Clear Command History y Clear Workspace del men Edit permiten limpiar la ventana historial y la del espacio de trabajo. Algunas entradas aparecen en diferentes colores en la ventana de comandos para ayudar a interpretar mejor determinados elementos. Algunas de las reglas de los colores son las siguientes: 1) Las cadenas aparecen en color prpura, mientras se teclean. Al finalizarlas correctamente (con la comilla de cierre) se vuelven color marrn. 2) La sintaxis de control de flujo aparece en color azul 3) Al introducir el smbolo % que precede a un comentario en la ventana de comandos la escritura es de color verde. 4) Los errores aparecen de color rojo.
ALGUNOS COMANDOS DE AYUDA
Si deseas observar los tpicos de ayuda escribe: help Si deseas ver las funciones elementales escribir help elfun Los operadores y caracteres especiales lo observas con: help ops
UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE INGENIERIA ANALISIS NUMERICO Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 6
Ejemplo: Algunas f unciones importantes: Funciones matemticas elementales: Trigonometricas. sin(x) -seno de x (x esta dado en radianes) cos(x) - Coseno de x (x esta dado en radianes) tan(x) - Tangente de x sec(x) - secante de x csc(x) - cosecante de x asin(x) - arcoseno de x. (inversa del seno) sinh(x) - seno hiperblico de x asinh(x) - Inverso del seno hiperblico Exponential. exp(x) - Exponencial ( x e ) log(x) - Logaritmo Natural log10(x) -Logaritmo en base 10 log2(x) -Logaritmo en base 2 pow2(x) -Potencia de base 2 x 2 sqrt (x) - Raz cuadrada de x nextpow2(N) -Next higher power of 2. (returns the first P such that 2^P >= abs(N) )
Complex. abs(x) - Valor absoluto. conj(x) - Conjugada del nmero complejo x. imag(x) - Complex imaginary part. real(x) - Complex real part.
Rounding and remainder. fix(x) - Redondea hacia cero. floor(x) - Redondea hacia menos infinito. ceil(x) - Redondea hacia el mas infinito. round(x) - Redondea hacia el entero ms cercano. rem(x,y) - Residuo despues de una divisin. UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE INGENIERIA ANALISIS NUMERICO Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 7 Operadores y caracteres especiales: Entre los ms importantes tenemos:. Operadores aritmticos. Suma x + y Resta x - y Multiplicacin time(x,y) x * y Potencia power(x,y) x ^ y
Operadores Relacionales. eq(x,y) - Equal x == y ne (x,y) - Not equal x ~ = y lt(x,y) - Less than y x gt(x,y) - Greater than y x le(x,y) - Less than or equal y x ge(x,y) - Greater than or equal y x
Operadores Logicos and - Logical AND & or - Logical OR | not - Logical NOT ~ xor - Logical EXCLUSIVE OR
INTRODUCCION A LA PROGRAMACION EN MATLAB COMENTARIOS Para comentario usar el smbolo % al inicio del comentario INGRESO DE DATOS Input: Permite al usuario ingresar datos Sintaxis: Variable = input ( mensaje); Ejemplo 1: Edad = input(Ingresa tu edad =) Al presionar la tecla enter saldr el siguiente mensaje: Ingresa tu edad = 18 Edad = 18 UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE INGENIERIA ANALISIS NUMERICO Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 8 Ejemplo 2: A=input( Tu nombre?) Tu nombre ? Rosita Rios A = Rosita Rios REPORTE DE MENSAJES disp: Permite reportar mensajes sintaxis: disp( mensaje ); Ejemplo: disp( INGENIERIA );
fprintf: Reporta con formato a=5.27384; fprintf(el valor de a es %7.3f con \n 3 decimales , a); el valor de a es 5.274 con 3 decimales
SENTENCIA CONDICIONALES
V Condici n Sentencia 1
F V Condici n Sentencia 1 Sentencia 2 if Condicin Sentencia 1 else Sentencia 2 end
if Condicin Sentencia 1 end
UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE INGENIERIA ANALISIS NUMERICO Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 9 Ejemplo: A=input( Ingresa tu nota = ) if (A10.5) disp( aprobado ) else disp( desaprobado ) end SENTENCIAS REPETITIVAS:
VECTORES EN MATLAB Un vector fila se define colocando los elementos entre corchetes y separados por espacios en blanco o coma. C = [ 1 2 3 ] C = 1 2 3 En un vector columna los elementos se separan por punto y coma. D = [ 4 ; 5 ; 6 ] D= 4 5 6 F= 1 : 3 (F es un vector fila cuyas componentes son 1,2 y 3) G= 1 : 2 : 10 ( G es el vector formado por 1, 3, 5, 7 y 9) Hallar : G+2 G 3 G * 2 G / 5 G ^ 2 (Dar un mensaje de error) G.^ 2 ( cada elemento del vector G se eleva al cuadrado) En general H = a : b : c Condicin Sentencias
while ( condicin ) sentencias end UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE INGENIERIA ANALISIS NUMERICO Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 10 H es un vector fila cuyo primer valor es a, su incremento es b (si es negativo ser decremento) y no debe exceder de c. Ejemplo: x=1:1:7; Y=x.^2
MATRICES EN MATLAB
Una matriz se define colocando los elementos entre corchetes y separados por espacios en blanco o coma y de fila a fila por punto y coma. C = [ 1 2 3 ; 3 4 5; 5 6 7] C= 1 2 3 3 4 5 5 6 7 inv(C) es la inversa de la matriz C det( C ) es la determinante de la matriz C C es la transpuesta de la matriz C (la transpuesta tambin se aplica a vectores. eig(C ) halla los valores propios (eigen valores) de la matriz C. Se pueden operar matrices: B=C Hallar B+C, B*C, B-C, B.*C
SENTENCIA FOR
for : Repite una sentencia un nmero especifico de veces for variable = Valor inicial : Incremento (decremento) : valor final sentencias end Ejemplo: for h = 1 : 5 disp(h) end for h = 1: 3 : 10 disp ( [ h , h ^ 2 ] ) end UNIVERSIDAD NACIONAL DE TRUJILLO FACULTAD DE INGENIERIA ANALISIS NUMERICO Mg. Gloria Pomape Rojas Escuela Ingeniera Industrial 11 1 1 4 16 7 49 10 100 GRAFICA DE FUNCIONES
Se desea graficar: y =2x 2 x 5 X= -5 : 0.01 : 5; Y= 2*X .^2 X 5; plot (X,Y) grid on
DEFINICION DE FUNCIONES Si deseo crear una funcin para y =2x 2 x 5
Esta funcin se escribe en el editor y se graba como archivo f.m Probar en la ventana de comando f(0) f(1) Si meche ( x , y ) = 2 x 3 y x y La funcin meche sera:
Este funcin se escribe en el editor y se graba con el nombre de meche.m (EXTENSIN M) Tambin pueden crearse funciones anidadas. Se puede usar la sentencia inline: F = inline( 3 * x + 2 * y ^ 2 ) Crea la funcin F(x,y)= 3x + 2y 2
Otra forma :
X =-5 : 0.01 : 5; Y = 2*x.^2 X 5 ; T = zeros ( size ( X ) ); plot ( X , Y ) hold on plot ( X , T , r )
function Y = f(x) Y = 2 * x ^ 2 x 5 ; function z = meche (x ,y) z = 2 * x 3 *y x * y ;