itpp::Independent_Fading_Generator Class Reference

Independent (random) fading generator class. More...

`#include <itpp/comm/channel.h>`

Inheritance diagram for itpp::Independent_Fading_Generator:

## Public Member Functions

| Independent_Fading_Generator ()
| Default constructor.
virtual | ~Independent_Fading_Generator ()
| Destructor.
virtual void | init ()
| Initialize the generator.
virtual void | generate (int no_samples, cvec &output)
| Generate no_samples values from the fading process.
cvec | generate (int no_samples)
| Generate no_samples values from the fading process.
void | set_LOS_power (double relative_power)
| Set relative LOS power.
virtual void | set_LOS_doppler (double relative_doppler)
| Set relative Doppler of the LOS component (for correlated fading generators).
virtual void | set_time_offset (int offset)
| Set time offset in samples (for correlated fading generators).
virtual void | set_filter_length (int filter_length)
| Set FIR filter length (for FIR fading generator).
virtual void | set_norm_doppler (double norm_doppler)
| Set normalized Doppler (for correlated fading generators).
virtual void | set_doppler_spectrum (DOPPLER_SPECTRUM spectrum)
| Set Doppler spectrum (for Rice fading generator).
virtual void | set_no_frequencies (int no_freq)
| Set number of sine frequencies (for Rice fading generator).
virtual void | set_rice_method (RICE_METHOD method)
| Set calculation method of Doppler frequencies and amplitudes (for Rice fading generator).
double | get_LOS_power () const
| Get relative power of LOS component (Rice factor).
virtual double | get_LOS_doppler () const
| Get relative Doppler of the LOS component (for correlated fading generators).
virtual double | get_time_offset () const
| Get time offset in samples (for correlated fading generators).
virtual int | get_filter_length () const
| Set FIR filter length (for FIR fading generator).
virtual double | get_norm_doppler () const
| Return normalized Doppler (for correlated fading generators).
virtual DOPPLER_SPECTRUM | get_doppler_spectrum () const
| Return Doppler spectrum (for Rice fading generator).
virtual int | get_no_frequencies () const
| Get number of sine frequencies (for Rice fading generator).
virtual RICE_METHOD | get_rice_method () const
| Get calculation method of Doppler frequencies and amplitudes (for Rice fading generator).
virtual void | shift_time_offset (int no_samples)
| Shift generator time offset by a number of samples (for correlated fading generators).

## Protected Attributes

bool | init_flag
| signals if generator is initialized or not
double | los_power
| Relative power of LOS component compared to diffuse component (K factor).
double | los_diffuse
| Diffuse component: sqrt(1 / (1 + los_power)).
double | los_direct
| Direct component: sqrt(los_power / (1 + los_power)).

## Detailed Description

Independent (random) fading generator class.

Author
  Adam Piatyszek

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.

Definition at line 328 of file channel.h.

## Constructor & Destructor Documentation

## Independent_Fading_Generator()

itpp::Independent_Fading_Generator::Independent_Fading_Generator | ( |  | ) |

inline

Default constructor.

Definition at line 332 of file channel.h.

References itpp::Fading_Generator::Fading_Generator().

## ~Independent_Fading_Generator()

virtual itpp::Independent_Fading_Generator::~Independent_Fading_Generator | ( |  | ) |

inline virtual

Destructor.

Definition at line 334 of file channel.h.

## Member Function Documentation

## init()

virtual void itpp::Independent_Fading_Generator::init | ( |  | ) |

inline virtual

Initialize the generator.

Implements itpp::Fading_Generator.

Definition at line 337 of file channel.h.

References itpp::Fading_Generator::init_flag.

## generate() [1/2]

void itpp::Independent_Fading_Generator::generate | ( | int | no_samples,
|  | cvec & | output )

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().

## generate() [2/2]

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.

## set_LOS_power()

void itpp::Fading_Generator::set_LOS_power | ( | double | relative_power | ) |

inherited

Set relative LOS power.

Definition at line 57 of file channel.cpp.

References it_assert, los_diffuse, los_direct, and los_power.

Referenced by Fading_Generator().

## set_LOS_doppler()

void itpp::Fading_Generator::set_LOS_doppler | ( | double | relative_doppler | ) |

virtual inherited

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.

## set_time_offset()

void itpp::Fading_Generator::set_time_offset | ( | int | offset | ) |

virtual inherited

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.

## set_filter_length()

void itpp::Fading_Generator::set_filter_length | ( | int | filter_length | ) |

virtual inherited

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.

## set_norm_doppler()

void itpp::Fading_Generator::set_norm_doppler | ( | double | norm_doppler | ) |

virtual inherited

Set normalized Doppler (for correlated fading generators).

Reimplemented in itpp::Correlated_Fading_Generator.

Definition at line 76 of file channel.cpp.

References it_warning.

## set_doppler_spectrum()

void itpp::Fading_Generator::set_doppler_spectrum | ( | DOPPLER_SPECTRUM | spectrum | ) |

virtual inherited

Set Doppler spectrum (for Rice fading generator).

Reimplemented in itpp::Rice_Fading_Generator.

Definition at line 86 of file channel.cpp.

References it_warning.

## set_no_frequencies()

void itpp::Fading_Generator::set_no_frequencies | ( | int | no_freq | ) |

virtual inherited

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.

## set_rice_method()

void itpp::Fading_Generator::set_rice_method | ( | RICE_METHOD | method | ) |

virtual inherited

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.

## get_LOS_power()

double itpp::Fading_Generator::get_LOS_power | ( |  | ) | const

inline inherited

Get relative power of LOS component (Rice factor).

Definition at line 254 of file channel.h.

References los_power.

## get_LOS_doppler()

double itpp::Fading_Generator::get_LOS_doppler | ( |  | ) | const

virtual inherited

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.

## get_time_offset()

double itpp::Fading_Generator::get_time_offset | ( |  | ) | const

virtual inherited

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.

## get_filter_length()

int itpp::Fading_Generator::get_filter_length | ( |  | ) | const

virtual inherited

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.

## get_norm_doppler()

double itpp::Fading_Generator::get_norm_doppler | ( |  | ) | const

virtual inherited

Return normalized Doppler (for correlated fading generators).

Reimplemented in itpp::Correlated_Fading_Generator.

Definition at line 119 of file channel.cpp.

References it_warning.

## get_doppler_spectrum()

DOPPLER_SPECTRUM itpp::Fading_Generator::get_doppler_spectrum | ( |  | ) | const

virtual inherited

Return Doppler spectrum (for Rice fading generator).

Reimplemented in itpp::Rice_Fading_Generator.

Definition at line 125 of file channel.cpp.

References it_warning.

## get_no_frequencies()

int itpp::Fading_Generator::get_no_frequencies | ( |  | ) | const

virtual inherited

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.

## get_rice_method()

RICE_METHOD itpp::Fading_Generator::get_rice_method | ( |  | ) | const

virtual inherited

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.

## shift_time_offset()

void itpp::Fading_Generator::shift_time_offset | ( | int | no_samples | ) |

virtual inherited

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.

## Member Data Documentation

## init_flag

bool itpp::Fading_Generator::init_flag

protected inherited

signals if generator is initialized or not

Definition at line 282 of file channel.h.

Referenced by Fading_Generator(), itpp::FIR_Fading_Generator::generate(), itpp::IFFT_Fading_Generator::generate(), itpp::Independent_Fading_Generator::generate(), itpp::Rice_Fading_Generator::generate(), itpp::Rice_Fading_Generator::generate(), itpp::Static_Fading_Generator::generate(), itpp::IFFT_Fading_Generator::init(), itpp::Independent_Fading_Generator::init(), 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().

## los_power

double itpp::Fading_Generator::los_power

protected inherited

Relative power of LOS component compared to diffuse component (K factor).

Definition at line 283 of file channel.h.

Referenced by itpp::FIR_Fading_Generator::generate(), itpp::IFFT_Fading_Generator::generate(), itpp::Independent_Fading_Generator::generate(), itpp::Rice_Fading_Generator::generate(), get_LOS_power(), itpp::Static_Fading_Generator::init(), and set_LOS_power().

## los_diffuse

double itpp::Fading_Generator::los_diffuse

protected inherited

Diffuse component: sqrt(1 / (1 + los_power)).

Definition at line 284 of file channel.h.

Referenced by itpp::Correlated_Fading_Generator::add_LOS(), itpp::Independent_Fading_Generator::generate(), itpp::Static_Fading_Generator::init(), and set_LOS_power().

## los_direct

double itpp::Fading_Generator::los_direct

protected inherited

Direct component: sqrt(los_power / (1 + los_power)).

Definition at line 285 of file channel.h.

Referenced by itpp::Correlated_Fading_Generator::add_LOS(), itpp::Independent_Fading_Generator::generate(), itpp::Static_Fading_Generator::init(), and set_LOS_power().

The documentation for this class was generated from the following files:

- itpp/comm/channel.h
- itpp/comm/channel.cpp

Generated on for IT++ by Doxygen 1.15.0