A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros 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:
+ Collaboration diagram for ns3::Cost231PropagationLossModel:

Public Types

enum  Environment { SubUrban, MediumCity, Metropolitan }

Public Member Functions

 Cost231PropagationLossModel ()
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
 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::Cost231PropagationLossModel.

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 DoStart (void)
virtual void NotifyNewAggregate (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

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

Member Enumeration Documentation

Enumerator:
SubUrban 
MediumCity 
Metropolitan 

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

Constructor & Destructor Documentation

ns3::Cost231PropagationLossModel::Cost231PropagationLossModel ( )

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

References C, and m_shadowing.

Member Function Documentation

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

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

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

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

References GetLoss().

+ Here is the call graph for this function:

double ns3::Cost231PropagationLossModel::GetBSAntennaHeight ( void  ) const

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

References m_BSAntennaHeight.

Cost231PropagationLossModel::Environment ns3::Cost231PropagationLossModel::GetEnvironment ( void  ) const

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

References m_environment.

double ns3::Cost231PropagationLossModel::GetLambda ( void  ) const

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

References m_lambda.

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 C, ns3::MobilityModel::GetDistanceFrom(), m_BSAntennaHeight, m_frequency, m_minDistance, m_shadowing, m_SSAntennaHeight, and NS_LOG_DEBUG.

Referenced by DoCalcRxPower().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double ns3::Cost231PropagationLossModel::GetMinDistance ( void  ) const

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

References m_minDistance.

Referenced by GetTypeId().

+ Here is the caller graph for this function:

double ns3::Cost231PropagationLossModel::GetShadowing ( void  )

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

References m_shadowing.

double ns3::Cost231PropagationLossModel::GetSSAntennaHeight ( void  ) const

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

References m_SSAntennaHeight.

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

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

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::Cost231PropagationLossModel

Attributes defined for this type:

  • 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 defined for this type.

Reimplemented from ns3::PropagationLossModel.

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

References GetMinDistance(), m_BSAntennaHeight, m_frequency, m_lambda, m_SSAntennaHeight, SetMinDistance(), and ns3::TypeId::SetParent().

+ Here is the call graph for this function:

void ns3::Cost231PropagationLossModel::SetBSAntennaHeight ( double  height)

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

References m_BSAntennaHeight.

void ns3::Cost231PropagationLossModel::SetEnvironment ( Environment  env)

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

References m_environment.

void ns3::Cost231PropagationLossModel::SetLambda ( double  lambda)

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

References m_frequency, and m_lambda.

void ns3::Cost231PropagationLossModel::SetLambda ( double  frequency,
double  speed 
)

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

References m_frequency, and m_lambda.

void ns3::Cost231PropagationLossModel::SetMinDistance ( double  minDistance)

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

References m_minDistance.

Referenced by GetTypeId().

+ Here is the caller graph for this function:

void ns3::Cost231PropagationLossModel::SetShadowing ( double  shadowing)

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

References m_shadowing.

void ns3::Cost231PropagationLossModel::SetSSAntennaHeight ( double  height)

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

References m_SSAntennaHeight.

Member Data Documentation

double ns3::Cost231PropagationLossModel::C
private

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

Referenced by Cost231PropagationLossModel(), and GetLoss().

double ns3::Cost231PropagationLossModel::m_BSAntennaHeight
private
Environment ns3::Cost231PropagationLossModel::m_environment
private

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

Referenced by GetEnvironment(), and SetEnvironment().

double ns3::Cost231PropagationLossModel::m_frequency
private

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

Referenced by GetLoss(), GetTypeId(), and SetLambda().

double ns3::Cost231PropagationLossModel::m_lambda
private

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

Referenced by GetLambda(), GetTypeId(), and SetLambda().

double ns3::Cost231PropagationLossModel::m_minDistance
private

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

Referenced by GetLoss(), GetMinDistance(), and SetMinDistance().

double ns3::Cost231PropagationLossModel::m_shadowing
private
double ns3::Cost231PropagationLossModel::m_SSAntennaHeight
private

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