matlab序列运算,matlab序列的运算

实验三序列的运算

一、实验内容

1、序列的乘积:仿真并完成例题1.22

2、序列的移位:编写seqshift()函数,实现序列的移位,并作图验证。

3、序列的卷积:编写convwthn()函数,实现具体序列的卷积,并且进行理论计算,比较结果。

4、序列的相关:仿真并完成例题1.24

二、MATLAB仿真

1、序列的乘积

解:

function [y,n] = seqadd(x1,n1,x2,n2)

n=min((n1),min(n2)):max((n1):max(n2));

y1=zeros(1,length(n));y2=y1;

y1(find((n>=min(n1))&(n<=max(n1))==1))=x1;

y2(find((n>=min(n2))&(n<=max(n2))==1))=x2;

y=y1+y2;

function [y,n] = seqmult(x1,n1,x2,n2);

n=min((n1),min(n2)):max((n1):max(n2));

y1=zeros(1,length(n));y2=y1;

y1(find((n>=min(n1))&(n<=max(n1))==1))=x1;

y2(find((n>=min(n2))&(n<=max(n2))==1))=x2;

y=y1.*y2;

代码:

clc;clear all;

x1=[1,3,5,7,6,4,2,1];ns1=-3;

x2=[4,0,2,1,-1,3];ns2=1;

nf1=ns1+length(x1)-1;

nf2=ns2+length(x2)-1;

n1=ns1:nf1;

n2=ns2:nf2;

n=min(ns1,ns2):max(nf1:nf2);

y1=zeros(1,length(n));y2=y1;

y1(find((n>=ns1)&(n<=nf1)==1))=x1;

y2(find((n>=ns2)&(n<=nf2)==1))=x2;

ya=y1+y2;

ym=y1.*y2;

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值