Está en la página 1de 2

Actividad 5: Corrección exponencial.

Ornelas Ríos Gustavo Adolfo

Codigo:
clc;
clear all;
q = [14.91 15.00 15.23 15.41 15.74 16.32 16.75 17.49 18.18 19.01...
20.05 21.08 22.00 23.42 24.70 26.26 27.73 29.49 31.33 33.22...
35.08 36.89 39.35 41.56 43.83 46.49 48.75 51.63 54.09 57.01...
59.88 63.11 66.24 69.38 72.66 75.98 79.70 83.31 87.27 91.16...
94.80 98.88 103.15 107.54 111.93 116.40 120.76 125.38 130.10...
135.11]';
m = [0.00000001 1 2 3 4 5 6 7 8 9 ...
10 11 12 13 14 15 16 17 18 19 ...
20 21 22 23 24 25 26 27 28 29 ...
30 31 32 33 34 35 36 37 38 39 ...
40 41 42 43 44 45 46 47 48 49]';
%DATOS PROPORCIONADOS POR EL PROFESOR
voff = min(q);
qm=q-voff + 5.00000000000000e-18;
b = ones(50,1);
X = [log(m) , b];
p = inv(X'*X)*(X'*log(qm))
% USAMOS DE q = (B*m^a) + Voff
y=exp(p(2))*(m.^p(1)) + voff;
figure(1)
plot(m,q,'.g') %graficar puntos originales
hold on
plot(m,y,'-r') %graficar recta estimada
hold off
axis([0 50 0 150])
xlabel('m (temperatura)')
ylabel('q (out sensor)')
qc = ((q - voff)/exp(p(2))).^(1/p(1));
%-----------------------------
%Realizando el acondicionamiento(corrección) de de cada nuevo punto
%donde se pretende que qc=m,
%entonces q = 1.5204qc + 14.5862 y despejamos qc
%qc = 4.3905211*(q.^(1/p(1))) - 16.48771;
%qc = exp((q-voff)/p(2)).^(1/p(1));
figure(2);
plot(m,q,'.b');
hold on;
plot(m,qc,'*g');
plot(m,y,'-r');
hold off;
xlabel('m (temperatura)');
ylabel('q y qc (out sensor y corregida)');
Resultado:

También podría gustarte