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
* SPDX-License-Identifier: GPL-2.0-only
6
*/
7
8
#ifndef PROBABILISTIC_V2V_CHANNEL_CONDITION_MODEL_H
9
#define PROBABILISTIC_V2V_CHANNEL_CONDITION_MODEL_H
10
11
#include "
channel-condition-model.h
"
12
13
namespace
ns3
14
{
15
16
class
MobilityModel;
17
18
/**
19
* \ingroup propagation
20
*
21
* \brief Computes the channel condition for the V2V Urban scenario
22
*
23
* Computes the channel condition following the probabilistic model described in
24
* M. Boban, X.Gong, and W. Xu, “Modeling the evolution of line-of-sight
25
* blockage for V2V channels,” in IEEE 84th Vehicular Technology
26
* Conference (VTC-Fall), 2016.
27
*/
28
class
ProbabilisticV2vUrbanChannelConditionModel
:
public
ThreeGppChannelConditionModel
29
{
30
public
:
31
/**
32
* Get the type ID.
33
* \brief Get the type ID.
34
* \return the object TypeId
35
*/
36
static
TypeId
GetTypeId
();
37
38
/**
39
* Constructor for the ProbabilisticV2vUrbanChannelConditionModel class
40
*/
41
ProbabilisticV2vUrbanChannelConditionModel
();
42
43
/**
44
* Destructor for the ProbabilisticV2vUrbanChannelConditionModel class
45
*/
46
~ProbabilisticV2vUrbanChannelConditionModel
()
override
;
47
48
private
:
49
/**
50
* Compute the LOS probability
51
*
52
* \param a tx mobility model
53
* \param b rx mobility model
54
* \return the LOS probability
55
*/
56
double
ComputePlos
(
Ptr<const MobilityModel>
a,
Ptr<const MobilityModel>
b)
const override
;
57
58
/**
59
* Compute the NLOS probability
60
*
61
* \param a tx mobility model
62
* \param b rx mobility model
63
* \return the NLOS probability
64
*/
65
double
ComputePnlos
(
Ptr<const MobilityModel>
a,
Ptr<const MobilityModel>
b)
const override
;
66
67
VehicleDensity
m_densityUrban
{
VehicleDensity::INVALID
};
//!< vehicle density
68
};
69
70
/**
71
* \ingroup propagation
72
*
73
* \brief Computes the channel condition for the V2V Highway scenario
74
*
75
* Computes the channel condition following the probabilistic model described in
76
* M. Boban, X.Gong, and W. Xu, “Modeling the evolution of line-of-sight
77
* blockage for V2V channels,” in IEEE 84th Vehicular Technology
78
* Conference (VTC-Fall), 2016.
79
*/
80
class
ProbabilisticV2vHighwayChannelConditionModel
:
public
ThreeGppChannelConditionModel
81
{
82
public
:
83
/**
84
* Get the type ID.
85
* \brief Get the type ID.
86
* \return the object TypeId
87
*/
88
static
TypeId
GetTypeId
();
89
90
/**
91
* Constructor for the ProbabilisticV2vHighwayChannelConditionModel class
92
*/
93
ProbabilisticV2vHighwayChannelConditionModel
();
94
95
/**
96
* Destructor for the ProbabilisticV2vHighwayChannelConditionModel class
97
*/
98
~ProbabilisticV2vHighwayChannelConditionModel
()
override
;
99
100
private
:
101
/**
102
* Compute the LOS probability
103
*
104
* \param a tx mobility model
105
* \param b rx mobility model
106
* \return the LOS probability
107
*/
108
double
ComputePlos
(
Ptr<const MobilityModel>
a,
Ptr<const MobilityModel>
b)
const override
;
109
110
/**
111
* Compute the NLOS probability
112
*
113
* \param a tx mobility model
114
* \param b rx mobility model
115
* \return the NLOS probability
116
*/
117
double
ComputePnlos
(
Ptr<const MobilityModel>
a,
Ptr<const MobilityModel>
b)
const override
;
118
119
VehicleDensity
m_densityHighway
{
VehicleDensity::INVALID
};
//!< vehicle density
120
};
121
122
}
// namespace ns3
123
124
#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:81
ns3::ProbabilisticV2vHighwayChannelConditionModel::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition
probabilistic-v2v-channel-condition-model.cc:126
ns3::ProbabilisticV2vHighwayChannelConditionModel::m_densityHighway
VehicleDensity m_densityHighway
vehicle density
Definition
probabilistic-v2v-channel-condition-model.h:119
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:195
ns3::ProbabilisticV2vHighwayChannelConditionModel::~ProbabilisticV2vHighwayChannelConditionModel
~ProbabilisticV2vHighwayChannelConditionModel() override
Destructor for the ProbabilisticV2vHighwayChannelConditionModel class.
Definition
probabilistic-v2v-channel-condition-model.cc:153
ns3::ProbabilisticV2vHighwayChannelConditionModel::ProbabilisticV2vHighwayChannelConditionModel
ProbabilisticV2vHighwayChannelConditionModel()
Constructor for the ProbabilisticV2vHighwayChannelConditionModel class.
Definition
probabilistic-v2v-channel-condition-model.cc:148
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:158
ns3::ProbabilisticV2vUrbanChannelConditionModel
Computes the channel condition for the V2V Urban scenario.
Definition
probabilistic-v2v-channel-condition-model.h:29
ns3::ProbabilisticV2vUrbanChannelConditionModel::m_densityUrban
VehicleDensity m_densityUrban
vehicle density
Definition
probabilistic-v2v-channel-condition-model.h:67
ns3::ProbabilisticV2vUrbanChannelConditionModel::GetTypeId
static TypeId GetTypeId()
Get the type ID.
Definition
probabilistic-v2v-channel-condition-model.cc:23
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:81
ns3::ProbabilisticV2vUrbanChannelConditionModel::~ProbabilisticV2vUrbanChannelConditionModel
~ProbabilisticV2vUrbanChannelConditionModel() override
Destructor for the ProbabilisticV2vUrbanChannelConditionModel class.
Definition
probabilistic-v2v-channel-condition-model.cc:50
ns3::ProbabilisticV2vUrbanChannelConditionModel::ProbabilisticV2vUrbanChannelConditionModel
ProbabilisticV2vUrbanChannelConditionModel()
Constructor for the ProbabilisticV2vUrbanChannelConditionModel class.
Definition
probabilistic-v2v-channel-condition-model.cc:45
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:55
ns3::Ptr
Smart pointer class similar to boost::intrusive_ptr.
Definition
mpi-test-fixtures.h:37
ns3::ThreeGppChannelConditionModel
Base class for the 3GPP channel condition models.
Definition
channel-condition-model.h:432
ns3::ThreeGppChannelConditionModel::VehicleDensity
VehicleDensity
Determine the density of vehicles in a V2V scenario.
Definition
channel-condition-model.h:504
ns3::ThreeGppChannelConditionModel::INVALID
@ INVALID
Definition
channel-condition-model.h:508
ns3::TypeId
a unique identifier for an interface.
Definition
type-id.h:48
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 Fri Nov 8 2024 13:59:05 for ns-3 by
1.11.0