#include “AwgnChannel.h”
/****************构造函数*****************/
awgnchannel::awgnchannel(double SNR, double mean, const vector《double》 &signal) :
snr(SNR), m(mean)
{
length = signal.size();
SignalWithNoise.reserve(length);
Noise.reserve(length);
Es = 1.0;
Rate = 0.5;
N0 = Es / (pow(10.0, (snr / 10))*Rate);
sigma = sqrt(N0 / 2);
AddNoise(signal);
}
/****************设置信号的强度值(默认值为1.0)*****************/
void awgnchannel::SetEs(double E)
{
Es = E;
}
/******************输入码的码率(默认为0.5)*****************/
void awgnchannel::SetRate(double rate)
{
Rate = rate;
}
/***********************获取带噪信号************************/
vector《double》 awgnchannel::GetSignalWithNoise() const
{
return SignalWithNoise;
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !