Il metodo dei minimi quadrati è un metodo numerico per trovare
un vettore che minimizza
e può essere
applicato all'interpolazione di funzioni mediante polinomi.
Supponiamo di aver effettuato dei campionamenti su un fenomeno
mediante coppie
e supponiamo che il fenomeno cresca
come un polinomio di grado
il problema è
trovare il polinomio
che minimizza le distanze
euclidee
p=MinQuad(x,y,grado) -
Trova i coefficienti di un polinomio
del grado immesso come parametro, che minimizza le distanze euclidee
tra i dati sperimentali (x[i],y[i]) e i valori assunti dal polinomio
nelle varie x[i].
%MINQUAD %function p=MinQuad(x,y,grado) % % Calcola il polinomio del grado specificato % date le misure sperimentali x e y con il % metodo dei minimi quadrati. function p=MinQuad(x,y,grado) V=VandermondeRett(x,grado+1); p=OR(V,y,2); return
>> x=1:1:10; >> MinQuad(x,x,1) ans = 0 1 >> type parabpert function y=parabpert(x) y=3*x^2+2*x+5+sin(x/10); >> x=1:1:10; >> y=mfeval('parabpert',x) y = 10.0998 21.1987 38.2955 61.3894 90.4794 125.5646 166.6442 213.7174 266.7833 325.8415 >> MinQuad(x,y,2) ans = 5.0033 2.1035 2.9982 >> polyfit(x,y,2) ans = 2.9974 2.1114 4.9873
La procedura descritta sopra utilizza due procedure ausiliarie:
![]() |
2004-05-29