Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

mimo::FileWssusChannel Class Reference

#include <wssuschannel.h>

Inheritance diagram for mimo::FileWssusChannel:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 FileWssusChannel (int deviceID, DeviceSystemIntf *system, const simth::PropertyList &pl)
 ~FileWssusChannel ()
void refresh ()
double diceNewDelay () const
double diceNewPhase () const
double diceNewDopplerFreq () const
void setSNR (double snr)
void startOfSimulation ()

Related Functions

(Note that these are not member functions.)

 propertylist_FileWssusChannel (not_a_function)

Detailed Description

Mimo channel that consists of many paths (WSSUS). The parameters of each path are read from a file. Each realization reads a new file.

This class has been developed in the FLOWS project in order to read the output files from the IST-TUL channel simulator. In order to use that, you need to generate enough channel realizations up front by the IST-TUL simulator.


Constructor & Destructor Documentation

mimo::FileWssusChannel::FileWssusChannel int  deviceID,
DeviceSystemIntf system,
const simth::PropertyList pl
 

Constructor

mimo::FileWssusChannel::~FileWssusChannel  ) 
 

Default destructor


Member Function Documentation

void mimo::FileWssusChannel::refresh  )  [virtual]
 

This method overrides the actual WSSUS parametrization in that it reads the channel parameters from the specified disk file.

Reimplemented from mimo::WSSUSChannel.

double mimo::FileWssusChannel::diceNewDelay  )  const [inline, virtual]
 

Required implementation, but this method remains unused anyway.

Implements mimo::WSSUSChannel.

double mimo::FileWssusChannel::diceNewPhase  )  const [inline, virtual]
 

Required implementation, but this method remains unused anyway.

Implements mimo::WSSUSChannel.

double mimo::FileWssusChannel::diceNewDopplerFreq  )  const [inline, virtual]
 

Required implementation, but this method remains unused anyway.

Implements mimo::WSSUSChannel.

void mimo::FileWssusChannel::setSNR double  snr  ) 
 

Sets the signal-to-noise ratio to 'snr', while the signal power is kept constant.

Reimplemented from mimo::MIMOChannel.

void mimo::FileWssusChannel::startOfSimulation  )  [virtual]
 

Called by the simulation system in the beginning of each simulation run.

Reimplemented from mimo::WSSUSChannel.


Friends And Related Function Documentation

propertylist_FileWssusChannel not_a_function   )  [related]
 

These are the properties of class FileWssusChannel . This list is auto-generated from the XML-Devicelist of this device by means of an XSLT transformation script.

Description of this device in the XML file:

Note that this class also has the Properties of its base classes. The direct base class is mimo::WSSUSChannel ; direct link to its propertylist should be propertylist_WSSUSChannel(). The list below usually includes the properties that have been inherited from the base classes; the properties which belong only to this class can be found at the end of this list.

snr
<string>, default "" -- The name of the snr loop variable in this simulation.

channel_refresh
<string>, default "" -- The name of the refresh loop variable in this simulation.

nr_tx
<unsigned>, default "" -- The number of transmit antennas

nr_rx
<unsigned>, default "" -- The number of receive antennas

diagonal
<bool>, default "false" -- If true, then this channel has a diagonal channel matrix i.e. it is not a MIMO channel. However, it is unclear whether the SNR is correct or whether the SNR might be offset by the matrix size. This property is probably only useful for initial testing of mimo algorithms.

5 properties in this class. The above properties have been inherited from the base class mimo::MIMOChannel .

num_path
<unsigned>, default "30" -- Important WSSUS parameter: The number of scattering paths in the WSSUS channel model. This number should be at least 30 or larger. If you choose this number smaller, you should consider setting the property path_ampl_random to true.

num_angles
<unsigned>, default "" -- Important MIMO parameter in WSSUS model: Number of distinct transmission and receive angles. These are drawn from a set of this specified size instead of taking it from a continuous random variable since it is commonly agreed that a continuous random variable would give a too optimistic result.

array_geometry
<enum>, default "linear" -- Geometry of the antenna array

path_ampl_random
<bool>, default "false" -- If true, then the amplitudes of the paths are random according to a Rayleigh distribution. Otherwise they are fixed (unity).

rice_factor_db
<double>, default "-1e6" -- The rice factor of this channel in dB. If unset (minus infinity), then there is no line of sight. The dB property overrides the scalar one.

rice_factor
<double>, default "0.0" -- The rice factor of this channel as a scalar. If unset (zero), then there is no line of sight.

normalization_mode
<enum>, default "standard" -- The normalization mode in this channel: standard, time, or freq. Additionally the channel will be normalized by the number of transmit antennas.

normalization_duration
<unsigned>, default "0" -- Only for normalization mode 'time' or 'frequency': If this is greater than one, then for normalization calculate the norm over several timesteps (= OFDM symbols) instead of the whole duration of the simulation. For a time-variant channel, this will result in some kind of time-variant normalization. Usually this is unused (and for time-invariant channels it doesnt make a difference anyway), but in highly time-variant channels you have to think about your normalization much more carefully.

freq_dist
<double>, default "312500" -- Only for normalization mode 'frequency': Distance of frequence samples when calculating the normalization factor in frequency normalization mode

num_freqs
<unsigned>, default "64" -- Only for normalization mode 'frequency': Number of frequency points/samples when calculating the normalization factor in frequency normalization mode

oversampling
<unsigned>, default "1" -- Only for frequency-domain transmission mode, or for calculating the correct delta_t: The oversampling rate used by the IDFT (IFFT)

num_carrier
<unsigned>, default "1" -- Only for frequency-domain transmission mode, or for calculating the correct delta_t: The number of subcarriers where the transfer function is calculated. If this is zero or one, the time-domain transmission will be used instead.

carrier_dist
<double>, default "0.0" -- Only for frequency-domain transmission mode, or for calculating the correct delta_t: The subcarrier distance on which the transfer function is calculated.

guard_time
<double>, default "0.0" -- Only for frequency-domain transmission mode, or for calculating the correct delta_t: The time duration of your guard interval in seconds.

antenna_coupling_ampl
<double>, default "0.0" -- For MIMO antenna coupling: The amplitude of antenna coupling as a scalar (not in dB). If zero, then this is unused.

coupling_phase_random
<bool>, default "false" -- For MIMO antenna coupling: If the antenna_coupling_ampl is greater than zero, then this property determines whether the phases of the coupling coefficients are zero or are random.

16 properties in this class. The above properties have been inherited from the base class mimo::WSSUSChannel .

filename
<string>, default "" -- The filename of where to read the channel data from.

max_doppler
<double>, default "0" -- Maximum doppler frequency in Hz. This is f_0*v/c_0, i.e. for IEEE802.11a or Hiperlan/2 this means: 1 km/h = 5 Hz

2 properties in this class.


Generated on Tue Aug 9 14:44:35 2005 for mimolib by  doxygen 1.4.1