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)
virtual ~Fading_Generator ()
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 init_flag, it_assert, and n_dopp.

Referenced by Fading_Generator().

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

Set doppler spectrum.

Definition at line 79 of file channel.cpp.

References dopp_spectrum, init_flag, los_dopp, los_power, and itpp::Rice.

Referenced by Fading_Generator().

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.

References dopp_spectrum, init_flag, it_assert, los_dopp, los_power, and itpp::Rice.

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

Return normalized doppler rate.

Definition at line 234 of file channel.h.

References n_dopp.

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

Return doppler spectrum.

Definition at line 236 of file channel.h.

References dopp_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.

References los_power.

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.

References los_dopp.

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.

Referenced by generate().

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.

References generate().

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.

References generate().

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.

References time_offset.


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

Generated on Fri Jun 8 00:27:26 2007 for IT++ by Doxygen 1.5.2