【问题标题】:Gaussian pulse generator block issue高斯脉冲发生器模块问题
【发布时间】:2019-02-09 18:35:43
【问题描述】:

我是 Simulink 新手,我正在使用解释型 MATLAB 功能块来创建高斯脉冲发生器。

这是函数:

 function y=mono_gauss(t)

   fs=20E9;                      %sample rate-10 times the highest frequency
   ts=1/fs;                      %sample period
   t1=.5E-9;                     %pulse width(0.5 nanoseconds)
   x=(t/t1).*(t/t1);             %x=(t^2/t1^2)(square of (t/t1);
   A=1; 
   y=(A*(t/t1)-ts).*exp(-x);     %first derivative of Gaussian pulsefunction

   end

问题是模块的输出只生成一个脉冲,而我的目标是生成一串脉冲,就像脉冲发生器模块一样。 有什么解决办法吗?

【问题讨论】:

    标签: matlab signal-processing simulink


    【解决方案1】:

    您最好在 MATLAB 中设计您的脉冲,然后使用 Repeating Sequence 在 Simulink 中使用它。

    例如,在 MATLAB 中

    t = 0:0.01:1;
    y = normpdf(t,0.5,0.05);
    plot(t,y)
    

    然后在 Simulink 中,

    我还将模型 Solver 的步长更改为 0.01。

    您需要使用各种这些参数来获得您想要的精确曲线。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-04
      • 2022-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多