Mathematica研究FZC序列的一些数学性质
mma中Fourier函数的缺省FourierParameters是{0,1}
做数学时,使用一些函数最好知道具体的加减乘除运算是怎么算的;注意有无系数放缩,有无左右手坐标系规定,下标从0开始还是从1开始,等等。
仅仅验证ZFC序列的一些数学性质。不保证正确性
准备工作
FZCSequence[NN_] :=
Module[{q = 0, u = 1, cf = NN~Mod~2},
Table[Exp[-I*Pi*u*n*(n + cf + 2*q)/NN], {n, 0, NN - 1}]]
FZCSequence[NN_,q_,u_]:=
Module[{cf = NN~Mod~2},
Table[Exp[-I*Pi*u*n*(n + cf + 2*q)/NN], {n, 0, NN - 1}]]
CircCorrelation[seq_] :=
Module[{kk = Length@seq},
Table[RotateLeft[seq, k].Conjugate[seq] // N, {k, 0, kk - 1}]]
下面进行测试
性质1
FZC序列的圆周循环相关函数 在lag=0处不为0,其余都为0
(*圆周循环相关函数 在lag=0处不为0,其余都为0*)
CircCorrelation[FZCSequence[1024]] // Abs //
ListPlot[#, PlotRange -> {-1, 1050}, Axes -> False] &

性质2
FZC序列模值为1,其做DFT(这里的DFT有系数放缩)得到的序列也是FZC序列(这里缺个证明)
{FZCSequence[64], Fourier[FZCSequence[64]]} //
ComplexListPlot[#, PlotLegends -> Automatic] &

性质3
FZC序列做DFT得到新序列,新序列的圆周循环相关函数 在lag=0处不为0,其余都为0
CircCorrelation[FZCSequence[1024] // Fourier] // Abs //
ListPlot[#, PlotRange -> {-1, 1050}, Axes -> False] &


浙公网安备 33010602011771号