请考虑以下简短代码:
fc=2e9;
fs = 100e9;
for n=1:2
tc = gmonopuls('cutoff',fc);
t{n} = -2*tc:1/fs:2*tc;
y{n} = gmonopuls(t{n}+n*5e-11,fc);
fc=fc+5e3;
end
plot(t{1},y{1},'r',t{2},y{2},'k')它产生两个高斯单脉冲,稍微移动一些:

我的问题是:如何使这个对称?请注意,对于红脉冲和黑脉冲,尾部匹配的up...they都是零。我是新的信号处理工具箱中的matlab,并希望修改下面的代码有匹配的头部也。
发布于 2018-04-17 02:12:48
gmonopuls计算以0为中心的高斯脉冲:
t = -2*tc:1/fs:2*tc;
y = gmonopuls(t,fc);
plot(t, y, 'k');

在不同时间对此函数进行评估不会改变曲线的基本形状。它只会改变你正在取样的曲线的哪一部分:
K = 2*tc;
for n=1:3
t{n} = -2*tc:1/fs:2*tc + (n-2)*K;
y{n} = gmonopuls(t{n},fc);
end
plot(t{1},y{1},'rx', t{2},y{2},'k', t{3},y{3},'bs');
legend('t-K','t','t+K');

要获得沿时间轴移动的曲线,只需在计算函数之后添加时间偏移:
for n=1:2
tc = gmonopuls('cutoff',fc);
t{n} = -2*tc:1/fs:2*tc;
y{n} = gmonopuls(t{n},fc);
t{n} = t{n} - n*5e-11;
fc=fc+5e3;
end
plot(t{1},y{1},'r',t{2},y{2},'k')

https://stackoverflow.com/questions/49867162
复制相似问题