User Manual, Developers Guide and API Documentation

rise::scenario::pathloss::ITUPathloss Class Reference

#include <scenario/pathloss/ITUPathloss.hpp>

Inheritance diagram for rise::scenario::pathloss::ITUPathloss:

Inheritance graph
[legend]
Collaboration diagram for rise::scenario::pathloss::ITUPathloss:

Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual wns::Ratio calculatePathloss (const rise::antenna::Antenna &source, const rise::antenna::Antenna &target, const wns::Frequency &frequency, const wns::Distance &distance) const
 Pathloss calculation function for models dependent on the distance of source and target.
virtual double getCarPenetrationMean () const =0
virtual double getCarPenetrationStd () const =0
virtual wns::Ratio getLOSPathloss (const rise::antenna::Antenna &source, const rise::antenna::Antenna &target, const wns::Frequency &frequency, const wns::Distance &distance) const =0
 Return the LOS pathloss according to your specific model.
virtual double getLOSProbability (double distance) const =0
 Return the probability of LOS pathlos at distance distance.
virtual double getLOSShadowingStd (const rise::antenna::Antenna &source, const rise::antenna::Antenna &target, const wns::Frequency &frequency, const wns::Distance &distance) const =0
 Return a realization of the shadowing in LOS case. This may be distance dependent.
virtual wns::Ratio getNLOSPathloss (const rise::antenna::Antenna &source, const rise::antenna::Antenna &target, const wns::Frequency &frequency, const wns::Distance &distance) const =0
 Return the NLOS pathloss according to your specific model.
virtual double getNLOSShadowingStd (const rise::antenna::Antenna &source, const rise::antenna::Antenna &target, const wns::Frequency &frequency, const wns::Distance &distance) const =0
 Return a realization of the shadowing in NLOS case. This may be distance dependent.
 ITUPathloss (const wns::pyconfig::View &)
virtual ~ITUPathloss ()

Private Attributes

wns::probe::bus::ContextCollector losProbabilityCC_
wns::probe::bus::ContextCollector shadowingCC_
bool useCarPenetration_
bool useShadowing_


Detailed Description

@ ITUPathloss chooses the LOS/NLOS pathloss and shadowing models according to a distance-dependent probability.

In ITU-R M.2135 (IMT.EVAL) pp. 31 the probability distributions for each scenario are given.

This class implements a semi-random probabilistic pathloss distribution by hashing the position of the two antennas and the distance between them. These hashes have random number properties and are then used to determine the LOS/NLOS model and the log-normal shadowing component.

Using hashes makes it possible to imlement the ITU-R models without any memory overhead. At the time of writing this model is able to calculate ~ 16250 pathloss values per second.

Usage:

This model is a base for all ITU-R specific pathloss for the ITU-R scenarios. The resulting models however, may all be used as any other RISE pathloss model.

Author:
Daniel Bueltmann <openwns@doender.de>

Definition at line 60 of file ITUPathloss.hpp.


Constructor & Destructor Documentation

ITUPathloss::ITUPathloss ( const wns::pyconfig::View pyco  ) 

Definition at line 38 of file ITUPathloss.cpp.

virtual rise::scenario::pathloss::ITUPathloss::~ITUPathloss (  )  [inline, virtual]

Definition at line 66 of file ITUPathloss.hpp.


Member Function Documentation

wns::Ratio ITUPathloss::calculatePathloss ( const rise::antenna::Antenna source,
const rise::antenna::Antenna target,
const wns::Frequency frequency,
const wns::Distance distance 
) const [virtual]

For models not dependent on the distance DistanceIndependent will provide an implementation of this method.

Implements rise::scenario::pathloss::Pathloss.

Definition at line 47 of file ITUPathloss.cpp.

virtual double rise::scenario::pathloss::ITUPathloss::getCarPenetrationMean (  )  const [pure virtual]

virtual double rise::scenario::pathloss::ITUPathloss::getCarPenetrationStd (  )  const [pure virtual]

virtual wns::Ratio rise::scenario::pathloss::ITUPathloss::getLOSPathloss ( const rise::antenna::Antenna source,
const rise::antenna::Antenna target,
const wns::Frequency frequency,
const wns::Distance distance 
) const [pure virtual]

virtual double rise::scenario::pathloss::ITUPathloss::getLOSProbability ( double  distance  )  const [pure virtual]

virtual double rise::scenario::pathloss::ITUPathloss::getLOSShadowingStd ( const rise::antenna::Antenna source,
const rise::antenna::Antenna target,
const wns::Frequency frequency,
const wns::Distance distance 
) const [pure virtual]

virtual wns::Ratio rise::scenario::pathloss::ITUPathloss::getNLOSPathloss ( const rise::antenna::Antenna source,
const rise::antenna::Antenna target,
const wns::Frequency frequency,
const wns::Distance distance 
) const [pure virtual]

virtual double rise::scenario::pathloss::ITUPathloss::getNLOSShadowingStd ( const rise::antenna::Antenna source,
const rise::antenna::Antenna target,
const wns::Frequency frequency,
const wns::Distance distance 
) const [pure virtual]


Member Data Documentation

Definition at line 123 of file ITUPathloss.hpp.

Definition at line 124 of file ITUPathloss.hpp.

Definition at line 126 of file ITUPathloss.hpp.

Definition at line 125 of file ITUPathloss.hpp.


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

Generated on Sat May 26 03:32:39 2012 for openWNS by  doxygen 1.5.5