Professional Documents
Culture Documents
Funciones definidas por el usuario; generalmente para representar una funcin que se
usara en varios programas adicionales.
x FUNCIN y f x
06 archivos de funcin 1
06 Funciones y ficheros de funcin Lic. Amado Malca Villalobos
Con esta funcin se podran hacer muchas cosas, como: graficar, derivar, integrar, etc.
Veamos una de ellas, grafiquemos en el intervalo [-10,10]
350
300
250
200
150
100
50
-50
-10 -5 0 5 10
06 archivos de funcin 2
06 Funciones y ficheros de funcin Lic. Amado Malca Villalobos
g=9.81;
v0x=v0*cos(theta*pi/180);
v0y=v0*sin(theta*pi/180);
thmax=v0y/g;hmax=v0y^2/(2*g);
ttot=2*thmax;dmax=v0x*ttot;
Grafico resultante
TRAYECTORIA DE UN PROYECTIL
250
200
ALTURA (m)
150
100
50
0
0 100 200 300 400 500 600
DISTANCIA (m)
06 archivos de funcin 3
06 Funciones y ficheros de funcin Lic. Amado Malca Villalobos
06 archivos de funcin 4
06 Funciones y ficheros de funcin Lic. Amado Malca Villalobos
Cuerpo de la funcin
Aqu se tiene el cdigo del programa mismo, que incluir operaciones de entrada y/o
salida, tambin salida de grficos si el problema lo amerita.
FUNCIONES EN LINEA
Se usan para realizar funciones simples, que tambin pueden tener una o ms variables
de entrada.
nombre inline 'exp resion matematica en forma de cadena '
nombre inline 'exp resion matematica ','arg1','arg 2',,'arg n '
y f x 3x 2 6 x 8
Ejemplo: Considerando la funcin cuadrtica:
>> G=inline('3*x+6*y+9*x*y-6','x','y')
G = Inline function:
G(x,y) = 3*x+6*y+9*x*y-6
>> G(1,2)
ans = 27
>> G(1,2),G(6,8)
ans = 27
ans = 492
>> [G(1,2), G(3,5), G(8,1), G(3,7)]
ans = 27 168 96 234
>> x=[1 2 3],y=[7 6 4]
x= 1 2 3
y= 7 6 4
>> G(x,y)
??? Error using ==> inlineeval at 15
06 archivos de funcin 5
06 Funciones y ficheros de funcin Lic. Amado Malca Villalobos
Como aparece un error debemos redefinir la funcin, para cuando los argumentos son
vectores o matrices.
Ejemplos 02: g x, y 4 x5 y 7 x3 y 2 8x 2 y 4 6 x 29 y 6
>> G=inline('4*(x.^5).*y+7*(x.^3).*(y.^2)-8*(x.^2).*(y.^4)+6*x-29*(y.^6)')
G = Inline function:
G(x,y) = 4*(x.^5).*y+7*(x.^3).*(y.^2)-8*(x.^2).*(y.^4)+6*x-29*(y.^6)
>> G(5,6),G(8,7),G(9,1)
ans = -1505694
ans = -3547965
ans = 240676
>> x=[-2 -1 0 1 2 3 4 5],y=[-3 -2 -1 0 1 2 3 4]
x = -2 -1 0 1 2 3 4 5
y = -3 -2 -1 0 1 2 3 4
>> G(x,y)
ans = -23865 -2010 -29 6 135 -290 -15165 -105954
06 archivos de funcin 6
06 Funciones y ficheros de funcin Lic. Amado Malca Villalobos
EL COMANDO feval
Este comando evala el valor de una funcin, en algn o algunos valores dados. La
diferencia con el caso anterior, est en que aqu se da la funcin, solo el nombre, y se
evala en el valor dado.
variable = feval(nombre_funcion,valor_argumento)
Ejemplo 01: Aqu vamos a definir una funcin H, y luego la evaluamos en x=1.
>> H=inline('exp(x.^2)./(1+x.^4)')
H = Inline function: H(x) = exp(x.^2)./(1+x.^4)
>> feval(H,1)
ans = 1.3591
>>
Ejemplo 02:
>> D=feval(inline('exp(x.^2)./(1+x.^4)'),1)
D = 1.3591
>> H=inline('exp(x.^2)./(1+x.^4)')
H = Inline function: H(x) = exp(x.^2)./(1+x.^4)
>> feval(H,1)
ans = 1.3591
>> G=inline('exp(x.^2)./(y+x.^4)')
G = Inline function: G(x,y) = exp(x.^2)./(y+x.^4)
>> feval(G,1,1)
ans = 1.3591
>> feval(G,4,5)
ans = 3.4046e+004
>> D=feval(inline('exp(x.^2)./(1+x.^4)'),1)
D = 1.3591
>> D=feval('sin',0)
D= 0
>> D=feval('sin',pi/6)
D = 0.5000
>> D=feval(inline('cos(x)+tan(x)'),pi/7)
D = 1.3825
06 archivos de funcin 7