A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ns3::LteMiErrorModel Class Reference

#include <lte-mi-error-model.h>

Static Public Member Functions

static double GetPcfichPdcchError (const SpectrumValue &sinr)
 run the error-model algorithm for the specified PCFICH+PDCCH channels More...
 
static TbStats_t GetTbDecodificationStats (const SpectrumValue &sinr, const std::vector< int > &map, uint16_t size, uint8_t mcs, HarqProcessInfoList_t miHistory)
 run the error-model algorithm for the specified TB More...
 
static double MappingMiBler (double mib, uint8_t ecrId, uint16_t cbSize)
 map the mmib (mean mutual information per bit) for different MCS More...
 
static double Mib (const SpectrumValue &sinr, const std::vector< int > &map, uint8_t mcs)
 find the mmib (mean mutual information per bit) for different modulations of the specified TB More...
 

Detailed Description

This class provides the BLER estimation based on mutual information metrics

Definition at line 70 of file lte-mi-error-model.h.

Member Function Documentation

double ns3::LteMiErrorModel::GetPcfichPdcchError ( const SpectrumValue sinr)
static

run the error-model algorithm for the specified PCFICH+PDCCH channels

Parameters
sinrthe perceived sinrs in the whole bandwidth
Returns
the decodification error of the PCFICH+PDCCH channels

Definition at line 451 of file lte-mi-error-model.cc.

References NS_ASSERT, NS_ASSERT_MSG, NS_LOG_FUNCTION, ns3::SpectrumValue::ValuesBegin(), and ns3::SpectrumValue::ValuesEnd().

TbStats_t ns3::LteMiErrorModel::GetTbDecodificationStats ( const SpectrumValue sinr,
const std::vector< int > &  map,
uint16_t  size,
uint8_t  mcs,
HarqProcessInfoList_t  miHistory 
)
static

run the error-model algorithm for the specified TB

Parameters
sinrthe perceived sinrs in the whole bandwidth
mapthe actives RBs for the TB
sizethe size in bytes of the TB
mcsthe MCS of the TB
miHistoryMI of past transmissions (in case of retx)
Returns
the TB error rate and MI

Definition at line 540 of file lte-mi-error-model.cc.

References MappingMiBler(), Mib(), NS_ASSERT, NS_LOG_DEBUG, NS_LOG_FUNCTION, NS_LOG_INFO, and NS_LOG_LOGIC.

Referenced by ns3::LteAmc::CreateCqiFeedbacks().

double ns3::LteMiErrorModel::MappingMiBler ( double  mib,
uint8_t  ecrId,
uint16_t  cbSize 
)
static

map the mmib (mean mutual information per bit) for different MCS

Parameters
mmibmean mutual information per bit of a code-block
mcsthe MCS
cbSizethe size of the CB
Returns
the code block error rate

Definition at line 401 of file lte-mi-error-model.cc.

References NS_ASSERT_MSG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

Referenced by GetTbDecodificationStats().

double ns3::LteMiErrorModel::Mib ( const SpectrumValue sinr,
const std::vector< int > &  map,
uint8_t  mcs 
)
static

find the mmib (mean mutual information per bit) for different modulations of the specified TB

Parameters
sinrthe perceived sinrs in the whole bandwidth
mapthe actives RBs for the TB
mcsthe MCS of the TB
Returns
the mmib

Definition at line 326 of file lte-mi-error-model.cc.

References NS_ASSERT_MSG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

Referenced by GetTbDecodificationStats().


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