Helpers module

Helper code to setup and configure the NR module.

Classes

struct ns3::BandwidthPartInfo
Spectrum part.
class ns3::BeamformingHelperBase
The BeamformingHelperBase class that is being used as the general interface for beamforming helper classes. Currently, there are two beamforming helper classes: IdealBeamformingHelper and RealisticBeamformingHelper that inherit this base beamforming helper class.
class ns3::CcBwpCreator
Manages the correct creation of operation bands, component carriers and bandwidth parts.
struct ns3::ComponentCarrierInfo
Component carrier configuration element.
class ns3::IdealBeamformingHelper
The IdealBeamformingHelper class.
class ns3::NrHelper
Helper for a correct setup of every NR simulation.
class ns3::NrPointToPointEpcHelper
Create an EPC network with PointToPoint links.
struct ns3::CcBwpCreator::SimpleOperationBandConf
Minimum configuration requirements for a OperationBand.
class ns3::ThreeGppFtpM1Helper
Helper for a correct setup of every FTP Model 1 applications.

Functions

static auto Cantor(uint32_t x1, uint32_t x2) -> uint32_t constexpr
The RealisticBeamformingHelper class that helps user create beamforming tasks and configure when these tasks should be executed. This helper also collects SRS measurements for each gNB and UE. This helper class is currently compatible only with the RealisticBeamformingAlgorithm.

Function documentation

static uint32_t Cantor(uint32_t x1, uint32_t x2) constexpr

The RealisticBeamformingHelper class that helps user create beamforming tasks and configure when these tasks should be executed. This helper also collects SRS measurements for each gNB and UE. This helper class is currently compatible only with the RealisticBeamformingAlgorithm.

Parameters
x1 first value max value 65535
x2 second value max value 65535
Returns $ (((x1 + x2) * (x1 + x2 + 1))/2) + x2; $ max value 4294836225

Similarly to IdealBeamformingHelper, since there is no real beamforming procedure, there must be a class that will be able to emulate the beamforming procedure, and that is, to update the beamforming vectors of both devices, gNB and UE, at the same time.

In ideal algorithms there is a run function that is used to run all beamforming tasks (updates) at the same time. Here is different, not all beams are updated at the same time, instead each beamforming task will be triggered based on its own event (SRS count or delay) To allow that, this class has attribute through which can be set the trigger event type. E.g., the trigger event can be that it has been received a certain number of SRSs signals from a UE. This helper saves all SRS reports for each gNB and all of its users, and it is saved per component carrier identified by cellId.

Calculate the Cantor function for two unsigned int