A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::ItuR1238PropagationLossModel Class Reference

#include <itu-r-1238-propagation-loss-model.h>

+ Inheritance diagram for ns3::ItuR1238PropagationLossModel:
+ Collaboration diagram for ns3::ItuR1238PropagationLossModel:

Public Member Functions

double GetLoss (Ptr< MobilityModel > a, Ptr< MobilityModel > b) const
- Public Member Functions inherited from ns3::PropagationLossModel
 PropagationLossModel ()
virtual ~PropagationLossModel ()
int64_t AssignStreams (int64_t stream)
double CalcRxPower (double txPowerDbm, Ptr< MobilityModel > a, Ptr< MobilityModel > b) const
Ptr< PropagationLossModelGetNext ()
 Gets the next PropagationLossModel in the chain of loss models that act on the signal.
void SetNext (Ptr< PropagationLossModel > next)
 Enables a chain of loss models to act on the signal.
- Public Member Functions inherited from ns3::Object
 Object ()
virtual ~Object ()
void AggregateObject (Ptr< Object > other)
void Dispose (void)
AggregateIterator GetAggregateIterator (void) const
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::ItuR1238PropagationLossModel.

Private Member Functions

virtual int64_t DoAssignStreams (int64_t stream)
virtual double DoCalcRxPower (double txPowerDbm, Ptr< MobilityModel > a, Ptr< MobilityModel > b) const

Private Attributes

double m_buildingSeparation
 in meters
double m_buildingsExtend
 in meters
CitySize m_citySize
EnvironmentType m_environment
double m_frequency
 frequency in MHz
double m_lambda
 wavelength
double m_rooftopHeight
 in meters
double m_streetsOrientation
 in degrees [0,90]
double m_streetsWidth
 in meters

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
virtual void DoDispose (void)
virtual void DoStart (void)
virtual void NotifyNewAggregate (void)

Detailed Description

This class implements the ITU-R 1238 propagation loss model.

Definition at line 35 of file itu-r-1238-propagation-loss-model.h.

Member Function Documentation

int64_t ns3::ItuR1238PropagationLossModel::DoAssignStreams ( int64_t  stream)
privatevirtual

Definition at line 115 of file itu-r-1238-propagation-loss-model.cc.

double ns3::ItuR1238PropagationLossModel::DoCalcRxPower ( double  txPowerDbm,
Ptr< MobilityModel a,
Ptr< MobilityModel b 
) const
privatevirtual

Definition at line 106 of file itu-r-1238-propagation-loss-model.cc.

References GetLoss().

+ Here is the call graph for this function:

double ns3::ItuR1238PropagationLossModel::GetLoss ( Ptr< MobilityModel a,
Ptr< MobilityModel b 
) const
Parameters
athe first mobility model
bthe second mobility model
Returns
the loss in dBm for the propagation between the two given mobility models

Definition at line 55 of file itu-r-1238-propagation-loss-model.cc.

References ns3::Building::Commercial, ns3::BuildingsMobilityModel::GetBuilding(), ns3::Building::GetBuildingType(), ns3::MobilityModel::GetDistanceFrom(), ns3::BuildingsMobilityModel::GetFloorNumber(), ns3::Building::GetId(), ns3::MobilityModel::GetPosition(), m_frequency, NS_ASSERT_MSG, NS_LOG_ERROR, NS_LOG_FUNCTION, NS_LOG_INFO, NS_LOG_LOGIC, ns3::Building::Office, and ns3::Building::Residential.

Referenced by DoCalcRxPower(), and ns3::HybridBuildingsPropagationLossModel::ItuR1238().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

TypeId ns3::ItuR1238PropagationLossModel::GetTypeId ( void  )
static

This method returns the TypeId associated to ns3::ItuR1238PropagationLossModel.

This object is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3::WifiNetDevice/Channel/$ns3::YansWifiChannel/PropagationLossModel/$ns3::ItuR1238PropagationLossModel

Attributes defined for this type:

  • Frequency: The Frequency (default is 2.106 GHz).
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 2.16e+09
    • Flags: construct write read

No TraceSources defined for this type.

Reimplemented from ns3::PropagationLossModel.

Definition at line 39 of file itu-r-1238-propagation-loss-model.cc.

References m_frequency, and ns3::TypeId::SetParent().

+ Here is the call graph for this function:

Member Data Documentation

double ns3::ItuR1238PropagationLossModel::m_buildingSeparation
private

in meters

Definition at line 70 of file itu-r-1238-propagation-loss-model.h.

double ns3::ItuR1238PropagationLossModel::m_buildingsExtend
private

in meters

Definition at line 69 of file itu-r-1238-propagation-loss-model.h.

CitySize ns3::ItuR1238PropagationLossModel::m_citySize
private

Definition at line 65 of file itu-r-1238-propagation-loss-model.h.

EnvironmentType ns3::ItuR1238PropagationLossModel::m_environment
private

Definition at line 64 of file itu-r-1238-propagation-loss-model.h.

double ns3::ItuR1238PropagationLossModel::m_frequency
private

frequency in MHz

Definition at line 62 of file itu-r-1238-propagation-loss-model.h.

Referenced by GetLoss(), and GetTypeId().

double ns3::ItuR1238PropagationLossModel::m_lambda
private

wavelength

Definition at line 63 of file itu-r-1238-propagation-loss-model.h.

double ns3::ItuR1238PropagationLossModel::m_rooftopHeight
private

in meters

Definition at line 66 of file itu-r-1238-propagation-loss-model.h.

double ns3::ItuR1238PropagationLossModel::m_streetsOrientation
private

in degrees [0,90]

Definition at line 67 of file itu-r-1238-propagation-loss-model.h.

double ns3::ItuR1238PropagationLossModel::m_streetsWidth
private

in meters

Definition at line 68 of file itu-r-1238-propagation-loss-model.h.


The documentation for this class was generated from the following files: