#include <maxentropychannel.h>
Inheritance diagram for mimo::MaxEntropyChannel:
Public Member Functions | |
MaxEntropyChannel (int deviceID, DeviceSystemIntf *system, const simth::PropertyList &pl) | |
~MaxEntropyChannel () | |
void | getTransfer (int relative_time, MatrixFreqSignal &transfer) const |
void | transmit (const VectorTimeSignal &insym, VectorTimeSignal &outsym) |
int | roundTimeToSamples (double value) const |
Converts the real value "Delay" into a number of steps on the time scale. | |
virtual void | refresh () |
Called to refresh the entries of the matrices. | |
void | set_normfactor () |
Sets the normfactor if power normalization is requested. | |
void | getImpulseResponse (int relative_time, MatrixTimeSignal &impulse) const |
writes the impuls response matrix at a certain time | |
double | get_angle () const |
double | get_delay () const |
double | get_gauss () const |
Returns a complex gaussian distributed variable. | |
virtual void | print (std::ostream &os) const |
Reimplementation of print. | |
Protected Member Functions | |
void | updateInputLengths () |
void | updateOutputLengths () |
Related Functions | |
(Note that these are not member functions.) | |
propertylist_MaxEntropyChannel (not_a_function) |
In the frequency domain the channel matrix of a MIMO System is given as:
Merouane Debbah assumes that the channel matrix is calculated as followed:
and contain the amplitudes of the different steering vectors of the propagation paths. In this simulation we assume them to be one. The matrix contains information about phase shifts which are a result of the different angles of departure from the transmitter. The matrix gives information about the paths that arrive at the receiver. Beside the phase shifts it also takes into account the doppler effect, because whe assume that the receiver is moving with a cvertain speed.
The is an i.i.d. Gaussian matrix linking the scattering environment at the transmitter side with the one at the receiver side. The matrix stores the delays for those links.
The and the matrix are multiplied element-wise ().
The whole matrix can be written as:
In the time domain the impulse response from a transmitting antenna to a receiving antenna is given by
After estimating each entry of the impulse response matrix the received signal will be calculated as followed:
|
Constructor
|
|
|
|
Determines channel transfer factors. An ideal estimation of the channel transfer function is performed. This means, the exact values are determined, where is and . (time = 0 indicates the transmission time of the sample transmitted at last over the channel; time = -numSamples indicates the transmission time of the first sample of the last transmitted sequence. Implements mimo::MIMOChannel. |
|
Transmits a symbol sequence over the channel. Implements mimo::MIMOChannel. |
|
Converts the real value "Delay" into a number of steps on the time scale.
|
|
Called to refresh the entries of the matrices.
Reimplemented from simth::Device. |
|
Sets the normfactor if power normalization is requested.
|
|
writes the impuls response matrix at a certain time
|
|
This function returns uniform distributed random angles by using an object of the class UniformRng. |
|
A function to get random delays, it uses an object of the class DelayProfile. The delays have a negative exponential or a uniform distribution, to be set in the .par file |
|
Returns a complex gaussian distributed variable.
|
|
Reimplementation of print.
Reimplemented from mimo::MIMOChannel. |
|
Reimplemented from mimo::MIMOChannel. |
|
Reimplemented from mimo::MIMOChannel. |
|
These are the properties of class MaxEntropyChannel . 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::MIMOChannel ; direct link to its propertylist should be propertylist_MIMOChannel(). 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.
|