Saltar al contenido

Aprende a usar las Funciones Anónimas en MATLAB

Hola controleros y controleras, en el día de hoy vamos a aprender a usar las funciones anónimas o function_handle utilizando el software de Matlab.

Antes de comenzar te hago la invitación para que veas el Tutorial Gratuito en Español de Matlab que tenemos en el sitio WEB.

Y que te suscribas al canal, donde se encuentran todos los videos de estos tutoriales de matlab y mucha información adicional sobre ingeniería.

Funciones Anónimas en Matlab

Por lo general, si se enfrenta al problema de crear una función en matlab, querrá almacenarla para usar en otros proyectos de programación. Sin embargo, MATLAB incluye un tipo más simple de función, llamada función anónima.

Las funciones anónimas en Matlab se definen en la ventana de comandos o en un archivo-m script y están disponibles, en gran medida como los nombres de variables, sólo hasta que se limpia el área de trabajo.

Para crear una función anónima, considere el siguiente ejemplo:

ln = (@x) log(x)

  • El símbolo @ alerta a MATLAB que ln es una función.
  • Inmediatamente después del símbolo @, se menciona la entrada a la función.
  • Finalmente, se define la función.

El nombre de función aparece en la ventana de variables, mencionada como una function_handle (manipulador de función).

Utilidad del function_handle en Matlab

Utilizar este tipo de funciones se vuelve especialmente util cuando tenemos demasiadas variables, combinadas con muchos datos y, dentro de nuestro código, vamos a realizar una misma operación para todos.

Las funciones anónimas acceden a las variables del workspace en el que son definidas creando una copia de las variables que están utilizando. El valor de dichas variables ya no se actualiza; sólo los argumentos pueden cambiar de valor. De esta forma, las funciones anónimas pueden ejecutarse a través del handle (@) en otros espacios de trabajo.

Uso de las Funciones Anónimas

Las funciones anónimas se pueden usar como cualquier otra función; por ejemplo,

>>ln(10)
ans
2.3026

Una vez que se limpia el área de trabajo, la función anónima ya no existe más.

Las funciones anónimas y los manipuladores de función relacionados son útiles en funciones que requieren otras funciones como entrada (funciones de función).

Las funciones anónimas se pueden guardar como archivos .mat, tal como cualquier variable, y se pueden restaurar con el comando load.

Múltiples funciones anónimas

Podemos usar las funciones anónimas dentro de otra función anónima en nuestro código en matlab. Esto es especialmente útil en el caso de que se desee pasar diferentes parámetros a una función que se este evaluando dentro de un rango de valores. Ejemplo de multiples function_handle

g(c) = \int_0^1(x^2+cx+1)dx
g = @(c) (integral(@(x) (x.^2 + c*x + 1),0,1));

Funciones con múltiples entradas o salidas

Al usar un identificador de función en Matlab con el handle (@) donde se requieran multiples entradas y salidas, es necesario especificar explicitamente los argumentos que la función tiene de entrada igual que una función normal, es decir con los argumentos separados por comas.

x^2+y^2+xy
myfunction = @(x,y) (x^2 + y^2 + x*y);  x = 1; y = 10; z = myfunction(x,y)

Cuando la expresión incluye várias salidas, solo podremos asignar las salidas al momento de llamar la función, por medio de corchetes y separados por comas.

Eso es todo por la entrada del dia de hoy, espero les haya gustado y hayan aprendido algo nuevo. Si te ha servido el contenido de esta entrada, de los videos y los códigos de implementación y deseas apoyar mi trabajo invitandome a un café super barato, puedes hacerlo en el siguiente link:

👉 Invitar a Sergio a un Café ☕️

Que esten muy bien, nos vemos en la siguiente entrada.