Politechnika Wrocławska
Wydział Elektryczny
Wojciech Calów
177153
Rok studiów : III
Semestr : VI
Rok akad.:
2012/13
Laboratorium Metod Numerycznych
Data:
15.04. 2013
Temat :
Aproksymacja Metodą
Najmniejszych Kwadratów
Ocena:
1. Cel ćwiczenia:
Napisać algorytm realizujący aproksymacje funkcji f (t)=Asin(ω t+ϕ+δ(t))
(gdzie: δ(t)=0,23 A⋅(0,5−rand (1))
, A= 200)
za pomocą dwóch modeli :
a) y (k )=a
0
+
a
1
(
ak )+a
2
(
ak )
2
+
a
3
(
ak )
3
+
a
4
(
ak )
4
b) y (k )=a
1
⋅
sin (ak )−a
2cdor
cos(ak )
Częstotliwość próbkowania
f
t
=
1000Hz
2. Program:
% Metoda najmniejszych kwadratów
clc;
clear
all
;
% 1.parametry funkcji
w=100*pi;
% pulsacja
fs=w/(2*pi);
% 1 harmoniczna
fi=pi/8;
% przesuniecie fazowe
fp=1000;
% probkowanie
Tp=1/fp;
% okres probkowania
Ts=1/fs;
A=200;
% stala
t=0:Tp:(Ts-Tp);
% czas
at=w*Tp;
%
N=fp/fs;
%ilosc probek
k=1:N;
% nr probek
d=0.25*A*(0.5-rand(1,N));
f=A*sin(w*t) + d;
% 2.Macierze H i H2
for
(k=1:N)
H(k,:)=[1; (at*k)^1;(at*k)^2;(at*k)^3;(at*k)^4 ];
H2(k,:)=[sin(at*k);-cos(at*k)];
end
;
a= inv(H' *H) * H' * f' ;
% h1
a2=inv(H2' * H2)*H2'*f';
% h2
% 3 obliczanie
y2=a2'*H2';
for
k=1:N
y(k)=a(1) + a(2)*(at*k) + a(3)*(at*k)^2 + a(4)*(at*k)^3 +
a(5)*(at*k)^4;
end
% 4 plotowanie
figure(1);
plot(t,f,
'k'
,t,y,
'b'
,t,y2,
'r'
);
grid
on
;
title(
'Metoda najmniejszych kwadratow'
);
xlabel(
't'
);
legend(
'f- wejsciowy'
,
'y - aproksymowany'
,
'y-apro. sinus'
);
3. Wykresy
4. Wnioski
Metoda Aproksymacji metodą najmniejszych kwadratów może być stosowana do
usuwania zakłóceń sygnałowych lub aproksymacji funkcji. W przypadku
aproksymacji wielomianowej mamy do czynienia z wyprzedzeniem sygnału
wejściowego oraz wystąpieniem offsetu.