Las Funciones Eval y Feval

1
LAS FUNCIONES EVAL Y FEVAL La función eval ('cadena de caracteres') hace que se evalúe como expresión de MATLAB el texto contenido entre las comillas como argumento de la función. Este texto puede ser un comando, una fórmula matemática o -en general- una expresión válida de MATLAB. La función eval puede tener los valores de retorno necesarios para recoger los resultados de la expresión evaluada. Esta forma de definir macros es particularmente útil para pasar nombres de función a otras funciones definidas en ficheros *.m. El siguiente ejemplo va creando variables llamadas A1, A2, ..., A10 utilizando la posibilidad de concatenar cadenas antes de pasárselas como argumento a la función eval: for n = 1:10 eval([’A’num2str(n)’ = magic(n)’]) end Por su parte la función feval sirve para evaluar, dentro de una función, otra función cuyo nombre se ha recibido como argumento. Por ejemplo, si dentro de una función se quiere evaluar la función calcular(A, b, c), donde el nombre calcular se envía como argumento en la cadena nombre, entonces feval (nombre, A, b, c) equivale a calcular(A, b, c).

description

Descripcion de las funciones Eval y Feval de Matlab

Transcript of Las Funciones Eval y Feval

Page 1: Las Funciones Eval y Feval

LAS FUNCIONES EVAL Y FEVALLa función eval ('cadena de caracteres') hace que se evalúe como expresión de MATLAB el texto contenido entre las comillas como argumento de la función. Este texto puede ser un comando, una fórmula matemática o -en general- una expresión válida de MATLAB. La función eval puede tener los valores de retorno necesarios para recoger los resultados de la expresión evaluada.Esta forma de definir macros es particularmente útil para pasar nombres de función a otras funciones definidas en ficheros *.m. El siguiente ejemplo va creando variables llamadas A1, A2, ..., A10 utilizando la posibilidad de concatenar cadenas antes de pasárselas como argumento a la función eval:for n = 1:10eval([’A’num2str(n)’ = magic(n)’])endPor su parte la función feval sirve para evaluar, dentro de una función, otra función cuyo nombre se ha recibido como argumento. Por ejemplo, si dentro de una función se quiere evaluar la función calcular(A, b, c), donde el nombre calcular se envía como argumento en la cadena nombre, entonces feval (nombre, A, b, c) equivale a calcular(A, b, c).