Implements Wifi SpectrumValue for the 2.4 GHz ISM band only, with a 5 MHz spectrum resolution. More...
#include "ism-spectrum-value-helper.h"
Public Member Functions | |
virtual | ~SpectrumValue5MhzFactory ()=default |
Destructor. | |
virtual Ptr< SpectrumValue > | CreateConstant (double psd) |
Creates a SpectrumValue instance with a constant value for all frequencies. | |
virtual Ptr< SpectrumValue > | CreateTxPowerSpectralDensity (double txPower, uint8_t channel) |
Creates a SpectrumValue instance that represents the TX Power Spectral Density of a wifi device corresponding to the provided parameters. | |
Implements Wifi SpectrumValue for the 2.4 GHz ISM band only, with a 5 MHz spectrum resolution.
Definition at line 26 of file ism-spectrum-value-helper.h.
|
virtualdefault |
Destructor.
|
virtual |
Creates a SpectrumValue instance with a constant value for all frequencies.
psd | the constant value |
Definition at line 46 of file ism-spectrum-value-helper.cc.
References ns3::Create(), and ns3::g_WifiSpectrumModel5Mhz.
Referenced by SpectrumIdealPhyTestCase::DoRun().
|
virtual |
Creates a SpectrumValue instance that represents the TX Power Spectral Density of a wifi device corresponding to the provided parameters.
Since the spectrum model has a resolution of 5 MHz, we model the transmitted signal with a constant density over a 20MHz bandwidth centered on the center frequency of the channel. The transmission power outside the transmission power density is calculated considering the transmit spectrum mask, see IEEE Std. 802.11-2007, Annex I. The two bands just outside of the main 20 MHz are allocated power at -28 dB down from the center 20 MHz, and the two bands outside of this are allocated power at -40 dB down (with a total bandwidth of 60 MHz containing non-zero power allocation).
txPower | the total TX power in W |
channel | the number of the channel (1 <= channel <= 13) |
Definition at line 54 of file ism-spectrum-value-helper.cc.
References ns3::Create(), ns3::g_WifiSpectrumModel5Mhz, and NS_ASSERT.
Referenced by SpectrumIdealPhyTestCase::DoRun(), and ThreeGppSpectrumPropagationLossModelTest::DoRun().