A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
lte-spectrum-value-helper.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2010 TELEMATICS LAB, DEE - Politecnico di Bari
3
*
4
* This program is free software; you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License version 2 as
6
* published by the Free Software Foundation;
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program; if not, write to the Free Software
15
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16
*
17
* Author: Giuseppe Piro <g.piro@poliba.it>
18
*/
19
20
#ifndef LTE_SPECTRUM_VALUE_HELPER_H
21
#define LTE_SPECTRUM_VALUE_HELPER_H
22
23
#include <ns3/spectrum-value.h>
24
25
#include <map>
26
#include <vector>
27
28
namespace
ns3
29
{
30
36
class
LteSpectrumValueHelper
37
{
38
public
:
48
static
double
GetCarrierFrequency
(
uint32_t
earfcn);
49
57
static
uint16_t
GetDownlinkCarrierBand
(
uint32_t
nDl);
58
66
static
uint16_t
GetUplinkCarrierBand
(
uint32_t
nUl);
67
77
static
double
GetDownlinkCarrierFrequency
(
uint32_t
earfcn);
78
88
static
double
GetUplinkCarrierFrequency
(
uint32_t
earfcn);
89
98
static
double
GetChannelBandwidth
(uint16_t txBandwidthConf);
99
112
static
Ptr<SpectrumModel>
GetSpectrumModel
(
uint32_t
earfcn, uint16_t bandwidth);
113
128
static
Ptr<SpectrumValue>
CreateTxPowerSpectralDensity
(
uint32_t
earfcn,
129
uint16_t bandwidth,
130
double
powerTx,
131
std::vector<int> activeRbs);
132
150
static
Ptr<SpectrumValue>
CreateTxPowerSpectralDensity
(
uint32_t
earfcn,
151
uint16_t bandwidth,
152
double
powerTx,
153
std::map<int, double> powerTxMap,
154
std::vector<int> activeRbs);
155
171
static
Ptr<SpectrumValue>
CreateUlTxPowerSpectralDensity
(uint16_t earfcn,
172
uint16_t bandwidth,
173
double
powerTx,
174
std::vector<int> activeRbs);
175
188
static
Ptr<SpectrumValue>
CreateNoisePowerSpectralDensity
(
uint32_t
earfcn,
189
uint16_t bandwidth,
190
double
noiseFigure);
191
201
static
Ptr<SpectrumValue>
CreateNoisePowerSpectralDensity
(
double
noiseFigure,
202
Ptr<SpectrumModel>
spectrumModel);
203
};
204
205
}
// namespace ns3
206
207
#endif
/* LTE_SPECTRUM_VALUE_HELPER_H */
ns3::LteSpectrumValueHelper
This class defines all functions to create spectrum model for lte.
Definition:
lte-spectrum-value-helper.h:37
ns3::LteSpectrumValueHelper::CreateUlTxPowerSpectralDensity
static Ptr< SpectrumValue > CreateUlTxPowerSpectralDensity(uint16_t earfcn, uint16_t bandwidth, double powerTx, std::vector< int > activeRbs)
create a spectrum value representing the uplink power spectral density of a signal to be transmitted.
Definition:
lte-spectrum-value-helper.cc:349
ns3::LteSpectrumValueHelper::CreateNoisePowerSpectralDensity
static Ptr< SpectrumValue > CreateNoisePowerSpectralDensity(uint32_t earfcn, uint16_t bandwidth, double noiseFigure)
create a SpectrumValue that models the power spectral density of AWGN
Definition:
lte-spectrum-value-helper.cc:376
ns3::LteSpectrumValueHelper::CreateTxPowerSpectralDensity
static Ptr< SpectrumValue > CreateTxPowerSpectralDensity(uint32_t earfcn, uint16_t bandwidth, double powerTx, std::vector< int > activeRbs)
create a spectrum value representing the power spectral density of a signal to be transmitted.
Definition:
lte-spectrum-value-helper.cc:281
ns3::LteSpectrumValueHelper::GetUplinkCarrierBand
static uint16_t GetUplinkCarrierBand(uint32_t nUl)
Converts uplink EARFCN to corresponding LTE frequency band number.
Definition:
lte-spectrum-value-helper.cc:145
ns3::LteSpectrumValueHelper::GetDownlinkCarrierBand
static uint16_t GetDownlinkCarrierBand(uint32_t nDl)
Converts downlink EARFCN to corresponding LTE frequency band number.
Definition:
lte-spectrum-value-helper.cc:129
ns3::LteSpectrumValueHelper::GetChannelBandwidth
static double GetChannelBandwidth(uint16_t txBandwidthConf)
Definition:
lte-spectrum-value-helper.cc:187
ns3::LteSpectrumValueHelper::GetUplinkCarrierFrequency
static double GetUplinkCarrierFrequency(uint32_t earfcn)
Calculates the uplink carrier frequency from the E-UTRA Absolute Radio Frequency Channel Number (EARF...
Definition:
lte-spectrum-value-helper.cc:174
ns3::LteSpectrumValueHelper::GetCarrierFrequency
static double GetCarrierFrequency(uint32_t earfcn)
Calculates the carrier frequency from the E-UTRA Absolute Radio Frequency Channel Number (EARFCN) acc...
Definition:
lte-spectrum-value-helper.cc:113
ns3::LteSpectrumValueHelper::GetSpectrumModel
static Ptr< SpectrumModel > GetSpectrumModel(uint32_t earfcn, uint16_t bandwidth)
Definition:
lte-spectrum-value-helper.cc:246
ns3::LteSpectrumValueHelper::GetDownlinkCarrierFrequency
static double GetDownlinkCarrierFrequency(uint32_t earfcn)
Calculates the downlink carrier frequency from the E-UTRA Absolute Radio Frequency Channel Number (EA...
Definition:
lte-spectrum-value-helper.cc:161
ns3::Ptr< SpectrumModel >
uint32_t
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
src
lte
model
lte-spectrum-value-helper.h
Generated on Tue Nov 1 2022 23:00:12 for ns-3 by
1.9.3