⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 m_sequence.m

📁 伪随机序列的产生程序和分析程序
💻 M
字号:
N=127;   %周期为N=127
a=2;    % 序列的幅值
ndp=254*2; %输出的点数,如果ndp=254说明两个周期的m序列
for(i=1:7)
    SH(i)=2*a;
end
for(i=1:ndp)
    s=SH(7)+SH(4);
    if(s>3*a)
        s=0.0;
    end
    for(j=2:7)
        jm=8-j;
        SH(jm+1)=SH(jm);
    end
    SH(1)=s;
    U(i)=s-a;          %U为输出的m序列
end


%下面是逆重复m序列  《动、静态数学模型的实用建模方法》P363---P369
for (i=1:2:ndp)
     U2(i)=-(U(i));
 end
 for (i=2:2:ndp)
     U2(i)=U(i);
 end
 figure(1);
 subplot(2,1,1);
 plot(U);
 subplot(2,1,2);
 plot(U2);

%m序列的自相关函数
for(i=0:ndp)
    he=0.0;
    for(j=1:ndp-i)
        he=he+U(j)*U(j+i);
    end
    r(i+1)=he/(ndp-i);   %自相关函数的第二种定义为r(i+1)=he/ndp;
end
%%逆重复m序列的自相关函数
for(i=0:ndp)
    he=0.0;
    for(j=1:ndp-i)
        he=he+U2(j)*U2(j+i);
    end
    r2(i+1)=he/(ndp-i);%自相关函数的第二种定义为r2(i+1)=he/ndp;
end
figure(2);
subplot(2,1,1);
plot(-254:254,r);
subplot(2,1,2);
plot(-254:254,r2);            

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -