double GaussianRandom(double average, double stdev);
// 가우시안의 평균과 표준편차값 입력
double GaussianRandom(double average, double stdev)
{
double v1, v2, s, temp;
do{
v1=2*((double)rand()/RAND_MAX-1);
v2=2*((double)rand()/RAND_MAX-1);
s=v1*v1 + v2*v2;
}while(s >=1 || s==0); //-1~1까지의 값 발생
s=sqrt((-2*log(s)/s);
temp=v1*s;
temp=(stdev*temp)+average;
return temp;
}
' Study > Digital_Communication' 카테고리의 다른 글
Gray Code (0) | 2014.10.28 |
---|---|
Introduction (0) | 2014.10.20 |
BPSK with AWGN ( C code ) (0) | 2014.10.20 |
About Gaussian Random ( C code ) (0) | 2014.10.20 |
QPSK with AWGN ( C code ) (0) | 2014.10.20 |