たとえば、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;
}
たとえば、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;
}
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;
}
}