生活随笔
收集整理的這篇文章主要介紹了
PN序列的产生以及相关函数的计算
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
求 PN 序列并極化(給定初始序列[1 0 0 0 0 0]),c(n)代表序列第 n 個值,c(0)代表 c(N)
function cout
= c ( L
, n
) head
= [ [ 1 0 0 0 0 1 ] , % [ 6 , 1 ] [ 1 1 0 0 1 1 ] , % [ 6 , 5 , 2 , 1 ] [ 1 0 0 1 1 1 ] ] ; % [ 6 , 5 , 4 , 1 ] head_L
= logical ( head ( L
, : ) ) ; cc
= [ 1 0 0 0 0 0 ] ; c_t
= [ ] ; N
= 63 ; n
= mod ( n
, N
) ; if ( n
== 0 ) n
= n
+ N
; end
for i
= 1 : n
- 1 temp
= cc ( head_L
) ; c_t ( 1 ) = mod ( sum ( temp
) , 2 ) ; c_t ( 2 : 6 ) = cc ( 1 : 5 ) ; cc
= c_t
; end
if ( cc ( 6 ) > 0 ) cout
= 1 ; else cout
= - 1 ; end
求相關函數,Rc1(L1,L2)是指求 L1 抽頭和 L2 抽頭的互相關函數,L1=L2 則為自相關函數 L1:[6,1]
L2:[6,5,2,1]
L3:[6,5,4,1]
function
[ Tao
, RC
] = Rc1 ( L1
, L2
)
Rc
= [ ] ;
Rc_T
= 0 ;
tao
= - 50 : 50 ;
for ( i
= - 50 : 50 ) for t
= - 31 : 31 Rc_T
= Rc_T
+ c ( L1
, t
) * c ( L2
, t
- i
) ; end
Rc ( i
+ 51 ) = Rc_T
/ 63 ; Rc_T
= 0 ;
end
Tao
= tao
;
RC
= Rc
;
plot ( tao
, Rc
) ;
實際計算相關函數
% % 計算自相關函數
% [ 6 , 1 ]
[ tao
, Rc61
] = Rc1 ( 1 , 1 ) ; % Rc1是求相關函數,(
1 , 1 )則是
[ 6 ,
1 ] 的自相關函數
% [ 6 , 5 , 2 , 1 ]
[ tao
, Rc6521
] = Rc1 ( 2 , 2 ) ;
% % 計算互相關函數
[ tao
, cross1
] = Rc1 ( 1 , 2 ) ; % Rc1是求相關函數,(
1 , 2 )則是
[ 6 , 1 ] 和
[ 6 , 5 , 2 , 1 ] 的互相關函數
[ tao
, cross2
] = Rc1 ( 2 , 3 ) ;
figure ( 1 ) ;
subplot ( 1 , 3 , 1 ) ; plot ( tao
, Rc61
) ; title ( "[6,1]的自相關函數" ) ; xlabel ( "τ" ) ; ylabel ( "Rc(τ)" ) ;
subplot ( 1 , 3 , 2 ) ; plot ( tao
, Rc6521
) ; title ( "[6,5,2,1]的自相關函數" ) ; xlabel ( "τ" ) ; ylabel ( "Rc(τ)" ) ;
subplot ( 1 , 3 , 3 ) ; plot ( tao
, cross1
* 63 ) ; axis ( [ - 60 60 - 20 20 ] ) ; title ( "[6,1]和[6,5,2,1]的互相關函數" ) ; xlabel ( "τ" ) ; ylabel ( "Rc(τ)" ) ;
figure ( 2 ) ;
plot ( tao
, cross2
* 63 ) ; axis ( [ - 60 60 - 20 20 ] ) ; title ( "[6,5,4,1]和[6,5,2,1]的互相關函數" ) ; xlabel ( "τ" ) ; ylabel ( "Rc(τ)" ) ;
display ( max ( abs ( cross1
) * 63 ) ) ;
display ( max ( abs ( cross2
) * 63 ) ) ;
輸出結果: 這是數字通信課程的一道編程作業題,這里求相關函數采用的是循環,還有很大優化空間,要注意的是序列周期延拓各個下標的值怎么映射到原始序列,這其實就是一個求模的過程,這里互相關函數figure2最大值為15,figure1最大值為17,figure2中兩個抽頭產生的PN序列可用來產生gold序列,他們的互相關函數不會超過 2(n+1)/2+1(n為奇數)2^{(n+1)/2}+1\,(n為奇數) 2 ( n + 1 ) / 2 + 1 ( n 為 奇 數 ) 2(n+2)/2+1(n為偶數)2^{(n+2)/2}+1\,(n為偶數) 2 ( n + 2 ) / 2 + 1 ( n 為 偶 數 )
總結
以上是生活随笔 為你收集整理的PN序列的产生以及相关函数的计算 的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔 網站內容還不錯,歡迎將生活随笔 推薦給好友。