You are on page 1of 2

Complementos de Matlab

Funciones inline: Ya hemos visto que podemos construir una funcin, digamos mifunc(x,y) creando un archivo .m con el mismo nombre. Es un procedimiento muy valido para funciones ms o menos complicadas, pero en ocasiones queremos utilizar funciones sencillas como x^2+3 y necesitamos de una forma ms simple de definirlas. Para ello MATLAB permite definir funciones a partir de expresiones matemticas por medio de la funcin inline. Esta funcin trata de averiguar inteligentemente cules son los argumentos de la funcin inline, a partir del contenido de la expresin matemtica. Por defecto se supone que 'x' es el argumento, aunque es tambin posible determinarlos explcitamente al llamar a inline. Consideremos los siguientes ejemplos:
f=inline('x^2+3') f = Inline function: f(x) = x^2+3 g=inline('x^3+y^3','x','y') g = Inline function: g(x,y) = x^3+y^3 f(3) ans = 12 g(2,5) ans = 133

Debemos destacar dos cosas: 1) En la expresin matemtica que se utiliza para definir las funciones en lnea no debe colocarse el operador punto, dado que no se trata de operaciones entre vectores sino de una expresin de caracteres. 2) Cuando una funcin en lnea se utiliza como parmetro de otra funcin, no debe encerrarse entre apstrofos, debido a que se trata de un nombre de funcin y no del nombre de un archivo .m de funcin. Por ejemplo:
feval(sin,0) ans = 0 feval(f,3) ans = 12

Otras funciones de uso comun en Matlab - isnan(A) chequea si hay valores NaN en A, devolviendo una matriz de unos y ceros del mismo tamao que A.

isnan([pi NaN Inf -Inf]) ans = 0 1 0 0

- linspace(x1,x2, n) genera un vector con n valores igualmente espaciados entre x1 y x2


linspace(0,1,6) ans = 0 0.2000

0.4000

0.6000

0.8000

1.0000

Numero variable de argumentos y de valores de retorno en funciones: En cualquier funcin existen dos variables definidas de modo automtico, llamadas nargin y nargout, que representan respectivamente el nmero de argumentos y el nmero de valores de retorno con los que la funcin ha sido llamada. Dentro de la funcin, estas variables pueden ser utilizadas como el programador desee. Contorno de funciones: Podemos utilizar la funcin contour para graficar el contorno de una funcin. La sintaxis bsica es: contour(x,y,,z,nivel) donde z es el arreglo bidimensional de la funcin; x e y son las coordenadas x e y en arreglos bidimensionales respectivamente; y nivel es un vector que contiene los niveles de contorno, o bien, es un nmero entero m que se interpretar como el nmero de niveles de contorno; estos niveles se determinan dividiendo los valores mnimo y mximo de z en m-1 niveles. Por ejemplo:
x = -2:0.2:2; y = x; [X,Y] = meshgrid(x,y); Z = X.*exp(-X.^2-Y.^2); mesh(X,Y,Z) contour(X,Y,Z,10)

Tambin se puede utilizar para graficar funciones implcitas f(x,y)=0 en ejemplo, una parbola y una elipse:
x = -3:0.1:3; y = x; [X,Y] = meshgrid(x,y); Z1 = X.^2-2*X-Y+0.5; Z2 = X.^2+4*Y.^2-4; contour(X,Y,Z1,[0,0]) hold on contour(X,Y,Z2,[0,0])

2D. Por

En los comandos anteriores el vector [0,0] en los argumentos de contour sirve para especificar el nivel de contorno. El nico contorno que nos interesa es el del nivel 0, pero los niveles de contorno deben estar en forma de vector, por lo que repetimos el cero.

You might also like