Está en la página 1de 8

13 de octubre 2022

Programación numérica

Elaboró: Zabdi Alberto Bravo Ramírez

ID: 3471471

Tema: Aproximación multilineal con mínimos cuadrados

Tarea 1:

= 23.12 mmHg ≈ 23 mmHg


13 de octubre 2022

Código
clc, close all, clear all

Xor=[10 20 40 60 100 200 400 760];

Yor=[930 988 1050 1088 1142 1316 1323 1418];

plot(Xor,Yor, '-ob')

XoYo=sum(Xor.*Yor);

XoXo=sum(Xor.*Xor);

sY=sum(Yor);

sX=sum(Xor);

n=8;

a1=(n*XoYo - sX*sY)/(n*XoXo-sX^2);

a0=(sY/n)-(sX/n)*a1;

poli_rect=[ a1 a0 ];

xpr=0:0.01:800;

ypru=polyval(poli_rect,xpr);

hold on

plot(xpr,ypru,'r')

%%%%%%%% Indice de correlación

Ytest=sum(Yor/n);

ST=sum((Yor-Ytest).^2);

yest=ypru=polyval(poli_rect,Xor);

plot(Xor,yest, '*k')

SR=((Yor'-yest').^2);

Corre=sqrt((ST-SR)/ST)

YP=1000;

XP0=Xor(1,1)*(((YP-Yor(1,2))*(YP-Yor(1,3)))/ ((Yor(1,1)-Yor(1,2))*((Yor(1,1)-Yor(1,3)))));

XP1=Xor(1,2)*(((YP-Yor(1,1))*(YP-Yor(1,3)))/ ((Yor(1,2)-Yor(1,1))*((Yor(1,2)-Yor(1,3)))));

XP2=Xor(1,3)*(((YP-Yor(1,1))*(YP-Yor(1,2)))/ ((Yor(1,3)-Yor(1,1))*((Yor(1,3)-Yor(1,2)))));

XP=XP0+XP1+XP2

plot(XP,YP, 'or')

xlabel('Presion mmHg')

ylabel('Temperatura C')

legend('datos originales','recta regresión','datos estimados')

grid on
13 de octubre 2022

Tarea 2:
13 de octubre 2022

Código
clc, close all, clear all

Xor=[2.0 4.25 5.25 7.81 9.2 10.6];

Yor=[7.2 7.1 6.0 5.0 3.5 5.0];

plot(Xor,Yor, '-ob')

XoYo=sum(Xor.*Yor);

XoXo=sum(Xor.*Xor);

sY=sum(Yor);

sX=sum(Xor);

n=6;

a1=(n*XoYo - sX*sY)/(n*XoXo-sX^2);

a0=(sY/n)-(sX/n)*a1;

poli_rect=[ a1 a0 ];

xpr=0:0.01:12;

ypru=polyval(poli_rect,xpr);

hold on

plot(xpr,ypru,'r')

%%%%%%%% Indice de correlación

Ytest=sum(Yor/n);

ST=sum((Yor-Ytest).^2);

yest=ypru=polyval(poli_rect,Xor);

plot(Xor,yest, '*k')

SR=((Yor'-yest').^2);

Corre=sqrt((ST-SR)/ST)

xlabel('x pulg')

ylabel('y pulg')

legend('datos originales','recta regresión','datos estimados')

grid on

xlabel('Presion mmHg')

ylabel('Temperatura C')

legend('datos originales','recta regresión','datos estimados')

grid on
13 de octubre 2022

Tarea 3:

La dinámica poblacional aumenta con el tiempo,según se muestra en la tabla de


abajo. ¿Qué grado de polinomio (con el criterio de ajuste casi exacto)aproxima
mejor la función? 3
13 de octubre 2022

Código
clc, close all, clear all

Xor=[1857 1860 1877 1887 1897 1900 1910 1920 1930 1940 1950 1960 1970 1981 1991 2001 2006 2008 2011 2015 ];

Yor=[15464340 15645072 16622175 17549608 18065635 18616630 19990669 21388551 23677095 26014278 28117873
30582936 33956047 37742561 39433942 40499791 44708964 46063511 47190493 46449565];

plot(Xor,Yor,'-ob')

A=[20 sum(Xor) sum(Xor.*Xor) sum(Xor.^3);

sum(Xor) sum(Xor.*Xor) sum(Xor.^3) sum(Xor.^4);

sum(Xor.*Xor) sum(Xor.^3) sum(Xor.^4) sum(Xor.^5);

sum(Xor.^3) sum(Xor.^4) sum(Xor.^5) sum(Xor.^6)];

B=[sum(Yor); sum(Xor.*Yor); sum((Xor.^2).*Yor); sum((Xor.^3).*Yor)];

X=inv(A)*B

poli_curv2=[X(4,1) X(3,1) X(2,1) X(1,1)]

xpr=1840:0.01:2020;

%datos

n=20;

%evalua los datos en el polinomio de grado 2

ypru=polyval(poli_curv2,xpr);

hold on

plot(xpr,ypru,'g')

% indice de correlación %

ytest=sum(Yor/n);

ST=sum((Yor-ytest).^2);

yest=polyval(poli_curv2,Xor);

plot(Xor,yest,'*r')

SR=sum((Yor'-yest').^2);

Corre=sqrt((ST-SR)/ST)

xlabel('Fecha')

ylabel('Población')

legend('datos originales','reta de regresión','datos estimados')

grid on
13 de octubre 2022

Tarea 4: Veinte tipos de hojas de acero procesadas en frío tienen diferentes


composiciones de cobre y temperaturas de templado. Al medir su dureza
resultante, se obtuvieron los siguientes valores: Se sabe que la dureza depende en
forma lineal del contenido u de cobre en % y de la temperatura de templado y =
a0 + a1u + a2v Determine los parámetros a0, a1y a2, siguiendo el criterio de los
mínimos cuadrados.
13 de octubre 2022

Código
%regresion cuadratica 3x3

clc, close all, clear all

yor= [ 78.9 65.1 55.2 56.4 80.9 69.7 57.4 55.4 85.3 71.8 60.7 58.9];

uor= [0.02 0.02 0.02 0.02 0.10 0.10 0.10 0.10 0.18 0.18 0.18 0.18]; %DP

vor=[ 1000 1100 1200 1300 1000 1100 1200 1300 1000 1100 1200 1300];

plot3(uor,vor,yor,'ok') % Graficar en 3D

A=[12 sum(uor) sum(vor);

sum(uor) sum(uor.^2) sum(uor.*vor);

sum(vor) sum(uor.*vor) sum(vor.^2) ]; % Matriz A

B=[sum(yor); sum(yor.*uor); sum(yor.*vor) ];

X=inv(A)*B

grid on

hold on

[u,v] = meshgrid(-1000:100:1500); %

yprue = 161.337+(32.9687.*u)+( 0.0855.*v); % La solución anterior las usamos para

%mesh(u,v,yprue)

También podría gustarte