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
okumura-hata-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 OKUMURA_HATA_PROPAGATION_LOSS_MODEL_H
12
#define OKUMURA_HATA_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 this class implements the Okumura Hata propagation loss model
24
*
25
* this class implements the Okumura Hata propagation loss model,
26
* which is used to model open area pathloss for distances > 1 Km
27
* and frequencies ranging from 150 MHz to 2.0 GHz.
28
* For more information about the model, please see
29
* the propagation module documentation in .rst format.
30
*/
31
class
OkumuraHataPropagationLossModel
:
public
PropagationLossModel
32
{
33
public
:
34
/**
35
* \brief Get the type ID.
36
* \return the object TypeId
37
*/
38
static
TypeId
GetTypeId
();
39
40
OkumuraHataPropagationLossModel
();
41
~OkumuraHataPropagationLossModel
()
override
;
42
43
// Delete copy constructor and assignment operator to avoid misuse
44
OkumuraHataPropagationLossModel
(
const
OkumuraHataPropagationLossModel
&) =
delete
;
45
OkumuraHataPropagationLossModel
&
operator=
(
const
OkumuraHataPropagationLossModel
&) =
delete
;
46
47
/**
48
* \param a the first mobility model
49
* \param b the second mobility model
50
*
51
* \return the loss in dBm for the propagation between
52
* the two given mobility models
53
*/
54
double
GetLoss
(
Ptr<MobilityModel>
a,
Ptr<MobilityModel>
b)
const
;
55
56
private
:
57
double
DoCalcRxPower
(
double
txPowerDbm,
58
Ptr<MobilityModel>
a,
59
Ptr<MobilityModel>
b)
const override
;
60
int64_t
DoAssignStreams
(int64_t stream)
override
;
61
62
EnvironmentType
m_environment
;
//!< Environment Scenario
63
CitySize
m_citySize
;
//!< Size of the city
64
double
m_frequency
;
//!< frequency in Hz
65
};
66
67
}
// namespace ns3
68
69
#endif
// OKUMURA_HATA_PROPAGATION_LOSS_MODEL_H
ns3::OkumuraHataPropagationLossModel
this class implements the Okumura Hata propagation loss model
Definition
okumura-hata-propagation-loss-model.h:32
ns3::OkumuraHataPropagationLossModel::DoAssignStreams
int64_t DoAssignStreams(int64_t stream) override
Assign a fixed random variable stream number to the random variables used by this model.
Definition
okumura-hata-propagation-loss-model.cc:158
ns3::OkumuraHataPropagationLossModel::m_environment
EnvironmentType m_environment
Environment Scenario.
Definition
okumura-hata-propagation-loss-model.h:62
ns3::OkumuraHataPropagationLossModel::m_frequency
double m_frequency
frequency in Hz
Definition
okumura-hata-propagation-loss-model.h:64
ns3::OkumuraHataPropagationLossModel::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition
okumura-hata-propagation-loss-model.cc:28
ns3::OkumuraHataPropagationLossModel::DoCalcRxPower
double DoCalcRxPower(double txPowerDbm, Ptr< MobilityModel > a, Ptr< MobilityModel > b) const override
PropagationLossModel.
Definition
okumura-hata-propagation-loss-model.cc:150
ns3::OkumuraHataPropagationLossModel::operator=
OkumuraHataPropagationLossModel & operator=(const OkumuraHataPropagationLossModel &)=delete
ns3::OkumuraHataPropagationLossModel::OkumuraHataPropagationLossModel
OkumuraHataPropagationLossModel()
Definition
okumura-hata-propagation-loss-model.cc:60
ns3::OkumuraHataPropagationLossModel::m_citySize
CitySize m_citySize
Size of the city.
Definition
okumura-hata-propagation-loss-model.h:63
ns3::OkumuraHataPropagationLossModel::OkumuraHataPropagationLossModel
OkumuraHataPropagationLossModel(const OkumuraHataPropagationLossModel &)=delete
ns3::OkumuraHataPropagationLossModel::~OkumuraHataPropagationLossModel
~OkumuraHataPropagationLossModel() override
Definition
okumura-hata-propagation-loss-model.cc:65
ns3::OkumuraHataPropagationLossModel::GetLoss
double GetLoss(Ptr< MobilityModel > a, Ptr< MobilityModel > b) const
Definition
okumura-hata-propagation-loss-model.cc:70
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
okumura-hata-propagation-loss-model.h
Generated on Fri Nov 8 2024 13:59:05 for ns-3 by
1.11.0