Upload
shinichi-kudo
View
19
Download
13
Embed Size (px)
DESCRIPTION
báo cáo, tính chất phổ, pdf
Citation preview
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
1
TRNG I HC BCH KHOA H CH MINH
CHNG TRNH K S CHT LNG CAO VIT PHP PFIEV
BO CO THC HNH MATLAB
CC TNH CHT PH
GVHD: PGS.TS DNG HOI NGHA
SINH VIN: TRN NHT HOI BO
MSSV: 41100249
STT: 03
Tp.H Ch Minh, thng 4 nm 2015
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
2
A. L thuyt
Periodogram
nh ngha
Periodogram l mt qu trnh c lng khng c tham s ca hm mt ph cng sut ca
mt qu trnh dng khi phn tch ra chui Fourier. Periodogram c nh ngha bng cng thc:
2
12
ER
0
1( ).
Nj fnT
P
n
P f T x n eNT
Cc ca s s dng trong vic c lng Periodogram
Ca s ch nht
1 0 1w ( )
0R
n Nn
n
Ca s Hamming
20.54 0.46cos 0
w ( )
0
H
kk N
k N
Ca s Black-man
2 40.42 0.5cos 0.08cos 0
w ( )
0
B
k kk N
k N N
Ca s Hanning
20.5 0.5cos 0
w ( )
0
v
kk N
k N
Correlogram
nh ngha
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
3
() = ()2()
=
Theo cng thc trn, nu c T trong s m e, tn s f l tn s thc; ngc li, nu khng c T
trong s m e, tn s f l tn s chun ha.
Thng chn =
10
c lng hm t tng quan
Ta c:
() = {()( )} = lim
1
2 ()( )
1
()( )
1
=0
N l s mu d liu, ta c:
Nu () thc th ()
() =1
()( ) , 0
1
=
trong biu thc trn ta c th b T cho gn.
D liu x(0), x(1), ., x(N-1).
B c lng ca hm tng quan
Vi b c lng khng lch ( Unbiased)
V b c lng lch ( Biased)
1*
1*
1( ) ( ) ( ) 0
( ) ( ) 0
1( ) ( ) ( ) 0
( ) ( ) 0
N
k m
N
k m
r m x k x k m mN m
r m r m m
r m x k x k m mN m
r m r m m
1 1*1 1{ ( )} { ( ) ( )} ( ) ( )
N N
x x
k m k m
E r m E x k x k m r m r mN m N m
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
4
c lng mt ph cng sut
M hnh AR
M hnh AR l m hnh c mi lin h gia u vo e(k) v tn hiu ra x(k) nh sau:
() = 1( 1) 2( 2) ( ) + 0()
c lng cc h s a1, a2,.., an, b0 t cc mu thu thp c, ta c th s dng 3 phng
php ch yu sau.
a. c lng bng phng php bnh phng ti thiu
c lng 1 2 3 0, , ,..., ,na a a a b t d liu (0),..., ( 1)x x N
1
2
0
( ) ( 1) ( 2) (0) ( )
( 1) ( ) ( 1) (1) ( 1)
( 1) ( 2) ( 3) ( 1) ( 1)n
ax n x n x n x e n
ax n x n x n x e nb
ax N x N x N x N n e N
~ ~ ~ ~
0 0x R b e b e x R
2~ ~ ~
0 0 0
~ ~ ~ ~ ~ ~
~ ~ ~
( ) ( )
( ) ( )
2
arg min
T
T
T T T T T
T T
T T
J b e b e b e
J x R x R x x x R R x R R
J R R x R x x
J
~ ~
~ ~1
2 2 0
( )
T T
T T T T
T T T T
LS
dJR R x R R R x R
d
R R R x R R R x
1 1*1 1{ ( )} { ( ) ( )} ( ) ( )
N N
x x
k m k m
N mE r m E x k x k m r m r m
N N N
2
2
( ) ( )
( ) ( )
Mj fmT
cor x
m M
Mj fmT
cor x
m M
P f T r m e
P f T r m e
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
5
1
2
n
=> 1 2 n
dJ dJ dJ dJ
d d d d
0 1 1 2 21 2 0 1 1 1 2 0 21 0 2
2T Tr r
R R r r rr r
0 1 1 2 1 1 0 2( ) 2 2 ,2 2T Td R R r r r r
d
0 11 2 0 1 1 2 1 1 0 21 0
2 2 2 ,T Tr r
R R r r r rr r
Phng php Least square
~1( )T TLS R R R x
2~
2 1~ ~ ~2 2
0 0 0
1 12 2 2 2 2
0 0 0
0
( )
{ ( )} ( 1)
T N
k n
N N
e
k n k n
J x R
J b e b e e b e k
E J b E e k b b N n
Jb
N n
ngha hnh hc ca pp LS:
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
6
Nu
~
~
1
~
( 1)
( 1)
( )
min ( 1) min (
arg min 0
T T
x N R
x N R
R R R R
J x N R R
J
Tng qut :
~ ~ ~
~
~ ~
~ ~
~
( 1)
: [0]
_
T
x N x x
x R
x R x
x R x x R
x R x
b. c lng bng phng php bnh phng ti thiu quy
Theo m hnh AR : () = 1( 1) 2( 2) ( ) + 0()
Ti thi im k
Vi cch t cc k hiu nh sau:
1
2
0
( ) ( 1) ( 2) . . . (0) ( )
( 1) ( ) ( 1) . . . (1) ( 1)
.. . . . .
.. . . . .
.. . . . .
( ) ( 1) ( 2) . . . ( ) ( )n
ax n x n x n x e n
ax n x n x n x e n
b
ax n k x k x k x k n e k
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
7
V
Ti thi im k+1
[
( + 1)] = [
] + [
( + 1)] 0
Vi = [() ( + 1) ( + 1)]
= ()
1
V +1 = (+1 +1)
1+1 +1
Sau khi tnh ton ta c
+1 = +(
)1(+1
)
1 + (
)1
t = ()
1 :
+1 = +(+1
)
1 +
t tip +1 =
1+
+1 = + +1(+1 )
T ta tm ra cch c lng cc h s bng phng php bnh phng ti thiu quy.
( )
( 1)
.( )
.
.
( )
x n
x n
x k
x n k
( )
( 1)
.
.
.
( )
k
e n
e n
e
e k
1
2
.
.
.
n
a
a
a
( 1) ( 2) . . . (0)
( ) ( 1) . . . (1)
. . .
. . .
. . .
( 1) ( 2) . . . ( )
k
x n x n x
x n x n x
R
x k x k x k n
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
8
c. c lng bng phng php bnh phng Jule Walker
Phng trnh Jule-Walker
e(k): n trng , 20, 1e em
0
1 2
1 2
1 2 0
( )1 ...
( ) ( 1) ( 2) ... ( ) ( )
n
n
n
bH z
a z a z a z
x k a x k a x k a x k n b e k
2
* 0
ex
, 0( ) ( ) ( )
0 , 0
eb mr m E e k x k mm
* * * *
ex 1 2
*
0
: 0
(0) ( ) ( ) ( )[ ( 1) ( 2) ... ( )
( ) ( )
n
TH m
r E e k x k E e k a x k a x k a x k n
b E e k e k
Vi * *1( )[ ( 1) ... ( )] 0nE e k a x k a x k n
* * *
ex 1
*
0
: 0
( ) ( ) ( ) ( )[ ( 1 ) ... ( )]
( ) ( ) 0
n
TH m
r m E e k x k m E e k a x k m a x k n m
b E e k e k m
V e(k) l tn trng nn ch tng quan vi chnh n
Vy
2
* 0
ex
, 0( ) ( ) ( )
0 , 0
eb mr m E e k x k mm
*
*
1 2 0
1 2 0 ex
( ) ( ) ( )
[ ( 1) ( 2) ... ( ) ( )]x ( )
( 1) ( 2) ... ( ) ( )
x
n
x x n x
r m E x k x k m
E a x k a x k a x k n b e k k m
a r m a r m a r m n b r m
H(Z) e(k)
x(k)
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
9
2
1 2 0
1 2
1 2
1 2
* 0 (0) ( 1) ( 2) ... ( )
* 1 (1) (0) ( 1) ... (1 )
1 * 2 (2) (1) (0) ... (2 )
...
* ( ) ( 1) ( 2) ... (0)
x x x n x e
x x x n x
x x x n x
x x x n x
m r a r a r a r n b
m r a r a r a r n
n pt m r a r a r a r n
m n r n a r n a r n a r
Phng trnh Jule-Walker
1
2
3
(0) ( 1) ( 2) ... (1 ) (1)
(1) (0) ( 1) ... (2 ) (2)
(2) (1) (0) ... (3 ) (3)
( 1) ( 2) ( 3) ... (0) ( )
x x x x x
x x x x x
x x x x x
x x x x n x
r r r r n a r
r r r r n a r
r r r r n a r
r n r n r n r a r n
1 2
2
0 1 2
, ,...,
( 1) ( 2) ... ( ) (0)
n
x x n x x
a a a
b a r a r a r n r
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
10
B. Bi tp Matlab
Xt hm truyn
e(k)
() =0
4
[( 1)2 22][( 3)2 4
2]
Vi cc thng s
1 = 0.5 4 = 0.62 = 0.4 0 = 0.4
3 = 0.5
e(k) l n trng vi me=0 . To 1000 d liu.
Yu cu :
- c lng v v 2( )j fxP e
dng Periodogram v correlogram
- c lng m hnh AR dung phng php:
+ Bnh phng ti thiu
+ Bnh phng ti thiu quy
+ Phng php Jule-Walker
- V 2( )j fxP e
H(z) x(k)
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
11
S KHI CTHC HIN
Tn hiu vo l nhiu trng vi = 0 v variance 2 = 1
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
12
Thay th cc gi tr vo trong H(z) ta c hm:
() =0.44
4 23 + 2.022 1.02 + 0.2501
T ta c:
() = 2( 1) 2.02( 2) + 1.02( 3) 0.2501( 4) + 0.4()
1. c lng v v 2( )j fxP e
dng Periodogram v Correlogram
Code Periodogram
clear all
clc
load Project.mat YY;
TT=YY(1,:);
XX=YY(2,:);
length=size(XX,2);
f=0:1/1000:1;
% Xac dinh P[exp(j2*Pi*f)] voi cua so chu nhat
[Pper,f]= periodogram(XX,window,f,1);
subplot(2,2,1);
plot(f,Pper);
title('Periodogram with Rectangular Window');
xlabel('Frequency (Hz)');
ylabel('Power Spectral Density');
% Xac dinh P[exp(j2*Pi*f)] voi cua so Hamming
[Pper,f]= periodogram(XX,Hamming(length),f,1);
subplot(2,2,2);
plot(f,Pper);
title('Periodogram with Hamming window');
xlabel('Frequency (Hz)');
ylabel('Power Spectral Density');
% Xac dinh P[exp(j2*Pi*f)] voi cua so Blackman
[Pper,f]= periodogram(XX,Blackman(length),f,1);
subplot(2,2,3);
plot(f,Pper);
title('Periodogram with Blackman window');
xlabel('Frequency (Hz)');
ylabel('Power Spectral Density');
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
13
Kt qu c lng Periodogram vi cc ca s
Kt lun: Vi cc ca s ging nhau, v vy 2( )j fxP e
thu c cng khng ging nhau hon
ton.
% Xac dinh P[exp(j2*Pi*f)] voi cua so Hanning
[Pper,f]= periodogram(XX,Hann(length),f,1);
subplot(2,2,4);
plot(f,Pper);
title('Periodogram with Hanning window');
xlabel('Frequency (Hz)');
ylabel('Power Spectral Density');
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
14
Code Correlogram
Kt qu
clear all
clc
load Project.mat YY;
TT=YY(1,:);
XX=YY(2,:);
N=size(XX,2);
f=0:1/1000:1;
T=1;
M=round(N/10);
min=M+1;
max=2*M+1;
%Correlogram with Unbiased estimate
rm=xcorr(XX,M,'unbiased');
PcorwithinT=zeros(1,length(f));
for i=1:length(f)
test=0;
for m=min:max
test=test+rm(m)*2*cos(2*pi*f(i)*(m-101)*T);
end
PcorwithinT(i)=test;
end
Pcor=(PcorwithinT-rm(min))*T;
subplot(1,2,1);
plot(f,Pcor);
grid on;
title('Correlogram with Unbiased estimate');
xlabel('Frequency (Hz)');
ylabel('Power Spectral Density');
%Correlogram with Biased estimate
rmb=xcorr(XX,M,'biased');
PcorwithinTb=zeros(1,length(f));
for i=1:length(f)
test=0;
for m=min:max
test=test+rmb(m)*2*cos(2*pi*f(i)*(m-101)*T);
end
PcorwithinTb(i)=test;
end
Pcorb=(PcorwithinTb-rmb(min))*T;
subplot(1,2,2);
plot(f,Pcorb);
grid on;
title('Correlogram with Biased estimate');
xlabel('Frequency (Hz)');
ylabel('Power Spectral Density');
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
15
Kt lun: 2( )j fxP e
thu c khi dng Correlogram c dng ging vi 2( )j fxP e
khi s dng
Periodogram
2. c lng m hnh AR bng 3 phng php
Phng php bnh phng ti thiu
Code Least squares
clear all
load Project.mat YY;
TT= YY(1,:);
XX= YY(2,:);
NN = size(YY,2);
nTheta = 4;
%Least squares
X = XX(1,5:NN)';
R = [-XX(1,4:NN-1)' -XX(1,3:NN-2)' -XX(1,2:NN-3)' -
XX(1,1:NN-4)'];
ThetaLS = inv(R'*R)*R'*X;
Xtest= X-R*ThetaLS;
J=norm(Xtest);
B0_LS=J*sqrt(1/(NN-4))
Leastsquares =[ThetaLS]
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
16
Kt qu
Kt lun: Cc h s c c lng tin gn cc h s c ch ra u bi. Mt s h s c
c lng sai s ng k.
Phng php bnh phng ti thiu quy
Code Recursive Least Squares
Kt qu
B0_LS =
0.4016
Leastsquares =
-1.9919
2.0560
-1.0797
0.2930
clear all
load Project.mat YY;
TT= YY(1,:);
XX= YY(2,:);
NN = size(YY,2);
nTheta = 4;
% Recursive Least Squares
ThetaRLS = zeros(nTheta,1);
GG = 100*eye(nTheta);
for k = 5 : NN
Phi = [-XX(k-1); -XX(k-2); -XX(k-3); -XX(k-4)];
KK = GG*Phi/(1+Phi'*GG*Phi);
ThetaRLS = ThetaRLS + KK*(XX(k) - Phi'*ThetaRLS);
GG = (eye(nTheta)-KK*Phi')*GG;
end
RecursiveLeastSquares=[ ThetaRLS]
Xtestt=X-R*ThetaRLS;
Jt=norm(Xtestt);
B0_RLS=Jt*sqrt(1/(NN-4));
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
17
Kt lun: Cc h s c c lng kh ging vi phng php bnh phng ti thiu ( Least
Squares)
Phng php bnh phng Jule Walker
Code Jule Walker ( dng hm Matlab v da vo l thuyt)
RecursiveLeastSquares =
-1.9915
2.0550
-1.0788
0.2926
B0_RLS =
0.4016
clear all
load Project.mat YY;
TT= YY(1,:);
XX= YY(2,:);
NN = size(YY,2);
nTheta = 4;
%Jule Walker Matlab
[JuleWalker,NoiseVariance] = aryule(XX,4);
B0_JuleWalker=sqrt(NoiseVariance);
[Pxx,f] = pyulear(XX,4,1000,1);
subplot(212);
plot(f,10*log10(Pxx));
%Jult Walker
M=NN/10;
RR=xcorr(XX,M,'biased');
Rx=[-RR(1,101:104)' -RR(1,100:103)' -RR(1,99:102)' -
RR(1,98:101)'];
Rxx=RR(1,102:105)';
ThetaJW=inv(Rx)*Rxx;
R_square=RR(1,102:105);
B0_square=0;
for i=1:4
B0_square=B0_square+ThetaJW(i)*RR(101+i);
end
B0=sqrt(B0_square+RR(101));
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
18
S dng 2 phng php tnh Jule Walker ra cng 1 kt qu
Kt lun
Phng php Jule Walker cho ra cc h s c c lng chnh xc hn 2 phng php bnh
phng ti thiu v bnh phng ti thiu quy. Cc h s c sai s ng k 2 phng php
trn, trong phng php Jule Walker cho ra gn vi h s cho hn.
V 2( )j fxP e
vi cc h s c lng trn ( lm vi Periodogram dng ca s ch
nht).
JuleWalker =
1.0000 -1.9577 1.9799 -1.0056 0.2617
NoiseVariance =
0.1694
B0_JuleWalker =
0.4116
ThetaJW =
-1.9577
1.9799
-1.0056
0.2617
B0 =
0.4116
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
19
c lng Periodogram vi phng php bnh phng ti thiu cho ta ph 2( )j fxP e
c lng Periodogram vi phng php bnh phng Jule Walker cho ta ph 2( )j fxP e
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
20
c lng Periodogram vi phng php bnh phng ti thiu quy cho ta ph 2( )j fxP e
Kt lun: Da vo cc kt qu ph mt cng sut thu c, so snh vi tn hiu ban u, cc
ph cho kt qu kh ging nhau.
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
21
PH LC
Hnh trn l tn hiu ng ra c v t cc s liu thu nhn c ti Project.mat
Hnh hin th c t Scope, trong pha trn l tn hiu ng ra x(k), hnh di l tn hiu
nhiu e(k)
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
22
Cc mu d liu trong file Project.mat
Code Matlab v 2( )j fxP e
dng Periodogram vi cc phng php bnh phng ti thiu
clear all
clc
load ProjectLS.mat YY;
TT=YY(1,:);
XX=YY(2,:);
length=size(XX,2);
f=0:1/1000:1;
% Xac dinh P[exp(j2*Pi*f)] voi cua so chu nhat
[Pper,f]= periodogram(XX,window,f,1);
plot(f,Pper);
title('Periodogram LS with Rectangular Window');
xlabel('Frequency (Hz)');
ylabel('Power Spectral Density');
Bo co thc hnh Matlab Trn Nht Hoi Bo 41100249
23
Phng php bnh phng ti thiu quy
V phng php bnh phng Jule Walker
Cc file cha d liu 1000 mu c lu trong cc file Project.mat (vi cu 1, 2); ProjectLS.mat,
ProjectRLS.mat, ProjectJW.mat (vi cc cu v 2( )j fxP e
) ca cc tn hiu c c lng
h s.
Cc file Project.mdl ( dng cho cu 1,2) ; cc file ProjectLS.mdl, ProjectRLS.mdl,
ProjectJW.mdl dng ly d liu cho cc cu v ph pha sau.
File ARmodel.m cha code matlab cc cu c lng bng 3 phng php khc nhau.
File Correlogram.m cha code matlab cho v ph cng sut bng Correlogram.
File Periodogram.m cha code matlab cho v ph cng sut bng Periodogram.
Cc file PeriodogramLS.m, PeriodogramRLS.m v PeriodogramJW.m cha code matlab cho v
ph cng sut bng Periodogram cho cc tn hiu c lng h s.
clear all
clc
load ProjectRLS.mat YY;
TT=YY(1,:);
XX=YY(2,:);
length=size(XX,2);
f=0:1/1000:1;
% Xac dinh P[exp(j2*Pi*f)] voi cua so chu nhat
[Pper,f]= periodogram(XX,window,f,1);
plot(f,Pper);
title('Periodogram RLS with Rectangular Window');
xlabel('Frequency (Hz)');
ylabel('Power Spectral Density');
clear all
clc
load ProjectJW.mat YY;
TT=YY(1,:);
XX=YY(2,:);
length=size(XX,2);
f=0:1/1000:1;
% Xac dinh P[exp(j2*Pi*f)] voi cua so chu nhat
[Pper,f]= periodogram(XX,window,f,1);
plot(f,Pper);
title('Periodogram JW with Rectangular Window');
xlabel('Frequency (Hz)');
ylabel('Power Spectral Density');