NMPB08 Shared Libraries
Classes | Functions
DiffractionNMPB Namespace Reference

Classes

class  Diffraction
 Class used to calculate diffraction attenuation. More...

Functions

double CurveRayLength (double distMN, double curvatureRadius)
 Calculates the circular ray length for MN.
double PathDifference (Position2D const *source2D, Position2D const *receiver2D, vector< ProfilePointNMPB * > screenItems, bool favourableConditions)
 Calculation of the path difference for the screen elements.
double PathDifference (Position2D const *source2D, Position2D const *receiver2D, ProfilePointNMPB *reflectionItem)
 Calculation of the path difference for a reflection element.
double SidePathDifference (Position3D const *source3D, Position3D const *receiver3D, vector< ProfilePointNMPB * > screenItems, double &totalDiffDist)
 Calculation of the path difference for the side diffractions.

Function Documentation

double DiffractionNMPB::CurveRayLength ( double  distMN,
double  curvatureRadius 
)

Calculates the circular ray length for MN.

Parameters:
distMNThe MN distance
curvatureRadiusThe radius of curvature
Returns:
the circular ray length

Definition at line 27 of file Diffraction.cpp.

double DiffractionNMPB::PathDifference ( Position2D const *  source2D,
Position2D const *  receiver2D,
vector< ProfilePointNMPB * >  screenItems,
bool  favourableConditions 
)

Calculation of the path difference for the screen elements.

p.47-49 - § 9.4.3

Parameters:
source2D: source coordinates
receiver2D: receiver coordinates
screenItems: vector containing the terrain elements (terrain elements with diffracted indicated on the path, ie convex hull)
favourableConditions: true if calculation must be in favorable conditions, false for homogeneous conditions
Returns:
the path difference

Definition at line 53 of file Diffraction.cpp.

double DiffractionNMPB::PathDifference ( Position2D const *  source2D,
Position2D const *  receiver2D,
ProfilePointNMPB reflectionItem 
)

Calculation of the path difference for a reflection element.

p.53 - § 9.5.2 formula (44)

Parameters:
source2D: source coordinates
receiver2D: receiver coordinates
reflectionItemThe reflection item
Returns:
the path difference

Definition at line 206 of file Diffraction.cpp.

double DiffractionNMPB::SidePathDifference ( Position3D const *  source3D,
Position3D const *  receiver3D,
vector< ProfilePointNMPB * >  screenItems,
double &  totalDiffDist 
)

Calculation of the path difference for the side diffractions.

p.35-36 - § 8.2.3 and p.47-49 - § 9.4.3 and p.51 - § 9.4.5

Parameters:
source3D: source coordinates
receiver3D: receiver coordinates
screenItems: vector containing the terrain elements
totalDiffDist: distance between the first and the last diffraction (calculated in this function)
Returns:
the path difference

Definition at line 239 of file Diffraction.cpp.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines