干时间卷积使用conv,过滤器,cconv在频域和乘法

4视图(30天)
要求图时间使用conv卷积,过滤器,cconv在频域和乘法。所有的答案似乎同意除了在频域乘法。有什么问题吗?有什么建议吗?
1.0 u = @ (n)。* (n > = 2);
y = @ (n) abs (2。* n + 1)。* (u (n + 1) - u(存在));
n_x = 1:10;
n_y = 20分;
最大= u (n_y);
x_n = y (n_x);
c = conv (x_n最大);
n_c = n_x (1) + n_y (1): n_x(结束)+ n_y(结束);
图()
%
次要情节(4 1 1)
茎(n_c c)
包含(“n”)
xlim ([15])
标题(u (n) * | 2 n + 1 | (u (n + 1) - u(存在))使用conv”)
%
cf =过滤器(x_n 1最大);
cf = [cf, 0(1、长度(n_c)长度(cf)));
次要情节(1、2)
茎(n_c cf)
包含(“n”)
xlim ([15])
标题(u (n) * | 2 n + 1 | (u (n + 1) - u(存在))使用过滤器)
%
cc = cconv(最大,x_n);
次要情节(4 1 3)
茎(n_c cc)
包含(“n”)
xlim ([15])
标题(u (n) * | 2 n + 1 | (u (n + 1) - u(存在))使用cconv”)
次要情节(4、1、4)
z =传输线(fft (x_n)。* fft(最大));
茎(n_, z);
包含(“n”)
xlim ([15])
标题(u (n) * | 2 n + 1 | (u (n + 1) - u(存在))乘以频域的)
谢谢

答案(1)

Nalini Vishnoi
Nalini Vishnoi 2015年5月20日
你好,
你最后的部分执行时给了错误,因为你是两个向量相乘(元素的元素)时不同的长度。的正确方法使用fft的执行“卷积”如下:
%保证了向量相乘是相同的尺寸/长度
z =传输线(fft (x_n元素个数(n_c))。* fft(最大元素个数(n_c)));
茎(n_c, z);
我希望这可以帮助。
Nalini

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!