A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
uan-prop-model-thorp.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2009 University of Washington
3 *
4 * SPDX-License-Identifier: GPL-2.0-only
5 *
6 * Author: Leonard Tracy <lentracy@gmail.com>
7 */
8
9#ifndef UAN_PROP_MODEL_THORP_H
10#define UAN_PROP_MODEL_THORP_H
11
12#include "uan-prop-model.h"
13
14namespace ns3
15{
16
17class UanTxMode;
18
19/**
20 * \ingroup uan
21 *
22 * Uses Thorp's approximation to compute pathloss. Assumes implulse PDP.
23 */
25{
26 public:
27 /** Default constructor. */
29 /** Destructor */
30 ~UanPropModelThorp() override;
31
32 /**
33 * Register this type.
34 * \return The object TypeId.
35 */
36 static TypeId GetTypeId();
37
38 // Inherited methods
42
43 private:
44 /**
45 * Get the attenuation in dB / 1000 yards.
46 * \param freqKhz The channel center frequency, in kHz.
47 * \return The attenuation, in dB / 1000 yards.
48 */
49 double GetAttenDbKyd(double freqKhz);
50 /**
51 * Get the attenuation in dB / km.
52 * \param freqKhz The channel center frequency, in kHz.
53 * \return The attenuation, in dB/km.
54 */
55 double GetAttenDbKm(double freqKhz);
56
57 double m_SpreadCoef; //!< Spreading coefficient used in calculation of Thorp's approximation.
58
59}; // class UanPropModelThorp
60
61} // namespace ns3
62
63#endif /* UAN_PROP_MODEL_THORP_H */
Smart pointer class similar to boost::intrusive_ptr.
Simulation virtual time values and global simulation resolution.
Definition nstime.h:94
a unique identifier for an interface.
Definition type-id.h:48
The power delay profile returned by propagation models.
Base class for implemented underwater propagation models.
Uses Thorp's approximation to compute pathloss.
~UanPropModelThorp() override
Destructor.
UanPropModelThorp()
Default constructor.
double GetAttenDbKm(double freqKhz)
Get the attenuation in dB / km.
UanPdp GetPdp(Ptr< MobilityModel > a, Ptr< MobilityModel > b, UanTxMode mode) override
Get the PDP for the path between two nodes.
double GetPathLossDb(Ptr< MobilityModel > a, Ptr< MobilityModel > b, UanTxMode mode) override
Computes pathloss between nodes a and b.
double m_SpreadCoef
Spreading coefficient used in calculation of Thorp's approximation.
static TypeId GetTypeId()
Register this type.
double GetAttenDbKyd(double freqKhz)
Get the attenuation in dB / 1000 yards.
Time GetDelay(Ptr< MobilityModel > a, Ptr< MobilityModel > b, UanTxMode mode) override
Finds propagation delay between nodes a and b.
Abstraction of packet modulation information.
Definition uan-tx-mode.h:32
Every class exported by the ns3 library is enclosed in the ns3 namespace.