?? matlab自相關函數(shù).txt
字號:
matlab編程的求解h(n)的自相關函數(shù)指教!
%*****求解h(n)的自相關函數(shù)*****%
%*****h(t)=e^(-at2)*sin(2Лft)
%*****R x(n)=E(x(m)x(m-n))自相關函數(shù)定義
k=length(h);
hk=fft(h,2*k);
h1k=fft(h,2*k);
rh=real(ifft(conj(hk).*h1k));
rh=[rh(k+2:2*k) rh(1:k)];
h=(-k+1):(k-1);
subplot(2,1,2);%h(n)自相關函數(shù)圖象位置
stem(h,rh,'b.')
xlabel('rh(m)');
請問rh=real(ifft(conj(hk).*h1k));
rh=[rh(k+2:2*k) rh(1:k)]; 是什么意思啊 看不懂哦
謝謝!
如果一個序列,一方面它是可以預先確定的,并且是可以重復地生產(chǎn)和復制的;一方面它又具有某種隨機序列的隨機特性(即統(tǒng)計特性),我們便稱這種序列為偽隨機序列。因此可以說,偽隨機序列是具有某種隨機特性的確定的序列。它們是由移位寄存器產(chǎn)生確定序列,然而他們卻具有某種隨機序列的隨機特性。因為同樣具有隨機特性,無法從一個已經(jīng)產(chǎn)生的序列的特性中判斷是真隨機序列還是偽隨機序列,只能根據(jù)序列的產(chǎn)生辦法來判斷。偽隨機序列系列具有良好的隨機性和接近于白噪聲的相關函數(shù),并且有預先的可確定性和可重復性。這些特性使得偽隨機序列得到了廣泛的應用,特別是在CDMA系統(tǒng)中作為擴頻碼已成為CDMA技術(shù)中的關鍵問題。特性為序列中兩種元素出現(xiàn)的個數(shù)大致相等。
如果把n個元素連續(xù)出現(xiàn)叫做一個長度為n的元素游程,則序列中長度為n的元素游程比長度為n+1的元素游程多一倍。序列有類似白噪聲的自相關函數(shù)(δ函數(shù))
下面是一個MATLAB的偽隨機序列產(chǎn)生程序:
function [m_out]=m_sequence(fbconnection,m,chu)
len=length(fbconnection);
n=2^len-1; %序列長度
register=chu; %初態(tài)
fan=0;
for i=1:n*m % i循環(huán)一次輸出一個m_out
m_out(i)=register(len);
for k=1:len % k循環(huán)累加反饋
fan=fan+fbconnection(k)*register(k);
end
fan=mod(fan,2); % 反饋系數(shù)
newregister(1)=fan;
for j=2:len % j循環(huán)移位
newregister(j)=register(j-1);
end
register=newregister;
fan=0;
end
/////////////////下面是一個調(diào)用這個函數(shù)的程序
fbconnection=[0 1 0 0 1 1 0 1]; %特征多項式
m=1; %輸出周期個數(shù)
t=length(fbconnection); %序列長度
chu=[zeros(1,t-1),1]; %初態(tài)
m_out=m_sequence(fbconnection,m,chu); %輸出m序列 m_sequence為序列產(chǎn)生函數(shù)
本程序先生成一個“Blocks”信號,然后加上高斯白噪聲,再用'db3'小波進行分解,
% 以說明信號和噪聲在各個尺度上的表現(xiàn)。
clear all;
% 生成“Blocks”信號
M = 1/1024;
N = 1/M;
t =0:M:1-1/1024;
TPoint = [0.1,0.13,0.15,0.23,0.25,0.40,0.44,0.65,0.76,0.78,0.81];
h = [4,-5,3,-4,5,-4.2,2.1,4.3,-3.1,2.1,-4.2];
[aaa,TSize] = size(TPoint);
FBlock = zeros(N,1);
for j = 1:N
for i = 1:TSize
if (t(j) - TPoint(i))> 0
sgnt = 1;
elseif (t(j) - TPoint(i))< 0
sgnt = -1;
else
sgnt =0;
end
FBlock(j) = FBlock(j) +h(i)*(1+sgnt)/2;
end
end
%sig=FBlock';
subplot(321)
plot(FBlock)
%title(' 原信號');
grid on;
% 加上白噪聲
sigma=0.1;
sig= GWNoisy(FBlock',sigma);
subplot(323)
plot(sig)
%title(' 帶噪信號');
grid on;
% 小波分解
[c,l]=wavedec(sig,2,'db3');
ca2=appcoef(c,l,'db3',2);
cd2=detcoef(c,l,2);
cd1=detcoef(c,l,1);
subplot(322)
plot(cd1)
subplot(324)
plot(cd2)
subplot(326)
plot(ca2)
dl=length(cd2)+length(cd1);
c1=[ca2,zeros(1,dl)];
y=waverec(c1,l,'db3');
subplot(325)
plot(y)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -