m序列自相关matlab代码,m序列的输出及其自相关序列

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

【例10-2】 设m序列的生成多项式为g(x)=1+x^3+x^4,求:

(1)m序列的输出及其自相关序列;

(2)脉冲波形成为矩形脉冲p(t)={1 0≤t≤Tc 画出m序列信号的自相关函数;

{0 其它 ,

(3)设脉冲波形为升余弦函数(滚降系数a=0),画出m序列信号的自相关函数。

% m序列发生器及其自相关mseq.m

clear all;

close all;

g=19; % G=10011

state=8; % state=1000

L=1000;

% m序列产生

N=15;

mq=mgen(g,state,L);

% 求序列自相关

ms=conv(1-2*mq,1-2*mq(15:-1:1))/N;

figure(1)

subplot(222)

stem(ms(15:end));

axis([0 63 -0.3 1.2]); title('m序列自相关序列')

% m序列构成的信号(矩形脉冲)

N_sample=8;

Tc=1;

dt=Tc/N_sample;

t=0:dt:Tc*L-dt;

gt=ones(1,N_sample);

mt=sigexpand(1-2*mq,N_sample);

mt=conv(mt,gt);

figure(1)

subplot(221);

plot(t,mt(1:length(t)));

axis([0 63 -1.2 1.2]); title('m序列矩形成形信号')

st=sigexpand(1-2*mq(1:15),N_sample);

s=conv(st,gt);

st=s(1:length(st));

rt1=conv(mt,st(end:-1:1))/(N*N_sample);

subplot(223)

plot(t,rt1(length(st):length(st)+length(t)-1));

axis([0 63 -0.2 1.2]); title('m序列矩形成形信号的自相关');xlabel('t');

% sinc脉冲

Tc=1;

dt=Tc/N_sample;

t=-20:dt:20;

gt=sinc(t/Tc);

mt=sigexpand(1-2*mq,N_sample);

mt=conv(mt,gt);

st2=sigexpand(1-2*mq(1:15),N_sample);

s2=conv(st2,gt);

st2=s2;

rt2=conv(mt,st2(end:-1:1))/(N*N_sample);

subplot(224)

t1=-55+dt:dt:Tc*L-dt;

plot(t1,rt2(1:length(t1)));

axis([0 63 -0.5 1.2]); title('m序列sinc成形信号的自相关');xlabel('t');

=========================================================================

function[out]=mgen(g,state,N)

% 输入g:m序列生成多项式(10进制输入)

% state: 寄存器初始状态(10进制输入)

% N:输出序列长度

% test g=11; state=3;N=15;

gen=dec2bin(g)-48;

M=length(gen);

curState=dec2bin(state,M-1)-48;

for k=1:N

out(k)=curState(M-1);

a=rem(sum(gen(2:end).*curState),2);

curState=[a

curState(1:M-2)];

end

=========================================================================

function[out]=sigexpand(d,M)

% 将输入的序列扩展成间隔M-1个0的序列

N=length(d);

out=zeros(1,M*N);

for i=0:N-1

out(i*M+1)=d(i+1);

end;

========================================================================

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/347650.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JDK 10:从Java访问Java应用程序的进程ID

StackOverflow.com上一个普遍的问题是:“ Java程序如何获得自己的进程ID? 与该问题相关的几个答案包括解析ManagementFactory返回的String 。 getRuntimeMXBean() 。 getName() [但是可以提供“任意字符串”…

spring常见面试问题_Spring面试问题

spring常见面试问题另外,请查看我们最新的文章69Spring面试问题与解答–最终清单 。 1)什么是春天? 回答: Spring是控件和面向方面的容器框架的轻量级反转。 2)解释春天? 回答: 轻巧&#x…

matlab谱系聚类图,如何看懂SPSS聚类分析的树状图/谱系图?

原创: 数据小兵 SPSS统计训练营SPSS聚类分析提供两种类别图形的输出,第一种是软件默认的“冰柱图”,形状类似于冬天屋檐上垂下的冰柱,因此得名。第二种是“树状图”,在新版本软件中也称谱系图,像一个横着生…

Java常用类(1)--字符串相关类String、StringBuffer、StringBuilder全面知识

文章目录String类StringBuffer类StringBuilder类String:不可变的字符序列;底层使用char[]存储 StringBuffer:可变的字符序列;线程安全的,效率低;底层使用char[]存储 StringBuilder:可变的字符序…

hybbs接口php,HYBBS

#HYBBS官方地址: http://bbs.hyyyp.com论坛基于HYPHP框架开发MVC结构支持HOOK机制PDO操作SQL,支持众多数据库论坛特性服务器环境要求:支持子目录安装论坛PHP 5.3 包括5.3 , 5.3以上环境Apache || Nginx || IIS需要开启伪静态,否则无法安装~!数据库支持 : MYSQL , MSSQL ,Oracle…

Java常用类(2)--日期时间相关类Date、Calendar、LocalDateTime、Instant全面

文章目录java.lang.System类java.util.Date类java.sql.Date类java.text.SimpleDateFormat类java.util.Calendar(日历)类java.time类java.time.Instant类java.time.format.DateTimeFormatter 类其它APIjava.lang.System类 System类提供的public static long currentTimeMillis(…

apache camel_Apache Camel简介

apache camelApache Camel是著名的企业集成模式的开源实现。 Camel是一个路由和中介引擎,可帮助开发人员以各种特定于域的语言(DSL)(例如Java,Spring / XML,scala等)创建路由和中介规则。 骆驼…

Angular5 JWT身份验证(Spring Boot安全性)

欢迎使用带有Spring Security的angular5 jwt身份验证。在本教程中,我们将在一个angular5单页应用程序中使用jwt身份验证创建一个完整的堆栈应用程序,该应用程序具有由spring boot支持并集成了spring security的后备服务器。带有集成了HttpInterceptor的示…

Java常用类(4)--System类

System类代表系统,系统级的很多属性和控制方法都放置在该类的内部,该类位于java.lang包。 由于该类的构造器是private的,所以无法创建该类的对象,也就是无法实例化该类。其内部的成员变量和成员方法都是static的,可以…

Java常用类(5)--不可变的任意精度BigInteger、BigDecimal类

文章目录BigInteger类BigDecimal类BigInteger类 Integer类作为int的包装类,能存储的最大整型值为2^31-1,Long类也是有限的, 最大为2^63-1。如果要表示再大的整数,不管是基本数据类型还是他们的包装类 都无能为力。 java.math包的…

Java枚举类(1)--枚举类的定义、方法使用和接口实现

文章目录枚举类的理解枚举类的定义Enum类的主要方法枚举类实现接口枚举类的理解 当类的对象只有有限个,且确定的,称此类为枚举类。 当需要定义一组常量时,强烈建议使用枚举类。 如果枚举类中只有一个对象,则可以作为单例模式的…

java备忘录_Java 8备忘单中的可选

java备忘录Java 8 java.util.Optional<T>是scala.Option[T]和Data.Maybe在Haskell中的较差表亲。 但这并不意味着它没有用。 如果您不熟悉此概念&#xff0c;请将Optional想象为可能包含或不包含某些值的容器。 就像Java中的所有引用都可以指向某个对象或为null &#xf…

IDEA中注解注释快捷键及模板

前些天发现了十分不错的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;没有广告&#xff0c;分享给大家&#xff0c;大家可以自行看看。&#xff08;点击跳转人工智能学习资料&#xff09; 文章目录单行注释多行注释文档注释(块注释)方法说明注解自动注…

让别人和自己看懂自己的程序代码?一文掌握Java单行多行、文档注释以及注解(Annotation)超详细的理解使用,IDEA注释注解快捷键和模板,提高程序代码更有可读性

文章目录单行和多行注释文档注释&#xff08;Java特有&#xff09;Annotation(注解)的理解常见的Annotation示例IDEA注释注解快捷键及模板自定义 AnnotationJDK 中的元注解单行和多行注释 注释的内容不参与编译&#xff0c;即编译以后的.class的字节码文件中不包含注释的内容。…

Java集合(1)--集合概述

Java 集合可分为 Collection 和 Map 两种体系 Collection接口&#xff1a;单列数据&#xff0c;定义了存取一组对象的方法的集合 ——List&#xff1a;元素有序、可重复的集合 ——Set&#xff1a;元素无序、不可重复的集合 Map接口&#xff1a;双列数据&#xff0c;保存具有…

win7下oracle10g安装,专门针对win7下oracle10g安装的详解

Window 7 下面安装Oracle 10g今在win7下安装oracle 10g client的时候遇到下面问题&#xff1a;在执行先决条件的时候&#xff0c;报目前只支持6.0的版本&#xff0c;修改oraparam.ini文件中的以下内容&#xff1a;[Certified Versions]#You can customise error message shown …

Java集合(3)--Iterator迭代器

Iterator对象称为迭代器(设计模式的一种)&#xff0c;主要用于遍历 Collection 集合中的元素。Collection接口继承了java.lang.Iterable接口&#xff0c;该接口有一个iterator()方法&#xff0c;那么所有实现了Collection接口的集合类都有一个iterator()方法&#xff0c;用以返…

Java集合(4)--List接口及其实现类ArrayList、LinkedList和Vector

文章目录List接口概述List接口常用方法ArrayList实现类LinkedList实现类Vector实现类List接口概述 List集合类中元素有序、且可重复&#xff0c;集合中的每个元素都有其对应的顺序索引 List容器中的元素都对应一个整数型的序号记载其在容器中的位置&#xff0c;可以根据 序号…

java hadoop_单元测试Java Hadoop作业

java hadoop在我以前的文章中&#xff0c;我展示了如何设置一个完整的基于Maven的项目&#xff0c;以用Java创建Hadoop作业。 当然并没有完成&#xff0c;因为它缺少单元测试部分。 在这篇文章中&#xff0c;我将展示如何将MapReduce单元测试添加到我之前开始的项目中。 对于单…

软件连接oracle失败怎么办,【编程开发工具】navicat连接oracle失败怎么办

Navicat连接oracle数据库时连接失败&#xff0c;出现ORA-28547错误。原因&#xff1a;navicat Primium版本的OCi和本地数据库的OCI版本不一致。解决方法&#xff1a;1、把navicat Primium版本自带oci.dll替换本地Oracle安装路径里的oci.dll。我的本地navicat Primium版本自带oc…