#include <itpp/comm/channel.h>
Inheritance diagram for itpp::Rice_Fading_Generator:
Public Member Functions | |
Rice_Fading_Generator (const double norm_doppler=0.0, const DOPPLER_SPECTRUM spectrum=Jakes, const int no_freq=16, const RICE_METHOD method=MEDS) | |
Set normalized dopper, doppler spectrum, number of doppler frequencies and calculation method. | |
virtual | ~Rice_Fading_Generator () |
Destructor. | |
void | set_no_frequencies (const int no_freq) |
Set number of doppler frequencies. | |
void | set_method (const RICE_METHOD method) |
Set calculation method for calculation of doppler frequencies and amplitudes. | |
int | get_no_frequencies () |
Get number of doppler frequencies. | |
RICE_METHOD | get_method () |
Get calculation method for calculation of doppler frequencies and amplitudes. | |
virtual void | init () |
Initialize the generator (is not needed) and set time offset to 0. | |
void | set_time_offset (const int offset) |
set time offset in samples | |
double | get_time_offset () |
get time offset in samples | |
virtual void | generate (const int no_samples, cvec &output) |
Generate no_samples values from the fading process. | |
virtual void | generate (const int no_samples, const int upsampling_factor, cvec &output) |
Generate no_samples values from the fading process upsampled by upsampling_factor . | |
void | set_norm_doppler (const double norm_doppler) |
Set normalized doppler rate. | |
void | set_doppler_spectrum (const DOPPLER_SPECTRUM spectrum) |
Set doppler spectrum. | |
void | set_LOS (const double relative_power, const double relative_doppler) |
Set LOS component. Used e.g. for Rice doppler spectrum. Rice factor and relative doppler (related to maximum doppler). | |
double | get_norm_doppler () |
Return normalized doppler rate. | |
DOPPLER_SPECTRUM | get_doppler_spectrum () |
Return doppler spectrum. | |
double | get_LOS_power () |
Get relative power of LOS component (Rice factor). | |
double | get_LOS_doppler () |
Get relative doppler (compared to maximum doppler) for the LOS component. | |
cvec | generate (const int no_samples) |
Generate no_samples values from the fading process. | |
cvec | generate (const int no_samples, const int upsampling_factor) |
Generate no_samples values from the fading process upsampled by upsampling_factor . | |
void | shift_time_offset (const int no_samples) |
Shift generator time offset by a number of samples. | |
Protected Member Functions | |
void | init_MEDS () |
Init function for MEDS method. | |
void | generate_zero_doppler (const int no_samples, cvec &output) |
void | generate_zero_doppler (const int no_samples, const int upsampling_factor, cvec &output) |
Protected Attributes | |
int | Ni |
Generate no_samples values from the fading process. | |
RICE_METHOD | rice_method |
vec | f1 |
vec | f2 |
vec | c1 |
vec | c2 |
vec | th1 |
vec | th2 |
DOPPLER_SPECTRUM | dopp_spectrum |
double | n_dopp |
double | los_dopp |
double | los_power |
bool | init_flag |
double | time_offset |
Here ,
, and
are the doppler coefficients, discrete doppler frequencies, and doppler phases, respectively. Rice showed that a generator of this form can perfectly model a Gaussian process when
. When generating a fading pattern we need a complex-valued generator
Parameters that define the generator is the normalized doppler and the doppler spectrum. Possible values of doppler spectra are:
Furthermore also the number of doppler frequencies, and the method used to calculate the parameters
,
, and
are parameters. For now the only method defined for calculating the parameters is the Method of Exact Doppler Spread (MEDS). See [P"atzold] for more details.
References:
[P"atzold] Matthias P"atzold, Mobile fading channels, Wiley, 2002.
Definition at line 301 of file channel.h.
|
Set normalized dopper, doppler spectrum, number of doppler frequencies and calculation method.
Definition at line 144 of file channel.cpp. |
|
Destructor.
|
|
Set number of doppler frequencies.
Definition at line 151 of file channel.cpp. |
|
Set calculation method for calculation of doppler frequencies and amplitudes.
Definition at line 158 of file channel.cpp. |
|
Get number of doppler frequencies.
Definition at line 165 of file channel.cpp. |
|
Get calculation method for calculation of doppler frequencies and amplitudes.
Definition at line 170 of file channel.cpp. |
|
Initialize the generator (is not needed) and set time offset to 0.
Implements itpp::Fading_Generator. Definition at line 175 of file channel.cpp. |
|
set time offset in samples
Definition at line 190 of file channel.cpp. |
|
get time offset in samples
Definition at line 196 of file channel.cpp. |
|
Generate
Implements itpp::Fading_Generator. Definition at line 201 of file channel.cpp. |
|
Generate
Implements itpp::Fading_Generator. Definition at line 227 of file channel.cpp. |
|
Init function for MEDS method.
Definition at line 254 of file channel.cpp. |
|
Set normalized doppler rate.
Definition at line 72 of file channel.cpp. References it_assert. |
|
Set doppler spectrum.
Definition at line 79 of file channel.cpp. |
|
Set LOS component. Used e.g. for Rice doppler spectrum. Rice factor and relative doppler (related to maximum doppler).
Definition at line 89 of file channel.cpp. |
|
Return normalized doppler rate.
|
|
Return doppler spectrum.
Definition at line 236 of file channel.h. References itpp::DOPPLER_SPECTRUM. |
|
Get relative power of LOS component (Rice factor).
|
|
Get relative doppler (compared to maximum doppler) for the LOS component.
|
|
Generate
Definition at line 99 of file channel.cpp. |
|
Generate
Definition at line 106 of file channel.cpp. |
|
Shift generator time offset by a number of samples.
Definition at line 113 of file channel.cpp. |
|
Generate
|
Generated on Fri Jan 11 08:51:42 2008 for IT++ by Doxygen 1.3.9.1