代码编织梦想

        产生不同种离散信号的基本函数主要有:exp--指数函数; sin/cos--正余弦函数;square--方波函数; sawtooth--锯齿波函数。

 一、矩阵函数画图

普通矩阵序列画图如下:

k=[-2:2];
xk=[0,1,1,2,3];
stem(k,xk,'filled');%画茎秆图(序列图),在k的指定位置画x[k]

指数函数画图如下:

a=input('a=');
K=input('K=');
N=input('N=');
k=0:N-1;
y=K*a.^k;
stem(k,y);%以k为横坐标,y为纵坐标,显示离散序列,连线的话时plot函数
xlabel('Time');ylabel('Amplitute');
title(['a=',num2str(a)]);

二、序列的卷积

序列卷积的数学公式:y[k]=x[n]*h[n]=\sum_{n=-\infty }^{\infty }x[n]h[k-n]

%卷积函数:conv(x,h),x与h为参与卷积计算的序列


x=[-0.5,0,0.5,1];%输入序列
kx=-1:2;%序列每个点的序号
h=[1,1,1];%输入序列
kh=-2:0;%序列每个点的序号

y=conv(x,h);%求卷积
k_sta= kx(1)+kh(1);%两个序列的第一个点的序号相加,为卷积后序列的第一个点的序号
k_end= kx(end)+kh(end);%两个序列的最后一个点的序号相加,为卷积后序列的最后一个点的序号
k=k_sta:k_end;%卷积后序列的范围

stem(k,y);%序列画图
xlabel('k');ylabel('y');

运行程序后得到的结果:

三、序列的互相关

 序列相关的互相关公式:

y[k]=\sum_{n = -\infty }^{\infty }x[n]h[k+n]

        =\sum_{n=-\infty }^{\infty }x[n-k]h[n]

        =\sum_{n=-\infty }^{\infty }x[-(k-n)]h[n]

        =x[-n]*h[n]]

即,序列x与序列h的互相关函数,为x[-n]与序列h的卷积。

matlab代码如下:

%相关函数,xcorr(x,h),x与h为参与相关计算的序列

x=[-0.5,0,0.5,1];%x序列
kx=0:3;%%序列每个点的序号
h=[1,1,1,1];%h序列
kh=0:3;%%序列每个点的序号

y=xcorr(h,x);%相关函数,Rxh,相关函数x与h位置不可互换
k_sta= kh(1)-kx(end);%x序列x的最大序号的负数,与序列h的第一个序号相加
k_end= kh(end)-kx(1);%x序列x的最小序号的负数,与序列h的最大序号相加
k=k_sta:k_end;

stem(k,y);%序列画图
xlabel('k');ylabel('y');

运行后结果:

因序列x[n]与h[n]的互相关为x[-n]与h[n]的卷积,因此使用matlab编写上述信号的卷积验证结果是否一致。

%x[-n]与h[n]卷积

x=[1,0.5,0,-0.5];%输入序列
kx=-3:0;%序列每个点的序号
h=[1,1,1,1];%输入序列
kh=0:3;%序列每个点的序号

y=conv(x,h);%求卷积
k_sta= kx(1)+kh(1);%两个序列的第一个点的序号相加,为卷积后序列的第一个点的序号
k_end= kx(end)+kh(end);%两个序列的最后一个点的序号相加,为卷积后序列的最后一个点的序号
k=k_sta:k_end;%卷积后序列的范围

stem(k,y);%序列画图
xlabel('k');ylabel('y');

 

 序列x与序列h的互相关函数,为x[-n]与序列h的卷积,验证成功。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yindq1220/article/details/125749795

matlab在dsp中的应用(三)---离散序列的基本运算-爱代码爱编程

一、实验目的 (1)进一步了解离散时间序列时域的基本运算。 (2)通过实验进一步理解卷积定理,了解卷积的过程。 (3)了解MATLAB语言进行离散序列运算的常用函数,掌握离散序列运算程序的编写方法。 二、实验涉及的M

常用的Matlab的函数-爱代码爱编程

目录 1.随机数产生类 2.数学函数类 3.做图类函数 4.信号处理类 5.其他   1.随机数产生类 函数:randn: 产生标准正态随机变量            rand:产生0-1之间均匀分布随机变量            randperm:产生随机的排序            hist:对矢量自动进行直方图统计 2.数学类

实验五、序列的傅里叶变换-爱代码爱编程

一、实验目的 充分熟悉exp函数的使用; 熟悉傅里叶变换的计算; 能够画出结果的图形。 二、实验步骤 用help查找exp函数的使用情况; 编辑并生成函数FourierTran.m(傅里叶变换); 编辑并生成函数sigfourier.m(序列的卷积和); 分析X=x*(exp(-j).^(n’*w))语句中n’, 如果用n替代, 结果会有什

matlab meshc函数_MATLAB函数库大全(收藏版)-爱代码爱编程

转发朋友圈获30赞,截图发送至公众号对话框,即可获该文章的PDF版本方便阅读。 目录 1 常用命令 表1.1 管理用命令 表1.2管理变量与工作空间用命令 表1.3文件与操作系统处理命令 表1.4窗口控制命令 表1.5启动与退出命令 2 运算符号与特殊字符表 表2.1运算符号与特殊字符 表2.2逻

matlab编程复指数,matlab复指数序列-爱代码爱编程

(n) 当|a|>1 时,单边指数序列发散 当|a|<1 时,收敛 当 a>0 时,该序列均取正值 当 a<0 时,该序列在正负间摆动 用 matlab 绘制出复指数序列的实部...... )。 4 4 图1.3 实指数序列波形 1.3 复指数序列 exp 离散时间复指数序列的一般形式为 ke 形的MATLAB函数。 func

matlab单位阶跃序列,产生单位阶跃序列的MATLAB程序如下k.ppt-爱代码爱编程

产生单位阶跃序列的MATLAB程序如下k 一、实验目的 掌握典型连续信号和离散序列的MATLAB描述方法 掌握序列的常用运算方法 二、实验设备 * * 实验二 基本信号的产生及其运算 信息工程学院 网络工程系 强文萍 2、MATLAB6.5 软件 1、计算机 MATLAB提供了许多函数用于产生常用的基本信号:如阶跃信号、脉冲信号、指数信号、正弦信号和

matlab单位阶跃序列,产生单位阶跃序列的MATLAB程序如下:k.PPT-爱代码爱编程

产生单位阶跃序列的MATLAB程序如下:k 一、实验目的 掌握典型连续信号和离散序列的MATLAB描述方法 掌握序列的常用运算方法 二、实验设备 * * 实验二 基本信号的产生及其运算 信息工程学院 网络工程系 强文萍 2、MATLAB6.5 软件 1、计算机 MATLAB提供了许多函数用于产生常用的基本信号:如阶跃信号、脉冲信号、指数信号、正弦信号

matlab eigs 虚数,MATLAB函数速查手册-爱代码爱编程

内容简介 MATLAB是目前流行的理论与工程仿真软件之一。该软件自产生以来,就以其独有的特点和明显的优势吸引了各行各业的工作者。《MATLAB函数速查手册》较全面地介绍了MATLAB的函数,主要包括MATLAB操作基础、矩阵及其基本运算、与数值计算相关的基本函数、符号运算的函数、概率统计函数、绘图与图形处理函数、MATLAB程序设计相关函数、Simu

matlab循环卷积函数,一维卷积与循环卷积的使用(离散数据+具体例子)-爱代码爱编程

前言 本人在对野外仪器数据采集的信号做一些列数字信号处理的过程中,经常遇到卷积与循环卷积。现实中,野外仪器记录到的数据都是离散的!所以我们在对数据进行FFT变换时,都默认使用的是DFT(离散傅里叶变换)。 本文目标并非介绍卷积与循环卷积的详细内容与公式,而是侧重如何编写自己的程序实现这两种操作,并简要介绍两者在使用和结果上的区别。 卷积与循环卷积

matlab序列信号的翻褶函数,基于MATLAB的测控实验.doc-爱代码爱编程

基于MATLAB的测控实验 实验一 函数信号发生实验 一 实验目的 1.掌握基于matlab产生基本信号的方法; 2.掌握基于matlab绘制信号曲线的方法。 二 实验设备 1.计算机1台; 2.MATLAB软件1套; 3.打印机1台。 三 实验要求 1.预习实验原理; 2.对实验内容编写程序(M文件),上机运行; 3.独立完成

matlab函数全能速查宝典 pdf,MATLAB函数全能速查宝典-爱代码爱编程

第1章 MATLAB操作基础 1.1 MATLAB概述 1.1.1 MATLAB产生的历史背景 1.1.2 MATLAB的主要功能 1.1.3 MATLAB的语言特点 1.2 MATLAB的运行环境及安装 1.2.1 MATLAB的运行环境 1.2.2 MATLAB 7.0的安装 1.3 MATLAB集成环境 1.3.1 启动与退出M

matlab list函数参数,Matlab 函数参数汇总-爱代码爱编程

Matlab 函数参数汇总 Saturday, October 27, 2007 12:49:05 AM MATLAB函数参考 附录1.1 管理用命令 函数名 功能描述 函数名 功能描述 addpath 增加一条搜索路径 rmpath 删除一条搜索路径 demo 运行Matlab演示程序 type 列出.M文件 doc 装入超文本文档 v

matlab 信号分解成冲激函数序列,信号与系统实验指导书(本一)讲解.doc-爱代码爱编程

信号与系统实验指导书(本一)讲解 实验一 基本信号的产生与运算 实验目的 学习使用MATLAB产生基本信号、绘制信号波形、实现信号的基本运算。 实验原理 MATLAB提供了许多函数用于产生常用的基本信号:如阶跃信号、脉冲信号、指数信号、正弦信号和周期方波等等。这些信号是信号处理的基础。 连续信号的产生 阶跃信号 产生阶跃信号的MATLA

matlab 图像周期延拓,matlab序列周期延拓-爱代码爱编程

matlab计算有限长序列线性卷积 x=[-0.5,0,0.5,1];kx=-1:2;h=[1,1,1];kh=-2:0;y=conv(x,h);k=kx(1)+kh(1):kx(end)+kh(end);stem(k,y); 为什么实信号抽样后频域要周期延拓? 信号时域离散化导致频域周期化实信号抽样后,就离散化了,和fourier级数有关,离散

Matlab主要函数命令全网最全-爱代码爱编程

文章目录 一,常用命令二,运算符号与特殊字符三,程序语言设计四,基本矩阵和矩阵操作五,基本数学函数八,数据分析和傅里叶变换十一,二维图形十二,三维图形十三,特殊图形十四,图形句柄十六,文件输入/输出 一,常用命令 1.常用信息help联机帮助命令,在 MATLAB命令窗口显示帮助主题helpy联机帮助命令,在 MATLAB帮助窗口显示函数命令

数字信号处理基础 离散傅里叶变换和卷积计算matlab代码-爱代码爱编程

1.已知一个有限长度为N的序列直接计算其离散傅立叶变换,并画出图形; 2.比较添零和增加取样点,对频谱的影响。 添零 补零使原来的X(k)起到做插值的作用,克服栅栏效应,使谱外观得到平滑。末尾补零,DFT处理的点数大于实际抽样的点数,这样使原来看不见的频谱线能被看到;在做DFT的时候人们常常在有效数据后面补一些零来达到频谱改善的效果,但是这并不会提高