Independent (random) fading generator class. More...
#include <itpp/comm/channel.h>
Public Member Functions | |
Independent_Fading_Generator () | |
Default constructor. More... | |
virtual | ~Independent_Fading_Generator () |
Destructor. More... | |
virtual void | init () |
Initialize the generator. More... | |
virtual void | generate (int no_samples, cvec &output) |
Generate no_samples values from the fading process. More... | |
virtual void | generate (int no_samples, cvec &output)=0 |
Generate no_samples values from the fading process. More... | |
cvec | generate (int no_samples) |
Generate no_samples values from the fading process. More... | |
void | set_LOS_power (double relative_power) |
Set relative LOS power. More... | |
virtual void | set_LOS_doppler (double relative_doppler) |
Set relative Doppler of the LOS component (for correlated fading generators) More... | |
virtual void | set_time_offset (int offset) |
Set time offset in samples (for correlated fading generators) More... | |
virtual void | set_filter_length (int filter_length) |
Set FIR filter length (for FIR fading generator) More... | |
virtual void | set_norm_doppler (double norm_doppler) |
Set normalized Doppler (for correlated fading generators) More... | |
virtual void | set_doppler_spectrum (DOPPLER_SPECTRUM spectrum) |
Set Doppler spectrum (for Rice fading generator) More... | |
virtual void | set_no_frequencies (int no_freq) |
Set number of sine frequencies (for Rice fading generator) More... | |
virtual void | set_rice_method (RICE_METHOD method) |
Set calculation method of Doppler frequencies and amplitudes (for Rice fading generator) More... | |
double | get_LOS_power () const |
Get relative power of LOS component (Rice factor) More... | |
virtual double | get_LOS_doppler () const |
Get relative Doppler of the LOS component (for correlated fading generators) More... | |
virtual double | get_time_offset () const |
Get time offset in samples (for correlated fading generators) More... | |
virtual int | get_filter_length () const |
Set FIR filter length (for FIR fading generator) More... | |
virtual double | get_norm_doppler () const |
Return normalized Doppler (for correlated fading generators) More... | |
virtual DOPPLER_SPECTRUM | get_doppler_spectrum () const |
Return Doppler spectrum (for Rice fading generator) More... | |
virtual int | get_no_frequencies () const |
Get number of sine frequencies (for Rice fading generator) More... | |
virtual RICE_METHOD | get_rice_method () const |
Get calculation method of Doppler frequencies and amplitudes (for Rice fading generator) More... | |
virtual void | shift_time_offset (int no_samples) |
Shift generator time offset by a number of samples (for correlated fading generators) More... | |
Protected Attributes | |
bool | init_flag |
signals if generator is initialized or not More... | |
double | los_power |
Relative power of LOS component compared to diffuse component (K factor) More... | |
double | los_diffuse |
Diffuse component: sqrt(1 / (1 + los_power)) More... | |
double | los_direct |
Direct component: sqrt(los_power / (1 + los_power)) More... | |
Independent (random) fading generator class.
This class implements the intependent fading generator, which can be used on each tap of the TDL channel model. This generator produces a set of independent Rayleigh or Rice distributed channel coefficients.
|
inline |
|
inlinevirtual |
|
inlinevirtual |
Initialize the generator.
Implements itpp::Fading_Generator.
|
virtual |
Generate no_samples values from the fading process.
Implements itpp::Fading_Generator.
Definition at line 160 of file channel.cpp.
References itpp::Fading_Generator::los_diffuse, itpp::Fading_Generator::los_direct, itpp::Fading_Generator::los_power, and itpp::randn_c().
|
virtual |
Generate no_samples values from the fading process.
Implements itpp::Fading_Generator.
cvec itpp::Fading_Generator::generate | ( | int | no_samples | ) |
Generate no_samples values from the fading process.
Definition at line 279 of file channel.cpp.
References itpp::Fading_Generator::init_flag, itpp::Rice_Fading_Generator::init_MEDS(), it_error, and itpp::Rice_Fading_Generator::rice_method.
|
inherited |
Set relative LOS power.
Definition at line 57 of file channel.cpp.
References it_assert, itpp::Fading_Generator::los_diffuse, itpp::Fading_Generator::los_direct, itpp::Fading_Generator::los_power, and itpp::sqrt().
Referenced by itpp::Fading_Generator::Fading_Generator().
|
virtualinherited |
Set relative Doppler of the LOS component (for correlated fading generators)
Reimplemented in itpp::Correlated_Fading_Generator.
Definition at line 66 of file channel.cpp.
References it_warning.
|
virtualinherited |
Set time offset in samples (for correlated fading generators)
Reimplemented in itpp::Correlated_Fading_Generator.
Definition at line 71 of file channel.cpp.
References it_warning.
|
virtualinherited |
Set FIR filter length (for FIR fading generator)
Reimplemented in itpp::FIR_Fading_Generator.
Definition at line 81 of file channel.cpp.
References it_warning.
|
virtualinherited |
Set normalized Doppler (for correlated fading generators)
Reimplemented in itpp::Correlated_Fading_Generator.
Definition at line 76 of file channel.cpp.
References it_warning.
|
virtualinherited |
Set Doppler spectrum (for Rice fading generator)
Reimplemented in itpp::Rice_Fading_Generator.
Definition at line 86 of file channel.cpp.
References it_warning.
|
virtualinherited |
Set number of sine frequencies (for Rice fading generator)
Reimplemented in itpp::Rice_Fading_Generator.
Definition at line 91 of file channel.cpp.
References it_warning.
|
virtualinherited |
Set calculation method of Doppler frequencies and amplitudes (for Rice fading generator)
Reimplemented in itpp::Rice_Fading_Generator.
Definition at line 96 of file channel.cpp.
References it_warning.
|
inlineinherited |
|
virtualinherited |
Get relative Doppler of the LOS component (for correlated fading generators)
Reimplemented in itpp::Correlated_Fading_Generator.
Definition at line 101 of file channel.cpp.
References it_warning.
|
virtualinherited |
Get time offset in samples (for correlated fading generators)
Reimplemented in itpp::Correlated_Fading_Generator.
Definition at line 107 of file channel.cpp.
References it_warning.
|
virtualinherited |
Set FIR filter length (for FIR fading generator)
Reimplemented in itpp::FIR_Fading_Generator.
Definition at line 113 of file channel.cpp.
References it_warning.
|
virtualinherited |
Return normalized Doppler (for correlated fading generators)
Reimplemented in itpp::Correlated_Fading_Generator.
Definition at line 119 of file channel.cpp.
References it_warning.
|
virtualinherited |
Return Doppler spectrum (for Rice fading generator)
Reimplemented in itpp::Rice_Fading_Generator.
Definition at line 125 of file channel.cpp.
References it_warning.
|
virtualinherited |
Get number of sine frequencies (for Rice fading generator)
Reimplemented in itpp::Rice_Fading_Generator.
Definition at line 131 of file channel.cpp.
References it_warning.
|
virtualinherited |
Get calculation method of Doppler frequencies and amplitudes (for Rice fading generator)
Reimplemented in itpp::Rice_Fading_Generator.
Definition at line 137 of file channel.cpp.
References it_warning.
|
virtualinherited |
Shift generator time offset by a number of samples (for correlated fading generators)
Reimplemented in itpp::Correlated_Fading_Generator.
Definition at line 143 of file channel.cpp.
References it_warning.
|
protectedinherited |
signals if generator is initialized or not
Definition at line 282 of file channel.h.
Referenced by generate(), itpp::Static_Fading_Generator::generate(), itpp::Rice_Fading_Generator::generate(), itpp::FIR_Fading_Generator::generate(), itpp::IFFT_Fading_Generator::generate(), itpp::Static_Fading_Generator::init(), itpp::Rice_Fading_Generator::set_doppler_spectrum(), itpp::FIR_Fading_Generator::set_filter_length(), itpp::Rice_Fading_Generator::set_no_frequencies(), itpp::Correlated_Fading_Generator::set_norm_doppler(), and itpp::Rice_Fading_Generator::set_rice_method().
|
protectedinherited |
Relative power of LOS component compared to diffuse component (K factor)
Definition at line 283 of file channel.h.
Referenced by generate(), itpp::Rice_Fading_Generator::generate(), itpp::FIR_Fading_Generator::generate(), itpp::IFFT_Fading_Generator::generate(), itpp::Static_Fading_Generator::init(), and itpp::Fading_Generator::set_LOS_power().
|
protectedinherited |
Diffuse component: sqrt(1 / (1 + los_power))
Definition at line 284 of file channel.h.
Referenced by itpp::Correlated_Fading_Generator::add_LOS(), generate(), itpp::Static_Fading_Generator::init(), and itpp::Fading_Generator::set_LOS_power().
|
protectedinherited |
Direct component: sqrt(los_power / (1 + los_power))
Definition at line 285 of file channel.h.
Referenced by itpp::Correlated_Fading_Generator::add_LOS(), generate(), itpp::Static_Fading_Generator::init(), and itpp::Fading_Generator::set_LOS_power().
Generated on Sun Jun 5 2022 21:26:42 for IT++ by Doxygen 1.9.3