高斯白噪声信噪比问题
有一组数据,需要在各个点上加上高斯白噪声,要用C语言实现,现在有如下程序://产生均匀分布的随机数
double uniform(double a,double b,long int *seed)
//a为区间的下限,b为区间的上限,seed为随机数的种子
{
double t;
*seed=2045*(*seed)+1;
*seed=*seed-(*seed/1048576)*1048576;
t=(*seed)/1048576.0;
t=a+(b-a)*t;
return(t);
}
//产生正太分布的随机数
double gauss(double mean,double sigma,long int *seed)
//mean为均值,sigma为方差,seed为随机数的种子
{
int i;
double x,y;
double uniform();
for(x=0,i=0;i<12;i++) x+=uniform(0.0,1.0,seed);
x=x-6.0;
y=mean+x*sigma;
return(y);
}
但是上面参数并没有用到信噪比,好像加高斯白噪声的时候应该有信噪比那个参数吧!不知道怎么用那个信噪比,希望高手指点!感激不尽。