📄 genchannel.cpp
字号:
#include "Common.h"
void GenChannel(OUT complex *Channel_ImpRep)
{
int i=0;
float energy = 0.f, pn = 1.f, temp=0.f;
FILE *fpt_channel;
fpt_channel = fopen("Ideal_Mutichannel.dat", "wb");
#if (NORM_DEFINITION ==1) //Normalize channel energy every realization
for(i=0; i<MULTIPATH_NUM; i++)
{
temp = (float)( exp(-i*20. / 16) / 2 );
Channel_ImpRep[i].real = (float)( Gauss_rand() * sqrt( temp ) );
Channel_ImpRep[i].imag = (float)( Gauss_rand() * sqrt( temp ) );
energy += ComplexPow(Channel_ImpRep[i]);
}
energy = (float)sqrt(1.f / energy);
for (i=0; i<MULTIPATH_NUM; i++)
{
Channel_ImpRep[i] = ComplexMulR(Channel_ImpRep[i], energy);
}
#else
for(i=0; i<MULTIPATH_NUM; i++)
{
Channel_ImpRep[i].real = (float)( Gauss_rand() * sqrt( pn/(2*MULTIPATH_NUM) ) );
Channel_ImpRep[i].imag = (float)( Gauss_rand() * sqrt( pn/(2*MULTIPATH_NUM) ) );
}
#endif
fwrite(Channel_ImpRep, sizeof(complex), MULTIPATH_NUM, fpt_channel); //保存供Rake使用
fclose(fpt_channel);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -