Funciones en Matlab
Funciones en Matlab
Funciones en Matlab
Hamilton Galindo
2015
1 Tipos de programas
2 Partes básicas de un programa
3 Caracterı́sticas generales de las funciones en Matlab
4 Help de directorios
5 Sub-funciones
6 Referencias de función
Creación de referencia de función
Evaluación de funciones mediante referencias
Utilidad de las referencias de función
Funciones inline
Funciones anónimas
Funciones anidadas
7 Funciones más importantes en Matlab
8 Tipos de funciones
Funciones que operan de modo escalar
Funciones que operan solo sobre vectores
Funciones que operan sobre matrices
9 Variables
Hamilton Galindo Clase 4: Funciones en Matlab 2015 2 / 34
Tipos de programas
En Matlab hay dos tipos de programas: scripts y functions. Un script es
el tipo de programa más simple de Matlab, porque no tienen un input, que
ejecuta una series de sentencias; mientras, que las funciones aceptan
argumentos de entrada (inputs) y producen argumentos de salida
(output).
Script
Útil para automatizar una serie de
Función
pasos
No acepta inputs Útil para extender el lenguaje de
Matlab para tus aplicaciones
Almacena variables en el
workspace base que es compartido Acepta inputs y muestra
con otros scripts a los cuales se resultados
puede acceder desde la linea de Almacena variables en el
comando. workspace interno de la función
Escribiendo el nombre del script (separado del workspace base)
en la lı́nea de comando, Matlab
ejecuta sus sentencias.
Hamilton Galindo Clase 4: Funciones en Matlab 2015 3 / 34
Partes básicas de un programa I
Definición de la
función
Linea principal
Texto de ayuda
Cuerpo
p de la
función
Comentarios
¿Que son?
Son funciones adicionales definidas en un mismo fichero *.m con nombres
diferentes del nombre del fichero (y del nombre de la función principal)
¿Que es?
Es una forma para referirse al nombre de una función. Se usa para llamar a
una función indirectamente.
¿Que son?
Permite crear una función matematica con sus argumentos
1 El código es el siguiente:
g = inline(‘x + y − 2’,‘x’,‘y’)
2 Esto crea la siguiente función:
g (x, y ) = x + y − 2
g (2, 5)
¿Que son?
Es una forma muy flexible de crear funciones sobre la marcha, bien en la
lı́nea de comandos, bien en una lı́nea cualquiera de una función o script.
La forma general de las funciones anónimas es:
¿Que son?
Son funciones dentro de otras funciones, las llamadas funciones
contenedoras.
...
function Ab1()
...
end
...
function Ab2()
...
end
...
end
....
end
[xm, im] = max(x) máximo elemento de un vector. Devuelve el valor máximo xm y la posición
que ocupa im
min(x) mı́nimo elemento de un vector. Devuelve el valor mı́nimo y la posición
que ocupa
sum(x) suma de los elementos de un vector
cumsum(x) devuelve el vector suma acumulativa de los elementos de un vector (cada
elemento del resultado es una suma de elementos del original)
mean(x) valor medio de los elementos de un vector
std(x) desviación tı́pica
prod(x) producto de los elementos de un vector
cumprod(x) devuelve el vector producto acumulativo de los elementos de un vector
[y , i] = sort(x) ordenación de menor a mayor de los elementos de un vector x. Devuelve
el vector ordenado y, y un vector i con las posiciones iniciales en x de los
elementos en el vector ordenado y.
En realidad estas funciones se pueden aplicar también a matrices, pero en ese caso se aplican
por separado a cada columna de la matriz, dando como valor de retorno un vector resultado de
aplicar la función a cada columna de la matriz considerada como vector.
Hamilton Galindo Clase 4: Funciones en Matlab 2015 25 / 34
Funciones que operan sobre matrices
3 Variables persistentes
I Se pueden definir en funciones y no en scripts.
I Son variables locales de las funciones que conservan su valor entre
distintas llamadas a la función.
I Matlab no las limpia desde memoria cuando la función concluye, ası́
que sus valores son retnidos de una llamada de función a otra.
I Solo la función en la cual están declaradas esta permitida acceder a
ellas.
I Para declarar una variable como persistente se hace lo siguiente:
persistent A B
I Es habitual usar letras mayusculas.
Los nombres de las variables deben de empezar con una letra y luego
pueden contener: letras, dı́gitos y subrayados.
Matlab distingue entre mayúsculas y minúsculas; por tanto, “a” y
“A” no son la misma variable.
El número máximo de caracteres que puede tener el nombre de una
variable es de 63. Esto se puede observar escribiendo
namelengthmax en la lı́nea de comando.
Para verificar que el nombre de una variable es válido, antes de ser
usado, se utiliza la función isvarname, la cual retorna 1 si el nombre
es válido y 0 en otro caso.
Tener cuidado en asignar a una palabra reservada en Matlab como
nombre de una variable. Para ver las palabras reservadas en Matlab se
escribe: iskeyword