IT++ Logo Newcom Logo

itpp::Fading_Generator Class Reference
[Communication Channel Models]

Fading generator class. More...

#include <itpp/comm/channel.h>

Inheritance diagram for itpp::Fading_Generator:

itpp::FIR_Fading_Generator itpp::IFFT_Fading_Generator itpp::Rice_Fading_Generator List of all members.

Public Member Functions

 Fading_Generator (const double norm_doppler=0.0, const DOPPLER_SPECTRUM spectrum=Jakes)
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.
virtual void init ()=0
 Initialize the generator (has to be done before calling generate()).
virtual void generate (const int no_samples, cvec &output)=0
 Generate no_samples values from the fading process.
cvec generate (const int no_samples)
 Generate no_samples values from the fading process.
virtual void generate (const int no_samples, const int upsampling_factor, cvec &output)=0
 Generate no_samples values from the fading process upsampled by upsampling_factor.
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 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

DOPPLER_SPECTRUM dopp_spectrum
double n_dopp
double los_dopp
double los_power
bool init_flag
double time_offset

Detailed Description

Fading generator class.

Author:
Tony Ottosson
Abstract class defining the interface of a single tap fading generator. Parameters that define the generator is the normalized doppler and the doppler spectrum. Possible values of doppler spectra are:

Two types of genators exist in the litterature: the filter method and the Rice method. The filter method filter a complex Gaussian process to achieve a given doppler spectrum while the Rice method approximate the process as a sum of sinusoids.

References:

[P"atzold] Matthias P"atzold, Mobile fading channels, Wiley, 2002.

Definition at line 221 of file channel.h.


Member Function Documentation

void itpp::Fading_Generator::set_norm_doppler const double  norm_doppler  ) 
 

Set normalized doppler rate.

Definition at line 72 of file channel.cpp.

References it_assert.

void itpp::Fading_Generator::set_doppler_spectrum const DOPPLER_SPECTRUM  spectrum  ) 
 

Set doppler spectrum.

Definition at line 79 of file channel.cpp.

void itpp::Fading_Generator::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).

Definition at line 89 of file channel.cpp.

double itpp::Fading_Generator::get_norm_doppler  )  [inline]
 

Return normalized doppler rate.

Definition at line 234 of file channel.h.

DOPPLER_SPECTRUM itpp::Fading_Generator::get_doppler_spectrum  )  [inline]
 

Return doppler spectrum.

Definition at line 236 of file channel.h.

References itpp::DOPPLER_SPECTRUM.

double itpp::Fading_Generator::get_LOS_power  )  [inline]
 

Get relative power of LOS component (Rice factor).

Definition at line 238 of file channel.h.

double itpp::Fading_Generator::get_LOS_doppler  )  [inline]
 

Get relative doppler (compared to maximum doppler) for the LOS component.

Definition at line 240 of file channel.h.

virtual void itpp::Fading_Generator::init  )  [pure virtual]
 

Initialize the generator (has to be done before calling generate()).

Implemented in itpp::Rice_Fading_Generator, itpp::FIR_Fading_Generator, and itpp::IFFT_Fading_Generator.

virtual void itpp::Fading_Generator::generate const int  no_samples,
cvec output
[pure virtual]
 

Generate no_samples values from the fading process.

Implemented in itpp::Rice_Fading_Generator, itpp::FIR_Fading_Generator, and itpp::IFFT_Fading_Generator.

cvec itpp::Fading_Generator::generate const int  no_samples  ) 
 

Generate no_samples values from the fading process.

Definition at line 99 of file channel.cpp.

virtual void itpp::Fading_Generator::generate const int  no_samples,
const int  upsampling_factor,
cvec output
[pure virtual]
 

Generate no_samples values from the fading process upsampled by upsampling_factor.

Implemented in itpp::Rice_Fading_Generator, itpp::FIR_Fading_Generator, and itpp::IFFT_Fading_Generator.

cvec itpp::Fading_Generator::generate const int  no_samples,
const int  upsampling_factor
 

Generate no_samples values from the fading process upsampled by upsampling_factor.

Definition at line 106 of file channel.cpp.

void itpp::Fading_Generator::shift_time_offset const int  no_samples  ) 
 

Shift generator time offset by a number of samples.

Definition at line 113 of file channel.cpp.


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

Generated on Fri Jan 11 08:51:42 2008 for IT++ by Doxygen 1.3.9.1