这是一个非常简单的问题,但我不知道我做错了什么。
这是一个函数,我想绘制它,
采样率1KHz
超过t=[0,1]
功能是:
它必须像我在论文中看到的那样
这是我尝试过的:
t=0:1:1000;
sig =exp(-(t-400).^2/2).*cos(2*pi*(t-400)/10)...
+exp(-(t-425).^2/2).*cos(2*pi*(t-425)/15)...
+exp(-(t-440).^2/2).*cos(2*pi*(t-440)/10);
plot(t./1000,sig)
它给了我以下情节:
这是一个非常简单的问题,但我很困惑。
答案 0 :(得分:2)
仔细看看这个功能。你有一些看起来像高斯的东西,例如
exp(-(t-400).^2/2)
乘以余弦波。不幸的是,你没有在高斯内部的许多点评估你的函数 - 函数太窄(sigma = 1)。你的情节是正确的;为了正确看待事物,你需要有正确的比例(高斯的宽度和余弦函数的频率)。随着一点点摆弄,我得到了以下(这是我的第一个答案的更新):
t=linspace(0, 1000, 1000);
sig =exp(-(t-400).^2/200).*cos(2*pi*(t-400)/10)...
+exp(-(t-425).^2/200).*cos(2*pi*(t-425)/15)...
+exp(-(t-440).^2/200).*cos(2*pi*(t-440)/10);
plot(t./1000,sig)
导致了
显然,比例存在问题 - 一旦sigma大10倍(因此sigma ^ 2大100倍),它按预期工作。
在我看来,就像原始论文中的拼写错误......
顺便说一句,我发现通常你想要“完全按照你的意愿”写出来 - 所以如果你想用毫秒来计算时间,那么使用频率为kHz;并记住,在高斯中,你在分母中有2*sigma^2
。