METODOS NUMERICOS NOMBRE: MIGUEL GUAMUSHIG FECHA:28/07/2016 TEMA: REGRESION E INTERPOLACION (MATLAB) OBJETIVOS: R!"#$!% " !&'"## "* +,-** %.%#& #&-%*"!#& -#"#$!&* M!-"!3 I&-%%-!% "* 4%##* %*-* !"#!&* "! &#! & !! +,-** E&-&% "* #5%&- %** & & % %"-* "* #5%&- 4%##*
REGRESION LINEAL P%*.%!+!#& M!-"!3 "!% !""; clc;
5%#&-5 ('Metodo de Regresion Lineal \n\n'); n=#&- ('Numero de puntos: '); 5*% i=1:n x(1,i)=#&- ('dame los valores de x: ');
& 5*% i=1:n (1,i)=#&- ('dame los valores de : '); & "*-(x,) .%# xla!el('x');la!el('')
!
a=";
5*% i=1:n a=a#x(1,i)$(1,i);
& !=";
5*% i=1:n !=!#x(1,i)$x(1,i);
& c=";
5*% i=1:n c=c#x(1,i);
&
e=";
5*% i=1:n e=e#(1,i);
& d="; d=c%n; &="; &=e%n; a1=(n$ac$e)%(n$!c$c); a"=&a1$d;
clc;
5%#&-5 ('cuacion con la ue se encuentran los nuevos valores de \n\n');
5%#&-5 (' = *d # *d x',a",a1); 5*% i=1:n (1,i)=a"#a1$x(1,i);
& 5%#&-5 ('\n\n+resiona enter para ver la nueva gra&ica\n\n'); ! *ra&ica con los -atos ./ustados
"*-(x,) .%# xla!el('x');la!el('')
!
E4%##* 1) Emplee la regresión por mínimos cuadrados para ajustar
una línea recta a
x 1 2 3 4 5 6 7 8 9 y 1 1.5 2 3 4 5 8 10 13
9201;88<=00 = 1>?8;;;=00 @
2) Emplee la regresión por mínimos cuadrados para ajustar
una línea recta a
x 0 2 4 6 9 11 12 15 17 19 y 5 6 7 6 9 8 7 10 12 12
>8?1?;?=00 = ;?2>700901 @
REGRESION POLINOMIAL P%*.%!+!#& M!-"!3 clear; &ormat long 0=input('cuantos terminos tiene el a/uste:') &or /=1:0 e(/)=input('introducir valor exponente:') end x=2",3",1"",14",15",22",23",6"",64",65"7 =815,869,86,895,83,89,1815,1863,1819,1837 n=1"; * n=input('cuantos puntos va a a/ustas:') * disp('introducir valores de ') * * *
&or
i =1:n x(i)=input('introduce el valor x:'); (i)=input('introduce el valor :');
* end &or /=1:0 &or i=1:n .(i,/)=x(i)old on xx=min(x):6:max(x)7; &or i=1:lengt> (xx) tem(i)=" &or ?=1:0
(i)= (?)$xx(i)
end plot(xx,tem) >old o&& &or i=1:lengt> (x) te(i)="; &or ?=1:0 (i)= (?)$x(i)
E4%##* 1 !juste una ecuación c"#ica a los datos siguientes$
5 7 8 9 11 12 X 3 4 Y 1.6 3.6 4.4 3.4 2.2 2.8 3.8 4.6
E1 00>27>8?2?>762<0
2 !juste una ecuación c"#ica a los datos siguientes$
X 5 1015 20 25 30 35 40 45 50 Y 17 24 31 33 37 37 40 40 42 41
E2 >162;0<2?8286761=>?
REGRESION LINEAL MULTIPLE P%*.%!+!#& M!-"!3 "!% @1?>61011?222>272<;?;8>>>6?16676 >><6>?128>?6<;16288>70<8<7??077?106807?67870882>0; 8?;0;87;<>8<<81<1>?0<?070<<11? &16 &#&-(!&-* &-* ! ! !4-!:) #(#&-%* !"*% ) 5*% #1:& @(#)#&-(#&-%* " !"*% @:) (#)#&-(#&-%* " !"*% :) & "*.() @"*.(@) B*&(&2) B(:1)@ !B !"5!!(1) 3-!@(!(2)) @@001:001:8 !(1)(@@K3-!) "*-(@3@@%) + #&-( 5#"! ) & #&-( *"+&! ) B*&(+&=1) 5*% #1:+
#% !"*% #% !"*%
!+* &! +!-%#$ 1 *"*!&*" &! *"+&! +! #&-%*#+* "* !"*% @ & "! +!-%#$
5*% 41:& @(#4)#&-(#&-%* "* !"*% ) & & 5*% 41:&
#&-%*#+* "* !"*% & "! +!-%#$
(41)#&-(#&-%* "* !"*% ) &
!@
E4%##* 1)
U-#"# %.%#& "#&!" +"-#" !%! !4-!% X 1
0 1 1 2 2 ; ; > > X 2 0 1 2 1 2 1 2 1 2 Y 1?1 17< 127 2?6 20? ;?1 2<7 >?> >02
E1 6;62>028>8;;;;88 2) U %.%#& "#&!" +"-#" !%! !4-!% 1 X
0 0 1 2 0 1 2 2 1 2 0 2 2 > > 6 6 2 1 X Y 1> 21 11 12 2; 2; 1> 6 11
E2 >?7<28;6?628;8>
INTERPOLACION LINEAL P%*.%!+!#& M!-"!3 t = 1 2 6 4 7; p = 6 9 37; x = 1:"81:3; = interp1 (t, p, x, 'spline'); plot (t, p,'o',x, )
% & interp1 't( p( 2.5( )spline) % & 6.42187500000000
E4%##* 1) *ados los datos con el uso de polinomios de interpolación lineal elija la
secuencia de puntos m+s apropiada para alcan,ar la ma%or e-actitud posi#le para sus estimaciones. X f ' X
1.6 2 2.5 3.2 4 4.5 2
8 14
15
8 2
2) *ados los datos con el uso de polinomios de interpolación lineal elija la
secuencia de puntos m+s apropiada para alcan,ar la ma%or e-actitud posi#le para sus estimaciones. X
1 2 3
f ' X 3 6
5
7
8
19 99 291 444
INTERPOLACION CUADRATICA P%*.%!+!#& M!-"!3
t = 1 2 6 4 3 9 57; p = 6 9 3 9 9 7; * t=linspace(1,1,1"); * p=18%(1#2$t8<2); x = 1:"81:5; *x = linspace(1,1,1""); = interp1 (t, p, x, 'spline') ; plot (t, p,'o',x, ); >old on = interp1 (t, p, x, 'linear') ; plot (x, ,'r') = interp1 (t, p, x, 'nearest') ; plot (x, ,'g') = interp1 (t, p, x, 'pc>ip') ; plot (x, ,'!') = interp1 (t, p, x, 'cu!ic') ; plot (x, ,'c') = interp1 (t, p, x, 'vcu!ic') ; plot (x, ,'m') >old o&&
E4%##* 1) E+" #&-%*"!#& #&%! *& " * & *"#&*+#* #&-%*"!#& 3#! 3##& !%! -%+#&!% " !"*% x *%%*& ! f (x ) 02; !%! "* !-* -!3"!* #.&: 2 ; > ? 6 7 f (X ) 0? 0;;;; 02? 02 01667 11>2< X
2) U-#"# #&-%*"!#& #&%! !%! -%+#&!% " !"*% *%%*& ! f (x ) 08? !%! "* !-* -!3"!* #.#&-: 0 1 2 ; > ? f (X ) 0 0? 08 0< 0<>1176 0<61?;8 X
x
INTERPOLACION DE NETON P%*.%!+!#& M!-"!3
*@nterpolacion de neton clear;clc; disp('metodos numericos'); disp('interpolacion'); disp('interpolacion'); n=input('ingrese el grado del polinomio, n='); &print&('Ae necesitan *8"& puntos\n',n#1); disp('ingrese los puntos'); &or i=1:n#1 &print&('x*8"&=',i1); (i)=input(' '); &print&('*8"&=',i1); B(i)=input(' '); end --=0eros(n#1); --(:,1)=B; &or ?=2:n#1 &or C=?:n#1 --(C,?)=--(C,?1)--(C1,?1)7%(C)(C?#1)7; end end disp('La matri0 de di&erencias divididas es:'); disp(--); disp('l polinomio de neton es'); sms x; polne=--(1,1); +=1; &or i=1:n +=+$(x(i)); polne=polne#+$--(i#1,i#1); end polne=expand(polne); prett(polne); x=input('ingrese el valor de x a interpolar,x='); vi=eval(polne); &print&('el valor interpolado es *82&\n',vi); >old on; e0plot(polne,(1) (n#1)7); plot(x,vi,'r#');
E4%##* 1) E+" #&-%*"!#& &Q-*& *& " * & *"#&*+#* #&-%*"!#& 3#! !%! -%+#&!% " !"*% x *%%*& ! f (x ) 0? !%! "* !-* -!3"!* #.&: X f (X )
1 2 ; > ? 6 0; 0;6;; 0?? 12 11667 21>2
L! +!-%#$ #5%&#! ###! : 2 0 0 0 > 1 0 0 6 1 0 0 8 1 0 0 E" *"#&*+#* &Q-*& 3/3- 2-/ 1 #&.% " !"*% @ ! #&-%*"!% @2 " !"*% #&-%*"!* ;00
2) U-#"# #&-%*"!#& &Q-*& !%! -%+#&!% " !"*% x *%%*& ! f (x ) 1?*& & *"#&*+#* 3#* !%! "* !-* -!3"!* #.#&-: X f (X )
186 28 683 489 89 385 98D 58 68 83 983 83 389 985 98D 86
E" *"#&*+#* &Q-*& ; 2 ? @ 6? @ 20; @ 207 9 9999 = 99999 9 99999 = 999 ;2 ;2 ;2 ;2 #&.% " !"*% @ ! #&-%*"!% @; " !"*% #&-%*"!* 1?0
INTERPOLACION DE LAGRANGE P%*.%!+!#& M!-"!3 &print&(' @NER+FL.G@FN H+FL@N@M@F L.R.H\n\n\n'); xi=input('@ngrese los puntos pertenecientes a las x: '); i=input('@ngrese los puntos pertenecientes a las : '); *input es un comando de solicitud de entrada de datos del usuario8 n=lengt>(xi); x=sm('x'); *esta &uncion nos permite de/ar la varia!le 'x' como sim!olica * asi poder tra!a/ar con ella, sin tener ue asignarle un valor8 &or /=1:n producto=1; &or i=1:/1 producto=producto$(xxi(i) ); *calculo del producto 1 superior de L end producto2=1; &or i=/#1:n producto2=producto2$(xxi( i)); *calculo del producto 2 superior de L end producto6=1;
&or i=1:/1 producto6=producto6$(xi(/) xi(i)); *calculo del producto 6 in&erior de L end producto4=1; &or i=/#1:n producto4=producto4$(xi(/) xi(i)); *calculo del producto 4 in&erior de L end L(/)=(producto$producto2) %(producto6$producto4); *calculos de las L para &print&('\n L*d:\n',/1) *poder >allar el polinomio disp(L(/)) *la &uncion dispo nos permite visuali0ar vari!les o texto * en el or?space end pn="; &or /=1:n pn=pn#L(/)$i(/); *calculo del polinomio interpolante end &print&('\n +FL@NFM@F @NER+FL.NE: \n') pn = simple(pn); *este comando nos permite simpli&icar toda la expresion disp(pn) opc=input('\n-esea aproximar un valor (si%no): ','s'); i& opc=='si' x=input('\n@ngrese el punto a aproximar: '); =eval(pn); *evaluar el punto en el polinomio disp('\nLa aproximacion a &(x) es:') disp() end
E4%##* 1) Emplee la porción de la ta#la de apor ue se da para el 2 supercalentada a
200 a( para a encontrar la entropía correspondiente s para un olumen especíco v de 0.108 m3:g con interpolación lineal( b encontrar la misma entropía correspondiente con el uso de interpolación cuadr+tica( % c ;allar el olumen correspondiente a una entropía de 6.6 con el empleo de interpolación inersa. 0.10377 0.11144 V 'm3:g 6.5453 S ':<:g = > 6.4147
0.1254 6.7664
L0: (;68<;>881>7>1<10;2;2(@ 9 627/?000)(@ 9 1;<;/12?00))/61207071?<<81<;<
L1: 9(;68<;>881>7>1<10;2;2(@ 9 627/?000)(@ 9 10;77/100000))/;0;0;8;?1062;7
L2: (18>>67>>07;70?1616(@ 9 1;<;/12?00)(@ 9 10;77/100000))/??70082<17>28161
2)
*esarrolle( depure % prue#e un programa en el lenguaje de alto niel o macros ue elija( para implantar la interpolación de ?a@range. aga ue se #ase en el seudocódigo ruA#elo con la duplicación del ejemplo 1.10377 V 'm3:g S ':<:g = > 12.4147
2.11144 24.5453
3.1254 36.766
?0$ '1125899906842624'- 156275000'- 26393125002293611122400155
?1$ '4503599627370496'- 12427345401756831125899906842624'15627500046014947021341
?2$ '2251799813685248'- 12427345401756831125899906842624 '- 2639312500461585624990
CONCLUSIONES
•
•
?a resolución mediante atla# nos da un aspecto de entendimiento m+s amplia en cada mAtodo aplicado % a traAs de los ejercicios propuestos en B;apra podemos er las gr+cas ue corresponden a cada ejercicio planteado. ?a compresión de cada mAtodo aplicado iene dado por la Cormulación ue es e-plicada en cada código logarítmico mediante atla#.