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
probabilistic-v2v-channel-condition-model.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2020 SIGNET Lab, Department of Information Engineering,
3
* University of Padova
4
*
5
* This program is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License version 2 as
7
* published by the Free Software Foundation;
8
*
9
* This program is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with this program; if not, write to the Free Software
16
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
*/
18
19
#ifndef PROBABILISTIC_V2V_CHANNEL_CONDITION_MODEL_H
20
#define PROBABILISTIC_V2V_CHANNEL_CONDITION_MODEL_H
21
22
#include "
channel-condition-model.h
"
23
24
namespace
ns3
25
{
26
27
class
MobilityModel;
28
29
/**
30
* \ingroup propagation
31
*
32
* \brief Computes the channel condition for the V2V Urban scenario
33
*
34
* Computes the channel condition following the probabilistic model described in
35
* M. Boban, X.Gong, and W. Xu, “Modeling the evolution of line-of-sight
36
* blockage for V2V channels,” in IEEE 84th Vehicular Technology
37
* Conference (VTC-Fall), 2016.
38
*/
39
class
ProbabilisticV2vUrbanChannelConditionModel
:
public
ThreeGppChannelConditionModel
40
{
41
public
:
42
/**
43
* Get the type ID.
44
* \brief Get the type ID.
45
* \return the object TypeId
46
*/
47
static
TypeId
GetTypeId
();
48
49
/**
50
* Constructor for the ProbabilisticV2vUrbanChannelConditionModel class
51
*/
52
ProbabilisticV2vUrbanChannelConditionModel
();
53
54
/**
55
* Destructor for the ProbabilisticV2vUrbanChannelConditionModel class
56
*/
57
~ProbabilisticV2vUrbanChannelConditionModel
()
override
;
58
59
private
:
60
/**
61
* Compute the LOS probability
62
*
63
* \param a tx mobility model
64
* \param b rx mobility model
65
* \return the LOS probability
66
*/
67
double
ComputePlos
(
Ptr<const MobilityModel>
a,
Ptr<const MobilityModel>
b)
const override
;
68
69
/**
70
* Compute the NLOS probability
71
*
72
* \param a tx mobility model
73
* \param b rx mobility model
74
* \return the NLOS probability
75
*/
76
double
ComputePnlos
(
Ptr<const MobilityModel>
a,
Ptr<const MobilityModel>
b)
const override
;
77
78
VehicleDensity
m_densityUrban
{
VehicleDensity::INVALID
};
//!< vehicle density
79
};
80
81
/**
82
* \ingroup propagation
83
*
84
* \brief Computes the channel condition for the V2V Highway scenario
85
*
86
* Computes the channel condition following the probabilistic model described in
87
* M. Boban, X.Gong, and W. Xu, “Modeling the evolution of line-of-sight
88
* blockage for V2V channels,” in IEEE 84th Vehicular Technology
89
* Conference (VTC-Fall), 2016.
90
*/
91
class
ProbabilisticV2vHighwayChannelConditionModel
:
public
ThreeGppChannelConditionModel
92
{
93
public
:
94
/**
95
* Get the type ID.
96
* \brief Get the type ID.
97
* \return the object TypeId
98
*/
99
static
TypeId
GetTypeId
();
100
101
/**
102
* Constructor for the ProbabilisticV2vHighwayChannelConditionModel class
103
*/
104
ProbabilisticV2vHighwayChannelConditionModel
();
105
106
/**
107
* Destructor for the ProbabilisticV2vHighwayChannelConditionModel class
108
*/
109
~ProbabilisticV2vHighwayChannelConditionModel
()
override
;
110
111
private
:
112
/**
113
* Compute the LOS probability
114
*
115
* \param a tx mobility model
116
* \param b rx mobility model
117
* \return the LOS probability
118
*/
119
double
ComputePlos
(
Ptr<const MobilityModel>
a,
Ptr<const MobilityModel>
b)
const override
;
120
121
/**
122
* Compute the NLOS probability
123
*
124
* \param a tx mobility model
125
* \param b rx mobility model
126
* \return the NLOS probability
127
*/
128
double
ComputePnlos
(
Ptr<const MobilityModel>
a,
Ptr<const MobilityModel>
b)
const override
;
129
130
VehicleDensity
m_densityHighway
{
VehicleDensity::INVALID
};
//!< vehicle density
131
};
132
133
}
// namespace ns3
134
135
#endif
/* PROBABILISTIC_V2V_CHANNEL_CONDITION_MODEL_H */
channel-condition-model.h
ns3::ProbabilisticV2vHighwayChannelConditionModel
Computes the channel condition for the V2V Highway scenario.
Definition:
probabilistic-v2v-channel-condition-model.h:92
ns3::ProbabilisticV2vHighwayChannelConditionModel::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition:
probabilistic-v2v-channel-condition-model.cc:137
ns3::ProbabilisticV2vHighwayChannelConditionModel::m_densityHighway
VehicleDensity m_densityHighway
vehicle density
Definition:
probabilistic-v2v-channel-condition-model.h:130
ns3::ProbabilisticV2vHighwayChannelConditionModel::ComputePnlos
double ComputePnlos(Ptr< const MobilityModel > a, Ptr< const MobilityModel > b) const override
Compute the NLOS probability.
Definition:
probabilistic-v2v-channel-condition-model.cc:206
ns3::ProbabilisticV2vHighwayChannelConditionModel::~ProbabilisticV2vHighwayChannelConditionModel
~ProbabilisticV2vHighwayChannelConditionModel() override
Destructor for the ProbabilisticV2vHighwayChannelConditionModel class.
Definition:
probabilistic-v2v-channel-condition-model.cc:164
ns3::ProbabilisticV2vHighwayChannelConditionModel::ProbabilisticV2vHighwayChannelConditionModel
ProbabilisticV2vHighwayChannelConditionModel()
Constructor for the ProbabilisticV2vHighwayChannelConditionModel class.
Definition:
probabilistic-v2v-channel-condition-model.cc:159
ns3::ProbabilisticV2vHighwayChannelConditionModel::ComputePlos
double ComputePlos(Ptr< const MobilityModel > a, Ptr< const MobilityModel > b) const override
Compute the LOS probability.
Definition:
probabilistic-v2v-channel-condition-model.cc:169
ns3::ProbabilisticV2vUrbanChannelConditionModel
Computes the channel condition for the V2V Urban scenario.
Definition:
probabilistic-v2v-channel-condition-model.h:40
ns3::ProbabilisticV2vUrbanChannelConditionModel::m_densityUrban
VehicleDensity m_densityUrban
vehicle density
Definition:
probabilistic-v2v-channel-condition-model.h:78
ns3::ProbabilisticV2vUrbanChannelConditionModel::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition:
probabilistic-v2v-channel-condition-model.cc:34
ns3::ProbabilisticV2vUrbanChannelConditionModel::ComputePnlos
double ComputePnlos(Ptr< const MobilityModel > a, Ptr< const MobilityModel > b) const override
Compute the NLOS probability.
Definition:
probabilistic-v2v-channel-condition-model.cc:92
ns3::ProbabilisticV2vUrbanChannelConditionModel::~ProbabilisticV2vUrbanChannelConditionModel
~ProbabilisticV2vUrbanChannelConditionModel() override
Destructor for the ProbabilisticV2vUrbanChannelConditionModel class.
Definition:
probabilistic-v2v-channel-condition-model.cc:61
ns3::ProbabilisticV2vUrbanChannelConditionModel::ProbabilisticV2vUrbanChannelConditionModel
ProbabilisticV2vUrbanChannelConditionModel()
Constructor for the ProbabilisticV2vUrbanChannelConditionModel class.
Definition:
probabilistic-v2v-channel-condition-model.cc:56
ns3::ProbabilisticV2vUrbanChannelConditionModel::ComputePlos
double ComputePlos(Ptr< const MobilityModel > a, Ptr< const MobilityModel > b) const override
Compute the LOS probability.
Definition:
probabilistic-v2v-channel-condition-model.cc:66
ns3::Ptr
Smart pointer class similar to boost::intrusive_ptr.
Definition:
ptr.h:77
ns3::ThreeGppChannelConditionModel
Base class for the 3GPP channel condition models.
Definition:
channel-condition-model.h:443
ns3::ThreeGppChannelConditionModel::VehicleDensity
VehicleDensity
Determine the density of vehicles in a V2V scenario.
Definition:
channel-condition-model.h:515
ns3::ThreeGppChannelConditionModel::INVALID
@ INVALID
Definition:
channel-condition-model.h:519
ns3::TypeId
a unique identifier for an interface.
Definition:
type-id.h:59
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
src
propagation
model
probabilistic-v2v-channel-condition-model.h
Generated on Tue May 28 2024 23:39:04 for ns-3 by
1.9.6