A Discrete-Event Network Simulator
API
Spectrum Models
+ Collaboration diagram for Spectrum Models:

Modules

 Spectrum Models tests
 
 Spectrum module tests
 

Classes

class  ns3::AdhocAlohaNoackIdealPhyHelper
 create the AlohaNoackNetDevice More...
 
class  ns3::AlohaNoackMacHeader
 Header for the AlohaNoack NetDevice. More...
 
class  ns3::AlohaNoackNetDevice
 This devices implements the following features: More...
 
struct  ns3::BandInfo
 The building block of a SpectrumModel. More...
 
class  ns3::ConstantSpectrumPropagationLossModel
 A Constant (fixed) propagation loss. More...
 
class  ns3::FriisSpectrumPropagationLossModel
 Friis spectrum propagation loss model. More...
 
class  GlobalPathlossDatabase
 Store the last pathloss value for each TX-RX pair. More...
 
class  ns3::HalfDuplexIdealPhy
 This PHY layer implementation realizes an ideal OFDM PHY which transmits half-duplex (i.e., it can either receive or transmit at a given time). More...
 
struct  ns3::HalfDuplexIdealPhySignalParameters
 Signal parameters for HalfDuplexIdealPhy. More...
 
class  ns3::MatrixBasedChannelModel
 This is an interface for a channel model that can be described by a channel matrix, e.g., the 3GPP Spatial Channel Models, which is generally used in combination with antenna arrays. More...
 
class  ns3::MicrowaveOvenSpectrumModel5MhzInitializer
 Init a static class containing the MWO #2 model (5Mhz) More...
 
class  ns3::MicrowaveOvenSpectrumModel6MhzInitializer
 Init a static class containing the MWO #1 model (6Mhz) More...
 
class  ns3::MicrowaveOvenSpectrumValueHelper
 This class provides methods for the creation of SpectrumValue instances that mimic the Power Spectral Density of commercial microwave ovens based on the measurements reported in the following paper: Tanim M. More...
 
class  ns3::MultiModelSpectrumChannel
 This SpectrumChannel implementation can handle the presence of SpectrumPhy instances which can use different spectrum models, i.e., different SpectrumModel. More...
 
class  ns3::NonCommunicatingNetDevice
 This class implements a device which does not communicate, in the sense that it does not interact with the above protocol stack. More...
 
class  ns3::PhasedArraySpectrumPropagationLossModel
 spectrum-aware propagation loss model that is compatible with PhasedArrayModel type of ns-3 antenna More...
 
class  ns3::RxSpectrumModelInfo
 The Rx spectrum model information. More...
 
class  ns3::ShannonSpectrumErrorModel
 This class implements the error model described in this paper: N. More...
 
class  ns3::SingleModelSpectrumChannel
 SpectrumChannel implementation which handles a single spectrum model. More...
 
class  ns3::SpectrumAnalyzer
 Simple SpectrumPhy implementation that averages the spectrum power density of incoming transmissions to produce a spectrogram. More...
 
class  ns3::SpectrumAnalyzerHelper
 Class to allow the Spectrum Analysis. More...
 
class  ns3::SpectrumChannel
 Defines the interface for spectrum-aware channel implementations. More...
 
class  ns3::SpectrumChannelHelper
 Setup a SpectrumChannel. More...
 
class  ns3::SpectrumConverter
 Class which implements a converter between SpectrumValue which are defined over different SpectrumModel. More...
 
class  ns3::SpectrumErrorModel
 Introspection did not find any typical Config paths. More...
 
class  ns3::SpectrumInterference
 This class implements a gaussian interference model, i.e., all incoming signals are added to the total interference. More...
 
class  ns3::SpectrumPhy
 Abstract base class for Spectrum-aware PHY layers. More...
 
class  ns3::SpectrumPhyHelper
 Create and configure several SpectrumPhy instances and connect them to a channel. More...
 
class  ns3::SpectrumPropagationLossModel
 spectrum-aware propagation loss model More...
 
struct  ns3::SpectrumSignalParameters
 This struct provides the generic signal representation to be used by all wireless technologies. More...
 
class  ns3::SpectrumValue
 Set of values corresponding to a given SpectrumModel. More...
 
class  ns3::static_SpectrumModel300Khz300GhzLog_initializer
 Static initializer class for Spectrum model logger for frequencies between 300 Khz 300 Ghz. More...
 
class  ns3::static_SpectrumModelIsm2400MhzRes1Mhz_initializer
 Static initializer class for Spectrum model logger for frequencies in the 2.4 GHz ISM band with 1 MHz resolution. More...
 
class  ns3::ThreeGppChannelModel
 Channel Matrix Generation following 3GPP TR 38.901. More...
 
class  ns3::ThreeGppSpectrumPropagationLossModel
 3GPP Spectrum Propagation Loss Model More...
 
class  ns3::TraceFadingLossModel
 fading loss model based on precalculated fading traces More...
 
class  ns3::TvSpectrumTransmitter
 SpectrumPhy implementation that creates a customizable TV transmitter which transmits a PSD spectrum specified by user-set attributes. More...
 
class  ns3::TvSpectrumTransmitterHelper
 Helper class which uses TvSpectrumTransmitter class to create customizable TV transmitter(s) that transmit PSD spectrum specified by user-set attributes. More...
 
class  ns3::TxSpectrumModelInfo
 The Tx spectrum model information. More...
 
class  ns3::WaveformGenerator
 Simple SpectrumPhy implementation that sends customizable waveform. More...
 
class  ns3::WaveformGeneratorHelper
 Create a Waveform generator, which can be used to inject specific noise in the channel. More...
 
class  ns3::WifiSpectrumValue5MhzFactory
 Implements Wifi SpectrumValue for the 2.4 GHz ISM band only, with a 5 MHz spectrum resolution. More...
 
class  ns3::WifiSpectrumValueHelper
 This class defines all functions to create a spectrum model for Wi-Fi based on a a spectral model aligned with an OFDM subcarrier spacing of 312.5 KHz (model also reused for DSSS modulations) More...
 

Typedefs

typedef std::map< SpectrumModelUid_t, RxSpectrumModelInfons3::RxSpectrumModelInfoMap_t
 Container: SpectrumModelUid_t, RxSpectrumModelInfo. More...
 
typedef std::map< SpectrumModelUid_t, SpectrumConverterns3::SpectrumConverterMap_t
 Container: SpectrumModelUid_t, SpectrumConverter. More...
 
typedef std::map< SpectrumModelUid_t, TxSpectrumModelInfons3::TxSpectrumModelInfoMap_t
 Container: SpectrumModelUid_t, TxSpectrumModelInfo. More...
 

Functions

static void ns3::WriteAveragePowerSpectralDensityReport (Ptr< OutputStreamWrapper > streamWrapper, Ptr< const SpectrumValue > avgPowerSpectralDensity)
 Writes a report of the Average Power Spectral Density. More...
 

Variables

static class ns3::MicrowaveOvenSpectrumModel5MhzInitializer ns3::g_MicrowaveOvenSpectrumModel5MhzInitializerInstance
 MWO model #2. More...
 
static class ns3::MicrowaveOvenSpectrumModel6MhzInitializer ns3::g_MicrowaveOvenSpectrumModel6MhzInitializerInstance
 MWO model #1. More...
 
static_SpectrumModel300Khz300GhzLog_initializer ns3::g_static_SpectrumModel300Khz300GhzLog_initializer_instance
 Static variable for analyzer initialization. More...
 
static_SpectrumModelIsm2400MhzRes1Mhz_initializer ns3::g_static_SpectrumModelIsm2400MhzRes1Mhz_initializer_instance
 Static variable for analyzer initialization. More...
 
Ptr< SpectrumModelns3::SpectrumModel300Khz300GhzLog
 Spectrum model logger for frequencies between 300 Khz 300 Ghz. More...
 
Ptr< SpectrumModelns3::SpectrumModelIsm2400MhzRes1Mhz
 Spectrum model logger for frequencies in the 2.4 GHz ISM band with 1 MHz resolution. More...
 

Detailed Description

Typedef Documentation

◆ RxSpectrumModelInfoMap_t

Container: SpectrumModelUid_t, RxSpectrumModelInfo.

Definition at line 90 of file multi-model-spectrum-channel.h.

◆ SpectrumConverterMap_t

Container: SpectrumModelUid_t, SpectrumConverter.

Definition at line 40 of file multi-model-spectrum-channel.h.

◆ TxSpectrumModelInfoMap_t

Container: SpectrumModelUid_t, TxSpectrumModelInfo.

Definition at line 65 of file multi-model-spectrum-channel.h.

Function Documentation

◆ WriteAveragePowerSpectralDensityReport()

static void ns3::WriteAveragePowerSpectralDensityReport ( Ptr< OutputStreamWrapper streamWrapper,
Ptr< const SpectrumValue avgPowerSpectralDensity 
)
static

Writes a report of the Average Power Spectral Density.

Parameters
streamWrapperthe wrapper to the output stream
avgPowerSpectralDensityAverage Power Spectral Density

Definition at line 49 of file spectrum-analyzer-helper.cc.

References ns3::Time::GetSeconds(), ns3::OutputStreamWrapper::GetStream(), ns3::Now(), NS_ASSERT, and NS_LOG_FUNCTION.

Referenced by ns3::SpectrumAnalyzerHelper::Install().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ g_MicrowaveOvenSpectrumModel5MhzInitializerInstance

class ns3::MicrowaveOvenSpectrumModel5MhzInitializer ns3::g_MicrowaveOvenSpectrumModel5MhzInitializerInstance
static

MWO model #2.

◆ g_MicrowaveOvenSpectrumModel6MhzInitializerInstance

class ns3::MicrowaveOvenSpectrumModel6MhzInitializer ns3::g_MicrowaveOvenSpectrumModel6MhzInitializerInstance
static

MWO model #1.

◆ g_static_SpectrumModel300Khz300GhzLog_initializer_instance

static_SpectrumModel300Khz300GhzLog_initializer ns3::g_static_SpectrumModel300Khz300GhzLog_initializer_instance

Static variable for analyzer initialization.

Definition at line 60 of file spectrum-model-300kHz-300GHz-log.cc.

◆ g_static_SpectrumModelIsm2400MhzRes1Mhz_initializer_instance

static_SpectrumModelIsm2400MhzRes1Mhz_initializer ns3::g_static_SpectrumModelIsm2400MhzRes1Mhz_initializer_instance

Static variable for analyzer initialization.

Definition at line 62 of file spectrum-model-ism2400MHz-res1MHz.cc.

◆ SpectrumModel300Khz300GhzLog

Ptr< SpectrumModel > ns3::SpectrumModel300Khz300GhzLog

Spectrum model logger for frequencies between 300 Khz 300 Ghz.

Definition at line 31 of file spectrum-model-300kHz-300GHz-log.cc.

Referenced by ns3::static_SpectrumModel300Khz300GhzLog_initializer::static_SpectrumModel300Khz300GhzLog_initializer().

◆ SpectrumModelIsm2400MhzRes1Mhz

Ptr< SpectrumModel > ns3::SpectrumModelIsm2400MhzRes1Mhz

Spectrum model logger for frequencies in the 2.4 GHz ISM band with 1 MHz resolution.

Definition at line 31 of file spectrum-model-ism2400MHz-res1MHz.cc.

Referenced by ns3::static_SpectrumModelIsm2400MhzRes1Mhz_initializer::static_SpectrumModelIsm2400MhzRes1Mhz_initializer().