A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Installation
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
Loading...
Searching...
No Matches
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2011, 2012 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
3
*
4
* SPDX-License-Identifier: GPL-2.0-only
5
*
6
* Author: Marco Miozzo <marco.miozzo@cttc.es>
7
* Nicola Baldo <nbaldo@cttc.es>
8
*
9
*/
10
11
#ifndef ITU_R_1411_NLOS_OVER_ROOFTOP_PROPAGATION_LOSS_MODEL_H
12
#define ITU_R_1411_NLOS_OVER_ROOFTOP_PROPAGATION_LOSS_MODEL_H
13
14
#include "
propagation-environment.h
"
15
#include "
propagation-loss-model.h
"
16
17
namespace
ns3
18
{
19
20
/**
21
* \ingroup propagation
22
*
23
* \brief the ITU-R 1411 NLOS over rooftop propagation model
24
*
25
* This class implements the ITU-R 1411 LOS propagation model for
26
* Non-Line-of-Sight (NLoS) short range outdoor communication over
27
* rooftops in the frequency range 300 MHz to 100 GHz.
28
* For more information about the model, please see
29
* the propagation module documentation in .rst format.
30
*/
31
class
ItuR1411NlosOverRooftopPropagationLossModel
:
public
PropagationLossModel
32
{
33
public
:
34
/**
35
* \brief Get the type ID.
36
* \return the object TypeId
37
*/
38
static
TypeId
GetTypeId
();
39
40
ItuR1411NlosOverRooftopPropagationLossModel
();
41
~ItuR1411NlosOverRooftopPropagationLossModel
()
override
;
42
43
// Delete copy constructor and assignment operator to avoid misuse
44
ItuR1411NlosOverRooftopPropagationLossModel
(
45
const
ItuR1411NlosOverRooftopPropagationLossModel
&) =
delete
;
46
ItuR1411NlosOverRooftopPropagationLossModel
&
operator=
(
47
const
ItuR1411NlosOverRooftopPropagationLossModel
&) =
delete
;
48
49
/**
50
* Set the operating frequency
51
*
52
* \param freq the frequency in Hz
53
*/
54
void
SetFrequency
(
double
freq);
55
56
/**
57
*
58
*
59
* \param a the first mobility model
60
* \param b the second mobility model
61
*
62
* \return the loss in dBm for the propagation between
63
* the two given mobility models
64
*/
65
double
GetLoss
(
Ptr<MobilityModel>
a,
Ptr<MobilityModel>
b)
const
;
66
67
private
:
68
double
DoCalcRxPower
(
double
txPowerDbm,
69
Ptr<MobilityModel>
a,
70
Ptr<MobilityModel>
b)
const override
;
71
int64_t
DoAssignStreams
(int64_t stream)
override
;
72
73
double
m_frequency
;
//!< frequency in MHz
74
double
m_lambda
;
//!< wavelength
75
EnvironmentType
m_environment
;
//!< Environment Scenario
76
CitySize
m_citySize
;
//!< Dimension of the city
77
double
m_rooftopHeight
;
//!< in meters
78
double
m_streetsOrientation
;
//!< in degrees [0,90]
79
double
m_streetsWidth
;
//!< in meters
80
double
m_buildingsExtend
;
//!< in meters
81
double
m_buildingSeparation
;
//!< in meters
82
};
83
84
}
// namespace ns3
85
86
#endif
// ITU_R_1411_NLOS_OVER_ROOFTOP_PROPAGATION_LOSS_MODEL_H
ns3::ItuR1411NlosOverRooftopPropagationLossModel
the ITU-R 1411 NLOS over rooftop propagation model
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h:32
ns3::ItuR1411NlosOverRooftopPropagationLossModel::m_buildingSeparation
double m_buildingSeparation
in meters
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h:81
ns3::ItuR1411NlosOverRooftopPropagationLossModel::DoAssignStreams
int64_t DoAssignStreams(int64_t stream) override
Assign a fixed random variable stream number to the random variables used by this model.
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.cc:228
ns3::ItuR1411NlosOverRooftopPropagationLossModel::~ItuR1411NlosOverRooftopPropagationLossModel
~ItuR1411NlosOverRooftopPropagationLossModel() override
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.cc:98
ns3::ItuR1411NlosOverRooftopPropagationLossModel::SetFrequency
void SetFrequency(double freq)
Set the operating frequency.
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.cc:213
ns3::ItuR1411NlosOverRooftopPropagationLossModel::m_buildingsExtend
double m_buildingsExtend
in meters
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h:80
ns3::ItuR1411NlosOverRooftopPropagationLossModel::m_streetsWidth
double m_streetsWidth
in meters
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h:79
ns3::ItuR1411NlosOverRooftopPropagationLossModel::m_citySize
CitySize m_citySize
Dimension of the city.
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h:76
ns3::ItuR1411NlosOverRooftopPropagationLossModel::m_rooftopHeight
double m_rooftopHeight
in meters
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h:77
ns3::ItuR1411NlosOverRooftopPropagationLossModel::DoCalcRxPower
double DoCalcRxPower(double txPowerDbm, Ptr< MobilityModel > a, Ptr< MobilityModel > b) const override
PropagationLossModel.
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.cc:220
ns3::ItuR1411NlosOverRooftopPropagationLossModel::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.cc:27
ns3::ItuR1411NlosOverRooftopPropagationLossModel::m_environment
EnvironmentType m_environment
Environment Scenario.
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h:75
ns3::ItuR1411NlosOverRooftopPropagationLossModel::m_frequency
double m_frequency
frequency in MHz
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h:73
ns3::ItuR1411NlosOverRooftopPropagationLossModel::ItuR1411NlosOverRooftopPropagationLossModel
ItuR1411NlosOverRooftopPropagationLossModel()
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.cc:93
ns3::ItuR1411NlosOverRooftopPropagationLossModel::ItuR1411NlosOverRooftopPropagationLossModel
ItuR1411NlosOverRooftopPropagationLossModel(const ItuR1411NlosOverRooftopPropagationLossModel &)=delete
ns3::ItuR1411NlosOverRooftopPropagationLossModel::GetLoss
double GetLoss(Ptr< MobilityModel > a, Ptr< MobilityModel > b) const
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.cc:103
ns3::ItuR1411NlosOverRooftopPropagationLossModel::m_lambda
double m_lambda
wavelength
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h:74
ns3::ItuR1411NlosOverRooftopPropagationLossModel::operator=
ItuR1411NlosOverRooftopPropagationLossModel & operator=(const ItuR1411NlosOverRooftopPropagationLossModel &)=delete
ns3::ItuR1411NlosOverRooftopPropagationLossModel::m_streetsOrientation
double m_streetsOrientation
in degrees [0,90]
Definition
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h:78
ns3::PropagationLossModel
Models the propagation loss through a transmission medium.
Definition
propagation-loss-model.h:45
ns3::Ptr
Smart pointer class similar to boost::intrusive_ptr.
Definition
mpi-test-fixtures.h:37
ns3::TypeId
a unique identifier for an interface.
Definition
type-id.h:48
ns3::EnvironmentType
EnvironmentType
The type of propagation environment.
Definition
propagation-environment.h:24
ns3::CitySize
CitySize
The size of the city in which propagation takes place.
Definition
propagation-environment.h:37
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
propagation-environment.h
propagation-loss-model.h
src
propagation
model
itu-r-1411-nlos-over-rooftop-propagation-loss-model.h
Generated on Fri Nov 8 2024 13:59:05 for ns-3 by
1.11.0