192 ITU_Vehicular_A, ITU_Vehicular_B, ITU_Pedestrian_A, ITU_Pedestrian_B,
193 COST207_RA, COST207_RA6,
194 COST207_TU, COST207_TU6alt, COST207_TU12, COST207_TU12alt,
195 COST207_BU, COST207_BU6alt, COST207_BU12, COST207_BU12alt,
196 COST207_HT, COST207_HT6alt, COST207_HT12, COST207_HT12alt,
197 COST259_TUx, COST259_RAx, COST259_HTx
211 Jakes = 0, J = 0, Classic = 0, C = 0,
212 GaussI = 1, Gauss1 = 1, GI = 1, G1 = 1,
213 GaussII = 2, Gauss2 = 2, GII = 2, G2 = 2
272 virtual void init() = 0;
275 virtual void generate(
int no_samples, cvec &output) = 0;
309 virtual void generate(
int no_samples, cvec& output);
336 virtual void generate(
int no_samples, cvec& output);
382 virtual void init() = 0;
387 virtual void generate(
int no_samples, cvec& output) = 0;
395 void add_LOS(
int idx, std::complex<double>& sample);
462 virtual void generate(
int no_samples, cvec &output);
521 virtual void generate(
int no_samples, cvec &output);
583 virtual void generate(
int no_samples, cvec &output);
683 void set_LOS(
int tap_number,
double relative_power,
double relative_doppler = 0.7);
685 void set_LOS(
const vec& relative_power,
const vec& relative_doppler =
"");
827 TDL_Channel(
const vec &avg_power_dB =
"0",
const ivec &delay_prof =
"0");
851 void set_LOS(
const vec& relative_power,
const vec& relative_doppler =
"");
917 void generate(
int no_samples, cmat &channel_coeff);
927 void filter(
const cvec &input, cvec &output, cmat &channel_coeff);
931 cvec
filter(
const cvec &input, cmat &channel_coeff);
933 void filter(
const cvec &input, cvec &output);
935 cvec
filter(
const cvec &input);
940 void operator()(
const cvec &input, cvec &output, cmat &channel_coeff);
944 cvec
operator()(
const cvec &input, cmat &channel_coeff);
1007 BSC(
double in_p = 0.0) : u(0.0, 1.0) { p = in_p; };
1077 #endif // #ifndef CHANNEL_H