Documente Academic
Documente Profesional
Documente Cultură
FACULTAD DE INGENIERIA
CARRERA DE INGENIERÍA CIVIL
MÉTODOS NUMERICOS
GLOSARIO (FUNCIÓN POLYFIT)
AJUSTE DE DATOS CON POLYFIT
Según el Análisis expuesto en el Blog (Franco, 2016). Para realizar el ajuste respectivo de datos a
un polinomio se utiliza la función MATLAB polyfit, cuya sintaxis viene dada de la siguiente
manera:
𝑝 = 𝑝𝑜𝑙𝑦𝑓𝑖𝑡(𝑥, 𝑦, 𝑛)
- x,y son los vectores de las abscisas y de las ordenadas de los datos, respectivamente.
- n, es el grado del polinomio al que se quieren ajustar los datos.
- p, es el vector de los coeficientes de dicho polinomio.
Para n=1 tenemos la regresión lineal. Si m es el número de datos, el polinomio pasa a través de
los puntos si n= m-1. El grado n del polinomio no pude ser mayor que m-1.
x=[0, 1, 2, 3, 4, 5, 6, 7, 7, 44];
p= polyfit(x,y,2)
%graficos
hold on
xlabel (‘x’)
ylabel(‘y’)
grid on
hold off
Para correr en la ventana de comandos, simplemente corremos el script y nos aparecerá el vector
p que contiene los coeficientes a1, a2, a3 del polinomio.
p=
0.3446 3.7004 -0.1188
También se puede utilizar polyfit para realizar ajustes a una función potencial, exponencial,
logarítmica, etc., tal como se muestra en el siguiente cuadro.
x=[10 20 30 40 50 60 70 80];
y=[1.06 1.33 1.52 1.68 1.81 1.91 2.01 2.11];
p=polyfit(log10(x),log10(y),1);
fprintf('exponente a= %2.3f\n',p(1));
fprintf('coeficiente c = %3.3f\n',(10^p(2)));
hold on
plot(x,y,'ro','markersize',4,'markerfacecolor','r')
z=@(x) (10^p(2))*x.^p(1);
fplot(z,[x(1),x(end)])
xlabel('x')
ylabel('y')
grid on
title('Regresión potencial')
hold off
Corremos el script en la ventana de comandos.
Exponente a= 0.331
Coeficiente c = 0.495
En el ejemplo dado, se realiza un ajuste a una función exponencial.
exponente a= -0.005
coeficiente c = 1036.896
TOMADO DE: