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

MATLAB —— 这篇介绍的是信号处理工具箱之波形产生函数 pulstran

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

* j6 }0 N+ z" h前两篇博文和这篇博文有些许联系:
9 G! E  f; n( {, a- a8 S
$ o5 E' @( u- ZMATLAB —— 认识一下信号处理工具箱之波形产生函数 rectpuls
! A  }% y! a7 Q
/ R. M4 N6 u8 q: g, Q, k0 `MATLAB —— 再介绍一下信号处理工具箱之波形产生函数 tripuls2 ^6 H8 E$ l+ {0 B* }2 }  g) }% ~

' k' b# _* X8 u+ r5 W) }% NMATLAB帮助文档称pulstran函数为:脉冲串(Pulse train)产生函数。 pulstran从连续函数或采样原型脉冲生成脉冲序列。
. b& F4 f  U5 B+ j  m2 y
# S; X6 ]7 G" e1 x. N6 @语法格式:5 i- [& |- S$ F8 T5 q! d, m- N
6 i5 B7 p* a2 h6 c$ h/ z2 x
/ n( \* S5 t0 G5 g: }$ [

0 p0 v2 u7 [0 g语法格式1:( h+ }: Q6 a, w- y

& |# P1 ]8 l$ @: L# ]y = pulstran(t,d,'func')基于连续函数'func'的样本生成脉冲序列,其中'func'是  Z4 {+ ]4 e: s- q) E
* S! K! ^! o+ U7 s
'gauspuls',用于产生高斯调制的正弦脉冲& t4 Z& `9 R( ?7 b& t* A) f
'rectpuls',用于生成采样的非周期矩形
7 H$ ~% }! o$ Y'tripuls',用于生成采样的非周期三角形' L6 n) c/ \2 S, {2 W2 n! e
pulstran被评估长度(d)次并且返回评估的总和y = func(t-d(1))+ func(t-d(2))+ ...
  K8 i7 X1 \, z9 r$ h6 [- |* `7 V3 U! t' ]- @  ?9 v
在移除从向量d获取的标量参数偏移之后,在数组t中指定的参数值范围内计算该函数。 请注意,func必须是一个矢量化函数,可以将数组t作为参数。+ k: `, f2 d( W6 q" m( [4 K& ^+ {

# ?$ {8 K" g5 ]5 R通过将d指定为两列矩阵,可以将可选的增益因子应用于每个延迟的评估,其中第1列中定义的偏移和第2列中的相关增益。 请注意,行向量将被解释为仅指定延迟。
( P6 ~, Y3 g' d. k: ?, w
1 h% h2 l9 w3 i( H6 r( e使用上面这种格式,'func'的相关参数都是默认的。, L& R* B7 d% {" E- H4 M

; c, t6 ~% c! R# V: \! l. e- r# N可以设定‘func’的相关参数,见语法格式2.
) T2 [( Y( S* ^3 `6 q6 x
' M  F$ R) y6 Y8 X语法格式2:
1 y  H3 D0 l! ]
# @+ Q9 h0 p( M4 k2 ]# m0 ipulstran(t,d,'func',p1,p2,...)允许根据需要将其他参数传递给'func'。 例如:
  Z3 A4 Z2 c7 I! T, e7 Y1 L6 Z: c6 T' }% Q& {4 b0 w( D
func(t-d(1),p1,p2,...)+ func(t-d(2),p1,p2,...)+ ...
/ W* C& G% _) x
2 K3 c6 p; z" [9 X& p. B4 Y针对语法格式2举个例子:
. \* h' I! J3 _/ w% S- |2 f. h6 a8 T' r
  • % This example generates an asymmetric sawtooth waveform with a repetition frequency of 3 Hz and a sawtooth width of 0.1 s.
  • % The signal length is 1 s and the sample rate is 1 kHz.
  • clc
  • clear
  • close all
  • t = 0 : 1/1e3 : 1;         % 1 kHz sample freq for 1 s
  • d = 0 : 1/3 : 1;           % 3 Hz repetition frequency
  • y = pulstran(t,d,'tripuls',0.1,-1);
  • plot(t,y)
  • xlabel 'Time (s)', ylabel Waveform( j/ Q) L% i! N2 s
   1 I& R( D7 x9 j$ e

; l; b  ^9 i( Z2 l& p- p; ~; n) t5 J- B9 f5 @( W: e
; k/ P' {; \1 E+ c
y = pulstran(t,d,'tripuls',0.1,-1);
" h, I9 o/ ~1 T: Q# i
; N% r+ `- _* G0 E3 d+ |$ e, `$ o这个函数中的0.1以及-1都是‘tripuls’的参数,例子0.1是脉宽,-1表示脉冲最高幅值在最左边,如果将-1去掉,则默认为0.5.图像如下:7 W' g% q  K) D0 u7 E

  I( v% L6 E1 \  Q( o  Q9 A
6 \0 n# C% K; A
! R  g  ]3 n3 ]! f% P8 U& x可见,这是一个正三角锯齿波脉冲串。
) ^1 h* T. E& k5 Q. i2 @8 j7 v' x, `8 a# {
如果将‘func’的所有参数都使用默认值的话,那么就成了语法格式1了。, a$ Y) v, A3 a1 {% f( {6 C+ z
5 r/ F4 a, o. C: [/ w( O. h: U
再举一个例子:
0 P' w+ l6 {+ ]& W. V- |
/ w  x' c! ~, P: g; l要求都在程序开头的注释里,很简单,懒着翻译了。
9 e( N$ T* q) g2 }
2 u2 @2 Z) H- _* `: Z  Z+ R
  • % This example generates a periodic Gaussian pulse signal at 10 kHz with 50% bandwidth.
  • % The pulse repetition frequency is 1 kHz, the sample rate is 50 kHz,
  • % and the pulse train length is 10 ms. Each pulse has 80% of the amplitude of the preceding pulse.
  • clc
  • clear
  • close all
  • t = 0 : 1/50e3 : 10e-3;
  • d = [0 : 1/1e3 : 10e-3 ; 0.8.^(0:10)]';
  • y = pulstran(t,d,'gauspuls',10e3,0.5);
  • plot(t,y)
  • xlabel 'Time (s)', ylabel 'Periodic Gaussian pulse', [* K& z0 v1 W+ k1 a
   # {! i# O# Z  A! X3 K) F, c
+ t3 U- g. ^2 z( I, z- x: x; |* M
5 u- u$ C  w9 h; U9 `
, C: G$ _9 n$ Y  `9 {. r
语法格式3:3 U' O6 x3 h6 O+ [9 D

" j9 m  ]. N5 ^& [% spulstran(t,d,p,fs)生成一个脉冲序列,它是矢量p中原型脉冲的多个延迟插值之和,以fs速率采样,其中p跨越时间间隔[0,(length(p) -1)/ fs],其样本在此间隔之外相同。 默认情况下,线性插值用于生成延迟。. E/ Q, r( {$ d6 u% T) C
+ ^9 Q( {+ b) H% N: d
不太明白,先放这里。
4 V9 p( C4 x9 ~: s4 G+ D
; L- w6 [( Q8 j, N9 x) Jpulstran(t,d,p)假设采样率fs等于1 Hz。
0 T. L1 _; [  N) }7 H
  ^- m5 F; \, |" y) \1 V& k5 k也就是说如果省略了fs,则默认为1Hz。
5 ^0 R' A4 U+ N& `  _: Z* e4 @+ `% x; }- z+ h
pulstran(...,'func')指定替代插值方法。
8 a$ D. p' \) c1 d/ Z  S& ?" U5 t( D/ `% J; Z0 R
就这样吧!
/ V" F: K& }+ j1 J# J  H! R/ q5 v* ?* L6 c9 _% z& b; J$ z
1 G4 q2 O4 g1 H+ F  H0 Z/ f

  E, g5 V, ^% l) f
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-29 10:20 , Processed in 0.156250 second(s), 26 queries , Gzip On.

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

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

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