#include <assert.h>
#include <stdio.h>
-const double THIRD = (1.0/3.0);
-const double f_0 = 47.7; // 47.7 MHz from [Alg 1.1], to convert frequency into wavenumber and vica versa
-
using namespace std;
+namespace ITM {
+
+const double THIRD = (1.0/3.0);
+const double f_0 = 47.7; // 47.7 MHz from [Alg 1.1], to convert frequency into wavenumber and vica versa
+
struct prop_type {
// General input
}
//#define set_warn(txt, err) printf("%s:%d %s\n", __func__, __LINE__, txt);
-#define set_warn(txt, err) 1;
+#define set_warn(txt, err)
// :13: single-knife attenuation, page 6
/*
* computers," Princeton Univ. Press, 1955) and the maximum error should be
* 4.5e-4.
*/
+#if 1
static
double qerfi(double q)
{
return v;
}
+#endif
// :41: preparatory routine, page 20
* surface impedance @zgnd
* It may be used with either the area prediction or the point-to-point mode.
*/
+#if 1
static
void qlrps(double fmhz, double zsys, double en0, int ipol, double eps, double sgm, prop_type &prop)
prop.Z_g_real = prop_zgnd.real();
prop.Z_g_imag = prop_zgnd.imag();
}
+#endif
// :30: Function curv, page 15
// :28: Area variablity, page 14
+#if 1
static
double avar(double zzt, double zzl, double zzc, prop_type &prop, propv_type &propv)
{
kdv = propv.mdvar;
no_situation_variability = kdv >= 20;
if (no_situation_variability)
- no_situation_variability -= 20;
+ kdv -= 20;
no_location_variability = kdv >= 10;
if (no_location_variability)
return avarv;
}
-
+#endif
// :45: Find to horizons, page 24
/*
n = 10 * ka - 5;
kb = n - ka + 1;
sn = n - 1;
- assert((s = new double[n+2]) != 0);
+ s = new double[n+2];
s[0] = sn;
s[1] = 1.0;
xb = (xb - xa) / sn;
* pfl[0] = np, the number of points in the path
* pfl[1] = xi, the length of each increment
*/
+#if 1
static
void qlrpfl(double pfl[], int klimx, int mdvarx, prop_type &prop, propv_type &propv)
{
lrprop(0.0, prop);
}
+#endif
//********************************************************
errnum = prop.kwx;
}
#endif
+
+}