找回密码
 注册
关于网站域名变更的通知
查看: 518|回复: 1
打印 上一主题 下一主题

数字信号处理中的几个常用序列的MATLAB代码产生

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-1-13 10:05 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 mytomorrow 于 2020-1-13 10:21 编辑
, [( E7 C8 ]) P' w( _
3 f/ l0 w) G  w" }9 p2 ^) r0 s常用离散时间序列的Matlab产生:https://www.eda365.com/thread-271002-1-1.html$ c. i7 u5 x; B% l' O0 u4 F4 @

) a+ {' j$ U) s* b上篇文章介绍了例如单位样值序列、单位阶跃序列产生的脚本以及函数,这篇博文利用到的函数,将直接贴过来:+ K6 O7 Q- d8 W2 p1 T0 J7 Z

+ n9 t2 C0 l& f: p0 E' q6 H单位样值序列:! b* |6 ^- X4 |2 q: m0 V% E: O/ O% S

$ H" |( C% ^  ]* [ 0 x  j! L3 \/ H4 m  B
' V5 G6 z7 w$ U6 {! a% ?! M( r
  • function [x,n]=delta(n0,n1,n2);
  • % generate x(n) = delta(n - n0); n1 <= n <= n2
  • %_____________________________________________
  • %[x,n] = delta(n0, n1, n2);
  • %
  • n = [n1:n2];
  • x = [(n-n0) == 0];
  • 8 N! r, ?$ `) ~$ r- y- B  c

" W5 r7 B5 R7 a1 |2 M单位阶跃序列:
! S+ L9 @* A$ f
/ G% R2 v2 U1 \4 o
, u; U( y! n  q. }" h: \8 a$ G# w7 y/ l4 w9 k2 U* v. Z: c! O* ]
  • function [x,n]=stepseq(n0,n1,n2);
  • % generate x(n) = u(n - n0); n1 <= n <= n2
  • %_____________________________________________
  • %[x,n] = stepseq(n0, n1, n2);
  • %
  • n = [n1:n2];
  • x = [(n-n0) >= 0];1 H$ m* g) i6 g+ }
! t- n& @( J; _- Y6 Z6 A
这篇文章给出几个序列,请使用脚本实现:1 e( o; \+ j4 Y# v: P
# G3 ]9 ?2 U% @( X( W. v
例1:
3 T4 [& {; G/ Z' ~" K" p. i% c
8 e: P  J: S% o1 ]
& d' h6 E9 @0 \9 }
; k4 ]+ P6 y# w- v& G
  • clc
  • clear
  • close all
  • n = [-5:5];
  • x = 2*delta(-2,-5,5)-delta(4,-5,5);
  • stem(n,x);
  • xlabel('n');ylabel('x(n)');
  • ylim([-2,3]);
    % j3 h. ^% x3 l8 E, _

9 D% z; _' h8 Z9 j5 j: A8 `9 q& @5 j* r( I' k; N
运行即可得到结果:
- K+ n# ]5 S: O1 }" ]
  K, I2 v3 w( e* G$ z* C, c
5 L( R$ o( x3 ?: Y- K) ^* M4 K+ I( m
例2:
% ^+ d; T! j. @! T3 g8 ?) |% @1 ]: A6 c9 H: G
( g/ ~: A+ Q& }/ L8 A# Q- ]
  s) x; \+ l, }6 }$ Y* h
  • clc
  • clear
  • close all
  • n = [0:20];
  • x1 = n.*(stepseq(0,0,20) - stepseq(10,0,20));
  • x2 = 10*exp(-0.3*(n-10)).*(stepseq(10,0,20) - stepseq(20,0,20));
  • x = x1+x2;
  • stem(n,x);
  • xlabel('n');ylabel('x(n)');
  • ylim([-1,10]);" t6 z' r6 j6 b* S) g
/ j- @, ~2 L4 U/ W: o& n
, K/ j; B( P4 _/ p! ^, D$ F

0 t8 ~1 x2 Y' Y% U. m& ~2 R/ f4 ?( r. f5 E8 x% J
例3:8 n4 {/ M. d/ O+ B1 G8 ]- t# f, A

( M. u& i5 `  L6 e( w2 w; ?
4 z& I% O4 x5 _- r/ O6 n  S0 M9 o
其中,w(n)是均值为0,方差为1的高斯随机序列。
- Z8 I  j2 q, c. p5 Z7 E+ o: r
* ]4 _9 p" p6 S" p6 m
  • clc
  • clear
  • close all
  • n = [0:50];
  • x = cos(0.04 * pi * n) + 0.2*randn(size(n));
  • stem(n,x);
  • xlabel('n');ylabel('x(n)');
    " c0 f- X( k2 @! I0 C! G
, Z( j- t% z# W* Q
" C- T, I7 E- S( [% h
% q& {; r  U7 Z. h  h
" ~' O  H# I% z) `. J' d
例4:+ Z- r8 m* S- Z9 ]  v) z, a
- D" r* K- F# e6 F4 @1 T2 e
" K# B1 J" s8 R9 [7 j
& p, j+ m7 ^4 W8 q0 U
  • clc
  • clear
  • close all
  • n = [-10:9];
  • x = [5,4,3,2,1];
  • xtilde = x' * ones(1,4);
  • xtilde = xtilde(:)';
  • stem(n,xtilde);
  • xlabel('n');ylabel('xtilde(n)');1 p8 S4 y' H6 B* M

5 {5 _; [' K( M+ q& M
9 c* j$ H. G$ v' w3 M& X, G8 g, s+ Y9 v, [! e
, x1 V, s7 u2 r' }4 y4 I
  • TA的每日心情

    2019-11-29 15:37
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2020-1-14 19:55 | 只看该作者
    数字信号处理中的几个常用序列的MATLAB代码产生
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-21 05:50 , Processed in 0.125000 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表