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

The COST-Hata-Model is the most often cited of the COST 231 models. More...

#include <cost231-propagation-loss-model.h>

+ Inheritance diagram for ns3::Cost231PropagationLossModel:

Public Types

enum  Environment { SubUrban, MediumCity, Metropolitan }
 

Public Member Functions

double GetBSAntennaHeight (void) const
 
Environment GetEnvironment (void) const
 
double GetLambda (void) const
 
double GetLoss (Ptr< MobilityModel > a, Ptr< MobilityModel > b) const
 
double GetMinDistance (void) const
 
double GetShadowing (void)
 
double GetSSAntennaHeight (void) const
 
void SetBSAntennaHeight (double height)
 
void SetEnvironment (Environment env)
 
void SetLambda (double lambda)
 
void SetLambda (double frequency, double speed)
 
void SetMinDistance (double minDistance)
 
void SetShadowing (double shadowing)
 
void SetSSAntennaHeight (double height)
 
- Public Member Functions inherited from ns3::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. More...
 
void SetNext (Ptr< PropagationLossModel > next)
 Enables a chain of loss models to act on the signal. More...
 
- Public Member Functions inherited from ns3::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 Initialize (void)
 
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 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
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)
 
- Static Public Member Functions inherited from ns3::PropagationLossModel
static TypeId GetTypeId (void)
 
- Static Public Member Functions inherited from ns3::Object
static TypeId GetTypeId (void)
 
- Static Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
static void Cleanup (void)
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId (void)
 

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 C
 
double m_BSAntennaHeight
 
Environment m_environment
 
double m_frequency
 
double m_lambda
 
double m_minDistance
 
double m_shadowing
 
double m_SSAntennaHeight
 

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
 
virtual void DoDispose (void)
 
virtual void DoInitialize (void)
 
virtual void NotifyNewAggregate (void)
 
- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 
virtual void NotifyConstructionCompleted (void)
 

Detailed Description

The COST-Hata-Model is the most often cited of the COST 231 models.

Also called the Hata Model PCS Extension, it is a radio propagation model that extends the Hata Model (which in turn is based on the Okumura Model) to cover a more elaborated range of frequencies. COST (COperation europ´┐Żenne dans le domaine de la recherche Scientifique et Technique) is a European Union Forum for cooperative scientific research which has developed this model accordingly to various experiments and researches. This model is applicable to urban areas. To further evaluate Path Loss in Suburban or Rural Quasi-open/Open Areas. Frequency: 1500 MHz to 2000 MHz Mobile Station Antenna Height: 1 up to 10m Base station Antenna Height: 30m to 200m Link Distance:up to 20 km

Config Paths

ns3::Cost231PropagationLossModel is accessible through the following paths with Config::Set and Config::Connect:

  • /ChannelList/[i]/$ns3::WifiChannel/$ns3::YansWifiChannel/PropagationLossModel/$ns3::Cost231PropagationLossModel
  • /ChannelList/[i]/$ns3::YansWifiChannel/PropagationLossModel/$ns3::Cost231PropagationLossModel
  • /NodeList/[i]/DeviceList/[i]/$ns3::WifiNetDevice/Channel/$ns3::YansWifiChannel/PropagationLossModel/$ns3::Cost231PropagationLossModel

Attributes

  • Lambda: The wavelength (default is 2.3 GHz at 300 000 km/s).
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 0.130435
    • Flags: construct write read
  • Frequency: The Frequency (default is 2.3 GHz).
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 2.3e+09
    • Flags: construct write read
  • BSAntennaHeight: BS Antenna Height (default is 50m).
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 50
    • Flags: construct write read
  • SSAntennaHeight: SS Antenna Height (default is 3m).
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 3
    • Flags: construct write read
  • MinDistance: The distance under which the propagation model refuses to give results (m)
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 0.5
    • Flags: construct write read

No TraceSources are defined for this type.

Definition at line 50 of file cost231-propagation-loss-model.h.

Member Function Documentation

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

Subclasses must implement this; those not using random variables can return zero

Implements ns3::PropagationLossModel.

Definition at line 192 of file cost231-propagation-loss-model.cc.

double ns3::Cost231PropagationLossModel::GetLoss ( Ptr< MobilityModel a,
Ptr< MobilityModel b 
) const
Parameters
athe mobility model of the source
bthe mobility model of the destination
Returns
the propagation loss (in dBm)

Definition at line 160 of file cost231-propagation-loss-model.cc.

References ns3::MobilityModel::GetDistanceFrom(), and NS_LOG_DEBUG.


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