【问题标题】:generate white noise in matlab interval [-1 1] [duplicate]在matlab区间[-1 1]中产生白噪声[重复]
【发布时间】:2013-03-10 17:13:10
【问题描述】:

我想创建或生成 [-1 1] 范围内的白噪声,但我不知道具体该怎么做。我选择的编程语言是matlab。据我所知,存在一个名为 randn 的函数和一个名为 wgn 的函数(高斯白噪声)。所以请帮我解决这个问题,澄清一下,例如我想生成以下等式:

x(t)=20*sin(2*pi*f1*t)+30*cos(2*pi*f2*t)+A3*white noise

A3=amplitude 和白噪声在 [-1 1] 范围内。请帮助我并澄清如何做。我的困惑与白噪声有关,与其他无关,假设 t 从 1 变为 100。

【问题讨论】:

  • 这个问题已经解决了:stackoverflow.com/questions/14527915/…
  • 但是对于哪个部分?我如何在公式中使用?哪个函数用于白噪声生成?
  • “白噪声”和“白高斯噪声”之间存在区别......请参阅我对白噪声的回答。

标签: matlab spectral


【解决方案1】:

白噪声是具有平坦(恒定)功率谱密度的随机信号。为此,您可以使用rand。为了获得区间 [-1 1] 内的白噪声,您只需添加到您的表达式 white_noise=(rand(1,t)*2-1)

【讨论】:

  • 是否需要像 white_noise(t)=(rand(1,t)*2-1 这样的索引
  • 我也应该在 t 改变或 A3*white_noise(t) 时将 A3 乘以白噪声?请帮我澄清一下
  • 但我已经测试过,也许 rand(1,t) 不正确对吧?请回答我
【解决方案2】:

我不太确定,但正如 natan 所说,您应该能够从随机样本的均匀分布中生成白噪声。

我会按照以下方式进行:

wn = unifrnd(-seed,seed,[m,n])/seed;

【讨论】:

  • 均匀分布不会产生高斯白噪声
猜你喜欢
  • 2013-01-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-26
  • 2013-03-31
  • 1970-01-01
  • 2013-10-14
  • 2011-03-20
相关资源
最近更新 更多