This class provides a set of useful functions when working with spectrum model for NR.
More...
#include "nr-spectrum-value-helper.h"
|
enum | PowerAllocationType { UNIFORM_POWER_ALLOCATION_USED
, UNIFORM_POWER_ALLOCATION_BW
} |
|
|
static Ptr< SpectrumValue > | CreateNoisePowerSpectralDensity (double noiseFigure, const Ptr< const SpectrumModel > &spectrumModel) |
| Create a SpectrumValue that models the power spectral density of AWGN. More...
|
|
static Ptr< SpectrumValue > | CreateTxPowerSpectralDensity (double powerTx, const std::vector< int > &rbIndexVector, const Ptr< const SpectrumModel > &txSm, enum PowerAllocationType allocationType) |
| Create SpectrumValue that will represent transmit power spectral density, and assuming that all RBs are active. More...
|
|
static uint64_t | GetEffectiveBandwidth (double bandwidth, uint8_t numerology) |
| Returns the effective bandwidth for the total system bandwidth. More...
|
|
static Ptr< const SpectrumModel > | GetSpectrumModel (uint32_t numRbs, double centerFrequency, double subcarrierSpacing) |
| Creates or obtains from a global map a spectrum model with a given number of RBs, center frequency and subcarrier spacing. More...
|
|
|
static Ptr< SpectrumValue > | CreateTxPsdOverActiveRbs (double powerTx, const std::vector< int > &activeRbs, const Ptr< const SpectrumModel > &spectrumModel) |
| Create SpectrumValue that will represent transmit power spectral density, and the total transmit power will be uniformly distributed only over active RBs. More...
|
|
static Ptr< SpectrumValue > | CreateTxPsdOverAllRbs (double powerTx, const std::vector< int > &activeRbs, const Ptr< const SpectrumModel > &spectrumModel) |
| Create SpectrumValue that will represent transmit power spectral density, and the total transmit power will divided among all RBs, and then it will be assigned to active RBs. More...
|
|
This class provides a set of useful functions when working with spectrum model for NR.
Definition at line 22 of file nr-spectrum-value-helper.h.
◆ CreateNoisePowerSpectralDensity()
Ptr< SpectrumValue > ns3::NrSpectrumValueHelper::CreateNoisePowerSpectralDensity |
( |
double |
noiseFigure, |
|
|
const Ptr< const SpectrumModel > & |
spectrumModel |
|
) |
| |
|
static |
Create a SpectrumValue that models the power spectral density of AWGN.
- Parameters
-
noiseFigure | the noise figure in dB w.r.t. a reference temperature of 290K |
spectrumModel | the SpectrumModel instance to be used to create the output spectrum value |
- Returns
- a pointer to a newly allocated SpectrumValue representing the noise Power Spectral Density in W/Hz for each Resource Block
Definition at line 169 of file nr-spectrum-value-helper.cc.
Referenced by ns3::NrPhy::GetNoisePowerSpectralDensity().
◆ CreateTxPowerSpectralDensity()
Ptr< SpectrumValue > ns3::NrSpectrumValueHelper::CreateTxPowerSpectralDensity |
( |
double |
powerTx, |
|
|
const std::vector< int > & |
rbIndexVector, |
|
|
const Ptr< const SpectrumModel > & |
txSm, |
|
|
enum PowerAllocationType |
allocationType |
|
) |
| |
|
static |
◆ CreateTxPsdOverActiveRbs()
Ptr< SpectrumValue > ns3::NrSpectrumValueHelper::CreateTxPsdOverActiveRbs |
( |
double |
powerTx, |
|
|
const std::vector< int > & |
activeRbs, |
|
|
const Ptr< const SpectrumModel > & |
spectrumModel |
|
) |
| |
|
staticprotected |
Create SpectrumValue that will represent transmit power spectral density, and the total transmit power will be uniformly distributed only over active RBs.
- Parameters
-
powerTx | total power in dBm |
activeRbs | vector of RBs that are active for this transmission |
spectrumModel | spectrumModel to be used to create this SpectrumValue |
Definition at line 107 of file nr-spectrum-value-helper.cc.
◆ CreateTxPsdOverAllRbs()
Ptr< SpectrumValue > ns3::NrSpectrumValueHelper::CreateTxPsdOverAllRbs |
( |
double |
powerTx, |
|
|
const std::vector< int > & |
activeRbs, |
|
|
const Ptr< const SpectrumModel > & |
spectrumModel |
|
) |
| |
|
staticprotected |
Create SpectrumValue that will represent transmit power spectral density, and the total transmit power will divided among all RBs, and then it will be assigned to active RBs.
- Parameters
-
powerTx | total power in dBm |
activeRbs | vector of RBs that are active for this transmission |
spectrumModel | spectrumModel to be used to create this SpectrumValue |
Definition at line 128 of file nr-spectrum-value-helper.cc.
◆ GetEffectiveBandwidth()
uint64_t ns3::NrSpectrumValueHelper::GetEffectiveBandwidth |
( |
double |
bandwidth, |
|
|
uint8_t |
numerology |
|
) |
| |
|
static |
◆ GetSpectrumModel()
Ptr< const SpectrumModel > ns3::NrSpectrumValueHelper::GetSpectrumModel |
( |
uint32_t |
numRbs, |
|
|
double |
centerFrequency, |
|
|
double |
subcarrierSpacing |
|
) |
| |
|
static |
Creates or obtains from a global map a spectrum model with a given number of RBs, center frequency and subcarrier spacing.
- Parameters
-
numRbs | bandwidth in number of RBs |
centerFrequency | the center frequency of this band |
- Returns
- pointer to a spectrum model with defined characteristics
Definition at line 63 of file nr-spectrum-value-helper.cc.
Referenced by ns3::NrPhy::GetSpectrumModel().
The documentation for this class was generated from the following files: