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...
#include "wifi-spectrum-value-helper.h"
Public Member Functions | |
virtual | ~WifiSpectrumValueHelper () |
Destructor. More... | |
Static Public Member Functions | |
static Ptr< SpectrumValue > | CreateDsssTxPowerSpectralDensity (uint32_t centerFrequency, double txPowerW) |
Create a transmit power spectral density corresponding to DSSS. More... | |
static Ptr< SpectrumValue > | CreateHtOfdmTxPowerSpectralDensity (uint32_t centerFrequency, uint32_t channelWidth, double txPowerW) |
Create a transmit power spectral density corresponding to OFDM High Throughput (HT) (802.11n/ac). More... | |
static Ptr< SpectrumValue > | CreateNoisePowerSpectralDensity (uint32_t centerFrequency, uint32_t channelWidth, double noiseFigure) |
static Ptr< SpectrumValue > | CreateNoisePowerSpectralDensity (double noiseFigure, Ptr< SpectrumModel > spectrumModel) |
static Ptr< SpectrumValue > | CreateOfdmTxPowerSpectralDensity (uint32_t centerFrequency, uint32_t channelWidth, double txPowerW) |
Create a transmit power spectral density corresponding to OFDM (802.11a/g). More... | |
static Ptr< SpectrumValue > | CreateRfFilter (uint32_t centerFrequency, uint32_t channelWidth) |
static Ptr< SpectrumModel > | GetSpectrumModel (uint32_t centerFrequency, uint32_t channelWidth) |
Return a SpectrumModel instance corresponding to the center frequency and channel width. More... | |
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)
Definition at line 36 of file wifi-spectrum-value-helper.h.
|
virtual |
Destructor.
Definition at line 363 of file wifi-spectrum-value-helper.cc.
|
static |
Create a transmit power spectral density corresponding to DSSS.
The center frequency typically corresponds to 802.11b channel center frequencies but is not restricted to those frequencies.
centerFrequency | center frequency (MHz) |
txPowerW | transmit power (W) to allocate |
Definition at line 286 of file wifi-spectrum-value-helper.cc.
References ns3::SpectrumValue::ConstBandsBegin(), ns3::SpectrumModel::GetNumBands(), GetSpectrumModel(), ns3::SpectrumValue::GetSpectrumModel(), NS_ASSERT, NS_LOG_FUNCTION, and ns3::SpectrumValue::ValuesBegin().
Referenced by ns3::SpectrumWifiPhy::GetTxPowerSpectralDensity().
|
static |
Create a transmit power spectral density corresponding to OFDM High Throughput (HT) (802.11n/ac).
Channel width may vary between 20, 40, 80, and 160 MHz.
centerFrequency | center frequency (MHz) |
channelWidth | channel width (MHz) |
txPowerW | transmit power (W) to allocate |
Definition at line 109 of file wifi-spectrum-value-helper.cc.
References ns3::SpectrumValue::ConstBandsBegin(), ns3::SpectrumModel::GetNumBands(), GetSpectrumModel(), ns3::SpectrumValue::GetSpectrumModel(), ns3::Integral(), NS_ASSERT_MSG, NS_FATAL_ERROR, NS_LOG_DEBUG, NS_LOG_FUNCTION, and ns3::SpectrumValue::ValuesBegin().
Referenced by ns3::SpectrumWifiPhy::GetTxPowerSpectralDensity().
|
static |
centerFrequency | center frequency (MHz) |
channelWidth | channel width (MHz) |
noiseFigure | the noise figure in dB w.r.t. a reference temperature of 290K |
Definition at line 308 of file wifi-spectrum-value-helper.cc.
References GetSpectrumModel().
|
static |
centerFrequency | center frequency (MHz) |
channelWidth | channel width (MHz) |
Definition at line 315 of file wifi-spectrum-value-helper.cc.
References ns3::Integral(), NS_LOG_DEBUG, and NS_LOG_FUNCTION.
|
static |
Create a transmit power spectral density corresponding to OFDM (802.11a/g).
Channel width may vary between 20, 10, and 5 MHz.
centerFrequency | center frequency (MHz) |
channelWidth | channel width (MHz) |
txPowerW | transmit power (W) to allocate |
Definition at line 202 of file wifi-spectrum-value-helper.cc.
References ns3::SpectrumValue::ConstBandsBegin(), ns3::SpectrumModel::GetNumBands(), GetSpectrumModel(), ns3::SpectrumValue::GetSpectrumModel(), ns3::Integral(), NS_ASSERT_MSG, NS_FATAL_ERROR, NS_LOG_DEBUG, NS_LOG_FUNCTION, and ns3::SpectrumValue::ValuesBegin().
Referenced by ns3::SpectrumWifiPhy::GetTxPowerSpectralDensity().
|
static |
centerFrequency | center frequency (MHz) |
channelWidth | channel width (MHz) |
Definition at line 333 of file wifi-spectrum-value-helper.cc.
References ns3::SpectrumValue::ConstBandsBegin(), ns3::SpectrumModel::GetNumBands(), GetSpectrumModel(), ns3::SpectrumValue::GetSpectrumModel(), NS_ASSERT_MSG, NS_LOG_DEBUG, NS_LOG_FUNCTION, and ns3::SpectrumValue::ValuesBegin().
Referenced by ns3::SpectrumWifiPhy::StartRx().
|
static |
Return a SpectrumModel instance corresponding to the center frequency and channel width.
The model includes +/- 10 MHz of guard bands (i.e. the model will span (channelWidth + 20) MHz of bandwidth).
centerFrequency | center frequency (MHz) |
channelWidth | channel width (MHz) |
Definition at line 57 of file wifi-spectrum-value-helper.cc.
References f(), ns3::BandInfo::fc, ns3::BandInfo::fh, ns3::BandInfo::fl, ns3::SpectrumModel::GetUid(), NS_ASSERT, NS_ASSERT_MSG, NS_LOG_DEBUG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.
Referenced by CreateDsssTxPowerSpectralDensity(), CreateHtOfdmTxPowerSpectralDensity(), CreateNoisePowerSpectralDensity(), CreateOfdmTxPowerSpectralDensity(), CreateRfFilter(), ns3::SpectrumWifiPhy::DoChannelSwitch(), ns3::SpectrumWifiPhy::DoFrequencySwitch(), and ns3::SpectrumWifiPhy::GetRxSpectrumModel().