Aproximación por mínimos cuadrados (Grupo 13)

De MateWiki
Revisión del 22:10 12 nov 2019 de Alex Robles (Discusión | contribuciones) (Página creada con «{{ Trabajo | Aproximación por mínimos cuadrados. Grupo 13 | Matemáticas I|Curso 2019-20 | Leo Coronel, Alex Robles...»)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar


1 Dibujar los datos en una gráfica tiempo/temperatura.

coor=[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 20 21 22 23; 11.6 11.7 10.3 11.6 11.8 12.1 11.7 13.8 14.7 16.9 17.5 19.1 19.0 20.1 21.4 20.1 17.9 15.1 14.5 13.5]
 figure(1)
plot(coor(1,:),coor(2,:),'o','MarkerFaceColor','b')
axis([0,23,10,23])
xlabel('horas')
ylabel('temperatura')


2 Ajustar los datos a una recta T=a+bt usando el método de mínimos cuadrados. Calcular el error cuadrático medio de la aproximación. ¿Qué valor predice para la temperatura a las 17:00?

b=coor(2,:)'
B=[ones(20,1),coor(1,:)']
p=(B'*B)\(B'*b)

x=0:0.1:24;
y=p(1)+p(2)*x;
hold on
plot(x,y)


  • Para las 17 horas la recta T=12.5070 + 0.2634x predice una temperatura de 16.98ºC
yp=p(1)+p(2)*coor(1,:);
error=1/20*sum((coor(2,:)-yp).^2)


  • Error cuadrático medio= 8.2660

3 Ajustar los datos a una parábola T=a+bt+ct^2. Responder a las mismas preguntas que en el apartado anterior.

A=[ones(20,1),coor(1,:)', coor(1,:).^2' ]

j=(A'*A)\(A'*b)

w=0:0.1:24;
s=8.3170 + 1.4121*w -0.0494*w.^2;
hold on
plot(w,s)


  • Para las 17 horas la parábola T=8.3170 + 1.4121w - 0.0494w^2 predice una temperatura de 18.05ºC
yj=j(1)+j(2)*coor(1,:)+j(3)*coor(1,:).^2;
error_p=1/20*sum((coor(2,:)-yj).^2)


  • Error cuadrático medio= 3.0781

4 Ajustar los datos a una función del tipo T=a+b*cos(2pi*1t/24)+c*sen(2pi*t/24). Responder a las mismas preguntas que en el apartado anterior

D=[ones(20,1),cos(2*pi*coor(1,:)'/24),sin(2*pi*coor(1,:)'/24) ]
l=(D'*D)\(D'*b)
u=0:0.1:24;
o=15.9338 - 3.6796*cos(2*pi*u'/24) - 3.2747*sin(2*pi*u'/24);
plot(u,o)


  • Para las 17 horas la función periodica T=15.9338 - 3.6796cos(2pi*u'/24) - 3.2747sin(2pi*u'/24) predice una temperatura de 20.05ºC
yl=l(1)+l(2)*cos(2*pi*coor(1,:)/24)+l(3)*sin(2*pi*coor(1,:)/24);
error_s=1/20*sum((coor(2,:)-yl).^2)


  • Error cuadrático medio= 0.3109

5 La gráfica tiempo/Temperatura con las distintas aproximaciones

Grafica13.jpg