0

たとえば、sin(x) のような信号をガウス ノイズで乱すにはどうすればよいですか?

私はこのようなものが必要です:

#include <math>
#include <lib with gaussian noise>
int main{
 float *a[Dim]
 for(int i=0;i<Dim;i++)
  a[i]=sim[i/10]+noise;
}
4

1 に答える 1

2

C++.11 を使用している場合は、std::normal_distribution. コードは次のようになります。

#include <random>
int main()
{
    std::random_device rd;
    std::mt19937 gen(rd()); 
    std::normal_distribution<> d;
    float *a[Dim]

    for(int i=0;i<Dim;i++) {
        float noise = d(gen);
        a[i]=sim[i/10]+noise;
    }
}
于 2013-10-07T21:07:36.580 に答える