addnoise.cpp

来自「扩展的直序扩频系统」· C++ 代码 · 共 29 行

CPP
29
字号
#include "Common.h"

extern float SNR;

void AddGaussNoise(complex *Signal, IN double Ps, IN int Length)
{
	int i;
	float Ai,Sigma;

	Sigma = (float)sqrt(1 / 2.);

	Ai = (float)sqrt(SNR/(Ps));

	#if (AWGN_flag == 1)
		for(i = 0; i < Length; i ++)
		{
			Signal[i].real = Ai*Signal[i].real + Sigma*Gauss_rand();
			Signal[i].imag = Ai*Signal[i].imag + Sigma*Gauss_rand();
		}
	#else
		for(i = 0; i < Length; i ++)
		{
			Signal[i].real = Ai*Signal[i].real;
			Signal[i].imag = Ai*Signal[i].imag;

		}
	#endif

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?