A Discrete-Event Network Simulator
Home
Tutorials ▼
English
Documentation ▼
Installation
Manual
Models
Contributing
Wiki
Development ▼
API Docs
Issue Tracker
Merge Requests
API
uan-prop-model-thorp.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2009 University of Washington
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: Leonard Tracy <lentracy@gmail.com>
18
*/
19
20
#ifndef UAN_PROP_MODEL_THORP_H
21
#define UAN_PROP_MODEL_THORP_H
22
23
#include "
uan-prop-model.h
"
24
25
namespace
ns3
26
{
27
28
class
UanTxMode;
29
35
class
UanPropModelThorp
:
public
UanPropModel
36
{
37
public
:
39
UanPropModelThorp
();
41
~UanPropModelThorp
()
override
;
42
47
static
TypeId
GetTypeId
();
48
49
// Inherited methods
50
double
GetPathLossDb
(
Ptr<MobilityModel>
a,
Ptr<MobilityModel>
b,
UanTxMode
mode)
override
;
51
UanPdp
GetPdp
(
Ptr<MobilityModel>
a,
Ptr<MobilityModel>
b,
UanTxMode
mode)
override
;
52
Time
GetDelay
(
Ptr<MobilityModel>
a,
Ptr<MobilityModel>
b,
UanTxMode
mode)
override
;
53
54
private
:
60
double
GetAttenDbKyd
(
double
freqKhz);
66
double
GetAttenDbKm
(
double
freqKhz);
67
68
double
m_SpreadCoef
;
69
70
};
// class UanPropModelThorp
71
72
}
// namespace ns3
73
74
#endif
/* UAN_PROP_MODEL_THORP_H */
ns3::Ptr< MobilityModel >
ns3::Time
Simulation virtual time values and global simulation resolution.
Definition:
nstime.h:105
ns3::TypeId
a unique identifier for an interface.
Definition:
type-id.h:59
ns3::UanPdp
The power delay profile returned by propagation models.
Definition:
uan-prop-model.h:90
ns3::UanPropModel
Base class for implemented underwater propagation models.
Definition:
uan-prop-model.h:283
ns3::UanPropModelThorp
Uses Thorp's approximation to compute pathloss.
Definition:
uan-prop-model-thorp.h:36
ns3::UanPropModelThorp::~UanPropModelThorp
~UanPropModelThorp() override
Destructor.
Definition:
uan-prop-model-thorp.cc:37
ns3::UanPropModelThorp::UanPropModelThorp
UanPropModelThorp()
Default constructor.
Definition:
uan-prop-model-thorp.cc:33
ns3::UanPropModelThorp::GetAttenDbKm
double GetAttenDbKm(double freqKhz)
Get the attenuation in dB / km.
Definition:
uan-prop-model-thorp.cc:85
ns3::UanPropModelThorp::GetPdp
UanPdp GetPdp(Ptr< MobilityModel > a, Ptr< MobilityModel > b, UanTxMode mode) override
Get the PDP for the path between two nodes.
Definition:
uan-prop-model-thorp.cc:67
ns3::UanPropModelThorp::GetPathLossDb
double GetPathLossDb(Ptr< MobilityModel > a, Ptr< MobilityModel > b, UanTxMode mode) override
Computes pathloss between nodes a and b.
Definition:
uan-prop-model-thorp.cc:58
ns3::UanPropModelThorp::m_SpreadCoef
double m_SpreadCoef
Spreading coefficient used in calculation of Thorp's approximation.
Definition:
uan-prop-model-thorp.h:68
ns3::UanPropModelThorp::GetTypeId
static TypeId GetTypeId()
Register this type.
Definition:
uan-prop-model-thorp.cc:42
ns3::UanPropModelThorp::GetAttenDbKyd
double GetAttenDbKyd(double freqKhz)
Get the attenuation in dB / 1000 yards.
Definition:
uan-prop-model-thorp.cc:79
ns3::UanPropModelThorp::GetDelay
Time GetDelay(Ptr< MobilityModel > a, Ptr< MobilityModel > b, UanTxMode mode) override
Finds propagation delay between nodes a and b.
Definition:
uan-prop-model-thorp.cc:73
ns3::UanTxMode
Abstraction of packet modulation information.
Definition:
uan-tx-mode.h:43
ns3
Every class exported by the ns3 library is enclosed in the ns3 namespace.
uan-prop-model.h
src
uan
model
uan-prop-model-thorp.h
Generated on Sun Mar 3 2024 17:11:09 for ns-3 by
1.9.1