00001 #ifndef UANPROPBHF_H_
00002 #define UANPROPBHF_H_
00003
00004
00043 #define UAN_PROP_SDRDEF 10.0
00044 #define UAN_PROP_RDRDEF 0.5
00045 #define UAN_PROP_RRDEF 5.0
00046 #define UAN_PROP_FRDEF 1
00047 #define UAN_PROP_NRDEF 1000
00048
00049 #define UAN_PROP_MAXDEPTHDEF 200
00050 #define UAN_PROP_MAXRANGEDEF 5000
00051
00052 #define UAN_PROP_DPDEF "/home/ltracy/workspace/NSUAN/uan/pdata/"
00053 #define UAN_PROP_FPDEF "source"
00054 #define UAN_PROP_FSDEF "m.txt"
00055
00056 #define UAN_PROP_DATASZ 2
00057
00058 #undef NDEBUG
00059
00060 #include "propagation.h"
00061 #include "uan-prop.h"
00062 #include "uan-phy.h"
00063 #include <cassert>
00064
00065
00066
00067 class UanPropagationBhf : public UanPropagation {
00068 public:
00069
00071 UanPropagationBhf();
00072
00083 int pLoss(double srcDepth, double recDepth, double range, double freq=24.0);
00084
00086 virtual int command(int argc, const char*const* argv);
00087
00089 virtual double getPr(UanPhy *txif, UanPhy *rxif);
00090
00091
00092 protected:
00093
00095 double srcDepthRes;
00097 double recDepthRes;
00098
00100 double rangeRes;
00101
00103 double freqRes;
00104
00106 int maxDepth;
00107
00109 int maxRange;
00110
00112 int numRanges;
00113
00115 char *dataPath;
00116
00118 char *filePrefix;
00119
00121 char *fileSuffix;
00122
00124 int getfig(const char *fname, int element);
00125
00126 };
00127
00128
00129 #endif