Tr36814PathLossModel.h Source File

Simu5G: Tr36814PathLossModel.h Source File
Simu5G
Tr36814PathLossModel.h
1//
2// Simu5G
3//
4// Copyright (C) 2012-2021 Giovanni Nardini, Giovanni Stea, Antonio Virdis et al. (University of Pisa)
5// Copyright (C) 2022-2026 Giovanni Nardini, Giovanni Stea et al. (University of Pisa)
6//
7// This file is part of a software released under the license included in file
8// "license.pdf". Please read LICENSE and README files before using it.
9// The above files and the present reference are part of the software itself,
10// and cannot be removed from it.
11//
12
13#ifndef STACK_PHY_CHANNELMODEL_TR36814PATHLOSSMODEL_H_
14#define STACK_PHY_CHANNELMODEL_TR36814PATHLOSSMODEL_H_
15
16#include "simu5g/stack/phy/channelmodel/PathLossModel.h"
17
18namespace simu5g {
19
31{
32 public:
33 double computePathLoss(double d3D, double d2D, bool los) override;
34 double computeLosProbability(double d3D, double d2D) override;
35 double getShadowingStdDev(double d3D, double d2D, bool losState) override;
36 double computeAngularAttenuation(double hAngle, double vAngle) override;
37
38 protected:
39 /*
40 * Select the shadowing sigma for the current scenario given whether the
41 * link is below the scenario's breakpoint distance and its LOS state.
42 * getShadowingStdDev() computes the breakpoint comparison itself and
43 * calls this; Tr38901PathLossModel reuses it for the scenarios TR 38.901
44 * does not cover, after computing its own (differently-defined) breakpoint.
45 */
46 double selectStdDev(bool belowBreakpoint, bool losState);
47
48 private:
49 double computeIndoor(double d, bool los);
50 double computeUrbanMicro(double d, bool los);
51 double computeUrbanMacro(double d, bool los);
52 double computeSubUrbanMacro(double d, double& dbp, bool los);
53 double computeRuralMacro(double d, double& dbp, bool los);
54};
55
56} //namespace
57
58#endif
Definition PathLossModel.h:36
Definition Tr36814PathLossModel.h:31
Definition AlertReceiver.h:24