diapositivas matlab
TRANSCRIPT
Profesor: Ing. Gregorio García PeñaResponsable : Ibañez Villarreal Zucety Stephanie
Febrero, 2011
¿QUÉ ES MATLAB?
El Matlab incluye un editor de archivos M, orientado a la programación sobre este software. Si opta por otro editor, se debe vigilar siempre, que los archivos escritos se guarden con esta extensión. De acuerdo a cómo se definan, estos archivos pueden separarse en dos tipos:Archivos de comandosFunciones
Archivos de comandosLos archivos de comandos son
simplemente archivos M que
contienen instrucciones de MATLAB,
que una vez editados, se los guarda
con algún nombre en algún
directorio, que se encuentre dentro
del path de búsqueda del MATLAB.
Por efecto, la carpeta de trabajo es
el directorio work, que se encuentra
dentro de la carpeta de instalación
del MATLAB.para cambiar el
directorio o carpeta de trabajo, asi
comc agregar nuevas carpetas de
biblioteca, se debe usar el path
browser,o el set path.
El path browser se encuentra dentro de la carpeta de instalación que trae el MATLAB incluído.
Para convocar los archivos escritos, solo se debe escribir el nombre del archivo guardado en la ventana de comandos, y las instrucciones que hayan sido escritas, serán ejecutadas.
¡IMPORTANTE!
Todas las variables que se hayan creado dentro de este
archivo, luego de su ejecución, pasarían a formar parte de
nuestro ESPACIO DE TRABAJO o WORKSPACE. Se debe tratar
de que las variables del WORKSPACE, no coincidan con
las que aparecen con los archivos M que se han de
ejecutar
Se utilizará “Hola mundo”. Primeramente, abrimos un documento de texto, ya sea desde el editor de archivos M que incluya el MATLAP o desde cualquier otro que nos permita editar el ASCII, en él escribimos la siguiente línea:disp(“Hola mundo”)
La función disp muestra en la ventana de comandos el string que se le envía como comando.
Guardamos ahora el documento como Saludar.m o el nombre que se desee, con su extensión m.
Ejemplo
Ahora ingrese el nombre del archivo guardado en la ventana de comandos, sin la extensión .m esta vez para el ejemplo de arriba.>>saludarHola mundo
Este es un ejemplo bastante simple y claro que es lo que hace un archivo de comandos cuando es llamado.
•Funciones Una función es un archivo M similar al
archivo M de comandos, con una diferencia en su definición. La primera línea de un función posee la siguiente estructura:function[argumentos_salida] - nombre[argumentos_entrada]
Nombre corresponde al nombre de la función
Argumentos_salida representa una lista de elementos del retorno de la función.
Argumentos_entrada son los parámetros que recibe la función para poder realizar su proceso.
¡IMPORTANTE!
El nombre de la función debe coincidir con el nombre del archivo M con el cual se le
guarda. De no ser esto, podrían existir errores de directorio y/o ejecución.
Dado el script llamado cuadrado.m:% este es un script que eleva un número al cuadradonro = input('Ingrese un número positivo:');nro = nro * nro;disp('El número ingresado elevado al cuadrado es: ');disp(nro);Y cuando escribimos en el Workspace:>> help cuadradoeste es un script que eleva un número al cuadrado
EJEMPLO
Toolboxes de MATLAB
EL ESPACIO DE TRABAJO DE MATLAB
¿CÓMO FUNCIONA MATLAB?
La elaboración de un programa para Matlab es muy sencilla. Basta abrir un documento de texto (se puede hacer con cualquier editor, Matlab trae uno incorporado), escribir las instrucciones tal como se pondrían en la ventana de comandos y guardar el documento con la extensión .m (por ejemplo: miprog.m). Matlab reconoce automáticamente los ficheros que tienen extensión .m
Control de flujo
Al proceso de toma de decisiones se le llama control del flujo
Antes de ponerse a escribir el programa, sobre todo si es un poco largo o complejo, es útil trazar un esquema, en lenguaje corriente, de lo que se quiere hacer. A eso se le denomina un diagrama de flujo. Si lo que se pretende está claro, escribir el programa se reduce a traducir el diagrama de flujo del castellano al lenguaje de Matlab.
Por ejemplo:
Inicio de MATLAB MATLAB se inicia directamente desde
Windows. Al invocarse MATLAB aparecerá la pantalla de
comandos, algunas sugerencias y el símbolo >> , el cual indica la entrada de instrucciones para ser evaluadas. >>
>> Comando o instrucción a evaluar < enter > Para hacer la suma de dos números,
escribimos : >> 5 + 5 < enter > Presionamos la tecla entrar.ans =10
El resultado es desplegado y se guarda en la variable ans (answer).
MATLAB puede almacenar información en variables tales como :a = 100 " <Ctrl> <ENTER> para evaluar la celda "
Cada vez que capturamos información en MATLAB y presionamos <ENTER> ésta es desplegada inmediatamente ( letras en color azul ), pero si ponemos un punto y coma al final de la instrucción MATLAB omite el desplegado de información. Por ejemplo :b = 50;
Si se quiere saber el valor de alguna variable capturada sólo se tiene que poner el nombre de la variable y <ENTER> y MATLAB lo despliega. Estas variables residen en el espacio de trabajo de MATLAB.b
¿Cómo accedemos al editor?
•Desde el Workspace: >> edit;
•Desde el menú File / New /
M-
file.
¿Cómo se ejecuta un script?
Sencillamente se debe introducir su nombre en la línea de comandos o mediante el editor. El script contiene definición de funciones o conjuntos de comandos y permite crear y modificar estos archivos.
HELP Y HELPWIN Si quieres conocer el funcionamiento de
una determinada herramienta teclea>>help “nombre del comando”
Ejemplo:>> help mean %Te indica como funciona mean, que calcula la media de una matriz
Un resultado análogo encontrarás al teclear helpwin, en el que se te mostrará la ayuda en una ventana separada y en un formato más estético.
>> helpwin mean
FUNCIONES DE ENTRADA Y SALIDA Input: Esta función permite imprimir un mensaje en la
línea de comandos de Matlab yrecuperar como valor de retorno un valor numérico o el resultado de una expresióntecleada por el usuario.Ejemplo: n = input('Ingrese un número: ')
Disp: Esta función permite imprimir en pantalla un mensaje de texto o el valor de una
matriz, pero sin imprimir su nombre. En realidad, disp siempre imprime vectores y/omatrices: las cadenas de caracteres son un caso particular de vectores.Ejemplo: disp ('El programa ha terminado')
Caja de herramientas y paquetes de bloques del
MATLAB
MATEMÁTICA SENCILLA Matlab ofrece la posibilidad de
realizar las siguientes operaciones matemáticas:
OPERACIÓN SÍMBOLO EXPRESION MATLAB
Suma + a+b
Resta - a-b
Multiplicación * a*b
División / a/b
Potencia ^ a^b
VARIABLES EMPLEADASVARIABLE DEFINICIÓN DE VARIABLE VALOR
Ans Variable usada por defecto para almacenar el último resultado
? ? ?
Pi Razón de una circunferencia a su diámetro
3.1416
Eps Número más pequeño, tal que cuando se le suma 1, crea un
número en coma flotante en el computador mayor que 1
2.2204e-016
Inf Infinito Inf
Nan Magnitud no numérica NaN
i y j i = j = −1 0 + 1.0000i
Realmin El número real positivo más pequeño que es utilizable
2.2251e-308
realmax El número real positivo más grande que es utilizable
1.7977e+308
ALGUNAS OPERACIONES MÁS
FUNCIÓN
¿QUÉ HACE?
abs (x) valor absoluto o magnitud de un número complejo
sign (x) signo del argumento si x es un valor real(-1 si es negativo, 0 si es cero, 1 si es positivo)
exp (x) exponencial
gcd (m,n)
Máximo común divisor
lcm (m,n)
Minimo común múltiplo
log (x) logaritmo neperiano o natural
log2 (x) logaritmo en base 2
log10 (x)
logaritmo decimal
mod(x,y)
módulo después de la división
rem (x,y)
módulo después de la división
sqrt (x) raíz cuadrada
nthroot (x,n)
raíz n-ésima de x
VECTORES Y MATRICES Para crear un vector introducimos los valores deseados
separados por espacios (o comas) todo ello
entre corchetes []. Si lo que queremos es crear una matriz lo hacemos de forma análoga pero
separando las filas con puntos y comas (;).
Generalmente usaremos letras mayúsculas cuando nombremos a las matrices y minúsculas para
vectores y escalares. Esto no es imprescindible y Matlab no lo exige, pero resulta útil.
Ejemplos: >> x = [5 7 -2 4 -6] % es un vector, los elementos los
separamos con espaciosx =
5 7 -2 4 -6
>> y = [2,1,3,7] % es otro vector, los elementos los separamos con comasy =2 1 3 7
>> z = [0 1 2,3 4,5] % es otro vector, da igual separar los elementos por comas o espaciosz =0 1 2 3 4 5
>> A = [1 2 3; 4 5 6] % es una matriz con 2 filas y 3 columnasA =1 2 34 5 6
CONSTRUCCIÓN DE ALGUNAS MATRICES
Al igual que pasa con los vectores, existen unas sentencias que nos ayudan a crear más rápidamentealgunas matrices que Matlab ya tiene predefinidas (m y n deben tomar valores naturales):zeros (n) crea una matriz cuadrada n x n de
ceros.zeros (m,n) crea una matriz m x n de ceros.ones (n) crea una matriz cuadrada n x n de unos.ones (m,n) crea una matriz m x n de unos.
rand (n) crea una matriz cuadrada n x n de números aleatorios con distribución uniforme (0,1).
rand (m,n) crea una matriz m x n de números aleatorios con distribución uniforme (0,1).
randn (n) crea una matriz cuadrada n x n de números aleatorios con distribución normal (0,1)
randn (m,n) crea una matriz m x n de números aleatorios con distribución normal (0,1).
eye (n) crea una matriz cuadrada n x n de unos en la diagonal y ceros el resto.
eye (m,n) crea una matriz m x n de unos en la diagonal y ceros el resto.
magic (n) crea una matriz cuadrada n x n de enteros de modo que sumen lo mismo las filas y lascolumnas.
hilb (n) crea una matriz cuadrada n x n de Hilbert, es decir, los elementos (i,j) responden a laexpresión (1/(i+j-1)).
invhilb (n) crea una matriz cuadrada n x n que es la inversa de la matriz de Hilbert.
ALMACENAR Y RECUPERAR DATOS
Matlab permite guardar y cargar datos de los archivos del computador. En el menú File, la opción
Save Workspace as… guarda todas las variables actuales y Import Data… carga variables de unespacio de trabajo guardado previamente.
Otra forma sería guardar el estado de una sesión de trabajo con el comando save antes de salir:>> save
Al teclear esto, automáticamente se crea un fichero llamado matlab.mat. Puede recuperarse la
siguiente vez que se arranque el programa con el comando load:>> load
COMENTARIOS
Mediante estos, se pueden hacer más legibles el código fuente, estructurado, y mantenible. Los comentarios se introducen con el símbolo “%”. Cuando un símbolo aparece, todo lo que sigue a partir de él hasta el final de la línea se considera como un comentario.
REPRESENTACIONES GRÁFICAS EN MATLAB
Existe la función fplot que evalúa la función que se desea representar en la gráfica de salida. Como entrada, necesita conocer el nombre de la función como una cadena de caracteres y el rango de representación como un vector de dos elementos: fplot ('nombre', [ valor min, valor max] ).
Ejemplo:>> fplot ('sin', [-3*pi,3*pi] )
•Más gráficas
>> x = [-2 0 2 0 -2]; y = [4 8 4 0 4];
>> fill (x,y,'r') % dibuja el polígono, 'r' indica el color rojo.
•Gráficos en línea:
•Superficie de malla:
•Gráfica de superficie: