programacion matlab:´ ecuaciones, polinomios, regresion e...
TRANSCRIPT
beamer-tu-logo
Programacion MATLAB:Ecuaciones, polinomios, regresion e
interpolacion.
Curso: Metodos Numericos en IngenierıaProfesor: Dr. Jose A. Otero HernandezCorreo: [email protected]: http://metodosnumericoscem.weebly.comUniversidad: ITESM CEM
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Topicos
1 Raıces de ecuaciones y polinomiosRaıces de la ecuacion algebraica y no linealRaıces de polinomiosRaıces de la ecuacion de segundo grado
2 Ajuste de curvas: regresion con MATLAB
3 Interpolacion con MATLAB
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Topicos
1 Raıces de ecuaciones y polinomiosRaıces de la ecuacion algebraica y no linealRaıces de polinomiosRaıces de la ecuacion de segundo grado
2 Ajuste de curvas: regresion con MATLAB
3 Interpolacion con MATLAB
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
MATLABMATLAB es capaz de localizar raıces en ecuacionesalgebraicas y trascendentes,MATLAB es excelente para la manipulacion y localizacionde raıces en los polinomios,MATLAB es capaz de ajustar curvas mediante polinomios.
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
MATLABMATLAB es capaz de localizar raıces en ecuacionesalgebraicas y trascendentes,MATLAB es excelente para la manipulacion y localizacionde raıces en los polinomios,MATLAB es capaz de ajustar curvas mediante polinomios.
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
MATLABMATLAB es capaz de localizar raıces en ecuacionesalgebraicas y trascendentes,MATLAB es excelente para la manipulacion y localizacionde raıces en los polinomios,MATLAB es capaz de ajustar curvas mediante polinomios.
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
MATLAB
Funcion Descripcionfzero Raız de una sola funcionroots Encuentra raıces de polinomiospoly Construye polinomios con raıces especıficaspolyval Evalua un polinomiopolyvalm Evalua un polinomio con argumento matricialresidue Expansion de la fraccion-parcial (residuos)polyder Diferenciacion polinomialconv Multiplicacion de polinomiosdeconv Division de polinomios
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion algebraica y no lineal
Funcion fzero
x = fzero(′funcion′, x0)
′funcion′ funcion de una variable (cadena de caracteres),x0 intervalo,x raız.
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion algebraica y no lineal
Funcion fzero
x = fzero(′funcion′, x0)
′funcion′ funcion de una variable (cadena de caracteres),x0 intervalo,x raız.
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion algebraica y no lineal
Ejemplo: Solucion de una ecuacion algebraicaUtilice la funcion fzero de MATLAB para encontrar las raıcesde f(x) = x10 − 1.
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion algebraica y no lineal
Solucion para la raız positiva
>> x0 = [0 1 . 3 ] ;
>> x = fzero ( ’ xˆ10−1 ’ , x0 )
x =
1
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion algebraica y no lineal
Solucion para la raız negativa
>> x0 = [−1.3 0 ] ;
>> x = fzero ( ’ xˆ10−1 ’ , x0 )
x =
−1
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion algebraica y no lineal
Ejemplo: Solucion de una ecuacion no linealUtilice la funcion fzero de MATLAB para encontrar las raıcesde f(x) = x e−x − 0.2.
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion algebraica y no lineal
Solucion
clear ; clc ;fp lo t ( ’ x∗exp(−x ) −0.2 ’ , [0 8 ] ) , gridx1 = fzero ( ’ x∗exp(−x ) −0.2 ’ , [0 2 ] )x2 = fzero ( ’ x∗exp(−x ) −0.2 ’ , [2 7 ] )
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion algebraica y no lineal
Solucion
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion algebraica y no lineal
Solucion
x1 =
0.2592
x2 =
2.5426
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de polinomios
Funcion roots
x = roots(p)
x vector columna con las raıces del polinomio,p vector fila con los coeficientes del polinomio,fn(x) = anx
n + an−1xn−1 + ...+ a1x+ a0 = 0,
p = [an an−1 ... a1 a0].
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de polinomios
Funcion roots
x = roots(p)
x vector columna con las raıces del polinomio,p vector fila con los coeficientes del polinomio,fn(x) = anx
n + an−1xn−1 + ...+ a1x+ a0 = 0,
p = [an an−1 ... a1 a0].
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de polinomios
Ejemplo: PolinomiosAnalicemos como se emplea MATLAB para manipular ydeterminar las raıces de polinomios. Use la siguiente ecuacion:
f5(x) = x5 − 3.5x4 + 2.75x3 + 2.125x2 − 3.875x+ 1.25
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de polinomios
>> a = [1 −3.5 2.75 2.125 −3.875 1 .25 ]a =
1.0000 −3.5000 2.7500 2.1250 −3.8750 1.2500
>> polyval ( a , 1 )ans =
−0.2500
>> polyder ( a )ans =
5.0000 −14.0000 8.2500 4.2500 −3.8750
>> roots ( a )ans =
2.0000−1.0000
1.0000 + 0.5000 i1.0000 − 0.5000 i0.5000
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion de segundo grado
Ecuacion
f (x) = a x2 + b x+ c = 0
Esta ecuacion tiene solucion exacta.
Solucion
x1 =−b+
√b2 − 4ac
2a
x2 =−b−
√b2 − 4ac
2a
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion de segundo grado
Ecuacion
f (x) = a x2 + b x+ c = 0
Esta ecuacion tiene solucion exacta.
Solucion
x1 =−b+
√b2 − 4ac
2a
x2 =−b−
√b2 − 4ac
2a
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion de segundo grado
Ecuacion
f (x) = a x2 + b x+ c = 0
Esta ecuacion tiene solucion exacta.
Solucion
x1 =−b+
√b2 − 4ac
2a
x2 =−b−
√b2 − 4ac
2a
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion de segundo grado
Solucion de la ecuacion con MATLAB
>> syms a b c x;
>> solve(a ∗ xˆ2 + b ∗ x+ c)
ans =
−(b+ (b2 − 4 ∗ a ∗ c)ˆ(1/2))/(2 ∗ a)−(b− (b2 − 4 ∗ a ∗ c)ˆ(1/2))/(2 ∗ a)
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion de segundo grado
Solucion de la ecuacion con MATLAB
>> symsx;
>> a = 1; b = −3; c = 2;
>> solve(a ∗ xˆ2 + b ∗ x+ c)
ans =
1
2
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion de segundo grado
Function en MATLAB
function [x] = fun(a,b, c)
x(1) = (−b+ sqrt(bˆ2− 4 ∗ a ∗ c))/2/a;x(2) = (−b− sqrt(bˆ2− 4 ∗ a ∗ c))/2/a;
end
M-file en MATLAB
a = input(′Deme el valor de a =′);
b = input(′Deme el valor de b =′);
c = input(′Deme el valor de c =′);
x = fun(a, b, c);
R = [’Las raices son: x1=’,num2str(x(1)),’ y x2=’,num2str(x(2))];
disp(R)
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion de segundo grado
Function en MATLAB
function [x] = fun(a,b, c)
x(1) = (−b+ sqrt(bˆ2− 4 ∗ a ∗ c))/2/a;x(2) = (−b− sqrt(bˆ2− 4 ∗ a ∗ c))/2/a;
end
M-file en MATLAB
a = input(′Deme el valor de a =′);
b = input(′Deme el valor de b =′);
c = input(′Deme el valor de c =′);
x = fun(a, b, c);
R = [’Las raices son: x1=’,num2str(x(1)),’ y x2=’,num2str(x(2))];
disp(R)
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Raıces de la ecuacion de segundo grado
Solucion de la ecuacion con MATLAB
Deme el valor de a = 1
Deme el valor de b = −3Deme el valor de c = 2
Las raices son: x1 = 2 y x2 = 1
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Topicos
1 Raıces de ecuaciones y polinomiosRaıces de la ecuacion algebraica y no linealRaıces de polinomiosRaıces de la ecuacion de segundo grado
2 Ajuste de curvas: regresion con MATLAB
3 Interpolacion con MATLAB
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Funcion MATLAB polyfit
clear ; clc ;x =[1 2 3 4 5 6 7 ] ;y= [ 0 . 5 2.5 2.0 4.0 3.5 6.0 5 . 5 ] ;n=6 %2 , 3 , 4 , 5 , 6 , . . . .p= p o l y f i t ( x , y , n )xp= l inspace (min ( x ) ,max( x ) ,100) ;yp=polyval ( p , xp ) ;plot ( x , y , ’ o ’ , xp , yp )grid onxlabel ( ’ x ’ )ylabel ( ’ y ’ )
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Ejemplo: n = 1
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Ejemplo: n = 2
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Ejemplo: n = 3
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Ejemplo: n = 4
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Ejemplo: n = 5
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Ejemplo: n = 6
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Topicos
1 Raıces de ecuaciones y polinomiosRaıces de la ecuacion algebraica y no linealRaıces de polinomiosRaıces de la ecuacion de segundo grado
2 Ajuste de curvas: regresion con MATLAB
3 Interpolacion con MATLAB
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Funcion MATLAB polyfit
clear ; clc ;x =[1 4 6 ] ;y= [0 1.386294 1.791759] ;n=2p= p o l y f i t ( x , y , n )xp= l inspace (min ( x ) ,max( x ) ,100) ;yp=polyval ( p , xp ) ;yp2=log ( xp ) ;plot ( x , y , ’ o ’ , xp , yp , xp , yp2 , ’ : ’ )grid onxlabel ( ’ x ’ )ylabel ( ’ y ’ )
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Ejemplo: n = 2
x0 = 1 f(x0) = 0x1 = 4 f(x1) = 1.386294x2 = 6 f(x2) = 1.791759
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Ejemplo: n = 3
x0 = 1 f(x0) = 0x1 = 4 f(x1) = 1.386294x2 = 5 f(x2) = 1.609438x3 = 6 f(x3) = 1.791759
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Funcion MATLAB interp1
clear ; clc ;x =[1 4 6 ] ;y= [0 1.386294 1.791759] ;xx=2y i = interp1 ( x , y , xx )
Sa l ida
y i = 0.4621
beamer-tu-logo
Raıces de ecuaciones y polinomios Ajuste de curvas: regresion con MATLAB Interpolacion con MATLAB
Funcion MATLAB spline
clear ; clc ;x =[1 4 6 ] ;y= [0 1.386294 1.791759] ;xx=2y i =spline ( x , y , xx )
Sa l ida
y i = 0.5658