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

This class defines all functions to create spectrum model for lte. More...

#include <lte-spectrum-value-helper.h>

Static Public Member Functions

static Ptr< SpectrumValueCreateNoisePowerSpectralDensity (uint16_t earfcn, uint8_t bandwidth, double noiseFigure)
 create a SpectrumValue that models the power spectral density of AWGN More...
 
static Ptr< SpectrumValueCreateNoisePowerSpectralDensity (double noiseFigure, Ptr< SpectrumModel > spectrumModel)
 create a SpectrumValue that models the power spectral density of AWGN More...
 
static Ptr< SpectrumValueCreateTxPowerSpectralDensity (uint16_t earfcn, uint8_t bandwidth, double powerTx, std::vector< int > activeRbs)
 create a spectrum value representing the power spectral density of a signal to be transmitted. More...
 
static double GetCarrierFrequency (uint16_t earfcn)
 Calculates the carrier frequency from the E-UTRA Absolute Radio Frequency Channel Number (EARFCN) according to 3GPP TS 36.101 section 5.7.3 "Carrier frequency and EARFCN". More...
 
static double GetChannelBandwidth (uint8_t txBandwidthConf)
 
static double GetDownlinkCarrierFrequency (uint16_t earfcn)
 Calculates the dowlink carrier frequency from the E-UTRA Absolute Radio Frequency Channel Number (EARFCN) using the formula in 3GPP TS 36.101 section 5.7.3 "Carrier frequency and EARFCN". More...
 
static Ptr< SpectrumModelGetSpectrumModel (uint16_t earfcn, uint8_t bandwidth)
 
static double GetUplinkCarrierFrequency (uint16_t earfcn)
 Calculates the uplink carrier frequency from the E-UTRA Absolute Radio Frequency Channel Number (EARFCN) using the formula in 3GPP TS 36.101 section 5.7.3 "Carrier frequency and EARFCN". More...
 

Detailed Description

This class defines all functions to create spectrum model for lte.

Definition at line 36 of file lte-spectrum-value-helper.h.

Member Function Documentation

Ptr< SpectrumValue > ns3::LteSpectrumValueHelper::CreateNoisePowerSpectralDensity ( uint16_t  earfcn,
uint8_t  bandwidth,
double  noiseFigure 
)
static

create a SpectrumValue that models the power spectral density of AWGN

Parameters
earfcnthe carrier frequency (EARFCN) at which reception is made
bandwidththe Transmission Bandwidth Configuration in number of resource blocks
noiseFigurethe noise figure in dB w.r.t. a reference temperature of 290K
Returns
a pointer to a newly allocated SpectrumValue representing the noise Power Spectral Density in W/Hz for each Resource Block

Definition at line 260 of file lte-spectrum-value-helper.cc.

References GetSpectrumModel(), and NS_LOG_FUNCTION.

Referenced by ns3::LteEnbPhy::DoInitialize(), and ns3::LteUePhy::DoSetDlBandwidth().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Ptr< SpectrumValue > ns3::LteSpectrumValueHelper::CreateNoisePowerSpectralDensity ( double  noiseFigure,
Ptr< SpectrumModel spectrumModel 
)
static

create a SpectrumValue that models the power spectral density of AWGN

Parameters
noiseFigurethe noise figure in dB w.r.t. a reference temperature of 290K
spectrumModelthe SpectrumModel instance to be used
Returns
a pointer to a newly allocated SpectrumValue representing the noise Power Spectral Density in W/Hz for each Resource Block

Definition at line 268 of file lte-spectrum-value-helper.cc.

References NS_LOG_FUNCTION.

Ptr< SpectrumValue > ns3::LteSpectrumValueHelper::CreateTxPowerSpectralDensity ( uint16_t  earfcn,
uint8_t  bandwidth,
double  powerTx,
std::vector< int >  activeRbs 
)
static

create a spectrum value representing the power spectral density of a signal to be transmitted.

See 3GPP TS 36.101 for a definition of most of the parameters described here.

Parameters
earfcnthe carrier frequency (EARFCN) of the transmission
bandwidththe Transmission Bandwidth Configuration in number of resource blocks
powerTxthe total power in dBm over the whole bandwidth
activeRbsthe list of Active Resource Blocks (PRBs)
Returns
a pointer to a newly allocated SpectrumValue representing the TX Power Spectral Density in W/Hz for each Resource Block

Definition at line 235 of file lte-spectrum-value-helper.cc.

References GetSpectrumModel(), NS_LOG_FUNCTION, and NS_LOG_LOGIC.

Referenced by ns3::LteUePhy::CreateTxPowerSpectralDensity(), and ns3::LteEnbPhy::CreateTxPowerSpectralDensity().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double ns3::LteSpectrumValueHelper::GetCarrierFrequency ( uint16_t  earfcn)
static

Calculates the carrier frequency from the E-UTRA Absolute Radio Frequency Channel Number (EARFCN) according to 3GPP TS 36.101 section 5.7.3 "Carrier frequency and EARFCN".

Parameters
earfcnthe EARFCN
Returns
the carrier frequency in Hz

Definition at line 101 of file lte-spectrum-value-helper.cc.

References GetDownlinkCarrierFrequency(), GetUplinkCarrierFrequency(), and NS_LOG_FUNCTION.

Referenced by ns3::LteEarfcnTestCase::DoRun(), GetSpectrumModel(), and ns3::LteHelper::InstallSingleEnbDevice().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double ns3::LteSpectrumValueHelper::GetChannelBandwidth ( uint8_t  txBandwidthConf)
static
Parameters
txBandwidthConfthe tranmission bandwidth configuration in number of resource blocks
Returns
the nominal channel bandwidth in Hz as per 3GPP TS 36.101

Definition at line 151 of file lte-spectrum-value-helper.cc.

References NS_FATAL_ERROR, and NS_LOG_FUNCTION.

double ns3::LteSpectrumValueHelper::GetDownlinkCarrierFrequency ( uint16_t  earfcn)
static

Calculates the dowlink carrier frequency from the E-UTRA Absolute Radio Frequency Channel Number (EARFCN) using the formula in 3GPP TS 36.101 section 5.7.3 "Carrier frequency and EARFCN".

Parameters
earfcnthe EARFCN
Returns
the dowlink carrier frequency in Hz

Definition at line 117 of file lte-spectrum-value-helper.cc.

References ns3::EutraChannelNumbers::fDlLow, ns3::g_eutraChannelNumbers, ns3::EutraChannelNumbers::nOffsDl, NS_LOG_ERROR, NS_LOG_FUNCTION, NS_LOG_LOGIC, and NUM_EUTRA_BANDS.

Referenced by ns3::LteEarfcnDlTestCase::DoRun(), and GetCarrierFrequency().

+ Here is the caller graph for this function:

Ptr< SpectrumModel > ns3::LteSpectrumValueHelper::GetSpectrumModel ( uint16_t  earfcn,
uint8_t  bandwidth 
)
static
Parameters
earfcnthe carrier frequency (EARFCN) at which reception is made
bandwidththe Transmission Bandwidth Configuration in number of resource blocks
Returns
the static SpectrumModel instance corresponding to the given carrier frequency and transmission bandwidth configuration. If such SpectrumModel does not exist, it is created.

Definition at line 200 of file lte-spectrum-value-helper.cc.

References ns3::BandInfo::fc, ns3::BandInfo::fh, ns3::BandInfo::fl, ns3::g_lteSpectrumModelMap, GetCarrierFrequency(), NS_ASSERT_MSG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.

Referenced by CreateNoisePowerSpectralDensity(), CreateTxPowerSpectralDensity(), ns3::RadioEnvironmentMapHelper::DelayedInstall(), ns3::LteSpectrumModelTestCase::LteSpectrumModelTestCase(), and ns3::LteSpectrumValueHelperTestSuite::LteSpectrumValueHelperTestSuite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double ns3::LteSpectrumValueHelper::GetUplinkCarrierFrequency ( uint16_t  earfcn)
static

Calculates the uplink carrier frequency from the E-UTRA Absolute Radio Frequency Channel Number (EARFCN) using the formula in 3GPP TS 36.101 section 5.7.3 "Carrier frequency and EARFCN".

Parameters
earfcnthe EARFCN
Returns
the uplink carrier frequency in Hz

Definition at line 134 of file lte-spectrum-value-helper.cc.

References ns3::EutraChannelNumbers::fUlLow, ns3::g_eutraChannelNumbers, ns3::EutraChannelNumbers::nOffsUl, NS_LOG_ERROR, NS_LOG_FUNCTION, NS_LOG_LOGIC, and NUM_EUTRA_BANDS.

Referenced by ns3::LteEarfcnUlTestCase::DoRun(), and GetCarrierFrequency().

+ Here is the caller graph for this function:


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