sinc[n]:=sin(phi*n)/phi*n;
这当然不是 Matlab 语法,;
最后的 也使它看起来不像一个问题。无论如何,你有两个选择。绘制函数以直观地评估等效性或检查向量。我会用这个来演示,然后你可以尝试所有其他的。
首先,您需要创建一个样本n
向量,该向量将作为您测试等价性的域(即您的绘图的 x 值)。我会随意选择:
n = -10:0.01:10;
此外,我将假设phi
您实际上是pi
基于 Matlab 的定义sinc
: http: //www.mathworks.com/help/signal/ref/sinc.html
所以现在我们必须函数:
a = sinc(n);
b = sin(n)./n;
a
现在b
是向量,对于 的每个元素都有一个对应的“y”值n
。您还会注意到我在.
之前使用了 a /
,这意味着元素明智除法,即每个元素除以每个对应元素,而不是矩阵除法,矩阵除法是先求逆,然后是矩阵乘法。
现在让我们绘制它们:
plot(n, a, n, b, 'r')
最后要检查数值等价性,我们可以这样做:
all(a == b)
但是(这可能有点超出您的问题的范围,但重要的是要知道)您实际上不应该检查浮点数的绝对等价,因为由于内部计算中的不同截断而导致精度错误(因为如何您的计算机存储浮点数)。因此,最好检查两个数字之间的差异是否小于某个微小的阈值。
all((a - b) < 0.000001)
剩下的交给你