Matlab - crear una funcion en el scrip

 
Vista:
sin imagen de perfil
Val: 7
Ha disminuido su posición en 8 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

crear una funcion en el scrip

Publicado por Luis Alberto (4 intervenciones) el 29/03/2019 02:54:30
% Buenas tardes tengo una inquietud, me gustaría crear un función mas o menos creo una función en mi scrip así;

function fun=componer(p, q, r) % donde p q y r son funciones de x

% ahora con estas funciones quiero conformar otra función de la siguiente manera

fun=py2+qy+r

% donde yo luego suponiendo pueda evaluar x , y en fun de la siguiente manera:

fun(5, 6)= % qui derive obtener un valor numérico
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 918
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

crear una funcion en el scrip

Publicado por Daniel (354 intervenciones) el 29/03/2019 09:37:15
Hola,

Matlab no es como otros lenguajes en los que las funciones se pueden asignar directamente a variables. Lo que se tiene que hacer de una forma indirecta utilizando el @ con las funciones handle. Para asignar una función a una variable se tiene que escribir la primera precedida del símbolo.

1
p = @sin;

Así si usas p(x) obtendrás el mismo resultado que si usas sin(x). Pero no se puede operar directamente sobre las funciones handle sino que se tiene que evaluar y crear una nueva. En el caso propuesto seria

1
fun = @(x, y) p(x) * y^2 + q(x) * y + r(x);

con lo que fun es una función handle que se puede evaluar como tal.

Saludos,
Daniel Rodríguez.
Analytics Lane
Matlab en Analytics Lane
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 7
Ha disminuido su posición en 8 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

crear una funcion en el scrip

Publicado por Luis Alberto (4 intervenciones) el 29/03/2019 14:33:24
Hpla Daniel ahora lo voy a intentar a ver como me va gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

crear una funcion en el scrip

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 29/03/2019 17:01:33
1
2
3
4
function fun=componer(p,q,r)
   f=[char(p),'*y^2','+',[char(q),'*y'],'+',char(r)];
   fun=inline(f,'x','y');
end

1
2
3
4
5
6
7
8
>> syms x; p=x+x^2; q=x+10; r=x^3+1; fun=componer(p,q,r)
fun =
     Inline function:
     fun(x,y) = x + x^2*y^2+x + 10*y+x^3 + 1
 
>> f(2,3)
ans =
    79


Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab


http://matlabcaballero.blogspot.com
https://www.facebook.com/matlabcaballero
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 7
Ha disminuido su posición en 8 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

crear una funcion en el scrip

Publicado por Luis Alberto (4 intervenciones) el 29/03/2019 22:31:50
Muy amable Jose gracias por el código ahora lo probare
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar