Skip to content

Commit f20c7e6

Browse files
committed
ECC33 sanity check
1 parent 7ef7b8e commit f20c7e6

File tree

5 files changed

+14
-5
lines changed

5 files changed

+14
-5
lines changed

CHANGELOG

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
SIGNAL SERVER CHANGELOG
22

3+
2.63 - 10 Nov 2015
4+
Added sanity check and handicap to ECC33 model when used with low Tx heights in hilly areas = sea of red
5+
36
2.62 - 30 Oct 2015
47
Fixed near field 'lattice' bug at 30m resolution caused by previous fix to fill in void around antenna.
58
Credit to Nils Lofstad for helping nail this down.

main.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
double version = 2.62;
1+
double version = 2.63;
22
/****************************************************************************\
33
* Signal Server: Server optimised SPLAT! by Alex Farrant *
44
******************************************************************************

models/ecc33.cc

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@
55
double ECC33pathLoss(float f, float TxH, float RxH, float d, int mode)
66
{
77

8+
// Sanity check as this model operates within limited Txh/Rxh bounds
9+
if(TxH-RxH<0){
10+
RxH=RxH/(d*2);
11+
}
12+
813
if (f < 700 || f > 3500) {
914
printf("Error: ECC33 model frequency range 700-3500MHz\n");
1015
exit(EXIT_FAILURE);
@@ -22,5 +27,6 @@ double ECC33pathLoss(float f, float TxH, float RxH, float d, int mode)
2227
if (mode > 1) { // Medium city (Europe)
2328
Gr = (42.57 + 13.7 * log10(f)) * (log10(RxH) - 0.585);
2429
}
30+
2531
return Afs + Abm - Gb - Gr;
2632
}

models/los.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -338,7 +338,7 @@ void PlotPropPath(struct site source, struct site destination,
338338

339339
char fd_buffer[64];
340340
int buffer_offset = 0;
341-
341+
342342
distance = 5280.0 * path.distance[y];
343343
xmtr_alt =
344344
four_thirds_earth + source.alt + path.elevation[0];

models/sui.cc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,9 @@ double SUIpathLoss(float f, float TxH, float RxH, float d, int mode)
4141
}
4242
double d0 = 100;
4343
double A = 20 * log10((4 * M_PI * d0) / (300 / f));
44-
double y = (a - b * TxH) + c / TxH;
44+
double y = a - (b * TxH) + (c / TxH);
4545
double Xf = 6 * log10(f / 2000);
46-
double Xh = XhCF * log10(RxH / 2);
46+
double Xh = XhCF * log10(RxH / 20);
4747

48-
return A + (10 * y * log10(d / d0)) + Xf + Xh + s;
48+
return A + (10 * y) * (log10(d / d0)) + Xf + Xh + s;
4949
}

0 commit comments

Comments
 (0)