3.10 More tests and 360 min_west fix

This commit is contained in:
alex
2018-07-05 19:36:40 +01:00
parent 78cf7f04b3
commit e18f6b243e
11 changed files with 214 additions and 75 deletions

View File

@@ -11,6 +11,7 @@
#include "sui.hh"
#include "pel.hh"
#include "egli.hh"
#include "soil.hh"
#include <pthread.h>
#define NUM_SECTIONS 4
@@ -186,7 +187,7 @@ static double incidenceAngle(double opp, double adj)
*/
static double ked(double freq, double rxh, double dkm)
{
double obh, obd, rxobaoi = 0, d, dipheight = 25;
double obh, obd, rxobaoi = 0, d;
obh = 0; // Obstacle height
obd = 0; // Obstacle distance
@@ -199,7 +200,7 @@ static double ked(double freq, double rxh, double dkm)
d = (n - 2) * elev[1]; // no of points * delta = km
//Find dip(s)
if (elev[n] < (obh + dipheight)) {
if (elev[n] < obh) {
// Angle from Rx point to obstacle
rxobaoi =
@@ -218,9 +219,9 @@ static double ked(double freq, double rxh, double dkm)
}
if (rxobaoi >= 0) {
return rxobaoi / (300 / freq); // Diffraction angle divided by wavelength (m)
return (rxobaoi / (300 / freq))+3; // Diffraction angle divided by wavelength (m)
} else {
return 0;
return 1;
}
}
@@ -530,6 +531,12 @@ void PlotPropPath(struct site source, struct site destination,
// Egli VHF/UHF
loss = EgliPathLoss(LR.frq_mhz, source.alt * METERS_PER_FOOT, (path.elevation[y] * METERS_PER_FOOT) + (destination.alt * METERS_PER_FOOT),dkm);
break;
case 12:
// Soil
loss = SoilPathLoss(LR.frq_mhz, dkm, LR.eps_dielect);
break;
default:
point_to_point_ITM(source.alt * METERS_PER_FOOT,
destination.alt *
@@ -543,8 +550,8 @@ void PlotPropPath(struct site source, struct site destination,
}
if (knifeedge == 1) {
if (knifeedge == 1 && propmodel > 1) {
diffloss =
ked(LR.frq_mhz,
destination.alt * METERS_PER_FOOT, dkm);