Pasar una función a otra función
Se pueden utilizar identificadores de función como argumentos de entrada para otras funciones, que se llaman funciones de funciones. Estas funciones evalúan expresiones matemáticas en un rango de valores. Las funciones de funciones habituales son integral
, quad2d
, fzero
y fminbnd
.
Por ejemplo, para buscar la integral del logaritmo natural de 0 a 5, pase un identificador para la función log
a integral
.
a = 0; b = 5; q1 = integral(@log,a,b)
q1 = 3.0472
De forma similar, para buscar la integral de la función sin
y la función exp
, pase identificadores para estas funciones a integral
.
q2 = integral(@sin,a,b)
q2 = 0.7163
q3 = integral(@exp,a,b)
q3 = 147.4132
Además, puede pasar un identificador para una función anónima a funciones de funciones. Una función anónima es una función de MATLAB® basada en una expresión de una línea que no requiere un archivo de programa. Por ejemplo, evalúe la integral de en el rango [0,Inf]
:
fun = @(x)x./(exp(x)-1); q4 = integral(fun,0,Inf)
q4 = 1.6449
Las funciones que toman una función como una entrada (llamadas funciones de funciones) esperan que la función asociada con el identificador de función presente un cierto número de variables de entrada. Por ejemplo, si llama a integral
o a fzero
, la función asociada con el identificador de función debe tener exactamente una variable de entrada. Si llama a integral3
, la función asociada con el identificador de función debe tener exactamente tres variables de entrada. Para obtener información acerca de cómo llamar a funciones de funciones con más variables, consulte Parametrizar funciones.