
Ayuda coeficientes de un polinomio
Publicado por Juan José (60 intervenciones) el 23/05/2014 11:54:58
Hola amigos,
Les escribo un programa el cual realiza el polinomio de taylor para una función de dos variables. Resulta que tengo una función la cual es un poco grande y compleja. Mi idea es obtener algo de esta manera (linealizarla para poder obtener los coeficientes):
Constante*x + CONSTANTE*y + Térm. Indep. = 0
PROGRAMA:
clear;
clf;
syms x y
disp(' ')
disp(' ')
funcion=input('Escribe la función de dos variables con x e y como variables independientes:\n Función:');
puntoX=input('Abcisa del punto: ');
puntoY=input('Ordenada del punto: ');
disp(' ')
fx=diff(funcion,x);
fy=diff(funcion,y);
fxx=diff(fx,x);
fxy=diff(fx,y);
fyy=diff(fy,y);
fab=subs(funcion,{x y},{puntoX,puntoY});
fxab=subs(fx,{x y},{puntoX,puntoY});
fyab=subs(fy,{x y},{puntoX,puntoY});
fxxab=subs(fxx,{x y},{puntoX,puntoY});
fxyab=subs(fxy,{x y},{puntoX,puntoY});
fyyab=subs(fyy,{x y},{puntoX,puntoY});
taylorVar=fab+fxab*(x-puntoX)+fyab*(y-puntoY)+1/2*(fxxab*(x-puntoX)^2+fyyab*(y-puntoY)^2+2*fxyab*(x-puntoX)*(y-puntoY));
disp('--------------------------------------------------------------')
disp(' ');
disp(['El polinomio de Taylor de grado 2 centrado en el punto: (' num2str(puntoX) ',' num2str(puntoY) ') es: '])
pretty(taylorVar)
disp(' ')
El resultado del programa es:
Escribe la función de dos variables con x e y como variables independientes:
Función:(1/pi)*(1/(cos((x-y)/x)))-(((x-y)*sqrt(2*x*y-y^2))/(pi*x^2))
Abcisa del punto: 275
Ordenada del punto: 137.5
--------------------------------------------------------------
El polinomio de Taylor de grado 2 centrado en el punto: (275,137.5) es:
(Adjunto una imagen que aquí los números se solapan y es un mareo)
(Adjunto el código también)
¿Alguien sabe si matlab puede y cómo se haría el desarrollo del polinomio??
Es decir, quiero encontrar los coeficientes que acompañan a x e y, por eso quiero la ecuación de la forma:
Constante*x + CONSTANTE*y + Térm. Indep. = 0
Muchas gracias y un saludo
Les escribo un programa el cual realiza el polinomio de taylor para una función de dos variables. Resulta que tengo una función la cual es un poco grande y compleja. Mi idea es obtener algo de esta manera (linealizarla para poder obtener los coeficientes):
Constante*x + CONSTANTE*y + Térm. Indep. = 0
PROGRAMA:
clear;
clf;
syms x y
disp(' ')
disp(' ')
funcion=input('Escribe la función de dos variables con x e y como variables independientes:\n Función:');
puntoX=input('Abcisa del punto: ');
puntoY=input('Ordenada del punto: ');
disp(' ')
fx=diff(funcion,x);
fy=diff(funcion,y);
fxx=diff(fx,x);
fxy=diff(fx,y);
fyy=diff(fy,y);
fab=subs(funcion,{x y},{puntoX,puntoY});
fxab=subs(fx,{x y},{puntoX,puntoY});
fyab=subs(fy,{x y},{puntoX,puntoY});
fxxab=subs(fxx,{x y},{puntoX,puntoY});
fxyab=subs(fxy,{x y},{puntoX,puntoY});
fyyab=subs(fyy,{x y},{puntoX,puntoY});
taylorVar=fab+fxab*(x-puntoX)+fyab*(y-puntoY)+1/2*(fxxab*(x-puntoX)^2+fyyab*(y-puntoY)^2+2*fxyab*(x-puntoX)*(y-puntoY));
disp('--------------------------------------------------------------')
disp(' ');
disp(['El polinomio de Taylor de grado 2 centrado en el punto: (' num2str(puntoX) ',' num2str(puntoY) ') es: '])
pretty(taylorVar)
disp(' ')
El resultado del programa es:
Escribe la función de dos variables con x e y como variables independientes:
Función:(1/pi)*(1/(cos((x-y)/x)))-(((x-y)*sqrt(2*x*y-y^2))/(pi*x^2))
Abcisa del punto: 275
Ordenada del punto: 137.5
--------------------------------------------------------------
El polinomio de Taylor de grado 2 centrado en el punto: (275,137.5) es:
(Adjunto una imagen que aquí los números se solapan y es un mareo)
(Adjunto el código también)
¿Alguien sabe si matlab puede y cómo se haría el desarrollo del polinomio??
Es decir, quiero encontrar los coeficientes que acompañan a x e y, por eso quiero la ecuación de la forma:
Constante*x + CONSTANTE*y + Térm. Indep. = 0
Muchas gracias y un saludo
- PoliTaylor.zip(28,0 KB)
Valora esta pregunta


0