![]() |
User Manual, Developers Guide and API Documentation |
![]() |
#include <scenario/pathloss/ITUPathloss.hpp>


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_ |
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.
Definition at line 60 of file ITUPathloss.hpp.
| 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.
| 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] |
Implemented in rise::scenario::pathloss::ITUInH, rise::scenario::pathloss::ITURMa, and rise::scenario::pathloss::ITUUMa.
| virtual double rise::scenario::pathloss::ITUPathloss::getCarPenetrationStd | ( | ) | const [pure virtual] |
Implemented in rise::scenario::pathloss::ITUInH, rise::scenario::pathloss::ITURMa, and rise::scenario::pathloss::ITUUMa.
| 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] |
Implemented in rise::scenario::pathloss::ITUInH, rise::scenario::pathloss::ITURMa, and rise::scenario::pathloss::ITUUMa.
| virtual double rise::scenario::pathloss::ITUPathloss::getLOSProbability | ( | double | distance | ) | const [pure virtual] |
Implemented in rise::scenario::pathloss::ITUInH, rise::scenario::pathloss::ITURMa, and rise::scenario::pathloss::ITUUMa.
| 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] |
Implemented in rise::scenario::pathloss::ITUInH, rise::scenario::pathloss::ITURMa, and rise::scenario::pathloss::ITUUMa.
| 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] |
Implemented in rise::scenario::pathloss::ITUInH, rise::scenario::pathloss::ITURMa, and rise::scenario::pathloss::ITUUMa.
| 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] |
Implemented in rise::scenario::pathloss::ITUInH, rise::scenario::pathloss::ITURMa, and rise::scenario::pathloss::ITUUMa.
wns::probe::bus::ContextCollector rise::scenario::pathloss::ITUPathloss::losProbabilityCC_ [private] |
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.
1.5.5