【问题标题】:Symmetric shifted gaussian pulse对称偏移高斯脉冲
【发布时间】:2023-04-01 22:50:01
【问题描述】:

考虑一下这个短代码:

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')

它会生成两个高斯单脉冲,稍微偏移:

我的问题是:如何使这个对称?注意尾部是如何匹配的……对于红色和黑色脉冲它们都是零。我是 matlab 中信号处理工具箱的新手,想修改下面的代码以使其也具有 匹配的磁头

【问题讨论】:

    标签: matlab signal-processing gaussian


    【解决方案1】:

    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')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-04
      • 2017-05-20
      • 1970-01-01
      • 2017-06-14
      • 1970-01-01
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多