使用什么版本的 sinc 函数?(加上额外的因素ππ或不。)

信息处理 过滤器 有限脉冲响应 无限脉冲响应 窗函数
2022-02-26 15:07:29

我明天有一个关于信号处理的考试,其中一个问题可以有两种方式:

  1. 使用汉明窗设计第 N 阶(N+1 抽头)带通 FIR 滤波器,其通带介于 -之间,采样频率为 Hzf0f1fs

  2. 按照FIR滤波器设计的加窗方法,使用汉明窗设计一个N阶(N+1-tap)FIR低通滤波器,截止频率为 Hz,采样率为 Hz。f0fs

现在,我对以前论文的 Mark Scheme 中的问题如何回答有一点问题。对于带通,他使用 sinc 的以下定义 sinc sinc

sinc(x)=sin(πx)πx

而对于低通,他使用

sinc(x)=sin(x)x

以下是摘录:

在此处输入图像描述

在此处输入图像描述

即使在第一种情况下,他也表示

在此处输入图像描述

的回答遵循 sinc 的版本。我怀疑他使用 matlab 来评估数字,而 matlab 实际上正在使用在讲座中,我们被教导定义 sinc 的唯一方法是在没有的“普通版本”中。h[n]πxsin(πx)πxπ

但随后再次查看有关 sinc 的 Wiki 文章。它指出带有的版本通常用于信号处理。有人能告诉我什么时候用什么吗?谢谢。π

2个回答

前段时间,在我们的姊妹网站 math.SE 上,我写了一篇关于sinc 函数的两种不同定义的问题。这是该答案的稍微修改的版本,以使那些喜欢留在 dsp.SE 上的人受益。

在工程文献中,将傅里叶变换定义为

X(ω)=x(t)exp(jωt) dt
倾向于使用非规范化版本sin(x)x,而那些将傅里叶变换定义为
X(f)=x(t)exp(j2πft) dt
倾向于使用标准化版本sin(πx)πx. 我个人偏爱标准化版本,因为函数的零点是非零整数,但是,像大多数人一样,我已经学会了同时使用这两种定义,并找出作者使用的是哪一种,即使它没有明确说明。当然,有些狂热者说那些使用他们不喜欢的惯例的人处于罪恶状态(或者我是说处于罪恶状态?)

顺便说一下,我对 sinc (或sine cardinal)函数定义的偏好是

sinc(x)={sin(πx)πx,x0,1,x=0,
而不仅仅是sinc(x)=sin(πx)/(πx)OP 和维基百科陈述它的方式。

我不同意 Fat32 的教学断言,即如果 sinc 没有在论文、书籍、考试或家庭作业中定义,那么人们应该假设它是规范化的版本,并相应地进行。根据我的经验,更常见的情况是,如果频率变量是ω(弧度每秒),则使用非标准化版本,而如果频率变量为f(赫兹),那么就使用规范化版本,但这绝不是每个人都遵循的硬性规定。

没有什么时候用。这完全是一个定义问题,对于负责任的、可信赖的、严肃的对话,它们必须明确说明。

从 DSP 上下文来看,如果在论文、书籍或考试中要求您使用sinc函数,那么如果没有其他说明,您应该假设:

sinc(x)=sin(πx)πx

对所谓的sinc函数的任何其他使用都应先于特定选择的明确定义。